XML-based maps
==============
Intro
-----
Objects and maps would be made using XML language. The maps would then
be 'compiled' to faster stage. That way, the game can use those optimized maps.
XML-file
--------
First we would have the need for a map file. This file contains info about the map,
and what should be in it.
eg.
<map name="testmap">
<object type="house" pos="3,1,0" dir="1,0,0">
</object>
<object type="player" pos="0,0,0" dir="1,0,0">
<property starthealth="100"></property>
</object>
.
.
.
</map>
A second XML file could contain the objects itself. Look at the 'type="house"', we don't
know yet what house is, but we'll specify it here
<objects>
<object name="house">
<subobject type="wall" pos="0,0,0" dir="0,1,0"></subobject>
</object>
<object name="wall">
<subobject type="brick" pos="0.2,0,0.3" dir="0,1,0"></subobject>
<subobject type="brick" pos="0.4,0,0.3" dir="0,1,0"></subobject>
</object>
<object name="brick">
.
.
</object>
<object name="player">
<subobject type="leg" pos=",," dir=",,"></subobject>
>property name="starthealth" value="125"></property>
</object>
.
.
</objects>
Compiling
---------
So, those XML-files could then be compiled to a binary format, the actial maps. The idea
would be that the objects have curves, specified with vectors (a circle can be made with
3 vectors). When compiling, it would be possible to tell the compiler how accurate the
map would have to be. If somebody would like to play with a old graphics card, he could
set the number of polygons to the minimal in the compiled version. While one with a kick-
ass system could play with billion's of polygons (playing at foto or movie quality).