66481ee064ad9

66481ee0653f5
1 Guest is here.
 

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

66481ee0658be
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?

66481ee065a6eZylonBane

66481ee065ac6
I assume you've already read the documentation.

66481ee065e9dvoodoo47

66481ee065efb
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 »

66481ee066018Yankee Clipper

66481ee066077
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.

66481ee06612dvoodoo47

66481ee06617b
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.
Sorry for the inconvenience. Please try again later.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
66481ee06629c