Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
(1 edit)

As a side note (and a bit of extra information for you!), the choice/highlighting input scheme you are describing could be accomplished using a couple of different BCI input techniques. 

One, as you have mentioned, would be from the user causing a specific spike in brain activity (e.g. imagining a specific movement). Alternatively, the P300 tool we will be providing is well-suited for this type of game-input. When you highlight each of the options, if you do it in a random order multiple times you will actually elicit a well-defined brain response (the P300 response) which we can identify. Each time the object the child is focused on is highlighted the P300 brain response would occur and we could then select this option for the child. We are working on some videos which (hopefully) explain the P300 better! They will be added to the main page of the jam.

Either way, throughout the jam we will be available to help you with the BCI input design aspects!

(1 edit)

Hello, again. I know the official jam is a month away but I couldn't wait. I decided to make a game designed around the P300 response now hoping you might give me some technical feedback so that I can be certain that, when the time comes, I make a game that works.  I'm sure your responses will be useful to all the jammers, not just me.

Burning Questions:
1) In my game, I present highlighted options in random order at a rate of 1 per second. Is that a good speed or would faster or slower be better?

2) In my game, the number of options available gets as high as twelve. In that case, the player must wait an average of 12 secs for the option they want to come around or come around again. What have you found to be the upper limit in the number of options / length of time between repetitions? User attention span must wane at some point. 

3) There is one circumstance in my game in which the player has only two choices (in the cardinal direction walking part if they are stuck in a corner). Can the binary randomness of just two choices generate a P300 response? 

4) In my game, I tried three different systems for highlighting options. Choosing an animal, there is a yellow glow, a written word label, and a spoken word. Choosing foods, there is the same glow and a wiggling animation. Choosing a cardinal direction, the arrow changes colour from grey to red. Are these all equally effective?

4) In all three cases, the currently unhighlighted options remain on screen. Would it be better if only the current option was visible? 

5) I am a former kindergarten teacher and designed my game with a kindergarten-level audience in mind. Are there children in your group for whom that is a good fit?

6) There is some written language in my game but it is all conveyed verbally as well. Should jammers aim for a particular reading level?

7) I program in Delphi so I don't use Unity and I was unable to try your P300 tool. Are there important  aspects I missed?  

 Here is a link to my first attempt: https://gophergames.itch.io/yummy-yucky . The single input in the SPACE button.

(1 edit)

Hey there! Thanks for all the questions- I'll follow up more thoroughly on Monday when I have some time.

I completely understand the desire for having a game that works 100%, and we are hoping to release our P300 tool in the next couple weeks so people can try it out and send us technical help questions (so you are ahead of the curve!). I may try to put together a 'releasable' example as well, so developers can get an idea of what might be a good way to structure the P300 (depending on my workload though!).

I briefly looked at the prototype, and just wanted to share some quick thoughts. First- I think it looks great! I can't speak for all the centers involved regarding what our audience's ages actually are (there will be 2 other hospitals besides the one I work at who we have partnered with who have BCI participants who will be our judges), but we definitely have a range of participants. As such, I am glad to have a game that is targeted towards the younger side of the population!

There are two main concepts which jumped out to me from your prototype which could benefit in using the P300. (Also working on some general videos to release so that these ideas can be explained a bit more from a different perspective!).

  1. In any of the given selection periods, if you can have a 'count-down' cue prior to the selection time, it helps participants focus and know that a 'selection' period in the game will be coming. So just having some instructions saying "Get ready and look at the cross!" or something akin to that, followed by a count down before the selection time would help a lot.
  2. Similar to 1- if you are randomly changing the choices, have a set number of 'times' that each choice flashes to break up the start and end sequence of the selection point. So for the characters, maybe highlight each character 10 times. Then have a break before the next 'selection' part begins. This helps on the engineering back-end as well, as we know when to start looking for the P300 response. Does that make sense?

I hope those help for the moment, and I'll answer all the other main questions more thoroughly soon! Glad to have your enthusiasm:).

(+1)

Hi there- I wanted to dive a bit more into some of your questions. Feel free to keep asking more!

First off, I want to say I enjoy the concept of your game, and your enthusiasm for learning more about the BCI control schemes/input mechanism. Let me know if what I say doesn't make sense or needs more clarification.

Previously, when I mentioned using either the imagined thought pattern or the P300 as control schemes I wasn't sure what you were using for coding your game. The reason I had brought up the P300 is that the type of game you are proposing would work well with the P300 scheme. The problem, however, is that for the P300 to work you need to carefully time when stimulus occurs (e.g. the exact moment a highlighted option happens) so that you can look 300 milliseconds later in the recorded brain data to check if there was a response from the individual. (If so, then that was the option the child was focused on! If not, then they were probably paying attention to a different option). This timing aspect and pairing with the recorded brain signals is what we have aimed to take care of for game developers with our P300 tool in the Unity game engine. Since you are using Delphi (and I am completely ignorant to its code base/available systems etc.), I am not sure how to help implement a similar system from Delphi as my background isn't in networking or TCP/UDP at all. For that tool, we are using something called LabStreamingLayer which takes care of the network communication aspects for us. I briefly looked, but couldn't see anything from LSL which has been implemented in Delphi. (If you find one though let me know and we can try to figure it out!).

As such, you might be better off using your previous idea of sequentially highlighting the options, and we can then use the key-mapping to have a particular cognitive thought pattern map to the "Space" input. Doing so might make the selection times a bit slower and possibly more unreliable (depending on the time spent waiting on each given option), but it will definitely be able to work. With that in mind, I have tried to answer some more of your questions below, and hopefully provide some more clarity for you.

Burning Questions:

1) In my game, I present highlighted options in random order at a rate of 1 per second. Is that a good speed or would faster or slower be better?

The 1 option-per-second is fine, although you could speed up that flashing rate if you'd like (say 2 Hz - 8 Hz). There is a variety of literature out there discussing the different ways to 'optimize' the P300 response, but the "best" flash rate is variable across participants. Despite the variability, slower flash rates do tend to increase amplitude of the P300 response which means a stronger response which is easier to pick up. (Note- typical information on BCI responses are usually reported for adults, so depending the child's age and visual abilities slower flash rates can definitely be beneficial!).

2) In my game, the number of options available gets as high as twelve. In that case, the player must wait an average of 12 secs for the option they want to come around or come around again. What have you found to be the upper limit in the number of options / length of time between repetitions? User attention span must wane at some point. 

Regarding options-12 options is relatively small, and definitely manageable, in terms of P300-based applications. Many typical applications of the P300 in BCI is a spelling board. This often includes at least 28 choices (alphabet + space + backspace) arranged in a matrix. Some of our participants have been able to use such boards with moderate success, so 12 options should work fine. (Also having played through your game, it seems like it should be ok! Of course we will find out for sure when we do the jam and get some of our participants to provide some feedback!).

That said, you are right in terms of attention span being something worth considering in the development aspect as we are working with children at a variety of developmental levels. Hopefully that's what your game mechanics and design will help improve!

3) There is one circumstance in my game in which the player has only two choices (in the cardinal direction walking part if they are stuck in a corner). Can the binary randomness of just two choices generate a P300 response?

Yes- binary selection is a classic way to implement the P300. All the P300 response relies on is the brain's categorization of new, unexpected events which occur when you're paying attention to something (e.g. a picture/sound/etc.). So if you have 2 different options or 10 different options the P300 can still be elicited as your brain really only cares about the 'surprise' stimulus happening to the option you're focused on.

4) In my game, I tried three different systems for highlighting options. Choosing an animal, there is a yellow glow, a written word label, and a spoken word. Choosing foods, there is the same glow and a wiggling animation. Choosing a cardinal direction, the arrow changes colour from grey to red. Are these all equally effective? 4) In all three cases, the currently unhighlighted options remain on screen. Would it be better if only the current option was visible?

This is a pretty complex topic, with a lot to unpack. The short answer is that different methods for inducing the P300 event does affect its magnitude, and thus ultimately its ability to be identified in a BCI system. It's worth noting that the traditional method for inducing P300 from visual aspects involved high-contrast changes of squares around the letters in a spelling board (e.g. from black to white, similar to your arrow-scheme). But, that doesn't mean that the other ways you've chosen to highlight options isn't helpful or effective. For your purposes, I think its definitely worth trying to increase the contrast where possible to elicit strong responses (e.g. make the glows brighter/contrasting to the background). Additionally, the use of a written word label and spoken word is (in my opinion) very helpful in the animal selection task. To me, it helps keep attention and provides plenty of clarity/fun for the game.

5) I am a former kindergarten teacher and designed my game with a kindergarten-level audience in mind. Are there children in your group for whom that is a good fit?

I think this is a good fit! Please see my other post about the appropriateness of the audience. I think its good to have a range, and think there is not nearly enough consideration given to applications for very young possible BCI users. It is an important group to include in pediatric BCI research as it goes forward. (And one I am keen on exploring!).

6) There is some written language in my game but it is all conveyed verbally as well. Should jammers aim for a particular reading level?

This is another difficult (but great!) question- We have a wide range of developmental levels in the children who use BCI. Some are non-verbal, while some have full control over speech. As such, reading levels and literacy is quite varied for our children and something I will have to get back to you on after talking to some of the OTs and clinicians more about. That said, having the verbal option available for the game is quite nice as some of the BCI users do have impaired or obscured vision in certain areas, so having the choices reinforced verbally is helpful.

7) I program in Delphi so I don't use Unity and I was unable to try your P300 tool. Are there important  aspects I missed?

Please take a look at my other message to highlight some thoughts on the P300 in your game! My only other comment after playing it a couple of times is that spatial distance between options can affect the P300 (e.g. if options are too close/overlapping you might get false-positives). So you may want to spread out the animal selection options just slightly, or have them staggered in the screen!

Hope that helps, and you had a good weekend! Looking forward to your actual game submission!

I want to thank you sincerely for your thorough responses to my many many questions. I look forward to designing more games around the P300 response. I am sad to report that I will not be participating in the jam, though. I had not realized that it is the same weekend that I am performing in a musical (four shows). I look forward to playing the entries after all is sang and done and then, if you're interested, creating bespoke games for you that incorporate all of the lessons learned during the jam.

It has been my pleasure! I am always happy to discuss with others, especially with those who are so enthusiastic :).

I am sorry to hear you won't be able to participate in the jam (although you did provide an early draft of a game - so with your O.K. I'll let the kids play through it and try to get some feedback for you!). I would be happy to talk and work with you going forward in helping make BCI games. Feel free to join our discord at https://discord.gg/w3Zp3zN, as it might be an easier means for us to communicate. I wish you good luck in your performance and thanks again for your contribution!

Thank you. I would be so thrilled to get some feedback from children about Yummy Yucky. I hope the jam is a great success.

Hi H.H. Magoo!

We are currently putting the games together and trying to make them as usable as we can for the kids during the judging portion. I was wondering if you would be able to send me either the source code for YummyYucky or could send an updated version of the game where the choices are either presented sequentially or slowed down some (at least 2 second intervals)? Let me know if you have time, as we still probably are a month out from getting all the games finished! Thanks, and I hope your performance went well!

Cheers,

Eli

Dear Eli,

Thank you for your extreme patience. I have uploaded a new slowed down version of Yummy Yucky (YYSlowedDown.zip). 
My name is Kendra, by the way, and the musical went beautifully.

Warm regards,

Kendra