Re: Refactoring



On Fri, 2004-01-02 at 05:40, Jason James House wrote:

>   I personally think that the "right" approach would require sitting 
> down and thinking about as many game variations and (G)UI variations as 
> possible...

This is definitely something to do but I'm not sure it really needs to
be done up front.  But anyway, for a specific form of poker, there's the
following examples:

- are there any jokers?  and other wild cards?  what can they be wild
  for?
- special hands - skip straights, round-the-corner straights, bobtails,
  fourflushes, tigers, dogs, five of a kind
- trying to get the highest hand, lowest hand, both?
- betting limits
- opening requirements

Certain variations are more typically played with certain forms, but
there's no real reason to require this in most cases.

> * Can different rulesets be used for the same setup?  What flexibility
> for rule variations exist?  Can rules be hot swapped?  Can AI's handle 
> it?  (Consider Nightmare Chess)

This is definitely a big issue I think.

Should they be preferences for each game, should they be prompted at the
start of the game, or should you be able to save a game/settings
combination, name it, and select it?

One wrinkle is there are named variants of Poker, Chess etc as you have
said, these have specific values for certain parameters.  For example
"Lightning" has different values on the timer (and the
ability/requirement to take the king).  Technically it should just be a
set of parameters for Chess.

So you could either allow "Lightning" to be defined as a named set of
parameters of Chess, or hardcode it as a separate game, and remove any
defined parameters from its prefs.

> Board Rendering + Connecting Players
> * I think these are already in discussion.  I would hope that the two 
> topics (board rendering, and connecting players) would be independent of 
> each other.

I don't think there was a lot of discussion about board rendering (UI)
yet, although I was definitely interested in it when I wrote my notes.

I don't see why they could be dependent issues, except that it's
possible they'll be in the same library.  If it is in a library, you
should be able to choose whether to use features individually, if that's
what you mean.

> Can non-gnu-games coded versions be used?

I'm not entirely sure what you mean?  Do you mean non-gnome-games?  The
libraries should hopefully be eventually useful for games outside of the
gnome-games package, but I think they would probably have a requirement
on libgnome(ui) or maybe gtk+/glib/gconf.

-- 
         Matthew Tuck: Software Developer & All-Round Nice Guy        
 My Short Autobiography: 1985 Grade Bin Monitor 1990 Class Clown Award
1992 Awarded Most Likely To Spontaneously Combust 1996 Crowned Galactic
         Emperor 1998 Released From Smith Psychiatric Hospital





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