673f9035a5bde

673f9035a7277
2 Guests are here.
 

Topic: Dmls, how to make them? Read 33957 times  

673f9035a771c
So I've heard of these files called dmls that fix up some parts of a mission without changing the original mission file. Voodoo47 seems to make them frequently. So how do I make them?

673f9035a78eeZylonBane

673f9035a7948
I assume you've already read the documentation.

673f9035a7db4voodoo47

673f9035a7e05
you create a txt file, open it up, type DML1 into the first line and you are ready to start adding code snippets that will set or modify whatever object properties you want to modify (the filename should be yourmission.mis.dml for a specific mission, or yourgamesys.gam.dml for a gamesys). you will need some basic editor knowledge (as you will have to know what do you want to change), and a list of all object properties (you will need to dump it). checking the docs is also a good idea as already mentioned, and there is more dml related info available at the Engineering subforum.

an example - say we want to change the model of the first phone (right from the tram) on the vanilla earth map into something else. so you need to know this can be accomplished by changing the shape->model name prop. you check the proplist (look for model name), and copy paste the code snippet into your txt file with the DML1 header:
Code: [Select]
DML1

ObjProp "ModelName"          // type Label                     , flags 0x0000 , editor name: "Shape: Model Name"
{
"" : string    // max 15 characters long
}

now you need to know the obj id of the payphone - you will have to open the earth map in the editor, select the object and check the id - it's 1013. so;
Code: [Select]
DML1

+ObjProp 1013 "ModelName"          // type Label                     , flags 0x0000 , editor name: "Shape: Model Name"
{
"" : string    // max 15 characters long
}

do note that this prop does not exist on the phone, so I had to add a + right before ObjProp (not needed if you are just modifying a prop that already exists on the object). now you need to know the model name of the object you want to change the phone into. lets change it into a Ring Buoy - you check Ring Buoy in the editor (press F3 and paste Ring Buoy into the window, pres enter to open the archetype props), check its model name (ringbuoy), and paste it into the dml;
Code: [Select]
DML1

+ObjProp 1013 "ModelName"          // type Label                     , flags 0x0000 , editor name: "Shape: Model Name"
{
"" ringbuoy
}

done. now when you place the dml (needs to be named earth.mis.dml) into a valid modpath (for example, the same folder where the map files are), the phone shape will be changed into a ring buoy upon level load.
« Last Edit: 09. August 2015, 15:42:03 by voodoo47 »

673f9035a7ed8Yankee Clipper

673f9035a7f24
Although it might not be obvious, the documentation is in a file titled dbmod-sample.dml.

Mine is in the following subdirectory in my SS2 directory:
..\Docs\newdark\dbmod-sample.dml

But I might have moved around some of my doc files - can't recall - so yours might be in a different place.

673f9035a7fc2voodoo47

673f9035a800c
also, note that you should have a very specific reason to use dmls for modding/fixing, as generally, just hard editing the maps is easier and faster.
2 Guests are here.
Preparing for a dinner party?
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
673f9035ab252