I have been creating levels in XML by hand. As I noted before, the data-centric concept need not limit the type of expressions of that data. For example,
<floors> <fill kind="fl-concrete"/> ... The "fl-" prefix is required, which seems inconsistant with the rest of the tags which know by context which object prefix to assume. In LUA, fill can specifiy a rectangular range, fill_floor("fl-concrete", 6, 3, 2, 3) but not in XML. This sort of thing can only currently be done with multiple row tags: <row y="3">-6 concrete 1</row> <row y="4">-6 concrete 1</row> <row y="5">-6 concrete 1</row> But as you see, it's much more verbose. Additionally, row doesn't take an x parameter (does it?) Wouldn't it be nice to create tagged sections which have an x offset? And what about a tag for when one is trying to make checkerboard patterns exclusively in XML format with only row tags? What would be nice is to create objects - data objects. They are still data-centric, just more complex. For example, the same rectangle could be an object that's easily translatable: <object name="start block" x="6" y="3"> <row>concrete 1</row> <row>concrete 1</row> <row>concrete 1</row> </object> Or even better: <object name="start block" x="6" y="3" width="2" height="3"> <fill kind="concrete" /> </object> Now that these are objects, they can be manpulated by the editor more easily as a group. Also, they can be translated by just changing the object's parameters. An editor would be useful to me if it could manipulate this data format to do simple translations to selected objects and areas, such as slide, flip horizontal/vertical, and turn counter-clockwise/clockwise/twice (for 180 degree turn). Currently, I text-tag the XML sections I wish to translate and run it through a script to do such translations - or just edit the row entries by hand. And what about tiling with an object? <fill object="start block" x="0" y="0" width="77" height="13" /> The last four parameters could be optional. If either width or height parameters are missing, then the level width or height (respectively) is assumed (from tag <level width="77" height="13">). If x or y were missing, then of course 0 would be assumed respectively. Believe me, a graphical editor would be nice, but it must be able to do useful things that would normally take me longer to do by hand - otherwise I'll still be using the text editor. I hope those ideas are useful. I think others would appreciate a data-centric, yet robust format also. Karen _______________________________________________ Enigma-devel mailing list Enigma-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/enigma-devel