6644fef37f491

6644fef37fc22
1 Guest is here.
 

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

6644fef38003c
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?

6644fef3801f9ZylonBane

6644fef380251
I assume you've already read the documentation.

6644fef380608voodoo47

6644fef38065e
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 »

6644fef380767Yankee Clipper

6644fef3807ba
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.

6644fef380860voodoo47

6644fef3808a9
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.
1 Guest is here.
Tune in to net-net-net-network 23! 20 minutes into the fu-fu-fu-future!
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
6644fef383b79