-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Welcome to the wiki for FormulaEngine, a scripting and logic framework for game development.
This is the home of most of the documentation for the project. Some documentation also lives in the actual code, but that is largely implementation detail. The high-level concepts and relationships behind FormulaEngine are all described here, as well as examples of how to do various routine things with the engine.
The flagship demo of FormulaEngine is FormulaMUD, a simple text-based game system. To illustrate how tools can be built to supplement the use of FormulaEngine, there's also FormulaEdit, a C# GUI app that edits the game data powering FormulaMUD.
Documentation here is divided into four basic categories:
- FormulaEngine concepts and features
- FormulaMUD design and features
- FormulaEdit user's guide
- Assorted reference material
It isn't particularly mandatory, but it might be helpful to read the documentation in that order as well. The concepts tend to build on each other and many parts of the documentation will refer to earlier ideas and terminology. However, feel free to jump around and experiment as you see fit!
The FormulaEngine project originally started as an internal research experiment. For various reasons the experiment was cut short, however, and the key ideas remained largely unexplored. To capture the spirit of the project and carry on playing with the fundamental ideas it generated, FormulaEngine was created as an open-source endeavor in 2015.
Although FormulaEngine is intended to include working code for example uses, including a full-blown game, it should be thought of more as a source of inspiration than a drop-in implementation. A number of choices have been made to simplify the development and maintenance process - but they probably don't reflect the right choices to make in a production (or even recreational) usage environment. A classic example is the mechanism used to bind C++ code to FormulaEngine script code; the specifics are not ideal for heavy-duty use, but work fine as an illustration.
Following is a list of major concepts in the FormulaEngine universe, sorted alphabetically:
FormulaMUD is a simple game styled after classic Multi-User Dungeon games, or MUDs. It is intended to showcase a few basic things done in the FormulaEngine philosophy. Moreover, it is tied heavily to FormulaEdit for a content editing tool, to demonstrate the use of simple GUI apps to complement the design of games using FormulaEngine.
Following is a list of design elements and features in FormulaMUD, sorted alphabetically:
- Commands
- Items
- Monsters
- Rooms
- Text
- Users
TODO
TODO