Whichever motivates them most.<br><br>Pinball, hmmm great idea.  Would appreciate it if you could share lesson plans/projects.<br><br>Stephen<br><br><div class="gmail_quote">On Tue, Feb 2, 2010 at 1:55 AM, Cherry Withers <span dir="ltr">&lt;<a href="mailto:cwithers@ekindling.org">cwithers@ekindling.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Wow! Thanks everyone! hmmnn...weird that I didn&#39;t get Bert and Scott&#39;s reply in my in-box nor is it indicated as a replies in the Squeakland community forum index. <br>
<br>Steve the project and the step-by-step information are most helpful! Thank you! My students are basically done with their maze games but I&#39;m debating whether to introduce this added complexity by request from a couple of them or move on and teach a pinball game for the last two sessions of my class. <br>

<br>Thanks, <br><font color="#888888">Cherry  <br></font><div><div></div><div class="h5"><br><div class="gmail_quote">On Mon, Feb 1, 2010 at 10:29 PM, Steve Thomas <span dir="ltr">&lt;<a href="mailto:sthomas1@gosargon.com" target="_blank">sthomas1@gosargon.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Cherry,<br><br>Attached is a Etoys Project (still in progress) that demonstrates the same thing Scott had suggested along with some questions and Teacher notes (this is very rough and still needs a lot of work, but good enough so that you should get the idea.<br>


<br>Some thoughts on teaching two player game creation:<br><ul><li>They will notice problems when one child holds down their control key and the other just keeps &quot;tapping&quot; thier control keys, the child who taps will win.  See if you can observe this and ask the kids why &quot;Cherry&quot; always wins? What is she doing differently? Hopefully they will notice the tapping vs holding down the key, if not you can help them make that observation. Then ask why that matters? How do they think the computer works?  How and when does the keyboard send signals to indicate which key is being input? The kids may come up with two answers: 1) it sends a signal as long as the key is held down 2) it sends a signal each time the key is held down. IF you are lucky enough to get both answers, ask: How can we test which method the keyboards use? What can you observe and what results would you expect if it only sends the signal one time when a key is pressed? What would you observe and what would you expect the results to be if it kept sending signals constantly as long as a key was held down? Then: &quot;Well your scientists, go forth and test your hypotheses!&quot;<br>


</li><li>If it is a racing game, most kids I have seen implement with basic go forward and go backward and don&#39;t program in acceleration and &quot;braking&quot;. You may want to ask them the questions on page 5 of the attached project to suggest they try acceleration and braking.</li>


<li>Rather than showing them the project you may want to try questioning them into it (Note: this may not be easy I have tried and not always succeeded with this one) some thoughts on questions and things you can show:</li>


<ul><li>Start by mentioning/showing them about variables, then ask: How can we use a variable to capture the direction someone wants to go in? How many variables will we need.</li><li>Then ask: How can you use that variable you have just defined in a script to control the car&#39;s movement?</li>


</ul><li>Note: the method I showed in the attached project is probably not the method the kids will use, they most likely will do a group of tests on the variable and move accordingly.</li><li>You can also ask what else a variable can be used for in a games (as part of brainstorming) ex: score, # of lives a player has left, timer (FYI, to implement a timer, use the tick rate and a variable that counts up to track how long something takes or counts down if they only have so long to complete a task).<br>


</li></ul>Lastly I would love it if you could share your observations on the two player game creation and any interesting projects the kids might create.<br><br>Stephen<br><br>Message: 2<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">



Date: Mon, 01 Feb 2010 22:35:06 -0500<br>
From: &quot;CherryW&quot; &lt;<a href="mailto:squeakland-forum@squeakland.org" target="_blank">squeakland-forum@squeakland.org</a>&gt;<br>
Subject: [squeakland] How to create a multi-player game<br>
To: <a href="mailto:squeakland@squeakland.org" target="_blank">squeakland@squeakland.org</a><br>
Message-ID: &lt;<a href="http://1265081706.m2f.19304@squeakland.org/forums" target="_blank">1265081706.m2f.19304@squeakland.org/forums</a>&gt;<br>
Content-Type: text/plain; charset=&quot;iso-8859-1&quot;<br>
<br>
Hello,<br>
<br>
My students are asking if it&#39;s possible to have multiple players in their games. They&#39;ve programmed ObjectA and ObjectB to each have different sets of keyboard inputs. The problem is pressing keyboard inputs for ObjectA stops the movement of ObjectB and vice versa. Anyway to do bypass this problem?<br>




<br>
Thank you!<br>
---Cherry<br>
<br>
<br>
<br>
<br>
-------------------- m2f --------------------<br>
<br>
(from forum)<br>
<a href="http://squeakland.org/forums/viewtopic.php?p=19304#19304" target="_blank">http://squeakland.org/forums/viewtopic.php?p=19304#19304</a><br>
<br>
-------------------- m2f --------------------<br>
<br>
<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <a href="http://lists.squeakland.org/pipermail/squeakland/attachments/20100201/ed89ffad/attachment-0001.html" target="_blank">http://lists.squeakland.org/pipermail/squeakland/attachments/20100201/ed89ffad/attachment-0001.html</a><br>




<br>
------------------------------<br>
<br>
Message: 3<br>
Date: Mon, 1 Feb 2010 20:43:50 -0800<br>
From: Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;<br>
Subject: Re: [squeakland] How to create a multi-player game<br>
To: <a href="mailto:squeakland@squeakland.org" target="_blank">squeakland@squeakland.org</a><br>
Message-ID: &lt;<a href="mailto:31F10548-45F0-4DBF-9392-332BE66E8B7B@freudenbergs.de" target="_blank">31F10548-45F0-4DBF-9392-332BE66E8B7B@freudenbergs.de</a>&gt;<br>
Content-Type: text/plain; charset=us-ascii<br>
<br>
On 01.02.2010, at 19:35, CherryW wrote:<br>
&gt; Hello,<br>
&gt;<br>
&gt; My students are asking if it&#39;s possible to have multiple players in their games. They&#39;ve programmed ObjectA and ObjectB to each have different sets of keyboard inputs. The problem is pressing keyboard inputs for ObjectA stops the movement of ObjectB and vice versa. Anyway to do bypass this problem?<br>




&gt;<br>
&gt; Thank you!<br>
&gt; ---Cherry<br>
<br>
Not easily. Maybe one player can use the keyboard and another one a joystick?<br>
<br>
A more general solution would be this:<br>
<a href="http://tracker.squeakland.org/browse/SQ-331" target="_blank">http://tracker.squeakland.org/browse/SQ-331</a><br>
<br>
- Bert -<br>
<br>
<br>
<br>
<br>
------------------------------<br>
<br>
Message: 4<br>
Date: Mon, 1 Feb 2010 21:09:31 -0800<br>
From: Scott Wallace &lt;<a href="mailto:scott.wallace@squeakland.org" target="_blank">scott.wallace@squeakland.org</a>&gt;<br>
Subject: Re: [squeakland] How to create a multi-player game<br>
To: <a href="mailto:squeakland@squeakland.org" target="_blank">squeakland@squeakland.org</a><br>
Message-ID: &lt;<a href="mailto:DF73943D-D5FE-4837-AEF1-CF40C693E745@squeakland.org" target="_blank">DF73943D-D5FE-4837-AEF1-CF40C693E745@squeakland.org</a>&gt;<br>
Content-Type: text/plain; charset=&quot;us-ascii&quot;<br>
<br>
On Feb 1, 2010, at 7:35 PM, CherryW wrote:<br>
<br>
&gt; Hello,<br>
&gt;<br>
&gt; My students are asking if it&#39;s possible to have multiple players in their games. They&#39;ve programmed ObjectA and ObjectB to each have different sets of keyboard inputs. The problem is pressing keyboard inputs for ObjectA stops the movement of ObjectB and vice versa. Anyway to do bypass this problem?<br>




&gt;<br>
&gt; Thank you!<br>
&gt; ---Cherry<br>
<br>
<br>
Hi, Cherry,<br>
<br>
One way is to have each an object&#39;s behavior governed not directly by &quot;world&#39;s last keystroke&quot; but rather by its own private variable telling it what &quot;state&quot; it is in, and hence what it should do.  This can be accomplished by devoting one ticking script in each object to maintaing the object&#39;s &quot;state&quot;; this script can &quot;watch&quot; the world&#39;s last keystroke, and when it sees a keystroke that means something to it, it sets the corresponding state in the object&#39;s state variable, whereas when it sees keystrokes intended to control different objects, it ignores them; and devoting a second, separate, ticking script in each object to carrying out the action represented by the current &quot;state&quot;.<br>




<br>
The attached project provides a simple illustration of this.  It allows two objects to be navigated from the keyboard.  Each object is looking for a different set of keys.<br>
<br>
A diamond-shaped cluster of four keys at the left edge of the keyboard is used to control Red:<br>
<br>
a       rotate counterclockwise<br>
s       rotate clockwise<br>
w       go forward<br>
z       go backward<br>
<br>
<br>
A second diamond-shaped cluster of four keys further to the right is used to control Blue:<br>
<br>
j       rotate counterclockwise<br>
k       rotate clockwise<br>
i       go forward<br>
m       go backward<br>
<br>
HTH...<br>
<br>
  -- Scott<br>
<br>
<br>
<br>
-------------- next part --------------<br>
A non-text attachment was scrubbed...<br>
Name: <a href="http://twoPlayerGame-sw.001.pr" target="_blank">twoPlayerGame-sw.001.pr</a><br>
Type: application/octet-stream<br>
Size: 142056 bytes<br>
Desc: not available<br>
Url : <a href="http://lists.squeakland.org/pipermail/squeakland/attachments/20100201/98638dd2/twoPlayerGame-sw.001.obj" target="_blank">http://lists.squeakland.org/pipermail/squeakland/attachments/20100201/98638dd2/twoPlayerGame-sw.001.obj</a><br>




<br>
------------------------------<br>
<br>
_______________________________________________<br>
squeakland mailing list<br>
<a href="mailto:squeakland@squeakland.org" target="_blank">squeakland@squeakland.org</a><br>
<a href="http://lists.squeakland.org/mailman/listinfo/squeakland" target="_blank">http://lists.squeakland.org/mailman/listinfo/squeakland</a><br>
<br>
<br>
End of squeakland Digest, Vol 82, Issue 2<br>
*****************************************<br>
</blockquote></div><br>
</blockquote></div><br>
</div></div></blockquote></div><br>