This wiki is archived and useful information is being migrated to the main bzflag.org website

Difference between revisions of "Development RoadMap"

From BZFlagWiki
Jump to: navigation, search
(2.6 (Next Breaking Release): vectors)
(4.0)
Line 142: Line 142:
 
* Shader/Material Support?
 
* Shader/Material Support?
 
* OpenGL 2+?
 
* OpenGL 2+?
* Tank skins
 
 
* Better Lighting, light objects in maps ( shaders or projected textures?)
 
* Better Lighting, light objects in maps ( shaders or projected textures?)
 
* A library of "smart server side bots"
 
* A library of "smart server side bots"

Revision as of 04:58, 16 July 2011

Overview

This document discusses the general development road-map for Future BZFlag Releases.

Features

Individual features may move up or down the roadmap depending on how/when they get done. Entire releases may be pushed up the roadmap or merged depending on how development goes.

Current Development Target

The current development target (trunk) is the 2.4.2 release

2.4

Goals: Get a release out

2.4 will be the next release of BZFlag and is protocol incompatible with all previous versions.

2.4.0 (Wake the dead)

Released on 2011/07/03 BZFlag 2.4

2.4.2

Planing page for 2.4.2

2.4.2 will be the first maintenance release of the 2.4.x compatibility line. Its primary function is to fix bugs found in the 2.4.0 release and to include non breaking items that were not ready during the initial release including:

  • All the horrible things we missed
  • BZFScron
  • Fastmap
  • Push Stats
  • Joystick fixes
  • CIDR/subnet bans from Filter.cxx

2.4.4

  • New Death effects
  • HTTP Management plugins
  • Bug fixes
  • New Font System
  • New Server List
  • New Translations
  • Download Authorization Dialog
  • GM lock-on markers on the radar.
  • Fix mac .app build system (make it just use a script not xcode?)
  • Sever side IP/Host/callsign (not perm base) mute
  • Graphic tank on radar at high zoom
  • Evaluate rabbit logic.
  • how to deal with third party libs in plugins, specialy ones we build optionaly.
  • command line options that have -set <name> <value> equivalents should be reviewed and possibly eliminated
  • bzfs should error out if no users or groups have SPAWN
  • Teach Roger not to drive into deadly physics drivers
  • Test anti permissions.
  • Translation update push.
  • Set app icon for as many OSs as possible (SDL does not do this)
  • Case insensitive bans.
  • Block spamers on rejoin (using BZID?)
  • Max chat rate (using filters?) with auto scilence. (maybe a plugin?)
  • Windows BZAdmin cleanup ( eval if it works the same as linux)
  • Sanity check list server input ( players over limit, etc..)
  • Extend player name cycling (like on /kick and /ban) to /poll kick and /poll ban
  • When game is over, autoboot everyone after some time, so server cannot be blocked forever by one player just sitting there.


2.4.x (Maintenance)

Continuing releases to fix critical bugs. New features should go into 2.6 at this point.

2.6 (Next Breaking Release)

Goals: Continue Development and cleanup gameplay.

This version may be rolled into the 3.0 release if that code base is still usable. If the code is extended from 2.4 it may have these features;

  • Lua (Client side)
  • Acceleration changes
  • Flag Drop "Zone" feature
  • XFire ?
  • OpenAL/Support, OGG, Hardware mixing and 3d (replace platform audio?)
  • Solution for dropped shots (TCP? confirm message? logging?)
  • Tank parts? Customization? CustomTanks
  • Team After Join?
  • More colors in OFFA?
  • Dialogs and prompts?
  • Eval ID and ID label markers (MMO style? Always show teammates?)
  • Graphics settings cleanup, optimize for GF2 or newer. Make low good for GMA chipsets.
  • List server indication of game options that are per object or zone ( rico, jump, etc..)
  • Server List showing that games require ID ( cool little icon?)
  • Use BZID for all saved user identifiers not names.
  • Cleanup MOTD into optimal system ( using db?).
  • Grouping for links (with relative and absolute names)
  • Grouping for weapons and entry zones (with transforms)
  • Grouping for physics drivers (with transforms and copying)
  • Grouping for texture matrices, dynamic color, xforms, and materials
  • Extern cleanup
  • Vector class use instead of float[3]
  • Incorporate the player's handicap value and physic drivers into the check calculations.
  • Decide what a GM is and how it should beahve when guided when the user has or does not have the flag, and how the lock should work with ST and CL

3.0 (Next Major)

Goals: Get back to where V3 wanted to be.

Using the 2.99 continuing branch, or the 2.6 branch with a lot of back-ports depending on code-base stability.

  • Have BZFS convert all world objects into mesh representations for consistent client collisions.
  • Point in Polyhedron tests to remove inside/outside points.
  • New Simulation
  • Shot Type/Flag Type split
  • Things added in previous versions that were not back-ported from the codebase this release uses.
  • Lobby

3.0.2

Goals: End user experience

Compatible release ( if possible ) that makes the game easier for new users to play and for servers to manage players.

  • UI Cleanup
  • New Group and User Management.
  • In game registration
  • Tutorials
  • Option to kick to observer.
  • Make the texture manager give out IDs and have everyone use the ID, not the image pointer, as it can change. Or make the image pointer self updating.
  • Binding keys to multiple actions (lua macros?)

3.2

Goals: Modernization

Goals for this release are to bring the game's networking and simulation system up to par with modern games.

  • Lag compensation
  • Threaded Networking
  • Threaded Simulation
  • UI customization
  • General Resource Updates and Downloads (sounds, scripts etc..)?
  • HTF as real mode
  • IPV 6

3.4

Goals: Server State

  • Server Side Radar
  • Server Side Shots (Iterative octree cell shot collision detection)
  • Server Side Deaths
  • Server Side Bot API and good bot samples
  • Removal of Client Side Logic
  • Generic Simulation serialization for recordings that are independent of network format.
  • Third party networking?

4.0

Goals: Graphics Upgrades

  • Third party graphics engine? Ogre? Irrlicht? lightfeather?
  • Patching?
  • Shader/Material Support?
  • OpenGL 2+?
  • Better Lighting, light objects in maps ( shaders or projected textures?)
  • A library of "smart server side bots"

5.0

Goals: Extensibility

  • Server defined game logic and settings
  • Game mode plug-ins/scripts on the server
  • Server defined graphics elements ( shots, models, etc)
  • List server separation by game mode
  • Require Registration and limit server choices until verified?
  • Social Components for players ( player ratings, facebooklike stuff?)
  • League Integration