Results 1 to 6 of 6

Thread: [SP] Operation Hog Cove (Altis)

  1. #1

    [SP] Operation Hog Cove (Altis)

    Operation Hog Cove

    Single-player infantry-only combat in fields and urban environments.

    Five small squads launch an amphibious assault on Molos.


    Mission Features

    • Requires no addons.
    • Randomised enemy placement and numbers. Shouldn't play out the same way twice.
    • Randomised appearances for friend and foe. Soldiers aren't clones; they wear different uniform variants.
    • Ability to join any squad, or strike out on your own.
    • Randomised time of day: dawn, sunrise, midday, sunset and moonlit night. Visibility is high enough to not require night-vision.
    • Optional objective: make do with your 'standard issue' rifle and basic equipment, plus whatever you can scavenge from the field. A weapons cache is available for those who would rather kit up.

    Feedback

    Played the mission? I'd appreciate some feedback so I can learn what does and doesn't work in ArmA 3.

    Download


    See Also

    For more of my missions, please click here.

    Last edited by nichevo; Sep 13 2013 at 11:53. Reason: added Armaholic mirror

  2. #2
    Updated the mission after ArmA came out of Beta. (More info.)

    The download links above have (and will) be edited to show which have the latest version.

  3. #3
    Quick question for my own mission making, how did you randomize BLUFOR soldier experiences? Is this something you put in the init line? Thanks

  4. #4
    Quote Originally Posted by Jblack9 View Post
    how did you randomize BLUFOR soldier experiences? Is this something you put in the init line?
    You're talking about their appearance right? You're correct. In the init line for every BLUFOR infantry unit (including the player), I put the following:

    Code:
    nul = [this] execvm "init_blufor.sqf";
    ExecVM tells the game to run a script called init_blufor.sqf. I'll paste the script at the bottom of this post. The script file must exist in the mission folder. If you're new to scripts, maybe this guide will help, it's for ArmA 2 but seems mostly correct.

    I always use a script like this to randomise soldiers. In this mission I didn't randomise their weapons very much; they always have the MX. But random weapons is certainly possible by expanding the script.

    In this mission I actually have another script called init_blufor_medic.sqf because the medic needed different gear (a medikit). You might consider doing the same: different scripts for riflemen, machine-gunners, officers, snipers, AT soldiers etc.

    Code:
    _target = _this select 0;
    
    // Skill:
    if(_target != player) then
    {
    	_maxSkill = 0.8;
    	_minSkill = 0.2;
    	_target setSkill  (random (_maxSkill - _minSkill)) + _minSkill;
    };
    
    // Remove equipment:
    removeUniform _target;
    removeHeadgear _target;
    removeVest _target;
    removeBackpack _target;
    removeAllWeapons _target;
    _target unassignitem "NVGoggles"; 
    _target removeItem "NVGoggles"; 
    
    // Possible uniforms:
    _uniformArray = [];
    _uniformArray = _uniformArray + ["U_B_CombatUniform_mcam"];
    _uniformArray = _uniformArray + ["U_B_CombatUniform_mcam"];
    _uniformArray = _uniformArray + ["U_B_CombatUniform_mcam_vest"];
    _uniformArray = _uniformArray + ["U_B_CombatUniform_mcam_tshirt"];
    _uniformArray = _uniformArray + ["U_B_CombatUniform_mcam_worn"];
    _target addUniform (_uniformArray select (floor random count _uniformArray));
    
    // Possible vests:
    _vestProb = 1.0;
    _vestArray = [];
    _vestArray = _vestArray + ["V_BandollierB_cbr"];
    _vestArray = _vestArray + ["V_BandollierB_khk"];
    _vestArray = _vestArray + ["V_BandollierB_oli"];
    _vestArray = _vestArray + ["V_BandollierB_rgr"];
    _vestArray = _vestArray + ["V_Chestrig_khk"];
    _vestArray = _vestArray + ["V_Chestrig_oli"];
    _vestArray = _vestArray + ["V_TacVest_blk"];
    _vestArray = _vestArray + ["V_TacVest_brn"];
    _vestArray = _vestArray + ["V_TacVest_camo"];
    _vestArray = _vestArray + ["V_TacVest_khk"];
    _vestArray = _vestArray + ["V_TacVest_oli"];
    if(random 1.0 < _vestProb) then
    {
    	_target addVest (_vestArray select (floor random count _vestArray));
    };
    
    // Possible hats:
    _hatProb = 0.8;
    _hatArray = [];
    if (_target == leader group _target AND _target != player) then 
    { 
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_mcamo"];
    	_hatArray = _hatArray + ["H_MilCap_gry"];
    	_hatArray = _hatArray + ["H_MilCap_gry"];
    	_hatArray = _hatArray + ["H_MilCap_gry"];
    	_hatArray = _hatArray + ["H_MilCap_dgtl"];
    	_hatArray = _hatArray + ["H_MilCap_dgtl"];
    	_hatArray = _hatArray + ["H_MilCap_dgtl"];
    	_hatArray = _hatArray + ["H_Booniehat_dgtl"];
    	_hatArray = _hatArray + ["H_Booniehat_tan"];
    	_hatArray = _hatArray + ["H_Booniehat_mcamo"];
    	_hatArray = _hatArray + ["H_Cap_blk"];
    	_hatArray = _hatArray + ["H_Cap_blk_CMMG"];
    	_hatArray = _hatArray + ["H_Cap_blk_ION"];
    	_hatArray = _hatArray + ["H_Cap_blk_Raven"];
    	_hatArray = _hatArray + ["H_Cap_brn_SPECOPS"];
    	_hatArray = _hatArray + ["H_Cap_grn_BI"];
    	_hatArray = _hatArray + ["H_Cap_grn"];
    	_hatArray = _hatArray + ["H_Cap_tan"];
    	_hatArray = _hatArray + ["H_Cap_tan_specops_US"];	
    } 
    else 
    { 
    	_hatArray = _hatArray + ["H_HelmetB"];
    	_hatArray = _hatArray + ["H_HelmetB"];
    	_hatArray = _hatArray + ["H_HelmetB"];
    	_hatArray = _hatArray + ["H_HelmetB"];
    	_hatArray = _hatArray + ["H_HelmetB_light"];
    	_hatArray = _hatArray + ["H_HelmetB_light"];
    	_hatArray = _hatArray + ["H_HelmetB_light"];
    	_hatArray = _hatArray + ["H_HelmetB_light"];
    	_hatArray = _hatArray + ["H_HelmetB_paint"];
    	_hatArray = _hatArray + ["H_HelmetB_paint"];
    	_hatArray = _hatArray + ["H_HelmetB_paint"];
    	_hatArray = _hatArray + ["H_HelmetB_paint"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetB_plain_mcamo"];
    	_hatArray = _hatArray + ["H_HelmetSpecB"];
    	_hatArray = _hatArray + ["H_HelmetSpecB"];
    	_hatArray = _hatArray + ["H_HelmetSpecB"];
    	_hatArray = _hatArray + ["H_HelmetSpecB"];
    	_hatArray = _hatArray + ["H_Watchcap_blk"];
    	_hatArray = _hatArray + ["H_Watchcap_blk"];
    	_hatArray = _hatArray + ["H_Booniehat_dgtl"];
    	_hatArray = _hatArray + ["H_Booniehat_tan"];
    	_hatArray = _hatArray + ["H_Booniehat_mcamo"];
    	_hatArray = _hatArray + ["H_Cap_blk"];
    	_hatArray = _hatArray + ["H_Cap_blk_CMMG"];
    	_hatArray = _hatArray + ["H_Cap_blk_ION"];
    	_hatArray = _hatArray + ["H_Cap_blk_Raven"];
    	_hatArray = _hatArray + ["H_Cap_brn_SPECOPS"];
    	_hatArray = _hatArray + ["H_Cap_tan"];
    	_hatArray = _hatArray + ["H_Cap_tan_specops_US"];
    };
    if(random 1.0 < _hatProb) then
    {
    	_target addHeadgear (_hatArray select (floor random count _hatArray));
    };
    
    // Equipment:
    for [{_i=0}, {_i<8+(random 2)}, {_i=_i+1}] do
    {
        _target addmagazine "30Rnd_65x39_caseless_mag_Tracer";
    };
    for [{_i=0}, {_i<random 4}, {_i=_i+1}] do
    {
    	_target addmagazine "HandGrenade";
    };
    for [{_i=0}, {_i<random 4}, {_i=_i+1}] do
    {
        _target additem "FirstAidKit";
    };
    
    // A weapon:
    _target addweapon "arifle_MX_F";
    
    // Possible optics:
    _opticsProb = 0.05;
    _opticsArray = [];
    _opticsArray = _opticsArray + ["optic_Arco"];
    _opticsArray = _opticsArray + ["optic_Hamr"];
    _opticsArray = _opticsArray + ["optic_Aco"];
    _opticsArray = _opticsArray + ["optic_ACO_grn"];
    _opticsArray = _opticsArray + ["optic_Holosight"]; 
    if(random 1.0 < _opticsProb) then
    {
    	_target addPrimaryWeaponItem (_opticsArray select (floor random count _opticsArray));
    };
    
    // Possible weapon accessories:
    _accProb = 0.5;
    _accArray = [];
    _accArray = _accArray + ["acc_flashlight"];
    _primaryWeapon = primaryWeapon _target;
    if(random 1.0 < _accProb) then
    {
    	_target addPrimaryWeaponItem (_accArray select (floor random count _accArray));
    };

  5. #5
    aaand.... removed from Steam workshop, saved to HDD. I need this even without the cloud.

    Good mission. I did found that there is a performance issue on my machine. Though it might be my 2007 hardware, I hope a bit of optimisation is possible.

    Also, a bit of entrenchment, and maybe some civillian presence would be nice... You know.
    Last edited by Codarl; Dec 3 2013 at 20:19.

  6. #6
    Quote Originally Posted by Codarl View Post
    Good mission.
    Just saw your reply. Cheers.

    Quote Originally Posted by Codarl View Post
    Also, a bit of entrenchment, and maybe some civillian presence would be nice... You know.
    You aren't wrong, but as this was my first ArmA 3 mission, KISS was foremost on my mind.

Similar Threads

  1. HOG MHQ v1.0
    By hogmason in forum ARMA 2 & OA : MISSIONS - Editing & Scripting
    Replies: 8
    Last Post: Apr 9 2013, 05:47
  2. Operation HOG SOCOMD Command 2 team v1.0
    By hogmason in forum ARMA 2 & OA - USER MISSIONS
    Replies: 15
    Last Post: Jun 3 2012, 02:50
  3. Another mission No.3 (The Cove) problem...
    By SyncV2 in forum TAKE ON HELICOPTERS - QUESTIONS & ANSWERS
    Replies: 2
    Last Post: Feb 8 2012, 21:48
  4. Lock into mission 3: the cove
    By Matthieu in forum TAKE ON HELICOPTERS - QUESTIONS & ANSWERS
    Replies: 1
    Last Post: Feb 5 2012, 12:00
  5. (solved) 03 - The Cove
    By nutter4ever in forum TAKE ON HELICOPTERS - OFFICIAL SCENARIOS
    Replies: 14
    Last Post: Jan 23 2012, 16:45

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •