Jump to content

FMission


Recommended Posts

I am also interested into creating missions for this project. All I'm still trying to get a better grip of is how I can make the positions of the AI specific for example machine gunners on a roof AND still keep using the find safepos function. Can u give us a short draft of the missions you already have planned? So we don't work on the same

 

To offer a suggestion to your scenario here is what I would do. Open the 3d editor and place the building you want to use somewhere on flat ground then place a unit on top of the building and save the file. Then open the file and look at the height difference between the two and make a note of it.

Then when making the mission do the following:

1. Spawn in the building via random spawn pos based off the main random spawn pos. (Think getting a random loc from the random loc that the mission chose)

2. Get the position of the building

3. Spawn in a unit at the building pos then move him up to the top by adding the height difference noted earlier to the unit with setpos.

 

My Mission List:

All my missions are timed, so they clear after 20 mins and move on to the next mission. They all have AI and I use real destroyed vehicles not wrecks. If you respond fast enough you can still see the smoke. If you are in the area you can hear the explosions and see the smoke.

 

1. Hostage Rescue - Rescue hostages from a hostage camp, if a hostage is killed at any point before success the Mission fails and clears immediately. You must succeed for loot to spawn

 

2. Assassination: A heavily guarded high profile target must be eliminated before they escape. You must kill the target for loot to spawn.

 

3. Base Capture - Destroy all enemies at an enemy base.

 

4. Drug Lord - A Drug Lord has been spotted testing out a new gun nest. Eliminate the Drug Lord before he escapes.

 

5. Home Depot Truck Crash - A home Depot truck has crashed, raid it before the replacement truck arrives and they clean up the mess.

 

6. Military Convoy - A military convoy has crashed and is awaiting support, attack them while they are vulnerable.

 

7. Helo Crash - A helo has crashed, raid it before the military arrives to clean it up.

 

I have a bunch more ideas, but these are the ones I am working on at the moment. All of then work perfectly right now but... they were done pre-FMission so I have re-code them to include the new tools so you guys can look at them as examples.

 

Now that I have the basic FMission released I can start concentrating on making some missions so I should have these ready to go soon. Once I get 4 or 5 missions in the library I will get back to making some more tools for FMission, like add-on stuff for making cooler mission locations.   

Link to comment
Share on other sites

I quite like the 2 missions you have put up, but there are a few odds and ends about it.

 

assasination mission:

Vodnik, kills players if they get in, i presume killed a hacker, maybe do similar like other Mission systems where they throw out players and sends a warning message its AI car only.

Mission marker doesnt fade away after mission is completed, fades away 10 minutes after.

Link to comment
Share on other sites

I quite like the 2 missions you have put up, but there are a few odds and ends about it.

 

assasination mission:

Vodnik, kills players if they get in, i presume killed a hacker, maybe do similar like other Mission systems where they throw out players and sends a warning message its AI car only.

Mission marker doesnt fade away after mission is completed, fades away 10 minutes after.

 

Fixed. Vehicles are now locked. FMission 1.2a Hotfix is on Github.

 

Regarding the time it takes for the mission to clear.

 

Look for this in the Mission Variables section of the mission file.

_wait_time = 900; // This is how long the loot box will stay once it spawns.

That sets how long the mission waits after the loot box spawns before clearing it. In the two mission examples in Mission Pack 0.2, you can see the loot doesn't spawn until you actually complete the objectives, thus... if you deleted everything right after you win, you would get no time to loot. If you design a mission without objectives _wait_time becomes the overall time to complete mission since the loot would spawn at mission start rather than after you complete an objective.

 

In my included missions you can shorten the time they have to loot once the mission is completed to anything you want. Just adjust _wait_time = XX;

Link to comment
Share on other sites

I really like how this is developing. Once you guys get some more missions added, I'll be testing it out on my server. Don't think I could really contribute with new mission as I'm not really that familiar with that aspect of things.

 

Thanks man, I am happy with how it is turning out and I am just getting started with this thing. You should take a look at the Mission Templates, I have made them pretty detailed and they include module examples to start making your own missions. You might be surprised at what you could make with little knowledge of the scripting code.

 

I spent some time last night creating a better web page to host this stuff from my Github and it will soon have a detailed Help section which will include install and upgrade instructions, instructions for each mission module and tutorials on how to make various missions using Fmission. I might even do some instruction and tutorial videos if people think that would help them.

 

I will be converting the rest of my Missions throughout the week so by the end of the week there should be about 5+ missions.

I have a bunch of tricks up my sleeve for this.

Link to comment
Share on other sites

It's awesome to see my own ideas in your mod! #famous

Downloading right now, will pass on some feedback when I have some to give, sounds fantastic so far.

 

EDIT: Okay, I've just gone through and added all my old events into your new system, was stupidly easy. However, I noticed there is no support for markerText or markerBrushes? I can easily add both myself, but, does your system not support this right off the bat? These would be great additions as I don't really want to have to update and add them myself because of course, each of your updates will undo it.

 

EDIT EDIT: Okay tried to add text to the marker myself, I'm not a modder but it doesn't take a genius to analyze the code and figure it out. Unfortunately my server is really active right now and I don't want to take it down for something that might not work so instead, I'm gonna paste what I did here and hope I have a response by morning.. Anyway, this is what I did to hopefully add marker text. (I used M3 mission tpl for this)

 

1) Add _markerText to the variable declaration at the top

 

From

// Don't forget to add all your "_names" to the private section
private ["_missionSpawnChance","_spawnMarker","_spawnRadius","_markerRadius","_markerColor","_item","_debug","_loot","_loot_lists","_loot_box","_wait_time","_spawnRoll","_position","_loot_pos","_loot_box"];

To

// Don't forget to add all your "_names" to the private section
private ["_missionSpawnChance","_spawnMarker","_spawnRadius","_markerRadius","_markerColor","_markerText","_item","_debug","_loot","_loot_lists","_loot_box","_wait_time","_spawnRoll","_position","_loot_pos","_loot_box"];

2) Set the text for the marker where the rest of the marker settings are

 

From

// Mission Variables
mission_despawn_timer = 1200;   // This sets the Timeout if a timer is used.
_wait_time = 900;               // This is how long the loot box will stay once it spawns.
_spawnRadius = 5000;            // This is the distance from Center - Used to determine the radius in which missions will spawn
_spawnMarker = 'center';        // DO NOT Change this, UNLESS you need a hard coded center loc for custom purposes
_markerRadius = 350;            // This sets marker radius and the are the loot can spawn in
_markerColor = "ColorBlack";    // This sets the Marker Color

To

// Mission Variables
mission_despawn_timer = 1200;   // This sets the Timeout if a timer is used.
_wait_time = 900;               // This is how long the loot box will stay once it spawns.
_spawnRadius = 5000;            // This is the distance from Center - Used to determine the radius in which missions will spawn
_spawnMarker = 'center';        // DO NOT Change this, UNLESS you need a hard coded center loc for custom purposes
_markerRadius = 350;            // This sets marker radius and the are the loot can spawn in
_markerColor = "ColorBlack";    // This sets the Marker Color
_markerText  = "Mission Text";

3) Send the new variable to the FMarker3.sqf

 

From

[_position,_loot_pos,_markerRadius,_markerColor,false] execVM "\z\addons\dayz_server\addons\FMission\FMarker\FMarker3.sqf";

To

[_position,_loot_pos,_markerRadius,_markerColor,_markerText,false] execVM "\z\addons\dayz_server\addons\FMission\FMarker\FMarker3.sqf";

Now in the FMission.sqf

 

1) Add _markerText variable declaration

 

From

private ["_loop", "_color", "_coords", "_radius", "_event_marker", "_start_time", "_lootcords", "_debug_marker", "_debug"];

To

private ["_loop", "_color", "_coords", "_radius", "_event_marker", "_start_time", "_lootcords", "_debug_marker", "_debug", "_markerText"];

2) "Collect" the sent value parameter that was sent from the mission

 

From

_coords = _this select 0;
_lootcoords = _this select 1;
_radius = _this select 2;
_color = _this select 3;
_debug = _this select 4;

To

_coords = _this select 0;
_lootcoords = _this select 1;
_radius = _this select 2;
_color = _this select 3;
_markerText = _this select 4;
_debug = _this select 5;

3) Set the marker text

 

From

_event_marker3 = createMarker [ format ["loot_event_marker_%1", _start_time], _coords];
_event_marker3 setMarkerShape "ELLIPSE";
_event_marker3 setMarkerColor _color;
_event_marker3 setMarkerAlpha 0.5;
_event_marker3 setMarkerSize [(_radius + 50), (_radius + 50)];

To

_event_marker3 = createMarker [ format ["loot_event_marker_%1", _start_time], _coords];
_event_marker3 setMarkerShape "ELLIPSE";
_event_marker3 setMarkerColor _color;
_event_marker3 setMarkerAlpha 0.5;
_event_marker3 setMarkerSize [(_radius + 50), (_radius + 50)];
_event_marker3 setMarkerText _markerText;

Again I haven't tested this and as soon as I submit this I'm off to sleep. So, if you haven't responded by the time I get up, I'll go ahead and test it. If however, it does indeed work like this then;

1) Damn, just created my first modification

2) Can it be supported by FMission out of the box?

3) I'd assume the same would also apply for the markerBrushes

 

References:

https://community.bistudio.com/wiki/setMarkerText

https://community.bistudio.com/wiki/setMarkerBrush

Link to comment
Share on other sites

Disregard: Just noticed I hadn't changed the M1 to M3 in the _aiVehicle.. -_-

----------------------------------------------------------------

 

Hmm, do vehicle patrols work? I added one to a simple mission and when I arrived I saw the Vodnik with a single AI stood next to it, shot him, but he doesn't die, he's just static and doesn't do anything..

Checked the Logs and it appears the patrol the deleted on creation, so what I am seeing is waiting for cleanup to run I guess

 6:35:09 "FAI Vehicle 1.0: -=GAZ_Vodnik_DZ=- Spawned @ Location: [9021.3,8537.76] | Patrol Radius: 100m"
 6:35:09 "FAI Vehicle 1.0: AI Vehicle Deleted"

Am I doing something wrong here? Is it the vehicle hacker thing?

Link to comment
Share on other sites

FMission 1.3 released.
 
Update includes:
--- Updated FMarker scripts to include:
--- Brush Types - You can now set the background fill type of markers
--- Icon types - You can now set the Mission Marker Icon type for different mission types.
--- Text - You can now add text to the Mission Marker Icons

 

--- Missions and Templates updated with New FMarker changes.

 

The call for FMarker has changed, so look at FMarkerX.sqf or a Mission Template for the new call in the description header.

Link to comment
Share on other sites

Gave it a quick test.

Icon - Check

Text - Check

Brush - Check

Awesomness - Check

 

All working great, thanks.

 

I am interested in seeing the Mission you come up with. If it works perfectly, and you would like it included, I will include it in your own author folder in FMission Missions Pack. You can PM it to me when you are done and happy with it if you don't want to post it publicly.

Link to comment
Share on other sites

I am interested in seeing the Mission you come up with. If it works perfectly, and you would like it included, I will include it in your own author folder in FMission Missions Pack. You can PM it to me when you are done and happy with it if you don't want to post it publicly.

 

I've not done anything special yet, just converted the four events (Construction, UN Drop, Military and Supply) to work with your system and gave them 4 AI guards so it wasn't so easy. I then added a new event based on the previous four which dropped vehicle repair parts... I'm going to have a go at a proper mission later and see if I can come up with something interesting.

 

A few quick questions:

1) Is it possible to make your Assassination Target go prone so they're not so easy to snipe?

2) Is it possible to unlock the AI vehicles one mission complete? I disabled a Vodnik by taking out it's tires and was a little disappointed I couldn't claim it.

3) Can the Icons be centered rather than attached to the actual cargo crates? It takes away the initial search.

 

I'm pretty sure I can do 3, almost certain I saw _center something in your file somewhere. At work right now though so I do not have the source in front of me.

Good job!

Link to comment
Share on other sites

I haven't got FMission to launch successfully on my server yet. I followed the installation instructions closely. Does this EpochEvents code look ok? From my init.sqf:

 

EpochEvents = [["any","any","any","any",30,"crash_spawner"],["any","any","any","any",0,"crash_spawner"],["any","any","any","any",15,"supply_drop"],


//FMission
["any","any","any","any",15,"FMission_Launcher1"],
["any","any","any","any",30,"FMission_Launcher1"],
["any","any","any","any",45,"FMission_Launcher1"]];

//["any","any","any","any",10,"FMission_Launcher2"],
//["any","any","any","any",50,"FMission_Launcher2"],

//["any","any","any","any",5,"FMission_Launcher3"],
//["any","any","any","any",35,"FMission_Launcher3"]];

Link to comment
Share on other sites

I haven't got FMission to launch on my server yet. I followed the installation instructions. Does this Epoch Event code look ok? From my init.sqf:

 

EpochEvents = [["any","any","any","any",30,"crash_spawner"],["any","any","any","any",0,"crash_spawner"],["any","any","any","any",15,"supply_drop"],

//FMission

["any","any","any","any",15,"FMission_Launcher1"],

["any","any","any","any",30,"FMission_Launcher1"],

["any","any","any","any",45,"FMission_Launcher1"]];

//["any","any","any","any",10,"FMission_Launcher2"],

//["any","any","any","any",50,"FMission_Launcher2"],

//["any","any","any","any",5,"FMission_Launcher3"],

//["any","any","any","any",35,"FMission_Launcher3"]];

 

Remove the comments within. If you don't want the mission, remove it entirely, I'm gonna' guess the comments inside an array like that are causing issues. Failing that, you are aware that the spawn time (15, 30, 45 that you have for Launcher1) does NOT mean it will spawn every 15, 30, 45 minutes, but instead at 15, 30 and 45 minutes past the hour, right?. Just ruling that out.

Link to comment
Share on other sites

Ok, I finally put this on two of my servers and I'll be trying it out after the next server restart. I have a question and a suggestion: Is there any indicator where the minefield is in the Assassination mission? Also, would it be possible to pull the contents of the boxes from the server's loot tables, rather than having a fixed list of items that will be in there?

Link to comment
Share on other sites

Thanks for your reply. I'll remove the comments and try that. I was not aware that the spawn times worked liked that.

 

In that case, it might actually work, you just need to be on at that time. So, if you have 15, 30 and 45, the mission will have a chance to spawn at 12:15, 12:30, 12:45, 1:15, 1:30 etc etc

I hope you get it working. Also, to help, take a look at your RTP log, it will tell you when the FMission script executes and whether the random chance to start a mission was successful or not, I might be that the "chance" to spawn was not successful. This is configurable both inside the mission file itself (default appears to be .50 (50%)) and in the three launcher files.

 

Here is an excerpt from my RTP file so you have a rough idea of what you're looking for:

15:30:03 "RUNNING EVENT: FMission_Launcher1 on [2014,3,27,15,30]"
15:30:03 "RUNNING EVENT: FMission_Launcher3 on [2014,3,27,15,30]"
15:30:03 "FMission Launcher 1: Checking Spawn Chance"
15:30:03 "FMission Launcher 1: Spawn Chance Succeeded with 0.0859199 it needed to be lower than 1"
15:30:03 "FMission Launcher 3: Checking Spawn Chance"
15:30:03 "FMission Launcher 3: Spawn Chance Succeeded with 0.630048 it needed to be lower than 1"
15:30:03 "FMission Launcher 1: Selecting script and launching"
15:30:03 "FMission Launcher 1: Launching Mission: \z\addons\dayz_server\addons\FMission\Missions\M1\Foamy\FMission_M1_Assassination.sqf"
15:30:03 "FMission Launcher 3: Selecting script and launching"
15:30:03 "FMission Launcher 3: Launching Mission: \z\addons\dayz_server\addons\FMission\Missions\M3\LordDan\FoodSupplies.sqf"
15:30:03 "MISSION 1: Assassination - Script Started"
15:30:03 "MISSION 1: Assassination - Checking MissionSpawnChance"
15:30:03 "MISSION 1: Assassination - Failed with 0.94703 it needed to be lower than 0.4"
15:30:03 "MISSION 3 already running"
15:30:21 "MISSION 3: LordDan - CarSupplies - Script Finished"
15:30:24 "FMarker 3: Closing Script"

Seems like my serverprovider is blocking access to "addons" folder.

 

If I make a addons folder inside server.pbo, you think maybe it works ?

 

Yes, make the addons folder inside the dayz_server.pbo

 

Ok, I finally put this on two of my servers and I'll be trying it out after the next server restart. I have a question and a suggestion: Is there any indicator where the minefield is in the Assassination mission? Also, would it be possible to pull the contents of the boxes from the server's loot tables, rather than having a fixed list of items that will be in there?

 

I just took a quick look inside the FMinefield file and found this:

_s1 = "Sign_Danger" createVehicle _signpos;

It would seem the minefield has a Danger sign planted in the center of it.

 

Also, the loot box and it's contents are fully editable inside the mission file itself, here is the current loadout for the Assassination mission:

_loot_box = "GuerillaCacheBox";
_loot_lists = [
[
["M9SD","ItemMachete","Binocular"],
["15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","15Rnd_9x19_M9SD","ItemGoldBar","ItemGoldBar","ItemGoldBar","ItemGoldBar","ItemTrashToiletpaper"],
["DZ_CivilBackpack_EP1"]
],
[
["DMR","NVGoggles","Binocular_Vector"],
["20Rnd_762x51_DMR","20Rnd_762x51_DMR","20Rnd_762x51_DMR","ItemSodaMdew","PipeBomb","ItemAntibiotic","ItemGoldBar10oz"],
["DZ_GunBag_EP1"]
],
[
["MP5SD","ItemFlashlightRed","ItemCompass"],
["30Rnd_9x19_MP5SD","30Rnd_9x19_MP5SD","30Rnd_9x19_MP5SD","ItemSodaMdew","ItemWire","ItemSilverBar10oz","ItemSilverBar10oz","ItemSilverBar10oz"],
["DZ_TerminalPack_EP1"]
],
[
["SVD_CAMO","ItemWatch","Binocular"],
["10Rnd_762x54_SVD","10Rnd_762x54_SVD","10Rnd_762x54_SVD","ItemSodaMdew","ItemBurlap","ItemGoldBar","ItemGoldBar","ItemGoldBar"],
["DZ_Backpack_EP1"]
],
[
["M4A1_AIM_SD_CAMO","ItemGPS","Binocular"],
["30Rnd_556x45_StanagSD","30Rnd_556x45_StanagSD","30Rnd_556x45_StanagSD","ItemSodaRbull","ItemGoldBar10oz","ItemGoldBar10oz"],
["DZ_ALICE_Pack_EP1"]
]
];
Link to comment
Share on other sites

I've got FMission running now. When I read your reply to someone else about creating the addons folder inside the dayz_server.pbo the light went on. I have the spawn time set at 30 past the hour. Unfortunately, I missed the last chance to see it work because the mission spawn chance failed.

 

:)

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Advertisement
×
×
  • Create New...