No doubt regular readers (if there are any left!) will have noticed that Knights development has all but stalled in the last few months. But there is some good news: I have a bit more free time now, and I should be able to spend around 1 day per week on Knights, at least, over the next few weeks.
So what are my plans for Knights?
Well, firstly I want to do a new release of Knights itself, which will fix a number of bugs and will also add a “Random Quest” button to the quest selection screen. This will completely randomize all of the quest settings, and is useful for those times when you just can’t decide what quest to play next.
Secondly, I want to release the source code for the map editor, and write up some documentation for it. (Currently there is a binary only release of the map editor, but there has never been a “proper” release with source code.)
After that, the big new feature is going to be a modding system, so that users can create their own content (dungeon layouts, new monsters, etc) for the game. The aims for the modding system are as follows:
- Content will be divided into “modules”. Content creators will create and upload modules. Players will download modules and install them in their Knights directory, where they will be automatically detected and loaded by the game.
- Modules will consist of Lua script files, plus (optionally) graphic and sound files.
- Modules will (ideally) be able to add any of the following to the game:
- New dungeon tiles.
- New room layouts. (Either “static” rooms previously designed in the Map Editor, or “dynamic” rooms generated by a Lua script at run time.)
- New items. (Either new effects for existing items — e.g. new potion/scroll effects — or completely new item types.)
- New monsters (possibly with new AI routines coded in Lua).
- New quest objectives.
- And so on.
- The module system should integrate with the Map Editor, so that (for example) you can create a module containing new tile types, and then load those tiles into the Map Editor for use in your room layouts.
- Modules should be able to add to the Quest Selection menu. For example you might want to add new book or wand types, or new dungeon types, or maybe even a whole new setting entirely.
- The Lua scripting should be kept as simple as possible, so that it is possible to create simple modules with little or no programming knowledge. (Obviously, more advanced modules might require greater programming knowledge.)
Note the above is mostly a “wish list” at the moment. I’m not promising to do all of the above. (But the nice thing is that it can be worked on incrementally; even if I only get some of the above items done, there will still be a useful product at the end of it.)
As for timings: I hope to do the new Knights release next week. After that, I can’t really say how long before the “module system” is up and running, because it is quite a big project… but I’ll keep you posted on how things are progressing 🙂