Re: hacking on same-gnome

On Tue, 2 Aug 2005, Callum McKenzie wrote:

> Date: Tue, 2 Aug 2005 11:45:01 +1200 (NZST)
> From: Callum McKenzie <callum physics otago ac nz>
> To: games-list gnome org
> Subject: Re: hacking on same-gnome
> > Hi,
> >
> > Thought it was about time I started hacking on Gnome a little, what
> > better place to start than my favorite game, same-gnome.
> Sounds good. The first thing you need to do is to read:
> > Changes I would like to try and make to same-gnome: arbitrary board
> > sizes, better icons (more contrast), persistance between sessions,
> > better/different background colours/images and a portrait mode.
> Most are good ideas, I'll comment on these one by one.
> arbitrary board sizes: I am in two minds about this. We have it for Mines
> but it creates issues. The obvious one is recording scores - the current
> high score system cannot deal with varying board sizes easily. Mines
> "fixes" this by scaling the score based on the board size and then
> recording it against the single "custom" high score table. This is far
> from elegant. The second "problem" is that I have tried to avoid a
> preferences menu in Same GNOME and I couldn't think of a good way to
> integrate it into the menu system (a dialog to set the size is still
> needed of course). All of these issues can be fixed by a bit of ingenuity
> and I am very open to suggestions (and patches).

for what it's worth I would like it better if the Gnomines Preferences
menu was simplified and the default Small, Medium, Large sizes were
available directly from the menus (like Windows MineSweeper).

I also cannot help thinking Gnomine should include some comment about the
horror anti personell landmines inflict on civilians but that is a whole
other issue.

I'm not ready to draw an alternative theme just yet and "winflower"
always seemed like a really lame publicty stunt.  A less offensive
analogy for the same gameplay might be of a propector looking
for gold/oil/jewels or something like that.

> Background colours: Should be done, but I never got around to it (see the
> FEATURES file in CVS for features I want).

I expect it is an accessibility issue too.  The colours of both the start
and uncovered squares should probably follow those specified by the theme.

> I think the background picture issue is/was a feature request bug
> report.

I requested background images for the old Same Gnome, it is ideal for
gradually revealing a random image every time which increases the
long term replayability of the game.  There is also the potential for
branding and other commercial tie-ins when you can support that kind of

> The graphics code is set up so that putting a variable background colour
> in should be trivial.  Doing a background image is a lot harder with the
> current code (it was written for speed and a small memory footprint
> within the traditional X drawing system, i.e. no pixbufs or even Cairo).
> The UI for the colour is also an issue,

> I am a great fan of just doing drag-and-drop for setting the background
> (like gnometris) but people complain and say that it isn't discoverable
> and isn't intuitive.

It would be if there were enough other programs doing it, chicken and egg.
Direct manipulation by clicking on the background space might be a way to
make it more discoverable but as I think a Preferences dialog is
necessary.  (I would want to be able to specify a random background from a
directory and its subdirectories, which I think is too complicated to do
without a dialog, so I'm biased.)

> There is also the issue of grid line colours with that UI, although I
> was just going to auto-generate them from the background colour.

I haven't checked recently so perhaps you have changed this already but I
find the grid adds a lot of visual noise to Same Gnome the old version
didn't have.

> Persitence between sessions: One word: Yes (although see the end of this
> message for a more interesting, but harder, alternative).
> Icons are trivial. Look at the existing themes for guidance (don't forget
> about those in gnome-games-extra-data). Any file format that gdk-pixbuf
> supports is supported.
> > I'd also quite like to try converting/extending the tile drawing to
> > allow for a square blocks theme with redrawn boarder a bit like KDE's
> > kilckety has, this could accompany, overlay or replace the icons.

> You may not need to redo the drawing code. Square tiles are already
> supported. Its a while since I played klickety so I may be misinterpreting
> your intentions.

Klickety has a light boarder around each square but a heavier border
around groups of the same colour which provides a much clearer view of the
groups but it does not have an effect on mouse-over like Same Gnome does.

> > Was wondering, is there was any general direction/strategy for the
> > games? I seem to remember SVG being the craze a few months back.

To call it a craze is to trivialise the work required to make all the
games scalable (I hope that was not your intention).  All user interfaces
really should be scalable but most programmers cheat and dont bother with
anything but a fixed size layout.  Scalable user interface designs
accomdate different accessibility needs, allowing bigger font sizes is
just one part of it.  There is also the benefit of being able to target
hardware devices of all shapes and sizes from a single unified codebase
(forks are bad!).

> > Would be good to know this stuff before I start hacking away.

> The games should be simple (in the UI sense, not the game itself) and
> clean (i.e. not overloaded with features).

Usability versus Playability! :)

In reality they are complementary, things should only be difficult or
complicated when it makes the game more challenging and fun.  You will
notice many of the games include Undo functionality because even thought
it does make the games easier it is better to make them fun rather than

> Similar games should be similar to each other. e.g. Same GNOME, Five or
> More and Mines have similarities in things like having three board
> sizes. Some features, like full-screen modes and resizeable windows,
> should be universal but aren't quite there yet. The use of sound and
> session saving should also be universal - this isn't anywhere close to
> being done.

And when all that is done making all the games fully keyboard accessible
is another challenge.

> One note about session management: it would be really cool if, rather than
> being session-management oriented, the games started where they left off.
> There are two tricky bits here. One is you have to save the games on a
> stack so if two copies of a game are opened and then closed reopening two
> games at the same time gets you two different games (but opening one,
> closing it, and opening it again, gets you the same game). If the game
> state is saved at a the right moment then recovery after a crash is also
> possible.
> I hope this gives you enough to think about.

Bugzilla may not be the most fun way to get into a new project but
there are always lots of things to be done and picking and choosing
tasks that interest you is a good way to get started wit relatively easy

Thanks for getting involved.  Good luck!


Alan Horkan

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