Development

Engine

- One of the first things that has to be done is to get the map files to load properly. Tiled (The map editor we are currently using) saves the map files with a xml, making it possible to parse the xml file and create the map on the screen. NOTE: This will be the hardest part of creating the game engine, as our resident coder has no experience in doing the sort of thing.

- As stated above, the engine will be in isometric view (The maps will already support the stacking), so the next thing to implement would be collision detection and layering (hopefully this is defiended in the xml map file, so its not a problem when we parse). After this, the bulk of the engine will be complete, with only a few rpg elements to be added afterwards.

- After the above elements are the implemented, the next step in developing the engine would be to get a working entity system completed. This would have to include a combat interface of some sort (maybe), a way to talk to whoever the player has hit, and various other standard rpg actions.

- Some of the nessesary elemts include: An inventorty, a typical dialog box, and so on.

Technical

- The game will be written in the scripting language of python, allowing non-coders to help with the development of the game.

- The number of dependencies will grow as time goes on, becuase the coders will add them when they see fit. They main rendering engine however, will be written in Pygame.

- The goal of the codebase is to make it easy to read and to modify, even if your a non-coder.

- the codebase + game + engine will be completely cross-platform, as we will the not use any libraries that are platform specific, as this would instantly rule out the said platform.

- We would like the game to be able to be run on low-end machines, and while working on the code base will watch out for memory hungry processes and cpu intensive bits of code.

- The *entire* game will be maintained in python 2.5 and all the corresponding module versions. Even if python 3.0 comes out, the game will still remain in 2.5 unless someone creates a converter to convert 2.5 code into 3.0 code (which wouldn't work anyway unless they took into account all of the dependencies).

page_revision: 5, last_edited: 1207273716|%e %b %Y, %H:%M %Z (%O ago)
Unless stated otherwise Content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License