NetworkProtocolNotes

From MountainfortWiki

Jump to: navigation, search
(idea : generic gui system for serverside scripting with thin client)
 
Line 1: Line 1:
== general ==  
== general ==  
 +
 +
* [[NetworkProtocolSpec|protocol specification]]
* connecting webgl+javascript in browser via html5 websocket (tcp) to lua/c++ server
* connecting webgl+javascript in browser via html5 websocket (tcp) to lua/c++ server
Line 79: Line 81:
** idea : per entry list of  image,text,image,text,....  can be used for ressource list  (probably needs 2d image type with tex+uv start+dimension, see server-sent-content above)
** idea : per entry list of  image,text,image,text,....  can be used for ressource list  (probably needs 2d image type with tex+uv start+dimension, see server-sent-content above)
** usable by :  building construction, crafting,  multiplayer-voting and similar (kick, mapchange, save...)
** usable by :  building construction, crafting,  multiplayer-voting and similar (kick, mapchange, save...)
 +
 +
=== idea : generic gui system for serverside scripting with thin client ===
 +
 +
* element = { x,y, w,h, img(url) / text / textentry / checkbox , returncode on click , tooltip on mouseover }
 +
* thin client -> doesn't have to understand concepts like "choose from list", all is in server -> scriptable
 +
* maybe for serverside options (sight range, map selection ...)
 +
* server can send CloseDialog(id) and UpdateDialog(id,newdata)
 +
<b>SCRAPPED</b>, problems : things like radar etc that should update every frame, too expensive via network
== player actions ==
== player actions ==
Line 110: Line 120:
* "chunk" is a group of 8x8x8 tiles
* "chunk" is a group of 8x8x8 tiles
* the term "block" is avoided as it is ambigious and could be understood as 1x1x1 or 8x8x8
* the term "block" is avoided as it is ambigious and could be understood as 1x1x1 or 8x8x8
-
 
-
= aufgaben/interesse verteilung? =
+
= gameplay concept =
 +
 
 +
* multiplayer, roughly 4 players, match lasts roughly 1 hour, but can be saved/loaded/continued later
 +
* start with nothing, survive & build from scratch (no start items)
 +
* build fortress and defend against sieges (after certain time, regular?) and individual enemies
 +
* maybe dungeon-heart(movable item?) / king that needs to be defended to create motivation for defense rather than escape
 +
* sandbox, play with water/magma simulation
 +
 
 +
= tasks/interest distribution? =
-
hagish : wasser-simulation, pathfinding (multithreading)?  c++
+
* hagish : water-simulation, pathfinding (multithreading)?  c++   , ext lib input browser independent keydown
-
ghoul : lua-scripted events, e.g. tree falling if lumberjacked, webgl client (but quick&dirty,lua>js), network?  
+
* ghoul : lua-scripted events, e.g. tree falling if lumberjacked, webgl client (but quick&dirty,lua>js), network?  
-
= todo plan =
+
= todo : planning =
* gui system detailed net messages
* gui system detailed net messages
-
* physic resync / blocking / cheatprotect ? later
 
* server : multithreading data access (water sim + pathfinding mainly, double-buffer old=readonly to avoid locking)
* server : multithreading data access (water sim + pathfinding mainly, double-buffer old=readonly to avoid locking)
 +
* physic resync / blocking / cheatprotect ? (later)
 +
* player appearance / animation (later)

Latest revision as of 19:22, 30 April 2011

Personal tools