From kde-games-devel Sun May 13 04:33:56 2007 From: Vic Fryzel Date: Sun, 13 May 2007 04:33:56 +0000 To: kde-games-devel Subject: [Kde-games-devel] kjeweled Message-Id: <200705130034.02306.vic () shellsage ! com> X-MARC-Message: https://marc.info/?l=kde-games-devel&m=117903089229596 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============0250200902==" --===============0250200902== Content-Type: multipart/signed; boundary="nextPart3151345.11lWyKUSbT"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit --nextPart3151345.11lWyKUSbT Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi, I'd like to make a "Bejeweled" knock-off for KDE, called kjeweled. I think= =20 that it should be pretty straight forward. I'm convinced that this could b= e=20 a "beautifying" game for KDE. The nature of the game could really provide = a=20 lot of aesthetic appeal and fun. I think it'd give a lot of people somethi= ng=20 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 th= e=20 game is to align like gems into rows or columns. Every time three or more= =20 like gems are aligned, the player's score is incremented. The player must= =20 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 i= f=20 it is not a gem on an edge or corner of the matrix, 5 neighbors if it is on= =20 an edge of the matrix, or 3 neighbors if it is on a corner of the matrix. = =20 Moving in kjeweled consists of selecting a source gem, and then selecting a= =20 destination gem. If, after switching the chosen source and destination gem= s,=20 an alignment of three or more like gems is found either vertically or=20 horizontally, the move is allowed. Otherwise, the move is disallowed. A=20 player may not move diagonally, meaning that the destination gem may only b= e=20 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 shap= e=20 and color. The number of gem types could be used to make the game more=20 difficult. The number of gem types matters, as given the rule set, too few= =20 gem types would result in an instant or near-instant win too often. For=20 example, if a kjeweled game instance only had 2 gem types, it would not be= =20 possible for the board to ever "settle" in a stopped state to allow the=20 player to move pieces, as they would constantly align, be removed, and be=20 replaced. A kjeweled game instance could be timed, either to provide "rounds" to the= =20 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= =20 every gem alignment, a minimum number of points is awarded to the player fo= r=20 making an alignment of 3 gems, and an additional number of points for each= =20 gem in the alignment. Thus, aligning 4 gems should result in more points=20 being awarded than if the player were to align only 3 gems. Additionally, the kjeweled game could be played in a multi-player manner, i= n=20 one of two modes. The first mode involves two players playing on the same= =20 board, taking turns to move gems. The players would be competing to get th= e=20 highest score in the time alotted for each player's turns (meaning there=20 would be a timer for each player, and when one player's time expired, score= s=20 would be counted and compared, and a winner declared.) The other mode woul= d=20 involve two separate player boards, where players attempted to get the=20 highest score in the common alotted amount of time, while making moves to=20 their own board. In this mode, both boards would be displayed to each=20 client. In all multiplayer modes, boards should be updated in real-time. kjeweled will store player scores and records, allowing for records to be=20 broken. I was going to move forward with writing the game in C++ against the KDE/Qt= =20 libraries, although I was considering doing it in Python. Do any game=20 developers have any experiences with which worked out better for their=20 game(s)? Does anyone have any hints for me before I move forward? I'd like to host = a=20 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= =20 various parts of the game (e.g. gems, board tiles, gem stationary animation= s,=20 gem movement animations, etc.) Do we have any audio experts who could come= =20 up with some music and sound effects? Please let me know your ideas and comments. Thanks! =2D-=20 Vic Fryzel (vic at shellsage dot com) http://shellsage.com/ Key id C7B780CA =3D 3235 2261 807B 451C DA4D DFBA CAA7 80CF C7B7 80CA --nextPart3151345.11lWyKUSbT Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.3 (GNU/Linux) iD8DBQBGRpU6yqeAz8e3gMoRAiR8AJ9jwzGuTQeoX8Qr68LU4JmJiOxyYQCfSf/+ kpPvnDlR6Lh4lwPM1xmXWoM= =+AI+ -----END PGP SIGNATURE----- --nextPart3151345.11lWyKUSbT-- --===============0250200902== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ kde-games-devel mailing list kde-games-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-games-devel --===============0250200902==--