It has become apparent to me that without some kind of major shift in the development path of Onyx that no reasonable state of completion will ever be reached. Along with this realization I've come to accept that I no longer have much, if any, interest in continuing work on the project. At the same time I absolutely refuse to abandon it until it has been completed. This all implies that there needs to be a major shift in the development path, or I need to get out of the game development business right now, before I waste any more of my or my contributors time.
Abandoning the project isn't acceptable. As a result I'm going to list everything that needs to happen by section to release a tech-demo (maybe generally, perhaps just to beta teams) that will fall short of chapter 1 but will allow asset acquisition to continue.
To make that clear. Once the following list is done, perhaps slightly before, a tech demo WILL be released, horrible assets, incomplete effects and and all.
Here's what's going to happen, by section (careful, it's long):
Story / Game Universe Development:
- Race expansion will be frozen, but not curtailed. No new races will be introduced, even if game assets have to be sacrificed. New races may be introduced after chapter 1 has been released.
- Ship, weapon, universe and map development will proceed as required without change.
Visuals and Effects:
- Ambient debris must be added to allow for player spacial orientation cues.
- Explosion tweaking will continue.
- Light sources must be definable as point or area sources to improve rendering speed for large numbers of objects.
- Better LOD selection for connected objects such as missiles. Basically this requires the ability to disable missile and PD turret rendering entirely for very low LODs.
- Localized damage debris from impacts or ambient emissions is required. This is hand-in-hand with generic connectables for locating emission points.
- Generic effects may eventually be implemented, but for now a specific effect need be added for ships entering or exiting spacial compression, including action temporaries for disabling controls, disabling collisions and modifying the camera as appropriate.
- Jump engines will not be visible anywhere in the initial release.
- Basic follow/collide AI required for missile weapons.
- Basic formation, attack, strafe, evade and destination seek AI's required for ships.
- Basic target selection and tracking AI's required for PD turret weapons.
- Arbitrary and relative based location triggering required for mission termination and game events.
- Ship type destruction counts, wing destruction counts and faction destruction counts required.
- AI Application actions required.
- Damage % Triggers required.
- Set ship status actions required.
- Mission objective alteration actions required.
Game Physics & Mechanics:
- Conversion to spacial hashing.
- Generic connectables to replace location seeking.
- Full collision hull replacements will be created to replace generation from visualization hulls.
- Afterburners will be detached from energy consumption and replaced heat based limiting.
- NAV point travel needs to be stabilized and brought out of beta, as well as a method for selecting destinations. See: Other.
- Capital ship turrets need be added without the ability to be manipulated. First releases will purposefully avoid any scenario where capital ship turrets need be manipulated or fired.
- Locational damage application with substructure DU.
- Dynamic kinetic energy conversion required for explosive damage to work properly.
- No audio game asset acquisition will take place in this area until the AI is completed. This may not make sense to look at, but there's good reason.
- Any untextured models will be immediately mapped with detail textures only. This is the single largest area of compromise. The number of model assets already created, plus the scheduled additional ships AND the addition of more scenery objects is completely imbalanced with the near zero textures being generated. This decision is one that I desperately wanted to avoid, but it has become obvious that no magical solution is forthcoming and an untold number of paths are blocked by the generation of textures. It is very likely that this compromise will render the final project (at least for chapter 1) completely uncompetitive in the market, but.... well, life sucks.
- Music asset acquisition will also be frozen pending the completion of basic AI.
- Pilot portraits will be disabled (how this will effect pilot creation is unclear without causing incompatibilities between versions) pending basic AI development.
- Turret/weapon separation as well as object connection point definitions need to be completed. The union of objects need only be done once for the physical hull and therefore the different objects may be rendered as a part of the same game entity. This is important to limit the scope of change to the turret game object class.
- Generic VDU rendering class needs to exist with the HUD built in such a way that VDU's may be stacked at different appearance locations. HUD elements need to be reconfigurable for different ships, but that isn't required for now. It should be considered. (Colours and fonts and many HUD elements are already configurable)
- Status and target status need to be replaced with 2D visualizations.
- Missile selection VDU is required.
- System damage VDU
- Gun grouping MAY be supported if a trivial way to do so is apparent. If not secondary fire will be disabled and all weapons will always be grouped in the primary.
- Radar needs to be reconfigured to be much clearer as low gamma screens are virtually impossible to use. This may apply to all HUD elements.
- Mission objective VDU required.
- HUD sound effects (generic bleeps is fine) need to be added.
- Briefing room creation with scripted (may use trigger infrastructure) simplistic animations similar to Tie-Fighter. Single map display and single dialog for now. Story based 'conversations' or story development will happen in-engine with triggers.
- Configuration room creation to allow weapon load-out and ship selection.
- Debriefing screen creation to allow for missions to conclude.
- Pilot viewer needs to be completed in the archives.
- Audio configuration is broken and need be fixed if easy to do, or completely disabled in the menus.
- Weapons display needs completion in the archives.
- The archives need limiters for pilot experience, which won't ever be updated in the tech release. (This lets me cheat a lot for now)
- Basic AI Completion.
Assets are waiting on this, not to mention the game cannot be completed without.
- Detail texture mapping for all models.
Debris creation, game balancing and campaign development are all waiting on textures for models.
- Basic camera/ ship AI configuration and dialog cut scene scripting
Doing ANY story elements require at least basic controls over ships and the camera. Any first release needs to have at least minimal support here.
Eye on the Future (aka Next stage Critical Path)
- Campaign development will be crucial to spark any required development in the fleet, barracks, pilot, character and faction classes. Major stability issues WILL arise once campaign data is stored from mission to mission.
- Capital ship turret manipulation needs to be completed as soon as the basic release is completed.