Jump to content
Darren-NYPD

Modding & Maps

Recommended Posts

Can Someone explainsl me how to create a mod ??

I am using the Emergency 3 editor.

I only figured out how to make water and insert people houses etc in the map but I don't know how to create roads , create new cars , make grass etc...

I am not trying to make a big mode, cause I am a beginner in these things. I just want to learn.

Can someome help in doing these things?

Thanks.

Link to comment
Share on other sites

whixh software can I use to edit or build TGA files ?. ( For Maps )

Adobe Photoshop

And Where are the TGA Files Located. ???

sixteen tons entertainment\Emergency 3\Data\Maps

There is an example file in it called "example.tga" and btw, take a look at your cd, there is an editor manual :happy:

Link to comment
Share on other sites

Ok i'll try. But i have a little problem aboudt the editor manual with the cd. because I boughtx the game cd frmo germany. And I don;t understand german so well.

and in data/ Maps I only have example with the format .tga

the others are .dds , eft , e3m

Link to comment
Share on other sites

Ok i'll try. But i have a little problem aboudt the editor manual with the cd. because I boughtx the game cd frmo germany. And I don;t understand german so well.

If someone has the english one please upload to:

http://emergency-4.org/index.php?file=Upload

and in data/ Maps I only have example with the format .tga

the others are .dds , eft , e3m

There is an example file in it called "example.tga" and btw, take a look at your cd, there is an editor manual :happy:

Like i sayd...

Link to comment
Share on other sites

It's already a couple of months ago that this topic has been started, but now I have exactly the same problem the topicmaker had.

I just want to try some modding too, but I can't make much out of the German manual. I hope there is someone who has the English version who can upload the Editor-manual (from the disc) on the site.

Thanks in advance for your help!

Link to comment
Share on other sites

I'm trying to build a terrain in Photoshop, but I found it pretty difficult, so maybe I'll just be using an existing terrain for my first try. :happy:

But I can understand things now :P so that's a great thing, so thanks again!

Link to comment
Share on other sites

I've tried to make a mission now, but I can't seem to finish it for multiple reasons.

First I've got a small different question: How can I give my map a name, because in 'edit/map properties' there is this white line which says 'map name', but unfortunately I can't write anything in it. Is this as strange as I think it is? :P

And then for the mission script, can I make this with the editor, or do you really have to make the complete script yourself? I've found some stuff like 'mission conditions' but the editor manual is not very clear on this in my opinion, what to do and add and stuff like that. I don't know anything of scripting so it would be useful if I could also make the script with the editor ;).

I hope someone can help me with these questions. Thanks a lot in advance!

Winger

Link to comment
Share on other sites

The map name in the editor is not very important.

You have to save your map as a new .e3m file.

When you want to play your map you have to edit at least the following files:

- Lang/en/missions.xml (mission briefing and name)

- Specs/vehicles.xml (add mission number to each vehicle)

- Specs/campaign.xml (mission index, budget, path to .e3m file)

Mission conditions are used to calculate your score (percentage) when you finish a mission.

You can't write scripts with the editor, you need to understand scripting to make your own scripts.

Scripting is mostly copy/paste from other scripts, but you need to understand what everything means.

When you want to request a script on a forum people need to know at least the following things:

- Objectives (example: extinguish all fires)

- Fail Objectives (example: 2 death civilians = mission failed)

The most important thing is that you never edit a file in the Data folder, but copy everything into a new mod. Example: when you want to edit vehicles.xml copy that file to "Emergency 3/Mods/[YOUR MOD]/Specs/". Create new folders if neccesary.

Tips:

- Compare with other mods. That helps alot.

- Try to find things yourself instead of asking someone. You will learn more from that.

Good luck,

Hoppah

Link to comment
Share on other sites

Guest Winger

I've made a very easy mission now, just to see if it works. Everything works now except for one thing: the mission won't end. I've checked my script a lot of times and compared it to some other scripts, but I can't find a mistake there. What do you think will be the problem? Can it be another file that's not correct, or is it something in the editor that should be changed? (I've added the script at the bottom of my message)

Thanks in advance!

object Mission22 : MissionScript

{

Mission22()

{

System::SetEnv("e3_doocclusion", 0);

}

~Mission22()

{

System::SetEnv("e3_doocclusion", 1);

}

void Start()

{

Audio::PlaySoundtrack("3", 0.1f);

Mission::AddObjective("M22_TRANSPORT_INJURED");

}

void OnSquadVehicleArrived(Vehicle *v)

{

if (v->HasCommand("GoToPolicestation"))

{

v->RemoveCommand("GoToPolicestation");

}

if (v->HasCommand("GoToHospital"))

{

v->RemoveCommand("GoToHospital");

}

}

MissionState GetMissionState()

{

if(Mission::IsDefaultLogicNegative())

return MISSION_FAILED;

// Wenn keine verletzten und toten Personen mehr im Level, dann Objective erfolgreich, andernfalls nicht erfuellt.

// Falls Du das nur für Zivilisten haben willst, ersetze Persons durch Civils

if(Mission::GetCounter("Injured Persons") + Mission::GetCounter("Dead Persons") == 0)

{

if(!Mission::IsObjectiveAccomplished("M22_TRANSPORT_INJURED"))

Mission::SetObjectiveAccomplished("M22_TRANSPORT_INJURED", true);

}

else

{

if(Mission::IsObjectiveAccomplished("M22_TRANSPORT_INJURED"))

Mission::SetObjectiveAccomplished("M22_TRANSPORT_INJURED", false);

}

// Habe hier Mission::AllObjectivesAccomplished() eingefügt, damit die Mission erst erfuellt ist, wenn die DefaultLogic (in Deinem Fall Injured Civils equal 0) erfuellt ist und alle Objectives aus dem Script (sprich: Feuer aus).

if(Mission::IsDefaultLogicPositive() &&

Mission::AllObjectivesAccomplished())

return MISSION_SUCCEEDED;

return MISSION_RUNNING;

}

};

//by Kaspi. Edited by Hoppah

As you might notice, I've used a part of a script from the La mod. I hope that's not illegal if it's only for my own usage.

Link to comment
Share on other sites

It's no problem you use my script.

Actually, I'm very happy someone is trying to make a new mission too.

That's why I've fixed your script:

- You have to edit objectives.xml (in the Lang folder) for the objectives, but you can also use this what is easier for you I think:

const char TRANSPORT_INJURED[]		= "Bring all injured people to the hospital!";

- Your mission is for your own mod or are you adding the mission to my LA mod. If you're making this for your own mod you don't need this:

void OnSquadVehicleArrived(Vehicle *v)
{
if (v->HasCommand("GoToPolicestation"))
{
v->RemoveCommand("GoToPolicestation");
}

if (v->HasCommand("GoToHospital"))
{
v->RemoveCommand("GoToHospital");
}
}

Because the vehicles in your mod don't have the commands GoToPolicestation and GoToHospital then.

I've also made the script more neatly by adding Tabs when you are opening a code ( symbol: { ). This way you can check your script for mistakes much easier.

So, this should be your final script:

const char TRANSPORT_INJURED[]		= "Bring all injured people to the hospital!";

object Mission01 : MissionScript
{
Mission01()
{
System::SetEnv("e3_doocclusion", 0);
}

~Mission01()
{
System::SetEnv("e3_doocclusion", 1);
}

void Start()
{
Audio::PlaySoundtrack("3", 0.1f);
Mission::AddObjective(TRANSPORT_INJURED);
}

MissionState GetMissionState()
{
if(Mission::IsDefaultLogicNegative())
return MISSION_FAILED;

if(Mission::GetCounter("Injured Persons") + Mission::GetCounter("Dead Persons") == 0)
{
if(!Mission::IsObjectiveAccomplished(TRANSPORT_INJURED))
Mission::SetObjectiveAccomplished(TRANSPORT_INJURED, true);
}
else
{
if(Mission::IsObjectiveAccomplished(TRANSPORT_INJURED))
Mission::SetObjectiveAccomplished(TRANSPORT_INJURED, false);
}

if(Mission::IsDefaultLogicPositive() && Mission::AllObjectivesAccomplished())
return MISSION_SUCCEEDED;

return MISSION_RUNNING;
}
};

//By Hoppah

Note; when you use this // in front of a line, emergency 4 won't 'read' that line, so you can add additional information like //By Hoppah or //By Winger.

Link to comment
Share on other sites

Guest Winger
It's no problem you use my script.

Actually, I'm very happy someone is trying to make a new mission too.

That's why I've fixed your script:

- You have to edit objectives.xml (in the Lang folder) for the objectives, but you can also use this what is easier for you I think:

const char TRANSPORT_INJURED[]		= "Bring all injured people to the hospital!";

That's easier indeed. :happy:

- Your mission is for your own mod or are you adding the mission to my LA mod. If you're making this for your own mod you don't need this:

void OnSquadVehicleArrived(Vehicle *v)
{
if (v->HasCommand("GoToPolicestation"))
{
v->RemoveCommand("GoToPolicestation");
}

if (v->HasCommand("GoToHospital"))
{
v->RemoveCommand("GoToHospital");
}
}

Because the vehicles in your mod don't have the commands GoToPolicestation and GoToHospital then.

I was already wondering what this was for, and as I'm not making the mission for the LA mod I've deleted this part. Thanks for the info!
I've also made the script more neatly by adding Tabs when you are opening a code ( symbol: { ). This way you can check your script for mistakes much easier.

So, this should be your final script:

const char TRANSPORT_INJURED[]		= "Bring all injured people to the hospital!";

object Mission01 : MissionScript
{
Mission01()
{
System::SetEnv("e3_doocclusion", 0);
}

~Mission01()
{
System::SetEnv("e3_doocclusion", 1);
}

void Start()
{
Audio::PlaySoundtrack("3", 0.1f);
Mission::AddObjective(TRANSPORT_INJURED);
}

MissionState GetMissionState()
{
if(Mission::IsDefaultLogicNegative())
return MISSION_FAILED;

if(Mission::GetCounter("Injured Persons") + Mission::GetCounter("Dead Persons") == 0)
{
if(!Mission::IsObjectiveAccomplished(TRANSPORT_INJURED))
Mission::SetObjectiveAccomplished(TRANSPORT_INJURED, true);
}
else
{
if(Mission::IsObjectiveAccomplished(TRANSPORT_INJURED))
Mission::SetObjectiveAccomplished(TRANSPORT_INJURED, false);
}

if(Mission::IsDefaultLogicPositive() && Mission::AllObjectivesAccomplished())
return MISSION_SUCCEEDED;

return MISSION_RUNNING;
}
};

//By Hoppah

My script looks the same now, except for the tiny thing that in my script it's 'Mission22' instead of 'Mission01'.

Note; when you use this // in front of a line, emergency 4 won't 'read' that line, so you can add additional information like //By Hoppah or //By Winger.

Does the same thing apply for emergency 3 as I'm actually modding a mission for emergency 3? I guess so as it doesn't show up anywhere.

Thanks a lot for your help again Hoppah, I'm glad you're willing to help me out so much. I've changed my script now so it's the same as the one you posted, but I still have the same problem that my mission does never end. I've waited for ten minutes (while I had the mission completed already after a minute or so), but it doesn't quit the mission or anything, and I don't get any results. The only option is to quit the mission myself, but of course it would be nicer if the mission just quits itself as soon as you've completed the objectives. Do you have any idea what could be the problem?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...