Simple multiplayer game programming advice wanted
Howard Stearns
hstearns at wisc.edu
Tue Jul 5 22:13:54 UTC 2005
I love it! Specifically, I like:
* Learning by playing games.
* Learning by building applications.
==> Learning concept X by using X to build a game the depends on X,
which in turns works with the player's knowledge of X.
I don't want to dissuade you from letting X = "TCP client/server
concepts". However, I'd like to expose you to the idea that TCP
client/server may not be the best available abstraction for building
multiplayer network games. It might be similar to X = transistors, or x
= assembly-language. Useful to specialists operating at some level,
and maybe even for grades 5-9. But maybe not.
Croquet is built (in Squeak) on the ideas that:
* A new model of program execution (called TeaTime) may be far more
useful for collaborative distributed system (e.g., multiplayer network
games) than TCP API's + conventional OOP.
* Direct manipulation of objects in the environment (e.g., in 3D), as
they are being used, may be far more useful for collaborative
distributed systems than IDE/source + runtime.
==> We would like students to be able to create their own, say, physics
simulation within a collaborative multiplayer classroom, rather than
simply individually running some simulation created by the teacher (or
worse, by a professional programmer).
We are certainly not there yet. But I invite you to check out what we
have so far, and join in.
http://croquetproject.org
Howard Stearns
Croquet Lead Developer, DoIT Academic Technology, University of
Wisconsin-Madison
On Jul 5, 2005, at 1:15 AM, Dave Briccetti wrote:
> I teach a summer class for grades 5-9 called "Multiplayer Network Game
> Programming."
>
> The idea is to teach simple TCP client/server concepts and ultimately
> end up with a very simple client/server game such as tanks that they
> can drive around and shoot at each other. I've taught this for several
> years in Java, and this year I'd like to try doing something in
> Squeak. I'd like to learn how to create something like this:
>
> Client windows show the player's avatar (a simple graphic) and that of
> the other players.
> An icon suddenly appears on all the client windows. The first player
> to move his avatar (via the joystick morph, perhaps) over to the icon
> gets the icon. The icon represents a question that the player has to
> answer ("What is a router?," for example). The question appears and
> the player types or selects an answer. If the player gets the right
> answer he earns points. If not, he drops the icon and somebody else
> can get it. Scores for all players should show all the time (perhaps
> under the avatar). When one player reaches some number of points, the
> game stops.
>
> Does this seem like a reasonable project to do in Squeak? Is there
> something to do remote procedure calls or otherwise communicate
> between the clients and the server?
>
> Some notes from my classes:
> http://davebsoft.com/cfk/index.html
> http://dbschools.com/dbschools/servlet/main/action/SelectInfo?
> selann566=A
>
> Thanks for any ideas.
>
> Dave Briccetti
> Lafayette, California (SF Bay Area)
>
>
>
>
>
>
>
>
> http://dbschools.com/dbschools/servlet/main/action/SelectInfo?
> selann566=A
>
>
>
More information about the Squeak-dev
mailing list
|