I am also happy to announce the built-in level editor for BossConstructor which I am working on at the moment and the history which led to it.
Making levels so far.
So far, I have made the levels for BC in… well… Inkscape – a free vector-based graphics package. The SVG-files created by Inkscape were then parsed by BC. Lines were converted to walls, Text-Blocks to ships and so on. My rationale was that it was quite easy to set up and use.
There were two main disadvantages to this approach, though. First, the converting process got more and more complicated. SVG-files are basically XML-like text files which contain entries for every graphical element (line, box etc.). Unfortunately, editors like Inkscape tend to create a rather complex hierarchy of element groups which each have their own transformations and coordinate systems which made the whole conversion process very cumbersome. Second, it was very hard to correctly place graphical objects like scenery, decals etc. because Inkscape doesn’t display them in the same way as they appear in the game.
So, in summary, using Inkspace as a level editor was a convenient if somewhat lazy and myopic approach… which brings me to…
The new level editor!
I am currently working on a level editor which allows me and you to design, modify and play levels/missions. The basic editor is already functional and allows adding tiles, the player ship as well as AI-controlled ships to the level. This level can then be exported and played within the game.
Currently, some things like level descriptions and objectives still need to be added manually using an external text editor. However, the features of the editor are steadily improving. My goal is to expand the functionality of the editor until all of the missions within the game can be created using only the editor.
So, I think this is good news! 😉
BossConstructor will have a level editor, the editor is making progress and, once it is done, it should make the process of creating new missions much faster. Also, the resulting levels should be more pretty than before, since tweaking them becomes way easier.