The goal of the 1.9.0-betaX1) series is to complete the transformation to the 2.0 architecture.
Over time, subsystems will be migrated from libdeng to libdeng2 and revised accordingly, ultimately converting libdeng into a C wrapper API for libdeng2. libdeng will continue to be used by the game logic, because converting all of the logic to C++ and to the libdeng2 APIs would require a very big effort.
Revise game plugin specific plans to match this article's format, and create proposals for the features planned for each game plugin. That way more than one game can refer easily to the same proposal. It's not necessary to repeat the proposals below for each affected game (e.g., [[doom_screen_wipe]]) if they affect both the engine and the game.
In the status tables below, the state of each proposal is listed as it relates to that particular release, not the state of the entire proposal. Many proposals will be gradually completed over multiple releases.
|Proposal||State||Comments for this release|
|internal_file_system||Done||Used for locating and loading binaries, deng2 config and log output.|
|doomsday_script||Done||The script engine core. Used for deng2 config.|
|unified_networking||WIP||Doomsday is split into server and client executables even for single-player games.|
|distributed_dmu||Planning||Transmission of game object and world state changes from server to clients.|
|engine-controlled_saving_of_the_game||Planning||Based on the common serialization mechanism.|
|savegame_format||Planning||Based on the common serialization mechanism.|
|demo_file_format||Planning||Based on the common serialization mechanism.|