Jump to content
Sign in to follow this  
Boose82

Help Advice needed on mission merging

Recommended Posts

Hi

Im currently trying to add some extra missions to invade and annex, i am creating in a blank mission then trying to merge them together! is this the way i should be proceeding?

I would like them to pop up and be in rotation with the current ones.

Does anyone know where i can find some info on this?

Jake

Share this post


Link to post
Share on other sites

I&A is almost fully scripted, so if your just adding types of missions into the already present mission file functions, there shouldn't be a need to merge any files. This question is probably better asked in the I&A thread or on the I&A site (I believe it is hosted on Ahoy World's site).

Share this post


Link to post
Share on other sites
I&A is almost fully scripted, so if your just adding types of missions into the already present mission file functions, there shouldn't be a need to merge any files. This question is probably better asked in the I&A thread or on the I&A site (I believe it is hosted on Ahoy World's site).

Thanks for the quick response, so its done through the scripts and not through editor?

If admin see please move to I&A

Share this post


Link to post
Share on other sites

Yes, it's scripted almost completely except for actual mission location references (which are editor placed markers), side mission reward positions (again markers), and all the standard vehicles and such.

Edited by JShock

Share this post


Link to post
Share on other sites

would there be a way to add to the script a call to my side missions? so i can put in some unique ones?

Share this post


Link to post
Share on other sites

Yea, so in the version that I have (idk the exact numeric version that it is), it has an initServer.sqf file, if you open that you will see a line similar to the following:

if (PARAMS_SideObjectives == 1) then { _null = [] execVM "mission\side\missionControl.sqf"; };	

If you change that script call to whatever your side mission system initialization is, it should override their system.

Note that my version may be different from your version, and that file may/may not exist.

Share this post


Link to post
Share on other sites

can you from there call it to select either there side mission or mine, then when compete make the choice again? This is way beyond me!

Share this post


Link to post
Share on other sites

This would just be easier if you could zip up your mission folder and zip up your collection of side mission scripts, and I'll integrate, then you can look at it, much easier than a step by step on how to integrate into the I&A system (especially when you don't know what your doing in the first place).

Share this post


Link to post
Share on other sites
This would just be easier if you could zip up your mission folder and zip up your collection of side mission scripts, and I'll integrate, then you can look at it, much easier than a step by step on how to integrate into the I&A system (especially when you don't know what your doing in the first place).

Roger your last, can i make make some missions up in editor, lots of different sides - will you be able to do it with them?

Share this post


Link to post
Share on other sites

No you would need to script them in.

edit: That probably wasn't very helpful as it sounds like you're new to this sort of thing.

Here is the kind of thing you would need to write (it's one of the missions in the i&a folder):

/*
@file: destroyUrban.sqf
Author:

Quiksilver 	(credit to Jester [AW] for initial build)
			(credit to chucky [allFPS] for initial help with addAction)	
			(credit to BangaBob [EOS] for EOS)
Last modified:

29/04/2014

Description:

Objective appears in urban area, with selection of OPFOR Uinfantry, and civilians.
Inf and civs spawn in foot patrols and randomly placed in and around buildings.
Vehicle spawning can be unstable and the veh can spawn into buildings.
Good CQB mission and players seem to enjoy it.

_____________________________________________________________________*/


private ["_object","_briefing","_smPos","_c4Message"];

//-------------------- PREPARE MISSION. SELECT OBJECT, POSITION AND MESSAGES FROM ARRAYS

_object = [crate1,crate2] call BIS_fnc_selectRandom;
currentSM = ["sm1","sm2","sm3","sm4","sm5","sm6","sm7","sm8","sm9","sm10","sm11","sm12","sm13","sm14","sm15","sm16","sm17","sm18","sm19"] call BIS_fnc_selectRandom;
_c4Message = ["The charge has been set! 30 seconds until detonation, get BACK!","The c4 has been set! 30 seconds until detonation, RUN!","The bomb is planted! 30 seconds until detonation, find cover!"] call BIS_fnc_selectRandom;

//-------------------- SPAWN OBJECTIVE (okay okay, setPos not spawn/create)

_smPos = getMarkerPos currentSM;
sleep 1;
_object setPosATL _smPos;

//-------------------- SPAWN GUARDS and CIVILIANS

[[currentSM],[6,1],[7,1],[0,0],[0],[0],[0,0],[5,1,1200,EAST,FALSE,FALSE]] call EOS_Spawn; //guards
sleep 1;
[[currentSM],[3,1],[4,1],[0,0],[0],[0],[0,0],[3,1,1100,EAST,FALSE,FALSE]] call EOS_Spawn; //civs

//-------------------- BRIEFING

"sideMarker" setMarkerPos (getMarkerPos currentSM);
sideMarkerText = "Destroy Weapons Shipment"; publicVariable "sideMarkerText";
"sideMarker" setMarkerText "Side Mission: Destroy Weapons Shipment"; publicVariable "sideMarker";
_briefing = "<t align='center'><t size='2.2'>New Side Mission</t><br/><t size='1.5' color='#00B2EE'>Destroy Weapons Shipment</t><br/>____________________<br/>The enemy is supplying insurgents with advanced weapons and explosives. Neutralize them!<br/><br/>We've marked the location on your map; Looks like it's in town. Get your CQB gear ready.</t>";
GlobalHint = _briefing; hint parseText GlobalHint; publicVariable "GlobalHint";
showNotification = ["NewSideMission", "Destroy Weapons Shipment"]; publicVariable "showNotification";

sideMissionUp = true; publicVariable "sideMissionUp";
SM_SUCCESS = false;	publicVariable "SM_SUCCESS";

//--------------------- WAIT UNTIL OBJECTIVE COMPLETE: Sent to sabotage.sqf to wait for SM_SUCCESS var.

waitUntil { sleep 3; SM_SUCCESS };

//--------------------- BROADCAST BOMB PLANTED

hqSideChat = _c4Message; publicVariable "hqSideChat"; [WEST,"HQ"] sideChat hqSideChat;

//-------------------- BOOM!

sleep 30;									// ghetto bomb timer
"M_NLAW_AT_F" createVehicle getPos _object; // default "Bo_Mk82"
_object setPos [-10000,-10000,0];			// hide objective
sleep 1;

//-------------------- DE-BRIEFING

sideMissionUp = false; publicVariable "sideMissionUp";
[] call QS_fnc_SMhintSUCCESS;
"sideMarker" setMarkerPos [-10000,-10000,-10000]; publicVariable "sideMarker";

//--------------------- DELETE, DESPAWN, HIDE and RESET

SM_SUCCESS = false; publicVariable "SM_SUCCESS";			// reset var for next cycle
sleep 120;													// sleep to hide despawns from players. default 120, 1 for testing	
[[currentSM]] call EOS_deactivate;							// despawn enemies and civs

If you want to find them, get some de-pboing software (like eliteness) and then you can find them in

<main folder name>/mission/side/missions

CHeck it out and then ask back if you get further questions.

Edited by Das Attorney

Share this post


Link to post
Share on other sites
Roger your last, can i make make some missions up in editor, lots of different sides - will you be able to do it with them?

As Das said, and well I guess I said it too, those missions are scripted in, Das has done the kind pleasure of showing you one of the current side missions from I&A and where to find the rest.

Main point being the editor will not necessarily help you here.

The following thread may help you in getting an idea of how you would structure something out to suit your needs (all script of course):

http://forums.bistudio.com/showthread.php?188148-Random-tasks-objectives

Share this post


Link to post
Share on other sites

As per JShock above me, that link will give you some solid background.

I was just taking a look though the that i&a script in this post, and you could adapt it (or any of the others in that folder) to your needs.

Make a copy of one of the scripts. Lets use the one above as an example.

There's a line that says:

 _object = [crate1,crate2] call BIS_fnc_selectRandom;

You can add some objects (called porn_stash_1 and porn_stash_2 for example) in the opened up I&A mission in the editor and change the names in the brackets to your objects like:

 _object = [porn_stash_1,porn_stash_2] call BIS_fnc_selectRandom; 

Then in the line that says:

_c4Message = ["The charge has been set! 30 seconds until detonation, get BACK!","The c4 has been set! 30 seconds until detonation, RUN!","The bomb is planted! 30 seconds until detonation, find cover!"] call BIS_fnc_selectRandom; 

Change it to:

_c4Message = ["the porn's about to explode","porn ignited - stand back","that porn's very flammable - watch out!"] call BIS_fnc_selectRandom;

And for this line:

sideMarkerText = "Destroy Weapons Shipment"; publicVariable "sideMarkerText";

To

sideMarkerText = "Destroy two boxes full of porn"; publicVariable "sideMarkerText";

And so on (obv those are just examples). Just edit what's in the script already and then you can have some new missions without having to write a new script. For the bad guys, edit the two lines:

[[currentSM],[6,1],[7,1],[0,0],[0],[0],[0,0],[5,1,1200,EAST,FALSE,FALSE]] call EOS_Spawn; //guards 
sleep 1; 
[[currentSM],[3,1],[4,1],[0,0],[0],[0],[0,0],[3,1,1100,EAST,FALSE,FALSE]] call EOS_Spawn; //civs 

And change some of the numbers (you'll have to check the EOS thread to know what they mean).

http://forums.bistudio.com/showthread.php?153100-Enemy-occupation-system-%28eos%29

Maybe when you get comfortable editing, you can delete those two lines and spawn in some bad guys of your own with createVehicle etc.

The point is, even though you might never have written a script before, you can modify what's in there already to create something new and fresh. If you think it's good, contact the I&A team and offer it to them as a contribution.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×