-
-
Notifications
You must be signed in to change notification settings - Fork 322
Add new OPFOR Preset RHSUSAF #871
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Dabako
wants to merge
12
commits into
KillahPotatoes:master
Choose a base branch
from
Dabako:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 6 commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
5ffcaa4
Add new OPFOR preset RHSUSAF
cfbc767
Add new OPFOR preset to init_presets and main config
e8b0983
Fix missing semicolons
e5fee4b
added Humanitarian Aid
c2f72ef
Merge pull request #1 from Dabako/sidemissions
Dabako 8357eb9
add usaf woodland as OPFOR Preset
876ec23
Remove Humanitarian Aid
903d928
Update kp_liberation_config.sqf
3900b35
Update kp_liberation_config.sqf
Dabako 64dc904
Update Missionframework/presets/opfor/rhs_usaf_wdl.sqf
Dabako 2bb9ba2
add preset AFRF Drones blufor
cd344fa
Create test.yml
Dabako File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,143 @@ | ||
| /* | ||
| Needed Mods: | ||
| - RHS USAF | ||
|
|
||
| Optional Mods: | ||
| - None | ||
| */ | ||
|
|
||
| // Enemy infantry classes | ||
| opfor_officer = "rhsusf_army_ucp_officer"; // Officer | ||
| opfor_squad_leader = "rhsusf_army_ucp_squadleader"; // Squad Leader | ||
| opfor_team_leader = "rhsusf_army_ucp_teamleader"; // Team Leader | ||
| opfor_sentry = "rhsusf_army_ucp_riflemanl"; // Rifleman (Lite) | ||
| opfor_rifleman = "rhsusf_army_ucp_rifleman_m4"; // Rifleman M4 | ||
| opfor_rpg = "rhsusf_army_ucp_maaws"; // Rifleman (MAAWS) | ||
| opfor_grenadier = "rhsusf_army_ucp_grenadier"; // Grenadier | ||
| opfor_machinegunner = "rhsusf_army_ucp_autorifleman"; // Autorifleman | ||
| opfor_heavygunner = "rhsusf_army_ucp_machinegunner"; // Heavy Gunner | ||
| opfor_marksman = "rhsusf_army_ucp_marksman"; // Marksman | ||
| opfor_sharpshooter = "rhsusf_army_ucp_m107"; // Sharpshooter | ||
| opfor_sniper = "rhsusf_army_ucp_sniper"; // Sniper | ||
| opfor_at = "rhsusf_army_ucp_javelin"; // AT Specialist | ||
| opfor_aa = "rhsusf_army_ucp_aa"; // AA Specialist | ||
| opfor_medic = "rhsusf_army_ucp_medic"; // Combat Life Saver | ||
| opfor_engineer = "rhsusf_army_ucp_engineer"; // Engineer | ||
| opfor_paratrooper = "O_soldier_PG_F"; // Paratrooper | ||
|
|
||
| // Enemy vehicles used by secondary objectives. | ||
| opfor_mrap = "rhsusf_M1220_usarmy_wd"; // M1220 MRAP | ||
| opfor_mrap_armed = "thsusf_M1120_M2_usarmy_wd"; // HMMWV (M2) | ||
Dabako marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| opfor_transport_helo = "RHS_UH60M"; // UH 60 M | ||
| opfor_transport_truck = "rhsusf_M1083A1P2_WD_fmtv_usarmy"; // M1083A1P2 (Covered) | ||
| opfor_ammobox_transport = "rhsusf_M1083A1P2_WD_flatbed_fmtv_usarmy"; // M1083A1P2 (Open) | ||
| opfor_fuel_truck = "rhsusf_M978A4_BKIT_usarmy_wd"; // M978A4 Fuel | ||
| opfor_ammo_truck = "rhsusf_M977A4_AMMO_BKIT_usarmy_wd"; // M977A4 Ammo | ||
| opfor_fuel_container = "Land_Pod_Heli_Transport_04_fuel_F"; // Taru Fuel Pod | ||
| opfor_ammo_container = "Land_Pod_Heli_Transport_04_ammo_F"; // Taru Ammo Pod | ||
| opfor_flag = "Flag_US_F"; // Flag | ||
|
|
||
| /* Adding a value to these arrays below will add them to a one out of however many in the array, random pick chance. | ||
| Therefore, adding the same value twice or three times means they are more likely to be chosen more often. */ | ||
|
|
||
| /* Militia infantry. Lightweight soldier classnames the game will pick from randomly as sector defenders. | ||
| Think of them like garrison or military police forces, which are more meant to control the local population instead of fighting enemy armies. */ | ||
| militia_squad = [ | ||
| "rhsusf_army_ucp_riflemanl", // Rifleman (Lite) | ||
| "rhsusf_army_ucp_riflemanl", // Rifleman (Lite) | ||
| "rhsusf_army_ucp_rifleman", // Rifleman | ||
| "rhsusf_army_ucp_rifleman", // Rifleman | ||
| "rhsusf_army_ucp_riflemanat", // Rifleman (AT) | ||
| "rhsusf_army_ucp_autorifleman", // Autorifleman | ||
| "rhsusf_army_ucp_marksman", // Marksman | ||
| "rhsusf_army_ucp_medic", // Medic | ||
| "rhsusf_army_ucp_engineer" // Engineer | ||
| ]; | ||
|
|
||
| // Militia vehicles. Lightweight vehicle classnames the game will pick from randomly as sector defenders. Can also be empty for only infantry milita. | ||
| militia_vehicles = [ | ||
| "rhsusf_m1025_w_m2" // HMMWV (M2) | ||
| ]; | ||
|
|
||
| // All enemy vehicles that can spawn as sector defenders and patrols at high enemy combat readiness (aggression levels). | ||
| opfor_vehicles = [ | ||
| "rhsusf_m1151_m2_v1_usarmy_wd", // HMMWV (M2) | ||
| "rhsusf_m1151_m2crows_usarmy_wd", // HMMWV (M2 Crows) | ||
| "rhsusf_m1151_mk19_v2_usarmy_wd", // HMMWV (MK19) | ||
| "rhsusf_m1151_m240_usarmy_wd", // HMMWV (TOW) | ||
| "RHS_M2A3_BUSKI_wd ", // M2A3 Bradley | ||
| "RHS_M2A3_wd", // M2A3 Bradley | ||
| "RHS_M6_wd", // M6 AA Bradley | ||
| "RHS_M6_wd", // M6 AA Bradley | ||
| "rhsusf_m1a1aimwd_usarmy", // M1A1 Abrams | ||
| "rhsusf_m1a1aim_tuski_wd", // M1A1 Abrams TUSK I | ||
| "rhsusf_m1a2sep1wd_usarmy", // M1A2 Abrams | ||
| "rhsusf_m1a2sep1tuskiiwd_usarmy" // M1A2 Abrams TUSK II | ||
| ]; | ||
|
|
||
| // All enemy vehicles that can spawn as sector defenders and patrols but at a lower enemy combat readiness (aggression levels). | ||
| opfor_vehicles_low_intensity = [ | ||
| "rhsusf_m1025_w_m2", // HMMWV (HMG) | ||
| "rhsusf_m1025_w_m2", // HMMWV (HMG) | ||
| "rhsusf_m1045_w_s", // HMMWV (TOW) | ||
| "rhsusf_m1240a1_m2_usarmy_wd", // M-ATV (HMG) | ||
| "rhsusf_m113_usarmy" // M113 | ||
| ]; | ||
|
|
||
| // All enemy vehicles that can spawn as battlegroups, either assaulting or as reinforcements, at high enemy combat readiness (aggression levels). | ||
| opfor_battlegroup_vehicles = [ | ||
| "rhsusf_m1151_m2_v1_usarmy_wd", // HMMWV (M2) | ||
| "rhsusf_m1025_w_m2", // HMMWV (M2) | ||
| "rhsusf_m1025_w_mk19", // HMMWV (MK19) | ||
| "rhsusf_m966_w", // HMMWV (TOW) | ||
| "rhsusf_M1232_M2_usarmy_wd", // M1232 Transport (M2) | ||
| "rhsusf_M1078A1P2_WD_fmtv_usarmy", // M1078A1P2 Transport (Covered) | ||
| "rhsusf_stryker_m1127_m2_wd", // Stryker | ||
| "RHS_M2A2_wd", // Bradley | ||
| "RHS_M6_wd", // M6 AA Bradley | ||
| "RHS_M6_wd", // M6 AA Bradley | ||
| "rhsusf_m1a1aimwd_usarmy", // M1A1 Abrams | ||
| "rhsusf_m1a2sep1wd_usarmy", // M1A2 Abrams | ||
| "rhsusf_m1a2sep1tskiwd_usarmy", // M1A2 Abrams TUSK I | ||
| "rhsusf_m1a2sep1tskiiwd_usarmy", // M1A2 Abrams TUSK II | ||
| "RHS_UH1Y_d", // UH1Y (Armed) | ||
| "RHS_UH60M_d", // UH60M | ||
| "RHS_CH_47F_10", // Chinhook | ||
| "RHS_AH64D_wd" // AH64D | ||
| ]; | ||
|
|
||
| // All enemy vehicles that can spawn as battlegroups, either assaulting or as reinforcements, at lower enemy combat readiness (aggression levels). | ||
| opfor_battlegroup_vehicles_low_intensity = [ | ||
| "rhsusf_m1025_w_m2", // HMMWV (M2) | ||
| "rhsusf_m1151_ma_v1_usarmy_wd", // HMMWV (M2) | ||
| "rhsusf_M1232_M2_usarmy_wd", // M1232 Transport (M2) | ||
| "rhsusf_m113_usarmy_M240", // M113 (M240) | ||
| "RHS_M2A2_wd", // M2A2 Bradley | ||
| "RHS_M6_wdF", // M6 AA Bradley | ||
| "RHS_UH1Y_d", // UH1Y (Armed) | ||
| "RHS_UH60M_d" // UH60M | ||
| ]; | ||
|
|
||
| /* All vehicles that spawn within battlegroups (see the above 2 arrays) and also hold 8 soldiers as passengers. | ||
| If something in this array can't hold all 8 soldiers then buggy behaviours may occur. */ | ||
| opfor_troup_transports = [ | ||
| "rhsusf_M1078A1P2_WD_fmtv_usarmy", // M1078A1P2 Transport (Covered) | ||
| "rhsusf_stryker_m1127_m2_wd", // Stryker | ||
| "rhsusf_M1232_M2_usarmy_wd", // M1232 Transport (M2) | ||
| "RHS_UH60M_d", // UH60M | ||
| "RHS_CH_47F_10" // Chinhook | ||
| ]; | ||
|
|
||
| // Enemy rotary-wings that will need to spawn in flight. | ||
| opfor_choppers = [ | ||
| "RHS_UH60M_d", // UH60M | ||
| "RHS_UH1Y_d", // UH1Y (Armed) | ||
| "RHS_AH64D_wd", // AH64D | ||
| "RHS_CH_47F_10" // Chinhook | ||
| ]; | ||
|
|
||
| // Enemy fixed-wings that will need to spawn in the air. | ||
| opfor_air = [ | ||
| "RHS_A10", // A10 | ||
| "rhsuf_f22" // F22 | ||
| ]; | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
99 changes: 99 additions & 0 deletions
99
Missionframework/scripts/server/secondary/civ_supplies.sqf
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,99 @@ | ||
| /* | ||
| Creates a secondary objective mission to allow players to bring 2x supply crates to a | ||
| random friendly town in order to raise civilian rep. | ||
|
|
||
| Configurable options (kp_liberation_config): | ||
| GRLIB_secondary_missions_costs select 3 = intel cost for mission (default 5) | ||
| KP_liberation_civ_supplies_impact = % increase in civilian rep (default 5) | ||
| */ | ||
|
|
||
| _supplies_present = false; | ||
|
|
||
| //select random blufor owned town (capture) | ||
|
|
||
| _blufor_towns = []; | ||
|
|
||
| //check if blufor_sectors item is contained within sectors_capture and push into array | ||
| { | ||
| if (_x in sectors_capture) then { | ||
| _blufor_towns pushBack _x; | ||
| }; | ||
| } forEach blufor_sectors; | ||
|
|
||
| // Check if town array is empty | ||
| if(count _blufor_towns == 0) exitWith { | ||
| //if empty, throw error in log and call proper intel notification | ||
| ["There are no friendly towns to spawn supplies at!", "ERROR"] call KPLIB_fnc_log; | ||
| [11] remoteExec ["remote_call_intel"]; | ||
| }; | ||
|
|
||
| _objective_town = selectRandom _blufor_towns; | ||
|
|
||
|
|
||
| //create 50m radius marker at town | ||
| secondary_objective_position = getMarkerPos _objective_town; | ||
| secondary_objective_position_marker = secondary_objective_position; | ||
| publicVariable "secondary_objective_position_marker"; | ||
| sleep 1; | ||
|
|
||
| //start secondary mission | ||
| GRLIB_secondary_in_progress = 3; publicVariable "GRLIB_secondary_in_progress"; | ||
| [9] remoteExec ["remote_call_intel"]; | ||
|
|
||
| //create note in log | ||
| diag_log format ["Starting Humanitarian Aid objective in %1",_objective_town]; | ||
|
|
||
| //while loop to wait until 2x supply crates have been brought to within 50m of objective | ||
| while {_supplies_present == false} do { | ||
|
|
||
| _supplies_in_zone = []; | ||
| _objects_to_check = []; | ||
|
|
||
| //get list of all objects in marker area | ||
| _objects_to_check = vehicles inAreaArray [secondary_objective_position, 50, 50]; | ||
|
|
||
|
|
||
| { | ||
| //loop through all objects and check if they are the correct supply crates and not currently sitting inside vics | ||
| if (typeOf _x == KP_liberation_supply_crate && isNull attachedTo _x) then { | ||
|
|
||
| //if they are the right crate, add to the supplies array to be counted | ||
| _supplies_in_zone pushBack _x; | ||
| }; | ||
|
|
||
| } forEach _objects_to_check; | ||
|
|
||
| //if there are 2 or more of the correct crates, delete them and leave the mission while loop | ||
| if (count _supplies_in_zone > 1) then { | ||
|
|
||
| { | ||
| deleteVehicle _x; | ||
| } forEach _supplies_in_zone; | ||
|
|
||
| _supplies_present = true; | ||
|
|
||
| //if not, wait 5 seconds and check again | ||
| } else { | ||
| sleep 5; | ||
| }; | ||
|
|
||
| }; | ||
|
|
||
| //add civ rep for a completed mission based on value in kp_liberation_config | ||
| [KP_liberation_civ_supplies_impact] spawn F_cr_changeCR; | ||
|
|
||
| //display end notificaiton | ||
| [10] remoteExec ["remote_call_intel"]; | ||
|
|
||
| //add +1 completed secondary mission for the campaign end screen | ||
| stats_secondary_objectives = stats_secondary_objectives + 1; | ||
|
|
||
| //declare secondary mission completed | ||
| GRLIB_secondary_in_progress = -1; publicVariable "GRLIB_secondary_in_progress"; | ||
|
|
||
| //execute a save | ||
| sleep 1; | ||
| [] spawn KPLIB_fnc_doSave; | ||
|
|
||
| //create note in log | ||
| diag_log format ["Humanitarian Aid secondary objective complete at %1. Increasing civ rep by %2",_objective_town, KP_liberation_civ_supplies_impact]; |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change to RHS unit