Introduction

This is the first edition of the project documentation, compiled in a form of a short book. It's still work in progress, which means a lot of errors and unfinished pages. If you've spotted some silly error, or want to add a paragraph somewhere, please create an issue on github.

What does it contain?

It contains information about the exact processes that come together to make up the general architecture, which we call outcome architecture.

It also covers things that are not directly related to the specification of the architecture, but still are relevant to the process of working with it.

It also covers some speculation which happens in places in the book which touch upon areas that are not yet sufficiently developed. This will fade away as more concrete content materializes over time.

Who is it intended for?

It's for anyone who wishes to understand the design behind the simulations, how they are run, how the data for those simulations can be created and handled, among other things. Getting a good grip on the conceptual make up of the architecture is recommended before getting into creating content.

It's also for anyone who doesn't want to dive into specifics of how things are done "behind the scenes", but rather is interested in learning about creating content and learning how to use the provided tools. It's okay to skip the boring chapters and get into running simulations right away - you can always revisit certain chapters as you encounter problems later along the way.

How is it written - aiming for accessibility

Documentation for this project is meant to be easy to read and understand by anyone who doesn't have any prior experience with computer programming or game modding (modification).

That said, this first edition is not kept up to this high standard of accessibility. It still contains things that can be considered to require some prior experience/knowledge related to the categories mentioned above. The goal for the next editions will be to further refine the documents in this book to:

  • reduce usage of highly "industry-specific" terms
  • increase the number and quality of explanations where the above is not possible
  • increase the number of links to external resources
  • provide illustrations/schematics to make things easier to understand