Others tips to make levels

From X-Moto
Revision as of 10:25, 28 February 2007 by The only dude (talk | contribs) (Level properties)
Jump to: navigation, search

Català - Español

If you use a property requiring xmoto >= 0.2.1 for example, you must modify the level tag like this :

<level id="myid" rversion="0.2.1">

Level properties

<name>Level name</name>
<sky zoom="0.1" offset="0.1" 
color_r="255" color_g="255" color_b="255" color_a="0"
drifted="true" driftZoom="1.0"
driftColor_r="255" driftColor_g="255" driftColor_b="0" driftColor_a="0">Space</sky>
<border texture="Bricks" />
<music name="batcave" />
<sprite_replacement old_name="Strawberry" new_name="Star" />
<sprite_replacement old_name="Wrecker" new_name="Star" />
<sprite_replacement old_name="Flower" new_name="Strawberry" />
<sprite_replacement old_name="Star" new_name="Wrecker" />
<sound_replacement  old_name="PickUpStrawberry" new_name="Squeek" />
<layeroffset x="0.2" y="1.0"/>
<layeroffset x="0.3" y="1.0"/>
<layeroffset x="0.5" y="1.0"/>
<layeroffset x="1.9" y="1.0" frontlayer="true"/>
<layeroffset x="2.5" y="1.0" frontlayer="true"/>
  • sky : several properties to change the sky texture (some color effects, ...) [require xmoto >= 0.2.5]
    • zoom : size of the texture
    • offset : offset with the sky when moving the bike
    • color_r color_g color_b color_a : red, green, blue and alpha color apply to the texture
    • drifted : set the drifted effect activated
    • driftZoom : size of the drift texture
    • driftColor_r, driftColor_g, driftColor_b, driftColor_a : color apply to the drift texture
  • border : border of the level [require xmoto >= 0.2.5]
  • music : music played while playing the level (with 0.2.5, batcave, menu1 and rideALong are available) [require xmoto >= 0.2.5]
  • theme_replacements : you can replace a special sprite like Flower by an other picture and a sound by another one (you can replace Wrecker, Strawberry, Star, Flower and PickUpStrawberry) [require xmoto >= 0.2.5]
  • parallax layers: allow you to have different background and front parallax layers of blocks. In the example, there's three background layers (0, 1 and 2) and two front layers (3 and 4). [require xmoto >= 0.2.5]

Here is how to update the blocks to put them in a layer:

Blockxxx in the second background layer (layerid: 1):

<position x="-17.175000" y="14.525000" islayer="true" layerid="1"/> 

Blockyyy in the first front layer (layerid: 3):

<position x="-17.175000" y="14.525000" islayer="true" layerid="3"/>
  • Now, there's two layers of static blocks. If you add 'islayer="true"' in the position of a block, then the block will be in the second static block layer which is display on top of the existing static block layer.


<sky color_r="150" color_g="100" color_b="50" zoom="3.0">sky1</sky>


Block properties

<block id="Block1">
	<physics grip="1.0"/>
	<position x="-0.333333" y="-5.666667" dynamic="true"/>
	<usetexture id="default"/>
	<vertex x="-7.666667" y="0.666667"/>
	<vertex x="7.333333" y="2.666667"/>
	<vertex x="0.333333" y="-3.333333"/>
all the properties are not mandatory. The default value will be given in this case.
  • id : identifiant of the block ; allow to change the block via a script
  • position : initial position of the block
  • dynamic : allow this block to move via a script if set to true
  • grip : gripness of the block ; allow to simulate ice [require xmoto >= 0.2.1]
  • usetexture : texture applied on the block

Sprites properties

<entity id="Strawberry2" typeid="Strawberry">
 <size r="0.2" width="0.5" height="0.5"/>
 <position x="42" y="0.5" angle="3.14159" reversed="true"/>
all the properties are not mandatory. The default value will be given in this case.
  • id : identifiant of the sprite ; allow to change the block via a script
  • typeid : type of the sprite
  • r : radius of the collision circle
  • width : width of the picture [require xmoto >= 0.2.1]
  • height : height of the picture [require xmoto >= 0.2.1]
  • x : position x of the center
  • y : position y of the center
  • angle : angle to draw the sprite [require xmoto >= 0.2.5]
  • reversed : mirror the picture [require xmoto >= 0.2.5]