I had heard this afternoon, that the kid was developing a Pokemon game in Scratch while I was at work. I was interested in seeing how he was coming along on his own. The message passed along, was that he was done, except for help with the health counters.
He already had motion down. The different characters were each listening to a different set of keys for motion. They were passing messages even (though nothing was listening to those particular messages, the framework was there). He had a set of health counters and different backgrounds for final game states. He had the characters and two costumes for them. But he needed help with the actual battle.
In our ninja game, the objects knew when they touched each other, so he figured that was going to be the same here. I had him describe it to me completely, since this was core to our game. I liked that he said he was going to use a strategy that he picked up on while inspecting the logic in a pac-man example program. When pac-man hit a colored wall, he would stop – so that was another example of object collision.
“When bulbasaur goes over and touches abrock, then abrock is hit! Wait. No! How can we tell who is hitting who?”
We had a good laugh at that.
After a bit of conversation, it was decided we needed another costume, to define attacking mode. Which, actually, fit in nicely to the Pokemon character themes. New keys controls were added. VineWhip and Poison Dart attacks of course!
We worked on all the logic for VineWhip and once we were able to consistently destroy Abrock, we went about giving him a poison dart attack himself. Many more messages, new states inspected, and some tweaking to avoid “infinite” attacks and what happens when the two guys attack each other all happened as we made our way towards the final product.
As bedtime was approaching, he wanted a new character added. We’ll see what happens tomorrow. I’m looking forward to it.
Update: Catherine just came back after putting him to bed. She says he’s got two more features he needs to add. And they both take a day each. I’m impressed with his ability to estimate and add buffer into his estimates too. Under promise and over deliver! (Or, we might just have a lot of Scratch in our immediate future…)