[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[pygame] Trade Game



I've built a simple game involving trading. You click on various ports
and offer sets of goods to local traders, trying to get a good deal.
Hit Escape repeatedly to exit (past the map and outro screens).
ZIP w/source: <http://kschnee.xepher.net/code/080610tradegame_source.zip>
Screenshot: <http://kschnee.xepher.net/pics/080529trade.jpg>

I'd appreciate suggestions here, because I'm not sure whether this is
actually fun. As usual I can picture this trading thing being part of a
more complex project, or more modestly, as a game where you sail around
trying to get a better ship, more stuff, and the respect of the locals.
But is this little thing something enjoyable? How can it be improved?

An interesting feature of this game is that each NPC merchant has an
estimate of how much they value each product, and a separate estimate of
how much they think _you_ value each. If you offer something, they'll
believe that you value it less. You can hit N during trading to toggle
between verbal comments and a numeric display of traders' estimates.
This system is probably open to abuse. The code at the moment definitely
has a cheat available in that you can withdraw your goods and then
accept the goods the other guy offered.

What's not implemented is the idea of "potlatch," that you rise or fall
in social status with the trader's "tribe" if you're seen as giving a
generous deal. If the game had you interacting with tribes in other ways
than trading, this could be important.

There's some tension here between wanting to make a game of trying to
get a good deal, and having reasonable, realistic behavior from being
able to ask outright for what you want. There's a rudimentary system for
saying "give me some of that and not this," but you're still limited in
what you can express.

Oh, and the code includes a couple of standard modules I've been working
on that might be of use to others. I know the "art" one needs revision;
"ringtale" (program flow) and "driftwood" (UI) may be useful.