Developing this game is extremely complex and a human designer cannot possibly design for all possible outcomes. Without managing complexity, there is no way we could have gotten this far.
Graph-based development is our way to approach complexity in a manageable way. By modeling every major system of the game, we can find holes and ambiguities, build solvers and create tests to analyze the correctness of the design.
We can model all kinds of scenarios, from knowledge and AI, to story and gameplay, to UI and gestures. And graph theory provides the foundation on which we build our codebase. By leveraging years of graph theory research we can create very concise and correct code that can handle complexity beyond human manageability. Offsetting the costs of game design comprehension to graph algorithms.
The graph is powered by a signal-based framework. Everything produces something that can be consumed by something else. You will find oscillators, PID controllers, sensors and all kinds of game objects that produce and consume. Even the core building blocks produce and consume connections.
With this, everything extrapolates to a powerful robotics system that is truly customizable.
The fun part is mainly accomplished by configuring the physics engine to be unrealistic but 100% consistent. We have customizable gravity fields for flat land and planets/asteroids. We have state of the art IK controllers, literally from papers just published. And several more research controllers in development. All this adds to a comic physics system but fully predictable. Essential for world/bot building and emergent gameplay.
There is lots more to add: everything is a controller, world building, scavenging, planet/galaxy creation and conquering, etc. I'll be back.
Edited by rozgo, 28 August 2012 - 09:57 PM.
Rawbots is our attempt to bring robotics to the masses and make it fun. Fun as in gameplay fun, not as an implicating that robotics ain't fun