Anda di halaman 1dari 7

OvlMake

OvlMake
by Jdrowlands

OvlMake
ii

Contents
1 2 3 Introduction Setting up OvlMake Creating a Simple Set 1 1 1

3.1 3.2 3.3 3.4 3.5


4

Creating the Scenery OVLs . . . Writing the Style OVL XML . . Compiling the Style OVL XML Piecing the Set Together . . . . Installing the Set . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

1 2 5 5 5
5

Credits

OvlMake
1/5

1 Introduction
OvlMake is a very powerful tool, allowing you to create specialised ovls. The aim of this tutorial is to get you started with creating simple sets with it.

2 Setting up OvlMake
Download ovlmake from SourceForge. It does not have an install program, so you can just unpack it to an empty directory. You will also need the MinGW dll (I assume you already have it from the importer; just copy it to ovlmakes folder). You can now test if everything works by opening a command prompt and typing something like this --- C:\Documents and Settings\User\>cd "My Documents"\ovlmake C:\Documents and Settings\User\My Documents\ovlmake>ovlmake --If all goes well, ovlmake should spit out a long message and an error at the end. I now suggest that you add ovlmakes path to your Path environment variable (see Windows tutorials for how to do that). That way you can call ovlmake from anywhere, just by typing: --- C:\Documents and Settings\User>ovlmake ---

3 Creating a Simple Set


OvlMake and the importer will work together when you create your sets: the importer will produce the OVLs for the scenery objects themselves (in the Create OVL interface), and ovlmake will produce the Style ovls (that keep the set together).

3.1 Creating the Scenery OVLs


Model your object like normal. When nished, create an ovl with it like normal, but remember to note down the model name shown by the importer. If you set a prex (you should have!) note that down as well. You can now create an ovl for it and quit the importer (unless you are making more objects).

OvlMake
2/5

3.2 Writing the Style OVL XML


OvlMake can take several input formats, but the one of most interest to us is raw xml. Raw XML is basically ovls in xml format, so it can be a bit hard to grasp at rst. However, when you take the time to learn it you wont want to stay away :P. And to all of you who want to know more about the ovl format, today just might be your lucky day ;). Alright, heres the Style XML that I used to make this set: Style.xml
<?xml version="1.0" encoding="UTF-8"?> <!-Style.xml A simple Style ovl for a simple set. Written in RCT3 raw xml. It defines an icon texture and an icon reference, two text strings and one object in a group. Written by Jdrowlands on 04/02/2010 This file is hereby released into the public domain. --> <rawovl basedir="output\" installdir="" xmlns="http://rct3.sourceforge .net/rct3xml/raw"><!--output\ - directory where ovlmake spits the ovl out --> <rawovl file="Style"><!-- Name of the ovl file --> <tex name="IconTexture" format="20"><!-- no idea what format does --> <texture><data type="file">icontexture.png</data></texture> </tex> <!-- ^^^ We specify an icon texture --> <gsi name="IconReference1" tex="IconTexture" left="0" top="0" right=" 63" bottom="63" /> <!-- gsi = GUISkinItem--> <!-- ^^^ and an icon reference --> <txt name="SetName" type="text">My Amazing Set</txt><!-- txt = text string --> <txt name="ObjectName" type="text">My Amazing Object</txt> <!-- ^^^ We define two text strings --> <!-- SIDs --> <sid name="MyObject" nametxt="ObjectName" icon="IconReference1" ovlpath="Style\Custom\Jdrowlands\TestSet\" svd="MyObject"> <!-- nametxt = text string reference; icon = gsi reference; ovlpath = internal path to the ovl; svd = ovl internal name -->

OvlMake
3/5

<type scenerytype="7"/> <!-- Look in importer to find out: wall = 5; small, med, large scenery = 7, 8, 9 --> <position xsize="1" ysize="1" zsize="1" xsquares="1" zsquares="1"/><! -- just leave these at default values =) --> <group name="SetName" icon="IconReference1" /> </sid> <!-- each object in your theme needs a seperate SID element --> <symbol name="StyleIndex" target="common" type="int" data="0"/><!-- theme type: vanilla=0, wildwest=1, spooky=2, space=3, adventure=4, atlantis=5, islandparadise=6, jungle=7, prehistoric=8. For no theme type set to 255 (actually any value will do but use 255 anyway =)) --> </rawovl> </rawovl>

So, what does that all mean? Ill walk you through it:
<rawovl basedir="output\" installdir="" xmlns="http://rct3.sourceforge .net/rct3xml/raw"><!--output\ - directory where ovlmake spits the ovl out --> <rawovl file="Style">

The rst line denes an output directory (where ovlmake will spit out the nished ovl, relative to the xml le), and the xml namespace (if you know xml, youll be familiar with this term, otherwise dont worry about it).
<tex name="IconTexture" format="20"><!-- no idea what format does --> <texture><data type="file">icontexture.png</data></texture> </tex>

This denes an icon texture. The le is relative to the xml le. As you can see from the comment, I have no idea what format does.
<gsi name="IconReference1" tex="IconTexture" left="0" top="0" right=" 63" bottom="63" /> <!-- gsi = GUISkinItem-->

GSI is just a fancy way of referring to an icon reference. The tex bit refers to an icon texture.
<txt name="SetName" type="text">My Amazing Set</txt><!-- txt = text string -->

OvlMake
4/5

TXT (or as you know it as, a text string) is the simplest structure. In my observations, I didnt see any type other than text. The name bit is the internal name and My Amazing Set is the in-game name. As you can see, I dened another one as well.
<sid name="MyObject" nametxt="ObjectName" icon="IconReference1" ovlpath="Style\Custom\Jdrowlands\TestSet\objects\MyObject" svd=" jdrowlands-MyObject">

The SID structure(s) are the most important in a style ovl. Every placable RCT3 object needs one. On this line: *name = internal name *nametxt = a text string name *icon = an icon reference *ovlpath = the ingame path to the ovl. Usually its something like Style\Themed\set-name\something\myobject, but for this we are using the Custom directory. If youve ever installed CFR, youll know what it is. For those who dont know, its a much less crowded directory to put your stuff. You need to change Jdrowlands to your nick. *svd = arguably the most important bit - its the name of the model (as you noted down earlier), with the prex in front of it. For example, if I made an object with the model MyObject and the prex jdrowlands-, the svd name would be jdrowlands-MyObject. An error in this throws up the well known no :svd for :sid error.
<type scenerytype="7"/> <!-- Look in importer to find out: wall = 5; small, med, large scenery = 7, 8, 9 -->

This line is much simpler. It denes where the scenery will appear. In the comment I noted down the most useful ones.
<position xsize="1" ysize="1" zsize="1" xsquares="1" zsquares="1"/><! -- just leave these at default values =) -->

Exactly like the importer. Just leave these like they are =).
<group name="SetName" icon="IconReference1" />

This creates a group (also exactly like the importer). SetName = text string & icon = icon reference.
<symbol name="StyleIndex" target="common" type="int" data="0"/><!-- theme type: vanilla=0, wildwest=1, spooky=2, space=3, adventure=4, atlantis=5, islandparadise=6, jungle=7, prehistoric=8. For no theme type set to 255 (actually any value will do, but use 255 anyway =) ) -->

This nal line sets the theme type (in the data bit). Read the comment for available theme types.

OvlMake
5/5

3.3 Compiling the Style OVL XML


Save your newly created Style xml. Then, you can run it through ovlmake. It will probably go something like this:
C:\Documents and Settings\User\>cd "My Documents"\rct3dev\TestSet C:\Documents and Settings\User\My Documents\rct3dev\TestSet>ovlmake Style.xml

You will see a lot of messages appear on the screen. If you get any warnings about the SVD or SID elements, you can safely ignore them. In the end, you should have an output directory in your xml directory. Open it. Inside you will see your newly created Style.common.ovl and Style.unique.ovl.

3.4 Piecing the Set Together


Now, you need to arrange the set to install it correctly. The best way of doing this is to create a directory for the set exactly as it is in game. In this case, the set goes like this:

Style Custom *Jdrowlands *TestSet objects MyObject.common.ovl MyObject.unique.ovl Style.common.ovl ***Style.unique.ovl Obviously for larger sets this can take longer.

3.5 Installing the Set


Install the set by placing it in Style\Custom\yournick. If you dont have any of these directories, create them. Now you can test in game and admire your ovlmake-engineered set.

4 Credits
I would like to thank Belgabor for coding ovlmake and the atride template that started me off. I would also like to thank every single CS creator for giving RCT3 its replayability. Any questions or comments on this tutorial can be added to its forum thread or PMd to me.

Anda mungkin juga menyukai