Ca:Inkscape
Atenció: aquest programa encara esta en fase de desenvolupament. Si us plau, notifica els errors al IRC
Contents
Programari Requerit
- Inkscape (>= 0.44)
- Python (>= 2.4) (en Windows no es necessari, perque l'Inkscape ja l'inclou)
- Svg2lvl converter i l'extensió de l'Inkscape
- versió actual disponible des de http://xmoto.free.fr/
- versió de desenvolupament disponible en el xmoto cvs amb:
$ cvs -z3 -d:pserver:anonymous@xmoto.cvs.sourceforge.net:/cvsroot/xmoto co -P xmoto/tools/svg2lvl/
Primer de tot
Has de instal·lar l'extensió svg2lvl del inkscape.
GNU/Linux
$ cd directori_on_vols_descarregar_el_cvs $ cd xmoto/tools/svg2lvl/ $ mkdir -p ~/.inkscape/extensions/ $ cp *.inx *.py ~/.inkscape/extensions/ $ ln -s /usr/share/inkscape/extensions/bezmisc.py ~/.inkscape/extensions/bezmisc.py $ ln -s /usr/share/inkscape/extensions/inkex.py ~/.inkscape/extensions/inkex.py
Aleshores, ja pots arrencar Inkscape.
Windows
En share/extensions/ dins del directori d'instal·lació de l'Inkscape. Copia els arxius .py i .inx dins d'aquest directori.
Ara, arrenca inkscape.
Dibuixa un nivell
Obre Inkscape.
Ja estàs preparat per a dibuixar un nivell utilitzant Inskcape. Mira't els howto's del Inskcape del menú Ajuda.
Mai mes hauràs de transformar els objectes en trajectòries, l'script pot fer-ho ell mateix
Posa propietats als Objectes
Un cop tinguis el nivell dibuixat, has de posar-hi les propietats de les entitats, blocs i figures.
Hi ha dues maneres de fer-ho. Manualment o utilitzant inkscape effects.
Utilitzant els efectes de l'Inkscape
La manera més fàcil de canviar propietats d'objectes.
Selecciona els objectes en els quals vols canviar les propietats. Ves al menú Effect i escull el submenu X-moto. I tindràs mes submenus per transformar els teus objectes en els tipus desitjats (Zones, Blocs, Entitats).
Depenen del tipus d'objecte, el color canvia. Els colors son molt lleixos.. pero si tens alguna idea sobre algun color que pugui quedar millor, fes-ho saber. Afegint una textura de vorera a un bloc, afegeix un horrible color verd a la vora del bloc en l'Inkscape.
S'actualitza l'etiqueta del objecte (Mira't la següent secciò per a mès detalls).
Per exemple, si volem canviar el cercle en un bloc dinàmic utilitzant la textura Texture1 (es un exemple, realment no existeix). (Fixa't que pots seleccionar mes d'un objecte a l'hora). Primer, seleccionem l'entrada de la dreta del submenu X-moto.
Aleshores posarem el nom del textura
I aquí esta el resultat. Per veure'l, fes click dret en un objecte i selecciona object properties.
Edita'l Manualment
Un altre manera de canviar les propietats.
Selecciona un objecte, click dret i selecciona 'object properties'.
Les propietats es poden dins la caixa 'label'. Es separen amb un '|'. Si no hi han propietats especificades, l'objecte es coloca com un bloc amb la textura per defecte. També pots emplenar la caixa 'id', es útil si escrius un script amb codi lua per al nivell, perquè així tens els noms dels blocs, les zones, etc.. per fer-los servir en el teu script.
Atenció :les propietats son sensibles a les majúscules ! Escriu-les exactament com us mostrem:
Propietats de Blocs
- background
- dynamic
- usetexture=texture_name
- edgeTexture=edge_texture_name
Exemples
Un Bloc de fons (es un bloc en el fons amb el qual el jugador no pot interactuar) utilitzant la textura Dark Dirt:
background|usetexture=DarkDirt
Un Bloc dinàmic utilitzant la textura per defecte:
dynamic
Un Bloc utilitzant la textura per defecte:
(no tens res per posar-hi, deixa'l buit (o deixa lo que inkscape posi))
Un Bloc utilitzant la textura Dark Dirt:
usetexture=DarkDirt
Un Bloc dinàmic amb herba utilitzant la textura Bricks
usetexture=Bricks|dynamic|edgeTexture=Grass
Propietats de les Entitats
- typeid=[PlayerStart|EndOfLevel|Strawberry|Wrecker|ParticleSource|Sprite]
- size=float_number (the entity colision radius)
- param_name=param_value available params name are (there's more of them):
- z (for Sprite)
- name (for Sprite)
- style (for every entity)
- type (for ParticleSource)
Exemples
El codi d'una partícula fumejant:
typeid=ParticleSource|type=Smoke
Una maduixa:
typeid=Strawberry
Una figura d'un arbre posat darrera dels blocs davanters:
typeid=Sprite|name=Tree1|z=-1
L'inici del jugador:
typeid=PlayerStart
El final del nivell:
typeid=EndOfLevel
Propietats de Zones
- typeid=Zone
- l'únic possible valor per a una zona
- typeid=Zone
Genera l'arxiu del Nivell
Mai mes hauràs d'afegir vèrtex, l'script pot fer-ho ell mateix
Atenciò: Guarda tambè el teu nivell en format .svg .lvl es un format amb pèrdua, elimina informació relacionada amb les corbes bezier, perquè son reemplaçades per molts vèrtex. A més Inkscape no pot tornar a obrir el arxius .lvl (si vols, pots escriure i enviar-nos un patch per corregir això).
Arrencar el Convertidor
Per guardar el teu nivell din d'un arxiu amb format .lvl, utilitza el menú File -> Save as... (o fes Shift-Ctrl-S) i escull l'extensió X-Moto Level, posa nom al arxiu del nivell i prem Save.
Una nova finestra emergirà, has de posar-hi:
- level width : l'amplada del nivell en xmoto unit. Prova diferents fins que trobis la correcta
- smoothitude : quant mes alt es el valor, mes suau serà el nivell. Però no afegeixis molts vèrtex, perquè l'xmoto no fa l'escala molt be si el nivell es molt gran amb milers de vèrtex... i anirà una mica mes lent...
- lua script : la ruta absoluta pel teu script lua (deixa'l buit si no tens cap)
- level id : l'identificador del nivell (cada nivell ha de tenir un diferent)
- level name : el nom del nivell en la llista de nivells
- author : el teu nom o sobrenom
- description : petita descripció del nivell
- sky : el cel que vols utilitzar en el nivell
Aleshores l'arxiu del nivell es guarda en el directori escollit en la finestra de Save as....
Important: Hi ha un bug en l'Inkscape. El primer cop que guardes un nivell amb format .lvl, has de posar alguna cosa en la caixa de lua script (per defecte: None). Si no ho fas, l'Inkscape es tancarà...
Posa l'arxiu lvl que has generat en el directori Levels del xmoto, i ja hi pots jugar (fixa't que l'herba esta nomes en la part alta del bloc):
L'script afegira l'arxiu historial svg2lvl.log en el teu directori home ~/.
Arxius utilitzats en aquesta guia
- svg: Media:sample.svg
- lvl: Media:sample.lvl