"tomva" said:I've been making decent progress on my WorldCompiler tool. I hope to publish some design and even working code in the next few days (in the Tools forum). My motivation and more use cases are mentioned here: http://wiki.worldforge.org/wiki/DecouplingUseCases.
As I've been working on it, other questions have come to mind. How does a world author specify a combat system? And a combat system may require a skill system, how is that chosen? And other things like whether there is a character creation/levelling process, or whether it is a lightweight character game, etc. I suspect all of these elements (skill systems, combat systems, etc.) will also be atomic, separable units (a package of python scripts or some such) that game authors can build and share. But how do they build them?
So my question would be: if we think of the WorldForge binaries (particularly cyphesis and ember right now) as a base kernel for building games, what is the supported API they expose? How do you recommend that coders and world creators layer skill systems and combat systems on top of the core components?
I suspect (hope) it would be a fairly primitive API, with a number of events that you can register for, and a few high-level commands. So for instance, someone building a combat system on top of the basic binaries would get collision events, and could use collision information to figure out how combat was going. A skill system would need some sort of eventing to set up UI when skills were being used, etc.
It looks like you're new here. If you want to get involved, click one of these buttons!