Learned that I'm good at killing my own motivation to do things by over amplifying the importance of what I'm doing. Being a details kind of worker, and not the bigger picture worker, it's important that I chunk projects into smaller projects and into smaller tasks. This is an excercise in just that.
This will become a full fledged game in the future, but one step at a time, ey?
Not open for contributions until I pass the tech demo part.
- The database server exists
- The server can respond to requests
- The server stores player characters
- The server stores player characters and validates them
- The server can modify player character attributes
- The client can't modify anything on existing characters, only request new characters
- Player characters are given stats and attributes which will affect character's performance
- Characters can target characters with attacks
- Character actions are logged and preserved for viewing
- Characters take damage
- Characters take damage based on each other's stats and attributes
- Characters can't attack repeatedly (attack mashing)
- A turn based system exists to an extent
- Characters take turns properly
- Players can chat and emote
- Characters can't be controlled by another client controlling another character.
- Character attack types are stored as a database entry
- Character attack types have a 'wind up' and 'recovery'
- Some attack types will cost a resource (like mana or stamina)
- Characters can defend against attacks deliberately somehow
- Combat will favor the attacker somewhat, but defender won't be helpless
- A campaign exists to a degree
- Players can select their next destination which should have some effect on the next encounter
- Players would do this indefinitely ('cause it's a fucking tech demo.)
- Events will be read from the database
- Npcs monster types will exist in a database
- NPC monsters will be selected from the monster database to participate in 'campaign battles'
- Campaign events can be progressed through cause and effect like choices that have a randomized variety.