[Ftr, I got Rocco's approval before sending this. He agreed that y'all
might want to see some POE in action. It's one part shameless
self-promotion, one part informational, and one part gratitude]

We've just launched our POE-based network game: The Glass Bead
Network. It's been 5+ years in the making (working nights and weekends
can only get you so far, so fast). The website is
http://www.glassbead.net/ (signup and play is free, and we have a
tournament this Saturday--come play or just come watch if you
like. I'm user 'scott' in the game).

POE is our messaging engine between the Flash-based web game
clients. Each Flash client makes a TCP connection to one of our POE
servers. The POE servers relay chat messages and game events between
users on the same server or users connected to other servers (the
users themselves have no knowledge of the network topology).

We use PoCo::Server::TCP and PoCo::Client::TCP for all of the
connection management. Each Server has a Client instance to each of
the other servers for inter-server message relaying; having multiple
servers able to relay communications like this lets us scale pretty
far on cheap hardware (we're bootstrapping this, so cheap is good). It
was originally based almost entirely off of one of the POE cookbook
examples (Chat_Server); it's current size is about 8k lines (K&R style
function defs, no comments or blank lines).

The game uses the following other technologies: Flash/ActionScript for
the game client, XML for message transport, Apache web server for the
website, MySQL for the game state database and Berkeley DB XML for the
game play and bead (playing pieces) database. We run FreeBSD 6 for our
server OS, but the main POE server runs flawlessly on other systems
we've tried.

I wanted to thank everyone on the list who has asked good questions
and the fine folks who have answered them over the years. The list
archives and Cookbook section has been *immensely* valuable in helping
me get my head POE-ified.

Wish us luck! (and send me any feedback if you like)

Scott
-- 
Scott Wiersdorf
<[EMAIL PROTECTED]>

Reply via email to