-
Notifications
You must be signed in to change notification settings - Fork 228
Ideas 2011:Tile set
We currently describe and display each tile independently. A ground tile rotated by 90° becomes a totally new tile with own ID instead of staying the same tile with a different rotation applied. This leads to the following main problems:
- all tiles are specified multiple times (in different rotations)
- it is hard to add new tiles
- unnecessary overhead of copying the same files all over the place
- current map files are very hard to edit
- especially our editor needs attention
- we store the graphics for e.g. buildings in a different way, which is confusing
We specified a new structure similar to the action_sets we use for building graphic sets. This includes grouping tiles which only differ in rotation and making the database (map file / savegame) store the basic tile + rotation. We also want to fix our editor and allow all players to create new islands based on this new structure.
If time is left: We'd like to have specifications of which tile can be connected to which other tile in a way that our random map generator can use. This way we could generate much nicer looking random maps.
- A tool to bulk-edit SQLite files
- Python programming skills
- basic understanding of the way our tiles and maps currently work (can easily be obtained while working on the project)
- Estimated difficulties: Needs quite some work with [FIFE internals](Application 2011#fife) like animation management and the editor framework
- We expect a moderate difficulty after you got familiar with our graphics structure.
- A specification of the new format that you should try to implement first: http://lists.unknown-horizons.org/pipermail/uh-user/2010-February/000023.html and follow-ups
- Mailing list discussion about the format and how we decided on that particular new one: http://lists.unknown-horizons.org/pipermail/uh-user/2009-November/thread.html#0 and follow-ups
- A new editor by the FIFE team
- The work nihathrael already did on this topic.
This is found in the branch
development
and tries to implement the new structure. Approximately 50 percent of the overall task is working and only needs to be checked. See table below. - trac ticket for improving random maps: #765 / check Talk:Random_map_system#Creation_parameters
- trac ticket for optional feature: #270
- trac ticket for optional feature ambient graphics: #158
Description | commit hash |
---|---|
DB and map modifications, work on loader | a8e8c5d6bf87fe87c6f96c0a3e53720d668064f6 |
new DB table | d7b5319d824444b7ea4406fba12ff8073618b50d |
new DB structure, loading | 69763446c93fa8797a68b232afbd15736a7bb2cb |
adapt game logic | 94205610cbc4dd217ea248bf839a830b3f82368b |
remove now obsolete files | a67e6c1900575dca5174e33a9a375f65438188ae |
editor / tileset loader | d8f820f17abeeab516ac1ac635cbe5a791d8f6f0 |
work on editor | ebb6f5bd6b8dea1c30cd5a3733350bd9ddafe59d |
As a pre-GSoC task you could try to re-implement the above mentioned commits or have a look at our random map generation.
You can shift around release goals and target dates in the planning stage as you like. Once your mentor and you agreed on a rough timetable, only light modifications should occur if there happens nothing unforeseeable.
- Milestone 1: new tileset works ingame
- Milestone 2: random maps properly deal with the tiles
- Milestone 3: new, flexible map and island editor
- SoC Deadline: work on additional features such as transition tiles on own layer etc. -- this is still to be properly specified
In general: If your mentor agrees, you can change almost everything in our descriptions. They are just meant to provide guidance if you are not sure where to start or which way to choose.
You are especially free to alter the following parts:
- Tile loaders
- Editor UI and mechanisms
- Object loading
and to include:
- random map parameters on game creation
- support for ground tile effects, e.g. transition and ambient graphics
Your mentors for this task will probably be: nihathrael
These devs have already worked with our old map files and might help out if you have trouble testing: eoc, Gambit
Home > GSoC > 2011 > [Ideas] (Ideas-2011)
Tile set
Combat system
AI player
Unit tests
GUI overhaul
FIFE
FIFE Sound
FIFE Pychan