[Kde-games-devel] kjeweled

Danny Allen dannya40uk at yahoo.co.uk
Sun May 13 14:39:58 CEST 2007


Hehe,
A long time ago, Roberto Alsina of KDE attempted to make a bejeweled clone for 
KDE, and he even used PyQt!
http://cablemodem.fibertel.com.ar/lateral/weblog/2004/10/04.html
http://cablemodem.fibertel.com.ar/lateral/weblog/2004/12/22.html

At the time, I made some images for his game attempt. I have put them online 
(http://www.dannya.org/mockups/jewels/) in the hope that something more will 
come of them ;)

Thanks,
Danny

p.s. If you make good progress with the game, don't forget to email me at 
danny at commit-digest.org and tell me all about it! ;D


On Sunday 13 May 2007 05:33:56 Vic Fryzel wrote:
> Hi,
>
> I'd like to make a "Bejeweled" knock-off for KDE, called kjeweled.  I think
> that it should be pretty straight forward.  I'm convinced that this could
> be a "beautifying" game for KDE.  The nature of the game could really
> provide a lot of aesthetic appeal and fun.  I think it'd give a lot of
> people something to do in their spare time, and really add a staple to
> kdegames.
>
> I've written a detailed description of the game.  It follows below.
>
> kjeweled is a game involving a board filled with gems.  The objective of
> the game is to align like gems into rows or columns.  Every time three or
> more like gems are aligned, the player's score is incremented.  The player
> must try to gain the highest score possible in the least amount of time.
>
> The kjeweled board is an n-by-n matrix of gems.  Each gem has 8 neighbors
> if it is not a gem on an edge or corner of the matrix, 5 neighbors if it is
> on an edge of the matrix, or 3 neighbors if it is on a corner of the
> matrix. Moving in kjeweled consists of selecting a source gem, and then
> selecting a destination gem.  If, after switching the chosen source and
> destination gems, an alignment of three or more like gems is found either
> vertically or horizontally, the move is allowed.  Otherwise, the move is
> disallowed.  A player may not move diagonally, meaning that the destination
> gem may only be directly above, below, to the left of, or to the right of
> the source gem.
>
> kjeweled has a number of different gem types.  Each gem has a specific
> shape and color.  The number of gem types could be used to make the game
> more difficult.  The number of gem types matters, as given the rule set,
> too few gem types would result in an instant or near-instant win too often.
>  For example, if a kjeweled game instance only had 2 gem types, it would
> not be possible for the board to ever "settle" in a stopped state to allow
> the player to move pieces, as they would constantly align, be removed, and
> be replaced.
>
> A kjeweled game instance could be timed, either to provide "rounds" to the
> game, or to log a points/time ratio as a way to rank player success.
>
> The manner in which points are alotted in a kjeweled game is such that for
> every gem alignment, a minimum number of points is awarded to the player
> for making an alignment of 3 gems, and an additional number of points for
> each gem in the alignment.  Thus, aligning 4 gems should result in more
> points being awarded than if the player were to align only 3 gems.
>
> Additionally, the kjeweled game could be played in a multi-player manner,
> in one of two modes.  The first mode involves two players playing on the
> same board, taking turns to move gems.  The players would be competing to
> get the highest score in the time alotted for each player's turns (meaning
> there would be a timer for each player, and when one player's time expired,
> scores would be counted and compared, and a winner declared.)  The other
> mode would involve two separate player boards, where players attempted to
> get the highest score in the common alotted amount of time, while making
> moves to their own board.  In this mode, both boards would be displayed to
> each client.  In all multiplayer modes, boards should be updated in
> real-time.
>
> kjeweled will store player scores and records, allowing for records to be
> broken.
>
>
> I was going to move forward with writing the game in C++ against the KDE/Qt
> libraries, although I was considering doing it in Python.  Do any game
> developers have any experiences with which worked out better for their
> game(s)?
>
> Does anyone have any hints for me before I move forward?  I'd like to host
> a Trac instance on my server, along with an SVN repository.
>
> Is there a way I could get some KDE artists to give me a hand with art for
> various parts of the game (e.g. gems, board tiles, gem stationary
> animations, gem movement animations, etc.)  Do we have any audio experts
> who could come up with some music and sound effects?
>
> Please let me know your ideas and comments.  Thanks!




More information about the kde-games-devel mailing list