Presentation
freesiege is a project that aim to port the Siege game from Fallen Angels industries. This is a great game (i played long hours on it) but sadly it isn't available under Linux since it was developped by commercial company. Sources from the orginal games aren't available. Freesiege will strive to become a great reimplementation of a great game.
Techinically speaking, i choose to write the source in C++ since me and the contributors on this project have a common knownledge of this language.
Core game should take part of the c++ stl library.
For the graphical part of the application, we chose the game library SDL. After playing around a bit with this library, we found that its graphical aspect fits well the intended artistical expectation. Old school pixelised graphics are rendered nicely with this library.
Since those two libraries are available under Windows and Macos platform, future ports of the game under those platform should be quite easy.
Game experience should provide a intense 2D tetris-like war game experience with a strategic game flavour. It allows one player vs computer and two players games. The interface can be split into two part:
- The upper part of the screen is the board itself. It is divided in two 5 by 6 grids of tokens called elements (one for each player / computer). Elements can be of any of the four Elemental types (Wood, Steel, Fire and Magic). The player controls a cursor using keyboard arrows which allow the player to swap to elements on the grid. Swapping elements is an important part of the game since it is the way to create combinaisons to create fighting units in the lower part (ie. two neighboring steel tokens create a soldier, a big combinaison using fire and magic creates a dragon, ...). The bigger the combinaison are, the more powerful the created units are.
- The lower part of the screen is the strategic part. Two castles, representing the players, are disposed at the left and right of the screen. Units created by combinations spawn at the player's castle and start to rush towards the ennemy castle. When they meet other units on their way they fight each other using a simple health-attack-defense scheme. If a unit manage to reach the oppenent castle, it heavily damages to it. The first player to devastate his opponent's castle wins the game. This part of the game is quite strategic because each kind of unit has it own particularity. For example, when a simple soldier, fast to create, but with low health and medium defence/attack, fight a big, slow and difficult to create unit (eg. dragon or golem) or a ranged unit, the end is quite predictable. But since the soldier is very fast to create, you can create a big bunch of those to fight a big unit, making the outcome of the fight uncertain. The combinaisons and units are very well balanced, making the game very intense and struggling. Freesiege should use this set of unit in the first releases.
Freesiege intents to provide an intense strategic-board game experience. Since it like old graphics it should use SDL wich fit well the technical expectation of the developing team.
Download
To play the game, you can either download the latest release or checkout the CVS testing module for the latest update. To checkout the testing module type the following command:
cvs -z3 -d:pserver:freesiege.cvs.sourceforge.net:/cvsroot/freesiege co testing
Once you retrieve this module, you simply need to update it to keep in touch with the lastest update. You can do this by typing this command on the module directory:
cvs up -dP
To build the binaries, simply untar the release or checkout the CVS module and type "make". If it doesn't work watch if the SDL and SDL_mixer libraries are installed with development files available.
State of developement
Currently only a testing, but playable version of the game is available. It was developed under Ubuntu "Gusty Gibon" but seems to work well with wide-spreaded linux distribution (tested under Fedora 8). There is no tangible restriction for porting under Windows but time and interrest are missing. To work fine these binaries must be launch in a terminal (corrected soon).
After retrieving the testing module from the freesiege CVS repository, you only need to make it (no confguration needed yet). It building goes bad, you certainly need to install SDL and SDL_mixer library devloppement file. You will obtain two binaries:
- fight:
- Demonstrate background animation and test fight.
- elements/freesiege:
- The game itself. The game is playable for 2 players and features units described below. Keys are described in param.h and can be changed to your wish (don't forget to rebuilt the binaries afterward). Default keys are described below.
| Player 1 | Player 2 | |
| Move left | Left | S |
| Move right | Right | F |
| Move up | Up | E |
| Move down | Down | D |
| Select | O | A |
| Swap | O | A |
| Validate | P | Z |
Units and combinaisons
Some units are already implemented, but we still got new ideas ;). Some units are described below:
- soldier:
-
Basic unit, fight opponents when they touch them. Deal a small amount of damage when reaching oppenent castle. Created using two horizontaly neighboring steel elements. - knigth:
-
This unit can't be blocked only by a golem. Therefore it is the best solution to damage the other player and wound small ground unit. It is quite fast so it can avoid druid's cannon ball. Created using two vertically neighboring steel elements behind two vertically neighboring fire elements. - druid:
-
The druid is a big cannon mounted on your castle. When activated it shoot three round of explosive cannon ball. When those ball reaches the ground they explode dealing a large amount of damage to the neighboring units. However if the ball touches an unit before touching the ground, it doesnt explode and kill instantely. Since it was invented by a mad scientist it is not very precise and cannon balls damage both player's units. Use with caution!! Created using a square of 4 fire blocks. - golem:
-
Very powerfull unit, but very slow too. It doesn't deal a big amoung of damage to the opposite castle but it block every unit that fight with him. When he die, an explosion take place due to the fall of his huge on the battlefield. It is the strongest defence unit in freesiege. Created be building a big shell of stell with a magic heart.
Screenshots
Actual screenshots
Whow!! What a wonderfull game!!
Old screenshots
More recent screenshots
Really old screenshots
Links
- Download: https://sourceforge.net/project/platformdownload.php?group_id=210466
- CVS repository: http://freesiege.cvs.sourceforge.net/freesiege/
- Sourceforge Screenshots: http://sourceforge.net/project/screenshots.php?group_id=210466
- Sourceforge home: http://sourceforge.net/projects/freesiege
- Developers: pierre gueth, joel schaerer and julien dardenne
- Artwork designer: stanislas rapacchi
- Sound designer: charles virot
- Original game review and screenshots: http://www.the-underdogs.info/game.php?id=3224
- SDL API reference: http://docs.mandragor.org/files/Common_libs_documentation/SDL
- SDL mixer API reference: http://jcatki.no-ip.org:8080/SDL_mixer/SDL_mixer_frame.html
- Sprite database: http://sdb.drshnaps.com/index.htm