OpenEVA

An Extravehicular Maintenance Sim

Project Roadmap | 2017 - 04 - 30

Now that we have a high level concept for OpenEVA laid out, we can begin to plan a development schedule, choose technologies and identify risks. An intelligent plan and development strategy is crucial to the success of any game, software, or engineering project. Laying out a roadmap of our project’s features and development will allow us to define scope, set milestones and deadlines, and prevent feature creep or wasted effort. Having a concise plan will give us reference for the future, allow others to collaborate and help us develop the pipelines, environments and technology we will use to realize our vision.

I would like to release the complete version 1.0 of OpenEVA sometime in the spring or summer of 2020. Three years of development should provide enough time to develop the core features of OpenEVA as well as provide time to generate the content required to release a finished product. Continuing maintenance and development will continue beyond the release date and I plan to develop additional content and scenarios once the main game is complete.

The final product should ship with fully developed features and high quality main campaign scenario and pool of content. Comprehensive documentation material will be developed, explaining to players how to use the game and outlining to content creators the methods and syntax they will use to develop their own scenarios and extend the base game. Finally, we will need to provision and administer build, test and deployment automation, an official webpage, forum and wiki to facilitate distribution and community. Full stack game development has an array complex components, considerations and work to be done. Good planning and design will be essential for the development of OpenEVA to be successful.

Pre-Production and Research

I plan to spend the next several weeks researching the art, technology and processes I will adopt for OpenEVA’s development. It is very easy for a developer to allow their knowledge to stagnate with their project, environment or training. Long term development and maintenance of software projects tends to lock in to specific technology and techniques, while progress and technological innovation outside continues unabetted. A developer should continuously research and maintain awareness of the state-of-the-art in whatever field they are working.

A large part of my inspiration to develop OpenEVA is the desire to revise and refine my technical and creative techniques, process and knowledge. OpenEVA will give me an outlet to explore, learn and apply modern art, software and game development technology and technique. Readers can expect detailed analysis and exposition of my process, techniques and technologies throughout OpenEVA’s lifecycle.

Exiting new technology is constantly developed; Godot 3.0, which I have chosen to develop OpenEVA is currently in alpha release, and contains some powerful new features which will be crucial to OpenEVA’s development. We will need to explore solutions for OpenEVA’s game state database and interactions, user interface design, content pipelines and more. I would also like to experiment with artistic style transfer, AI, procedural content generation and other intriguing technology.

We will need to develop infrastructure to support the development, documentation and community of OpenEVA. Development environments and technology will need to be set up. Build, test and deployment automation systems need to be provisioned. The devblog, project website, official forums, issue tracking, community wiki and social media pages will need to be administered and maintained. Additionally, concept artwork and reference material will need to be explored and produced. Much effort will be spent on user interface research and design as this will be an essential and high risk feature of OpenEVA.

OpenEVA and any complete game or software development project requires a large amount of research, planning and infrastructure before core development can be effectively started. I plan for several weeks of pre-development work, preliminary research and experimentation before the core development of OpenEVA will begin.

Core Development

OpenEVA’s core development phase will consist of building the main features, interfaces, and systems that will form the foundation of the game. I will be taking time developing the key software components and game features, as well as the supporting development infrastructure, tests and automation. Major development work of OpenEVA’s core features will last 1.5 - 2 years and continue into late and post production.

Development will start with building our game state database, content definition syntax, pipelines and core gameplay mechanics that will form the core of the game. Once the game’s foundations have been laid, a large amount of effort will be spent designing and developing a flexible and intuitive user interface system. UI will be a central feature of OpenEVA’s design and will consume a majority of the development schedule.

Completion of OpenEVA’s core development will mark a major milestone in production. The game will be considered in “alpha” and we should end up with a complete set of features and interfaces for which to produce content.

Content Development

A diverse variety of content will be central to the immersion, replayability and fun of OpenEVA. I plan to dedicate at least a year to focused development of OpenEVA’s artistic, narrative and gameplay content. This will include generating Part and Equipment templates and visual content, Event artwork and text, gameplay interactions, sound and music composition as well as technical and end user documentation.

I am hoping to begin building a community and playerbase at this point in development; Perhaps offering the alpha builds as “early access” on various distribution services and building a social media presence for the game. An active, accessible player community which can preform real-world end user and play testing will be vital for maturing OpenEVA’s interface, gameplay and software features.

Post-Production and Long Term Maintenance

At some point, ideally sometime in 2020, once OpenEVA has a complete, mature set of features and content, we will declare the game “complete” and release a version 1.0 of the game on various distribution platforms. This may be accomponied by a social media blitz and development of promotional material for the game.

The official release however will not mark the end of OpenEVA development; Content generation, gameplay extensions, bug fixing, refinement and long term maintenance of OpenEVA as free, open source software will continue into the foreseeable future. Documentation, moderation and administration of the community and infrastructure behind OpenEVA will be an ongoing responsibility which will evolve with technology, the game and community.

Conclusion

A game development project is a multi-faceted and absolutely colossal undertaking, even for an experienced, professional and well funded dev team. As a solo or indy dev the concurrency and effort required required to fully produce a professional quality game approaches singularity. Developers must constrain scope, schedule, and develop a strong strategy in order to achieve success.

Even as relatively simple game, with OpenEVA I have my work more than cut out for me. This is still a hilariously high level roadmap, which omits large swaths of overlooked and unanticipated work. Accomplishing what I have outlined here and realizing my vision for OpenEVA on schedule will require astronomical amounts of diligence and dedication. However, I believe that this in an achievable plan which will enable an efficient and effective development of the game.