In my self-imposed isolation, I found it quite relaxing for the most part working on this pet-project again. There are no real dead-lines and there is nothing much else to do, so I can just chug along being all exited about my pointless and amateurish adventures in building retro games on non-retro platforms.
It turns out that a game editor does much the same thing for insight as a CMS does for understanding the data itself. It makes things clearer and simplifies it. When I started drafting the spec for this concept, I imagined several object and data layers, but now I'm just down to 2.5 ish. I just need an map and an object layer and some method to project the characters and NPC's.
Of course the underlying (literally) data must be represented in a map, but there is no need for those to have their own draw layer. You can only have a single level at a time. That works for the object level as well if I constrain those to 1 per tile.
So what have I managed apart from new enlightenments? Well, The editor now stores the map. I can place tiles and objects anywhere per tile or per selection. I have a minimap of the entire field, which can be arbitrarily big and I did a bit of cleaning up the code.
It could be more refined and elegant, but for the most part, I'm still experimenting of course. The line draw function could have been more advanced having just 1 function. Now it's 4. 2 for normal lines and 2 for the red-white pattern. I'll write a super functional line draw routine later, okay!!??
Well, just to demonstrate the editor as it stands now, here is a short demonstration video.