Working on the server's architecture

Kayne Ruse
2013-06-07 22:13:47 +10:00
parent 57ea589b0f
commit 213ff10184
3 changed files with 60 additions and 38 deletions
+1
@@ -24,6 +24,7 @@ If this wiki is missing something, it means I haven't gotten to it yet.
* economy * economy
* NPCs * NPCs
* Technical Information * Technical Information
* [Program Architecture](wiki/program-architecture)
* server & client communication protocol * server & client communication protocol
* modding outline * modding outline
* [Notes](wiki/notes) & [Scraps](wiki/scrapped-gdd) * [Notes](wiki/notes) & [Scraps](wiki/scrapped-gdd)
+1 -38
@@ -12,44 +12,7 @@ Should the server program have a UI? Or at least allow some sort of input at the
This is what a vanilla server needs to handle This is what a vanilla server needs to handle
* server name ...
* player cap
* maintaining the client list
* persistent player data
#### Game Resources
* resource distribution
* map data
* scripts
* tilesets
* sprites
* sound effects
* music
#### World Maps
* each game map is paged, giving free movement
* overworld (world backbone)
* dungeons (instanced?)
* player owned pirate ships
* other possible accessible locations
* collidable flags
#### Game Events
* Misc events
* Player combat is instanced, but players can drop in/out from the map
#### Active Entities
all entities have a unique, unsigned index
* players
* pirate ships
* monster intelligence
* loot drops
* combat instances
#### Player Information: #### Player Information:
+58
@@ -0,0 +1,58 @@
## Server Requirements
The server needs to handle the following content.
* server name
* server version
* maximum player count
* logon/logoff protocol
* maintaining the client list (dropouts)
* persistent player data
* lua scripting engine
#### Game Resource Distribution
If the client lacks a resource, the server needs to transmit that resource to the client.
* map data
* scripts
* tilesets
* sprites
* sound effects
* music
#### World Maps
The world map for a server can have any of these features. See [maps](wiki/maps).
* overworld, connecting different locations
* dungeons, possibly instanced
* player owned pirate ships, which in turn can travel around the sea
* any numer of possible maps running at the same time
* collision detection in each map
#### Game Events
This is an ambiguous section, covering several situations.
* instanced dungeons
* player combat
* timed events
* locational events
#### Active Entities
All entities on the server have a unique, unsigned index.
* players
* monsters
* pirate ships
* loot drops
## Server Architecture
* server metadata
* map list
* entity list
* client list