So, I got a little distracted these post few days. See, the current code is a wee bit messy, despite the version 0.6 re-write... and, well, I started refactoring again; ^^;;
I have a rather specific goal this time: clean separation of game and engine. I want (almost) all the code living in one directory, and all the configuration and design decisions living in another.
This has a couple of benefits:
- Easier maintenence. By extracting common functionality into a base class, I avoid duplicate code and make it easier to debug / add to.
- Simplified API. Yes, I keep promising this, but I really do want to make the content files as expressive and simple as possible. Simple means fever bugs, faster content creation, and easier for others to contribute.
- The game engine is reusable. If you think about it, BrothelS.im is very similar SlaveMaker, except with different numbers and text. It's also very similar to Cursed, Ashford Academy, Corruption of Champions and many others.
Visual Novels have some awesome tools so that game creators can focus on content rather than code - RenPy, for example. But as far as I can tell, there isn't any similar movement in the area of stat-raising games.
It has a couple of downsides too:
- I haven't fixed any of the bugs people have reported yet.
- I haven't written any new content.
- Everything is 100% completely broken at the moment.
Hehe, oops. I'll get back to that as soon as I've... yet again... rewritten the base engine. Soon. ^^;;