Skip to content

Commit

Permalink
Spectre Template v1.0
Browse files Browse the repository at this point in the history
spectre template v1.0
  • Loading branch information
aco-rt committed Aug 19, 2024
1 parent a96a486 commit c3061b2
Show file tree
Hide file tree
Showing 37 changed files with 7,406 additions and 1 deletion.
9 changes: 8 additions & 1 deletion Readme.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# Aco Templates (Deprecated, not updated anymore)
# Aco Templates

## Spectre template

First Template ready. This is a vanilla template, change the units to your mission needs. An RHS template is in the works.



## 1PH templates (Deprecated, not updated anymore)
These are templates made from 1PH templates used by 1st Para-Hussars. These templates are my spin on the base template.
As time goes by more templates will show up for various terrains and situations.

Expand Down
80 changes: 80 additions & 0 deletions Spectre_TEMPLATE_08142024.VR/description.ext
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
// https://community.bistudio.com/wiki/Description.ext

disabledAI = 1; // 0: disabled - 1: enabled. Default: 0
enableDebugConsole = 1; // dangerous in MP
forceRotorLibSimulation = 2; // Default: 0

author = "Your Name, Aco, and Citadel";
onLoadName = "Mission Name";
onLoadMission = "The mission maker describes the mission here.";
//briefingName = "Spectre Super Mission Name";
loadScreen = "images\loadScreen.paa";

respawn = "BASE";
respawnButton = 1;
respawnDelay = 120;
//respawnVehicleDelay = 120;
respawnDialog = 0;
respawnOnStart = 0;
respawnTemplates[] = { "Ace_Spectator","Counter","Tickets" };

showMap = 1; // 0: disabled - 1: enabled. Default: 1
showWatch = 1; // 0: disabled - 1: enabled. Default: 1

corpseManagerMode = 1; // Default: 0 for SP, 2 for MP
corpseLimit = 15; // Default: 15
corpseRemovalMinTime = 60; // seconds. Default: 10
corpseRemovalMaxTime = 1200; // seconds. Default: 3600
wreckManagerMode = 0; // Default: 0 for SP, 2 for MP
wreckLimit = 10; // seconds. Default: 15
wreckRemovalMinTime = 60; // seconds. Default: 10
wreckRemovalMaxTime = 1800; // seconds. Default: 36000 (10 hours)
minPlayerDistance = 100; // meters. Default: 0

aiKills = 1; // 0: disabled - 1: enabled. Default: 0
debriefing = 1; // 0: disabled - 1: enabled. Default: 1

disableChannels[] = {
{
0, // channel ID
false, // text chat remains enabled
true // voice chat is disabled
},
{
1, // channel ID
false, // text chat remains enabled
true // voice chat is disabled
},
{
2, // channel ID
false, // text chat remains enabled
true // voice chat is disabled
},
{
3, // channel ID
false, // text chat remains enabled
true // voice chat is disabled
},
{
4, // channel ID
false, // text chat remains enabled
true // voice chat is disabled
},
{
5, // channel ID
true, // text chat remains enabled
true // voice chat is disabled
},
};

class Header
{
gameType = "Coop"; // Game type
//minPlayers = 1; // minimum number of players the mission supports
//maxPlayers = 24; // maximum number of players the mission supports
};

class CfgFunctions
{
#include "scripts\rallyPoint\cfgRally.hpp"
};
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
7 changes: 7 additions & 0 deletions Spectre_TEMPLATE_08142024.VR/init.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// https://community.bistudio.com/wiki/Event_Scripts

// Uncomment below to turn on faster nights. The first value is the daytime time multiplier, the second is the night-time multiplier. The night-time hours are from 9pm to 4am.
// [6,12] execVM "scripts\fasterNights.sqf";

// Uncomment below to disable fog. This script simply cycles a command every few minutes to clear the fog from the game. You can edit the script to change this behavior.
// [] execVM "scripts\noFog.sqf";
142 changes: 142 additions & 0 deletions Spectre_TEMPLATE_08142024.VR/initPlayerLocal.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
// https://community.bistudio.com/wiki/Event_Scripts

//This adds a "Spectre" command category to declutter the ACE menu
_commandSpectrecode = {
hint "Use the sub-menus for Spectre special functions";
};

_commandSpectreaction = ["Spectre","Spectre","",_commandSpectrecode,{true}] call ace_interact_menu_fnc_createAction;
[player, 1, ["ACE_SelfActions"], _commandSpectreaction] call ace_interact_menu_fnc_addActionToObject;


//This enables players to place down grass cutters, which removes the grass around them
_AceGrassCut = ["grass_cut","Cut Grass","",
{[player] call ace_common_fnc_goKneeling; [player, "AinvPknlMstpSnonWnonDnon_medic_1",1] call ace_common_fnc_doAnimation;
[10,[],{_cutter = "Land_ClutterCutter_medium_F" createVehicle [0,0,0];
_cutter setPos (getPos player); hint "Grass Cut"},{hint "Cutting interupted"},"Cutting Grass"] call ace_common_fnc_progressBar
},{true}] call ace_interact_menu_fnc_createAction;

[player, 1, ["ACE_SelfActions", "Spectre"], _AceGrassCut] call ace_interact_menu_fnc_addActionToObject;

// Adds Platoon Rally Point deployment ability to all players when they become team lead. This will also disable this ability on any Pathfinders, Air Squadron members, or Para-Cavalry troops. Also, if RPWestTerminal or RPWest objects are deleted, this will disable the system.
_WplatoonRP = ["Wplatoon_rp","Deploy Platoon RP","",
{
_num = player nearEntities ['Man',15];
if(leader player == player) then
{
if(count _num >2) then
{
[player] call ace_common_fnc_goKneeling; [player, "AinvPknlMstpSnonWnonDnon_medic_1",1] call ace_common_fnc_doAnimation;
[40,[],{

RPwest setVehiclePosition [(player modelToWorld[0,2,0]), [],0.5, "CAN_COLLIDE"];
wsquadRP1 setVehiclePosition [(player modelToWorld[1.5,1.5,0]), [],0.2, "CAN_COLLIDE"];
wsquadRP2 setVehiclePosition [(player modelToWorld[-1.5,3,0]), [],0.2, "CAN_COLLIDE"];
wsquadRP3 setVehiclePosition [(player modelToWorld[-1.5,1,0]), [],0.2, "CAN_COLLIDE"];
hint "Rally Point Deployed";
"RPMARK_1" setmarkerpos player;

}

,

{hint "Deploying interrupted"},"Deploying Rally point"] call ace_common_fnc_progressBar
}
else
{
hint 'Need more allies nearby to deploy Rally Point'
}
}
else
{
hint 'Become the Team leader via ACE interactions and try again'
}
},{true}] call ace_interact_menu_fnc_createAction;

[player, 1, ["ACE_SelfActions","Spectre"], _WplatoonRP] call ace_interact_menu_fnc_addActionToObject;

// FARP Setup
if (!isNil "farpLogic_01") then {
// Adds FARP deployment and packing ability to Cav players.
_FARPAbility = ["FARPAbility","Deploy Mobile FARP","",
{
_num = player nearEntities ['Man',15];

if (mobileFARPEmergencyPack == false) then
{
farpLogic_01 setPosATL (getPosATL player);
farpLogic_01 setDir ((getDir player)-45);

[player] call ace_common_fnc_goKneeling; [player, "AinvPknlMstpSnonWnonDnon_medic_1",1] call ace_common_fnc_doAnimation;
[40,[],{


[[],"scripts\mobileFARP\mobileFARP_setup.sqf"] remoteExec ["execVM",0];

},{hint "Deploying interrupted"
},"Deploying Mobile FARP"] call ace_common_fnc_progressBar;

}
else
{
hint 'The FARP had to emergency withdraw recently. Wait several minutes and try again.'
}

},{true}] call ace_interact_menu_fnc_createAction;

if (isNil {player getVariable "slot_Cavalry"}) then {} else {
[player, 1, ["ACE_SelfActions","Spectre"], _FARPAbility] call ace_interact_menu_fnc_addActionToObject;
};

// Adds FARP packing ability to Cav players
_FARPPackability = ["FARPPackAbility","Pack Mobile FARP","",
{

if(player distance farpLogic_01 < 15) then
{
[player] call ace_common_fnc_goKneeling; [player, "AinvPknlMstpSnonWnonDnon_medic_1",1] call ace_common_fnc_doAnimation;
[10,[],{

[[],"scripts\mobileFARP\mobileFARP_pack.sqf"] remoteExec ["execVM",0];

},{hint "Deploying interrupted"},"Packing Mobile FARP"] call ace_common_fnc_progressBar;

}
else
{
hint 'Need to be near center of FARP to pack it.'
}

},{true}] call ace_interact_menu_fnc_createAction;

if (isNil {player getVariable "slot_Cavalry"}) then {} else {
[player, 1, ["ACE_SelfActions","Spectre"], _FARPPackAbility] call ace_interact_menu_fnc_addActionToObject;
};
};

// Adds marker panel deployment to Cav guys.
_dropSystemTarp = ["dropSystemTarp","Deploy Signal Panel (Yellow)","",
{

[player] call ace_common_fnc_goKneeling; [player, "AinvPknlMstpSnonWnonDnon_medic_1",1] call ace_common_fnc_doAnimation;
[5,[],{_panel = "Tarp_01_Large_Yellow_F" createVehicle position player;},{hint "Deploying interrupted"},"Deploying Signal Panel (Yellow)"] call ace_common_fnc_progressBar;
_panel setVehiclePosition [(player modelToWorld[0,0,0.0]), [],1.5, "CAN_COLLIDE"];
_panel setDir (getDir player);

},{true}] call ace_interact_menu_fnc_createAction;

if (isNil {player getVariable "slot_Cavalry"}) then {} else {
[player, 1, ["ACE_SelfActions","Spectre"], _dropSystemTarp] call ace_interact_menu_fnc_addActionToObject;
};


//This enables Citadel's Triage System if the module is present
if (!isNil "citadelsTriageSystemModule_01") then {
player addMPEventHandler ["MPKilled", {
params ["_unit", "_killer", "_instigator", "_useEffects"];

[_unit, _killer, _instigator, _useEffects] execVM "scripts\triageSystem.sqf";

}];
};

Loading

0 comments on commit c3061b2

Please sign in to comment.