StendhalObjectives
This documents wants to be a guide to understand what are stendhal's objetives and motivation, so we can try to achieve it in a easier way by doing only the simplest possible thing to make it work.
Goal
Our goal is to create a multiplayer game with several zones in which players can move, chat and fight. Fighting is to gain experience points that can then be spent on new equipment which will be available at shops on one of the zones where the city is located.
The main point on developing stendhal is to stress-test the engine so that we can identify black points and areas that need to be improved.
Please keep in mind that we want it simple, we want it fast and we want it now. Big complex features need to wait for the next iteration of the project.
Roadmap
Release 0.00
Code first server logicImplement a client that render the background- Add a GUI to client
Split pixel units of arianne unitsAdd static Game objects to clientAdd static objects on server map.Create accesibility map for server and client ( 0 free, 1 blocked )Code collision detection system knowing that:Tiles can be of anySprite can be of any sizeBounding boxes is enough
Add collision detection to serverAdd dynamic game objects to clientImplement rendering system where sprite center is not 0,0 but any other defined by user.Allow player to send actionsRefactor code for sending actions to server- Code actions on server
Move- Chat
Change zone
Test change zone action- Code actions in client
Add animations to sprites- Expand GUI to support these actions
Add proper animations for actionsCreate build.xml file for allowing Stendhal to be compiledCreate automatic method of building released
Release 0.01
- Code actions on server
- Attack
- Heal
- Add proper animation for actions
Release 0.02
- Add NPC to server
- Allow interaction with NPC
- Create tasks for players
- Allow completion of tasks
Release 0.03
- Make bigger zones
- Implement algorithm to enter houses or things
- Houses
- Trees
- etc
- Expand GUI to support these features.