Development:Roadmap:0.6.0

From VsWiki
Revision as of 15:13, 5 June 2008 by safemode (talk | contribs) (0.5.1)
Jump to: navigation, search

Vega Strike Upon the Coldest Sea stable version 0.5.0 was released on 2008-04-24.

This is a task list for intermediate 0.5.x releases. The stuff that should get done for each intermediate and until the 0.6.0 release.

Generic Roadmap

This roadmap is in need of further broken down into release specific tasks and assignment of those.

Factions rework

  • Hierarchical factions (e.g. *_citizen, affects *)
  • Allowing for non-factions (privateer is already our non-faction, we just need to fix some of the behavior.)
  • Ability for player joining a faction

AI

  • Faction-level AI (race / faction strategy)
  • Micro AI (ship, fg, collision avoidance, tactical and navigational AI, roles definition)
  • Macro (fg/faction)
  • Flightgroups
    • Classification (fleet, squadron, flotilla? etc. - something to differentiate between {5 plowshares} and {3 archimedes, 2 Tesla, 8 kahan, 20 schroedinger, 10 goddard, 5 watson} )
    • Flightgroups should have subsets of ships that spawn together (combined arms)
  • add another dimension to roles (attack AND defend/predator AND prey roles) instead of forcing both to be the same.
  • AI spec drive use, escorts...

Content Creation Tools

  • Prerequisite: straight XML, DTD (Document Type Definition) support
  • System Editor
  • Unit Editor
  • CSV Editor (MPL, faction_ships.py, units.csv)
  • Mission Editor
  • Campaign Editor
  • Config Editor

Multiplayer

  • Persistence (systems, bases, flight groups, …)

Building/Packaging

  • Move to cmake

Documentation

  • Document the general function/flow of the game
  • Engine internals, API (development documentation)
  • Python bindings
  • Should we use the builtin python documentation standards for documenting this stuff--maybe in the stubs folder?
  • Faction documentation

Engine rework

  • Audio subsystem overhaul
  • Support for texture versions and normal map tangents
  • Shader updates

Release Roadmap

There are up to three sections in each roadmap release chapter:

  • VS Engine relates to: modifications to c++, shaders, and python code (not including missions), repository structure changes, packaging system, support tools
  • VS Data relates to: modifications to art, data, and mission scripts
  • Other relates to: documentation, wiki, project web page, masters repository, project management

Each task item should also have a prefixed tag in the form of [STATUS{=OPEN, ONGOING, DONE}, development-coordinator{=username}]

0.5.1

VS Engine

  • [FINISHED] (safemode) Separate bin and data tree structure. Note: those who have data4.x already, set your client to not pull external repos or cancel when it tries to download data4.x. Then move your current data4.x alongside /bin, renaming it to data. Updates should work seamlessly and recurse into /data and /bin afterwards. Newcomers can just pull win32.
  • [FINISHED] (ace123) Rename data4.x to data and patch corresponding source code where necessary.
  • [FINISHED] (safemode) Make a high quality graphics texture pack (hqtextures).
  • [FINISHED] (pyramid) Updates to the shader (commit chuck's unit shader)
  • [FINISHED] (pyramid) Correct rings generation to be always in the same plane
  • [FINISHED] (pyramid) Support for target shield gauges definition
  • [ONGOING] (klauss) Add support for "TexturePackingVersion" variable in xmesh
  • [ONGOING] (klauss) Add support for techniques and far z-buffering correction
  • [ONGOING] (klauss) Tangent support for normal maps
  • [ONGOING] (klauss) sound refactoring phase I - basic functionality
  • [ONGOING] (klauss) movie support
  • [ONGOING] (ace123) player relationship with each faction
  • [OPEN] (ace123) Shader support for planets (new unit.csv column)
  • [OPEN] (pyramid) New planet shader
  • [ONGOING] (safemode) Preparation of a cross-platform packaging system (cmake)
  • Minor bug fixes.
    • [FINISHED] (pyramid) planetary rings are always coplanar
    • [FINISHED] (pyramid) system ownership (faction) and sector info shown in RVDU
    • [FINISHED] (pyramid) python modules can be organized in additional subfolders (ai, mission, quests)
    • [OPEN] (ace123) show ship sell price in user interface

VS Data

  • [ONGOING] (safemode) Add textures to hqtextures.
  • [FINISHED] (pyramid) 8 faces for armor HUD images
  • [FINISHED] (pyramid) Higher pay for combat missions.
  • [FINISHED] (pyramid) Tutorial mission
  • [FINISHED] (pyramid) splash screen grouping in pre-load and load ani directories
  • [FINISHED] (pyramid) additional art (lava background, space backgrounds, hud images)
  • [FINISHED] (pyramid) partial extensions renaming (cockpits, sprites)
  • [FINISHED] (pyramid) Visually enhanced target shield gauges
  • [ONGOING] (pyramid) Porting of old quests to new engine (done: blockade, dispute, shipyard bomb, surplus)
  • [OPEN] (???) Units re-texturing including normal, shininess, spec maps or texture packing version in mesh files. List of required changes needs to be prepared.

Other

  • [OPEN] (???) The Player's Guide tutorial glitches: Example: It says to buy the jump drive from Jenek...

0.5.2

VS Engine

  • [OPEN] (safemode) Implement opcode's Ray Collider for ray-mesh collisions. (alongside bsp collider tunable via configure switch ala how opcode was done). Wont be turned on by default until 0.5.3
  • [OPEN] (klauss) More shader fixes, texture updates/additions.
  • [OPEN] (safemode) Make tools and readers operate on a Proper XML format , this could be switchable via special comment at top of xml input. This is for backwards compat with non proper xml files in mods. To be made default in 0.5.5
  • [OPEN] (klauss) sound refactoring Phase II would add mixer channels (a feature to get seamless blending with music, comm chatter and sfx)
  • [OPEN] (klauss) put gfxlib into a class, or at the _very_least_ a namespace

VS Data

  • [ONGOING] (pyramid) Extensions renaming and standardization (.image, .texture, .sprite).
  • [OPEN] (pyramid) Revision of planet types

0.5.3

VS Engine

  • [OPEN] (safemode) Ray collider turned on, BSP stuff removed.
  • [OPEN] (klauss) XGUI support for scripts
  • [OPEN] (klauss) More shader fixes (should be pretty good by now), texture updates/additions
  • [OPEN] (safemode) Continue to work on proper XML parsing in engine
  • [OPEN] (safemode) update xml files in VS to be proper mode
  • [OPEN] (safemode) setup tool

VS Data

  • [OPEN] (pyramid) Create custom systems with Homeworlds for races and factions

0.5.4

VS Engine

  • [ONGOING SPECIFICATION] (klauss, darkmage) content creation tools: end user tools for helping with content creation. These should be a part of vegastrike code-base, to keep things in sync and reduce maintenance.
  • make proper xml mode default, remove code to parse obsolete xml-ish code.
  • Get codebase stabilized in prep for refactoring graphics code.
  • [OPEN] (safemode) new wormhole effects
  • [OPEN] (safemode) improved ship AI
  • [OPEN] (klauss) cleaning up unused mesh legacy formats (mesh_bin.cpp, ...)

VS Data

0.5.5

VS Engine

  • Refactor graphics code.
  • [OPEN] (ace123) Make jump points be drawn on HUD only.

VS Data

0.5.6

VS Engine

  • Bug fixes.
  • Texture additions/ etc
  • Document refactored graphics and sound code.

VS Data

0.5.7

VS Engine

  • Thread graphics code and sound code with boost threads.
  • Bug Fixing.

VS Data

0.5.9

VS Engine

  • sound refactoring Phase III would add environmental effects
  • Bug Fixing.
  • Documenation
  • Credits

VS Data

0.6.0

VS Engine

  • Minor bug fixes from previous revision
  • Packaging

VS Data

  • documentation