PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
Now for feedback. I play tested it and did look at the code, and you're right, it is a bit messy

.
Yeah, I've started learning conding and js just recently. Any overall tips on how to reduce the messiness?
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
You definitely need some kind of intro to the tease. You just jumped in with "wake up it's time for testing" as though you randomly wake up in some test facility somewhere.
Actually, that's kind of what I'm going for. The idea behind the intro is to create curiosity. As you will play over next days, you will learn more of the story.
But I agree, the intro definately needs improvement. I'll look into it.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
On the first page you have an instruction like "if this is your first time here"...
You are using GuideMe, so you can tell if it's their first time without having to ask them.
- Spoiler: show
-
The first time they run the tease you have a clean slate with no flags set or anything.
On the Warning page you can have the button set flag "FinishedAbout".
On page Intro_8 have the button set flag "FinishedIntro".
Then on the start page you can have code like
if ( guide.isSet("FinishedIntro") ) show "Todays Session" button that goes to loadSlideshow
else if ( guide.isSet("FinishedAbout") ) show "Intro" button that goes to Intro
else show "About" button // First time here
Ah, so you can set and check flags on a "GuideMe level" where it remembers even after tease is restarted? That's good to know. I need to test it.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
BUG: When I came back on the second day the "Timer" page javascript failed with "vSetup is undefined" so nothing happened.
- Spoiler: show
-
I fixed that and then it took me right to the Loading page and jumped in. I see your comment in the code that it needs to go to a "day intro", which it really does, so I assume you'll be fixing that.
Fixed. For some reason the bug didn't appeared unless you close and re-open the GuideMe so I've missed it.
It will be fixed in the next version and there will be a "day intro".
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
I think you need to allow for the fact that a participant may not be able to get there every single day, because shit happens, so in Timer you should be checking if "today is >= tomorrow" and allow the next session, but use your vGlobal array (or whatever) to count how many days the player plays, rather than how many days have elapsed.
Hmm, so the idea is very rogue-like. If you don't show up, you lose, but you can still try next time.
But I understand that people have bussy lives. I'll probably add some kind of perk that will allow you to be one or more days late.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
And as mentioned in another comment, I do think you should be allowed more than one session a day. Even just two a day would be better. This is also something to work into the Rules/Intro. That part of the testing means denying yourself and only performing the specific activities given in the tests, etc.
So the tease starts with length of the slideshow between cca 5-10 minutes.
I have added choice in "difficulty" that increases maximum length by 1 minute to maximum of +5 minutes.
I will also add perk that will allow you to choose wheter you want to play second sessions right after you finish the first one.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
Misc nitpicky notes:
- Spoiler: show
-
Instead of big headings saying "Metronome", "Edge" etc, why not commands like "stroke to the beat" or "get to the edge".
I'm curious about why you did it that way. Do you have a plan?
So, there is not much of a plan.
I have just chose these short words + colors to quckly convey what the player should do.
Also these will interact together after you unlock more of them, so you could might have combinations like free-style + green + balls.
The idea is to display these basic command and possibly provide more detail in taunts.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
More nitpicky/coding feedback:
- Spoiler: show
-
On page Intro_1 (and on several other pages) I saw things like
Code: Select all
vGlobal = scriptVars.get("vGlobal");
scriptVars.put("vGlobal.SubjectNumber", vGlobal.SubjectNumber);
Why do you save the subject number property as a new variable when it's easily referenced as vGlobal.subjectNumber wherever needed? It's quite redundant, but I did see something similar in several places.
If I don't use the scriptVars.put, the value won't show up in <span>. Or is there something that I'm missing?
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
- Spoiler: show
-
On the Timer page you have
Code: Select all
vTomorrow = scriptVars.get("vTomorrow");
var vToday = new Date();
vToday.setHours(0,0,0,0);
// Neither of the following are required - vToday is not used anywhere else so you don't need
// to "scriptVars.put" it, and vTomorrow hasn't changed, so there's no need to update it.
scriptVars.put("vToday", vToday);
scriptVars.put("vTomorrow", vTomorrow);
Yes, you are right, the vToday is a leftover from when I was testing it.
The vTomorrow is used in <span>. Again, I thought you have to use scriptVars.put to show these valuse on the screen.
Is there another, easier way?
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
I hope all that helps, and I'm totally serious about being a test subject. I'd be happy to play test and give feedback.
No, you've provided great feedback and I'm glad that someone is interested in this project.
PlayfulGuy wrote: Wed Aug 05, 2020 8:12 pm
But be patient on replies. Sometimes I go for days at a time without checking in here.
Don't worry, this is kind of a long-term side/pet project for me. I'm not in a rush.
Besides, it takes me some time to respond too as you can see.
Thank you for your feedback!
I'll try to adress these issues in upcoming updates of this tease.