663879a9798eb

663879a979f17
1 Guest is here.
 

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

663879a97a2dd
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?

663879a97a472ZylonBane

663879a97a4c8
I assume you've already read the documentation.

663879a97a891voodoo47

663879a97a8e5
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 »

663879a97aa08Yankee Clipper

663879a97aa5c
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.

663879a97ab2evoodoo47

663879a97ab84
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.
TURN OUT THE LIGHTS.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
663879a97ac90