Jump to content
Sign in to follow this  
Phantom Six

Phantom Six's Editor Tutorial & Template

Recommended Posts

Hello everyone, I've been working on an ARMA 2 & ARMA 3 editor tutorial for all you newbies out there looking forward to making a mission. I also included a template to reference to and a lot of pictures throughout the guide. I hope to see some nice missions created out there :P . These will just cover some basic essential stuff. I also still recommend MacScottie's video tutorial as well for some first timers.

Well check the link below to get started.

http://phantommissionsite.weebly.com/tutorials.html

These are best used for no revive/respawn missions unless you're doing GROUP or SIDE respawns.

Credits to Varanon for FHQ Task Tracker

Credits to Kronzky for UPS script

Credits to Sickboy for the Sixupdater classname list

Credits to anyone else's scripts or references I used.

I also include a helpful hint section besides the basic tutorial section with other things that can be nice to use. I'll add more when I have time or if requested (when I get time). I'll highlight the more popularly demanded ones if the list starts to overflow, they'll be in ABC order. I probably won't add more until later on.

http://phantommissionsite.weebly.com/hints--templates.html

Send me feedback for what I need to improve on and good luck on mission making :D

I also added an offline version by converting the webpages to pdf with adobe acrobat although I think the webpage version might be easier to read, but enjoy.

http://www.mediafire.com/download/kzy4ph63u40sk3h/phantom_mission_tutorial_offline.7z

Edited by Phantom Six

Share this post


Link to post
Share on other sites

I updated the templates' description.ext for the complex ones. For the params on view distance, I had 0-5 when it should've been 0-4. I also added a link to the FHQ Task Tracker PDF doc readme for more in depth explanation on how to create briefings with it since I only covered basics.

Share this post


Link to post
Share on other sites

I updated the custom loadout section changing the execVM to [this] call compile preprocessFileLineNumbers "scripts\loadout.sqf"; instead since execVM for custom loadout comes in conflict with briefing items (gearing out during briefing <in ARMA 2> but call compile preprocessFileLineNumbers should be more foolproof for custom loadouts)

Share this post


Link to post
Share on other sites

hey mate.

great job in this, it has helped med for sure :)

however when im using your loadout script it gives me this error:

Error in expression <uts\excalibur\dismount2.sqf"
waitUntil {!isNull player};
_unit = _this select 0;>
 Error position: <!isNull player};
_unit = _this select 0;>
 Error Generic error in expression
File mpmissions\__cur_mp.Stratis\loadouts\excalibur\dismount2.sqf, line 1

this is my loadout script, with some addon classnames:

waitUntil {!isNull player};

_unit = _this select 0;

// Remove original equipment
removeallweapons _unit;
removeallassigneditems _unit;
removeallcontainers _unit;


// Add clothing
_unit addUniform "U_SBE_USMC_B_CombatUniform_mcam_tshirtD";
_unit addHeadgear "CAF_Boonie_AR";
_unit addVest "V_HarnessOGL_brn";
_unit addBackpack "B_Carryall_ocamo";

_unit addItem "A_Camo_Helmet"; 


// Add weapons & grenades
_unit addMagazines ["30Rnd_65x39_caseless_green", 8];
_unit addWeapon "arifle_Khaybar_F";
_unit addPrimaryWeaponItem "acc_pointer_IR";
_unit addPrimaryWeaponitem "optic_Holosight";

_unit addMagazines ["30Rnd_9x21_Mag", 4];
_unit addWeapon "hgun_P07_F";

_unit addMagazines ["HandGrenade", 2];
_unit addMagazines ["SmokeShellRed", 2];
_unit addMagazines ["SmokeShell", 2];

_unit addMagazines ["SatchelCharge_Remote_Mag", 2];
_unit addMagazines ["DemoCharge_Remote_Mag", 2];


// Add items
_unit addItem "FirstAidKit"; 
_unit addItem "FirstAidKit";
_unit addItem "FirstAidKit";

_unit addItem "Toolkit"; 
_unit addItem "MineDetector"; 

_unit addWeapon "rangefinder";

_unit addItem "muzzle_snds_H"; 
_unit addItem "muzzle_snds_L"; 

_unit addItem "NVGoggles"; 

_unit addItem "ACRE_PRC148"; 
_unit assignItem "ACRE_PRC148"; 

_unit addItem "ItemRadio"; 

_unit addItem "g_tactical_clear"; 
_unit assignItem "g_tactical_clear"; 

_unit addItem "ItemCompass"; 
_unit assignItem "ItemCompass"; 

_unit addItem "ItemMap"; 
_unit assignItem "ItemMap"; 

_unit addItem "ItemWatch"; 
_unit assignItem "ItemWatch"; 

_unit addItem "ItemGPS"; 
_unit assignItem "ItemGPS";

if(true) exitWith{};

The wierd thing is it works, but it gives errors. any idea whats wrong?

Share this post


Link to post
Share on other sites

Ok mate, thx.

I will try to find the reason, just wierd it gives that error but the script works perfectly fine and line 1 isnt wrong in the script hehe.

EDIT:

The only way i can remove the error is to go back to using:

nul = [this] execVM 

Instead of:

[this] call compile preprocessFileLineNumbers

It still works just fine though. Need to do some more testing with more players and JIP and such though. Had bad experience with the execVM not being 100% persistant for loadouts.

Edited by Byrgesen

Share this post


Link to post
Share on other sites

It still works just fine though. Need to do some more testing with more players and JIP and such though. Had bad experience with the execVM not being 100% persistant for loadouts.

That's the reason why I swapped from execVM to [this] call compile preprocessFileLineNumbers (thanks to Alwarren for telling me). Basically execVM returns result immediately and call goes through the whole script first then return the value, I guess that's why it would be more consistent.

From what I see though, most people use execVM but I guess it depends on what you're trying to accomplish. Ammoboxes with execVM is ok for example. Though I don't know all the things so I'd ask for help here and there or there's trial and error.

Share this post


Link to post
Share on other sites

Wow! This is excellent. I am new to mission making and this clears up a lot for me! Thanks!

Share this post


Link to post
Share on other sites

No problem stevos.

Alright, I just swapped the execVM on the briefing.sqf to the call functions as well. It should work better that way with the fhq task tracker since call basically reads through the script until it finishes then it goes. ExecVM calls the script immediately so it can be interrupted easier when it calls a script in parallel. I haven't had problems with some of my missions so far (that I've known of while using execVM), but I know someone who has (issue was some people may see the tasks and others may not during briefing) but switching to call compilepreprocessFileLineNumbers seem to work better for briefing notes and tasks since it won't get interrupted.

Share this post


Link to post
Share on other sites
Ok mate, thx.

I will try to find the reason, just wierd it gives that error but the script works perfectly fine and line 1 isnt wrong in the script hehe.

EDIT:

The only way i can remove the error is to go back to using:

nul = [this] execVM 

Instead of:

[this] call compile preprocessFileLineNumbers

It still works just fine though. Need to do some more testing with more players and JIP and such though. Had bad experience with the execVM not being 100% persistant for loadouts.

You cannot waitUntil or sleep in an uninterruptable context. It depends on where you call it from, but using call in e.g. an init field will not create an interruptable context.

Where is this placed? If you have it in an init field, just remove the waitUntil, it serves no purpose.

Share this post


Link to post
Share on other sites

Well, I updated the template at the site again and changed the loadout script. I also updated the UPS script for the ARMA 3 version to the latest ones. I removed the if true exitwith part since it was pointless and added the if (!isDedicated) then {}; around waituntil. Hopefully I won't see script errors from that on a dedicated server if I test it with script error enable.

I also added the green/independent template for ARMA 3 but I kept loadout the same since its just an example template.

Share this post


Link to post
Share on other sites

I changed the loadout section again. As Alwarren said, the waitUntil was pointless, caused some script errors and such. You don't need it so I took that out. The tutorial should most likely be good to go now. I also took out the if (!isDedicated) then {}; .

I added a reminder on the UPS part incase you use UPS or UPSMON markers for your missions, be sure you hide them by putting a "markername" setMarkerAlpha 0; or else people will know in which radius the AI will patrol :P unless you want people to know intentionally.

You can also download an offline version if you like, I just converted the webpage to a PDF with adobe acrobat.

http://www.mediafire.com/download/kzy4ph63u40sk3h/phantom_mission_tutorial_offline.7z

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  

×