Difference between revisions of "Roadmap"

From SfzWiki
Jump to: navigation, search
(spaceship interior)
Line 78: Line 78:
 
* buy weapons and equipment
 
* buy weapons and equipment
 
* missions : delivery (special cargo, jettison fails mission (or not possible?), mission dialog)
 
* missions : delivery (special cargo, jettison fails mission (or not possible?), mission dialog)
* load system from file
+
 
 +
== inter-stellar travel (jump) ==
 +
 
 +
* load system from file  
 +
* list of all systems
 
* jump to other system
 
* jump to other system
* map of multiple systems (debug:display coordinates under mouse)
+
* limit to adjacted systems
 +
* map displaying system positions graphically (debug:display coordinates under mouse)
  
== large scale system ==
+
== intra-stellar travel (space-folding) ==
e.g. distances between planets in a somewhat realistic scale.
+
requires large scale systems, e.g. distances between planets in a somewhat realistic scale.
 
this will require some form of space-folding-travel mode to remain playable,
 
this will require some form of space-folding-travel mode to remain playable,
 
we'll keep that for later, other things are more important first.
 
we'll keep that for later, other things are more important first.

Revision as of 23:00, 22 July 2007

see also the now obsolete OldRoadmap2006
see also Notes

simple multiplayer

target : just fly around together, blowing up asteroids and each other

  • load ships saved in editor as nodegroups
  • extend cRobRenderOp::ConvertToMesh in robrenderable.cpp to add submeshes to existing meshes
  • (load ships saved in editor as mesh)
  • (generate LOD meshes for ships)
  • remove inner faces of ships
  • server : open tcp listen socket (net_L.cpp : NetListen, PopAccepted)
  • client : open connection to server socket (net_L.cpp : NetConnect)
  • send simple tcp messages : e.g. chatline (main.lua:232:SendChat , net_L.cpp NetReadAndWrite)
  • server : send spawn-messages for stuff created after join to client
  • server : send spawn-messages for world on playerjoin
  • server : send-resync-stuff (prepared in in location_L.cpp : SendResyncs)
  • client : receive-resync-stuff (prepared in in resyncreceiver_L.cpp)
  • client : send mouse/rotation/turn quaternion to server (udp)
  • client : send key-changes to server (tcp, accelerate, fire weapon)
  • server : receive player turn and keys
  • server : send effects (laserbeam on weapon) to server
  • server : ray/sphere hit detection : laser destroys ship or asteroids
  • server : respawn killed clients when space key is pressed
  • server : detect and handle create-listener error
  • client : detect and handle connect error
  • server : detect and handle client-disconnect
  • select shiptype and enter name before join (reselect shiptype for respawn?)
  • sounds effects
  • maybe http://jamendo.com background- and mainmenu-music
  • third person cam ingame
  • weapon icons with range and damage indicators, and recharge indicators
  • gui : target lists
  • gui : select targets with mouse click directly
  • tactical hud elements indicating weapon range
  • powerups/health packs in asteroids ?
  • design decision : newton physics or not ? not might be better for combat

coop multiplayer

  • (to be planned) defending a space station
  • (to be planned) enemies arriving in waves
  • (to be planned) buying/salvaging equipment and ships between waves

spaceship interior

  • draw inverted ship mesh as interior background
  • switch between inside and outside view
  • tile-based walking inside ship
  • meshes and textures for indoor stuff
  • menu for placing items inside ship
  • save items inside ship to file (ingame save and/or mapedit save)
  • shipeditor : toggle between inside/outside
  • interior : align cam to outside cam on switch

untitled

  • gui : nicer dialog frame (white text on black background, corners a bit round, buttons different from dialog frame)
  • gui : nicer menu look
  • gui : generic list dialog (for cargo, shop, etc...)
  • buy weapons and equipment
  • missions : delivery (special cargo, jettison fails mission (or not possible?), mission dialog)

inter-stellar travel (jump)

  • load system from file
  • list of all systems
  • jump to other system
  • limit to adjacted systems
  • map displaying system positions graphically (debug:display coordinates under mouse)

intra-stellar travel (space-folding)

requires large scale systems, e.g. distances between planets in a somewhat realistic scale. this will require some form of space-folding-travel mode to remain playable, we'll keep that for later, other things are more important first.

  • gui : hud : distance display, on mouse over : name, type
  • larger system, spec travel
  • 2d system layout (orbits, but not moving)
  • gui : system map (render to texture, mousepick, click selects planet, planet has stuff orbiting, hierarchial)

tutorial/story

maybe a small story as intro/tutorial to game :

  • deliver something to a nearby station/planet (basic controls) (problem : 1 player ?)
  • targetting practice : shoot some debris/junk(Aquanox) /Astreroids/ old-junk-space-ship(EV)
  • destroy some drones that have run amok (hacker,FOF-malfunction,...)
  • bounty hunt : destroy some pirates , reward : jump-drive
  • sientist sensor tutorial : search for right materials, reward : construction plans (weapons, shields...)
  • asteroid mining tutorial
  • crafting tutorial
  • explore mission ? (nearby systems, some other sientist needs help, delivery..)
  • capture some animals on planet, planet personal weapons tutorial