From df9689a8e865e9cda6b640733e20bbc24fddf52c Mon Sep 17 00:00:00 2001 From: "Ghostrider [GRG]" Date: Sat, 23 Sep 2023 10:06:04 -0400 Subject: [PATCH] Add Documentation --- @GMS/addons/GMS/README.md | 5 + @GMS/supplementalLoot.txt | 266 ++++++++++++++++++++++++++++++++++++++ GMS_3DEN Instructions.txt | 80 ++++++++++++ GMS_RC Configuration.txt | 54 ++++++++ 4 files changed, 405 insertions(+) create mode 100644 @GMS/addons/GMS/README.md create mode 100644 @GMS/supplementalLoot.txt create mode 100644 GMS_3DEN Instructions.txt create mode 100644 GMS_RC Configuration.txt diff --git a/@GMS/addons/GMS/README.md b/@GMS/addons/GMS/README.md new file mode 100644 index 0000000..dd58f81 --- /dev/null +++ b/@GMS/addons/GMS/README.md @@ -0,0 +1,5 @@ +# GMS +Purpose: +Spawn pre-designed missions with AI, static weapons, vehicle patrols and air patrols at random or fixed locations. +Derived from blckeagls, which I maintained for years. +Dependencies: GMSCore diff --git a/@GMS/supplementalLoot.txt b/@GMS/supplementalLoot.txt new file mode 100644 index 0000000..b01ce34 --- /dev/null +++ b/@GMS/supplementalLoot.txt @@ -0,0 +1,266 @@ +_tools = [ + "Exile_Item_Matches", + "Exile_Item_CookingPot", + "Exile_Item_CanOpener", + "Exile_Item_Handsaw", + "Exile_Item_Pliers", + "Exile_Item_Grinder", + "Exile_Item_Foolbox", + "Exile_Item_Hammer", + "Exile_Item_CordlessScrewdriver", + "Exile_Item_FireExtinguisher", + "Exile_Item_OilCanister", + "Exile_Item_Screwdriver", + "Exile_Item_Shovel", + "Exile_Item_Wrench", + "Exile_Item_CordlessScrewdriver", + "Exile_Item_FireExtinguisher", + "Exile_Item_OilCanister", + "Exile_Item_Screwdriver", + /* + + "Exile_Item_Shovel", + "Exile_Item_Wrench", + "Exile_Item_SleepingMat", + "Exile_Item_ToiletPaper", + "Exile_Item_ZipTie", + "Exile_Item_BurlapSack", + "Exile_Item_Bullets_556", + "Exile_Item_Bullets_762", + "Exile_Item_WeaponParts", + */ + "Exile_Item_DuctTape", + "Binocular", + "Rangefinder", + /* + "Laserdesignator", + "Laserdesignator_02", + "Laserdesignator_03", + */ + + "ItemGPS", + "ItemMap", + "ItemCompass", + "ItemRadio", + "ItemWatch", + "Exile_Item_XM8" +]; + +_firstAid = [ + "Exile_Item_InstaDoc", + "Exile_Item_Bandage", + "Exile_Item_Vishpirin", + "Exile_Item_Heatpack", + + // Not available in 0.9.4! + "Exile_Item_Defibrillator" +]; + +_explosives = [ + "HandGrenade", + "MiniGrenade", + "B_IR_Grenade", + "O_IR_Grenade", + "I_IR_Grenade", + "1Rnd_HE_Grenade_shell", + "3Rnd_HE_Grenade_shell", + "APERSBoundingMine_Range_Mag", + "APERSMineDispenser_F", // Laws of War Mines + "APERSMine_Range_Mag", + "APERSTripMine_Wire_Mag", + "ClaymoreDirectionalMine_Remote_Mag", + "DemoCharge_Remote_Mag", + "IEDLandBig_Remote_Mag", + "IEDLandSmall_Remote_Mag", + "IEDUrbanBig_Remote_Mag", + "IEDUrbanSmall_Remote_Mag", + "SatchelCharge_Remote_Mag", + "SLAMDirectionalMine_Wire_Mag" +]; + +_laserDesignators = [ + "O_Static_Designator_02_weapon_F", + "Laserdesignator_01_khk_F", + "Laserdesignator_02_ghex_F", + "Laserdesignator", + "Laserdesignator_02", + "Laserdesignator_03", + "LaserBatteries" +]; + +_launchers = [ + "launch_NLAW_F", + "launch_RPG32_F", + "launch_B_Titan_F", + "launch_I_Titan_F", + "launch_O_Titan_F", + "launch_B_Titan_short_F", + "launch_I_Titan_short_F", + "launch_O_Titan_short_F", + "launch_RPG7_F", + "launch_O_Vorona_brown_F", + "launch_O_Vorona_green_F" +]; + +_launcherRounds = [ + "NLAW_F", + "RPG32_F", + "RPG32_HE_F", + "Titan_AA", + "Titan_AT", + "Titan_AP", + "RPG7_F", + "vorona_HEAT", + "Vorona_HE" +]; + +_buildingMaterials = [ + "Exile_Item_ExtensionCord", + "Exile_Item_FuelCanisterEmpty", + "Exile_Item_JunkMetal", + "Exile_Item_LightBulb", + "Exile_Item_MetalBoard", + "Exile_Item_MetalPole", + "Exile_Item_SafeKit", + "Exile_Item_CamoTentKit", + "Exile_Item_CodeLock", + "Exile_Item_MetalScrews", + "Exile_Item_MetalWire", + "Exile_Item_BaseCameraKit", + "Exile_Item_Rope", + "Exile_Item_Laptop" +]; + + [// Materials and supplies + ["Exile_Item_Matches",1,2],["Exile_Item_CookingPot",1,2], + ["Exile_Item_Rope",1,2],["Exile_Item_DuctTape",1,8],["Exile_Item_ExtensionCord",1,8],["Exile_Item_FuelCanisterEmpty",1,2], + ["Exile_Item_JunkMetal",1,10],["Exile_Item_LightBulb",1,10],["Exile_Item_MetalBoard",1,10],["Exile_Item_MetalPole",1,10],["Exile_Item_CamoTentKit",1,10],["Exile_Item_WorkBenchKit",1,10], + ["Exile_Item_WoodWindowKit",1,10],["Exile_Item_WoodWallKit",1,10],["Exile_Item_WoodStairsKit",1,10],["Exile_Item_WoodGateKit",1,10],["Exile_Item_WoodDoorwayKit",1,10],["Exile_Item_MetalBoard",1,10], + ["Exile_Item_MetalBoard",1,10],["Exile_Item_ExtensionCord",1,10],["Exile_Item_MetalPole",1,10],["Exile_Item_Sand",3,10],["Exile_Item_Cement",3,10],["Exile_Item_MetalWire",3,10],["Exile_Item_MetalScrews",3,10] + // + ], + [//Items + ["Exile_Item_InstaDoc",1,2],["NVGoggles",1,2],["Rangefinder",1,2],["Exile_Item_Bandage",1,3],["Exile_Item_Vishpirin",1,3], + ["Exile_Item_Catfood",1,3],["Exile_Item_Surstromming",1,3],["Exile_Item_BBQSandwich",1,3],["Exile_Item_ChristmasTinner",1,3],["Exile_Item_SausageGravy",1,3],["Exile_Item_GloriousKnakworst",1,3], + ["Exile_Item_BeefParts",1,3],["Exile_Item_Cheathas",1,3],["Exile_Item_Noodles",1,3],["Exile_Item_SeedAstics",1,3],["Exile_Item_Raisins",1,3],["Exile_Item_Moobar",1,3],["Exile_Item_InstantCoffee",1,3],["Exile_Item_EMRE",1,3], + ["Exile_Item_PlasticBottleCoffee",1,3],["Exile_Item_PowerDrink",1,3],["Exile_Item_PlasticBottleFreshWater",1,3],["Exile_Item_Beer",1,3],["Exile_Item_EnergyDrink",1,3],["Exile_Item_MountainDupe",1,3] + + + blck_lootCountsOrange = [8,32,8,30,16,1]; // Orange + blck_contructionLoot = [ + [ + [// Weapons + + ], + [//Magazines + + ], + [ // Optics + + ], + [// Materials and supplies + + // + ["Exile_Item_Matches",1,2],["Exile_Item_CookingPot",1,2],["Exile_Item_Rope",1,2],["Exile_Item_DuctTape",1,8],["Exile_Item_ExtensionCord",1,8],["Exile_Item_FuelCanisterEmpty",1,2], + ["Exile_Item_JunkMetal",1,10],["Exile_Item_LightBulb",1,10],["Exile_Item_MetalBoard",1,10],["Exile_Item_MetalPole",1,10],["Exile_Item_CamoTentKit",1,10],["Exile_Item_MetalScrews",3,10] + ], + [//Items + ["Exile_Item_Matches","Exile_Item_CookingPot","Exile_Item_CanOpener","Exile_Item_Handsaw","Exile_Item_Pliers","Exile_Item_Grinder","Exile_Item_Foolbox","Exile_Item_Hammer", + "Exile_Item_CordlessScrewdriver","Exile_Item_FireExtinguisher","Exile_Item_OilCanister","Exile_Item_Screwdriver","Exile_Item_Shovel","Exile_Item_Wrench","Exile_Item_CordlessScrewdriver", + "Exile_Item_FireExtinguisher","Exile_Item_OilCanister","Exile_Item_Screwdriver","Exile_Item_DuctTape","Binocular","Rangefinder","ItemGPS","ItemMap","ItemCompass","ItemRadio","ItemWatch", + "Exile_Item_XM8"]; + ], + [ // Backpacks + + ] + ]; + blck_supportLoot = [ + [ + [// Weapons + + ], + [//Magazines + + ], + [ // Optics + + ], + [// Materials and supplies + + ], + [//Items + [Exile_Item_Matches",2,4],["Exile_Item_CookingPot",2,4],["Exile_Item_CanOpener",2,4], + ["Exile_Item_InstaDoc",1,2],["NVGoggles",1,2],["Rangefinder",1,2],["Exile_Item_Bandage",1,3],["Exile_Item_Vishpirin",1,3], + ["Exile_Item_Catfood",1,3],["Exile_Item_Surstromming",1,3],["Exile_Item_BBQSandwich",1,3],["Exile_Item_ChristmasTinner",1,3],["Exile_Item_SausageGravy",1,3],["Exile_Item_GloriousKnakworst",1,3], + ["Exile_Item_BeefParts",1,3],["Exile_Item_Cheathas",1,3],["Exile_Item_Noodles",1,3],["Exile_Item_SeedAstics",1,3],["Exile_Item_Raisins",1,3],["Exile_Item_Moobar",1,3],["Exile_Item_InstantCoffee",1,3],["Exile_Item_EMRE",1,3], + ["Exile_Item_PlasticBottleCoffee",1,3],["Exile_Item_PowerDrink",1,3],["Exile_Item_PlasticBottleFreshWater",1,3],["Exile_Item_Beer",1,3],["Exile_Item_EnergyDrink",1,3],["Exile_Item_MountainDupe",1,3] + ], + [ // Backpacks + + ] + ] + ]; + blck_highPoweredLoot = blck_supportLoot = [ + [ + [// Weapons + ["MMG_01_hex_F","150Rnd_93x64_Mag"], + ["MMG_01_tan_F","150Rnd_93x64_Mag"], + ["MMG_02_black_F","150Rnd_93x64_Mag"], + ["MMG_02_camo_F","150Rnd_93x64_Mag"], + ["MMG_02_sand_F","150Rnd_93x64_Mag"], + ["srifle_DMR_02_camo_F","10Rnd_338_Mag"], + ["srifle_DMR_02_F","10Rnd_338_Mag"], + ["srifle_DMR_02_sniper_F","10Rnd_338_Mag"], + ["srifle_DMR_03_F","10Rnd_338_Mag"], + ["srifle_DMR_03_tan_F","10Rnd_338_Mag"], + ["srifle_DMR_04_Tan_F","10Rnd_338_Mag"], + ["srifle_DMR_05_hex_F","10Rnd_338_Mag"], + ["srifle_DMR_05_tan_F","10Rnd_338_Mag"], + ["srifle_DMR_06_camo_F","10Rnd_338_Mag"], + ["srifle_DMR_04_F","10Rnd_127x54_Mag"], + ["srifle_DMR_05_blk_F","10Rnd_93x64_DMR_05_Mag"], + ["srifle_DMR_06_olive_F","20Rnd_762x51_Mag"], + ["launch_NLAW_F","NLAW_F"], + ["launch_RPG32_F","RPG7_F"], + ["launch_B_Titan_F","Titan_AT",], + ["launch_I_Titan_F","Titan_AT",], + ["launch_O_Titan_F","Titan_AP"], + ["launch_B_Titan_short_F","Titan_AA"], + ["launch_I_Titan_short_F","Titan_AA"], + ["launch_O_Titan_short_F","Titan_AA"], + ["launch_RPG7_F","RPG32_F"], + ["launch_O_Vorona_brown_F","vorona_HEAT"], + ["launch_O_Vorona_green_F","Vorona_HE"] + ], + [//Magazines + ["NLAW_F",1,3], + ["RPG32_F",1,3], + ["RPG32_HE_F",1,3], + ["Titan_AA",1,3], + ["Titan_AT",1,3], + ["Titan_AP",1,3], + ["RPG7_F",1,3], + ["vorona_HEAT",1,3], + ["Vorona_HE",1,3], + //["10Rnd_338_Mag",1,5], + ["10Rnd_338_Mag",3,5], + //["10Rnd_127x54_Mag" ,1,5], + ["10Rnd_127x54_Mag",3,5], + ["10Rnd_93x64_DMR_05_Mag" ,3,5], + //["10Rnd_93x64_DMR_05_Mag" ,1,5], + ["150Rnd_93x64_Mag",2,5], + ["130Rnd_338_Mag",3,5] + ], + [ // Optics + + ], + [// Materials and supplies + + ], + [//Items + ], + [ // Backpacks + + ] + ] + ]; \ No newline at end of file diff --git a/GMS_3DEN Instructions.txt b/GMS_3DEN Instructions.txt new file mode 100644 index 0000000..762e54e --- /dev/null +++ b/GMS_3DEN Instructions.txt @@ -0,0 +1,80 @@ + +GMS_3DEN is a plugin for the Arma 3 3DEN editor. +The plugin allows you to set many settings for missions such as difficulty. +The plugin automatically configures all scripts and variables used by the mission spawner and exports them to the Arma 3 clipboard. + +Usage: +1. Adjust Mission Settings + - the Configure MIssion menu provides drop down menus to addjust the following parameters: + - Difficulty: 4 levels of AI difficulty are available and are defined in GMS_configs.sqf + - Static vs. Dynamic: + - A static mission is spawned and respawned at the location at which it is placed in the editor each time. + - A dynamic mission is spawned in a random location that will usually be different every time. + - When loot crates spawn + - Crates will be spawned either at the time the mission is spawned or when the mission is complete based on this setting. + - When Crates are Loaded + - Crates will be loaded when spawned or when the mission is complete based on this setting. + - How crates spawn + - Crates will be spawn on the ground or dropped on a parachute based on this setting. + - Criteria for Mission Completion + - All Units Killed: The mission complete only when all units are killed, or the percentage of units that must be killed (GMS_config.sqf) is reached. + - Player near mission center: any player has come gotten near the mission center + - All Units Killed or Player near mission center: if either condition is met, the mission will be completed. + + Note - using All units killed or Player near center assures missions can be completed if an AI glitches or AI vehicle goes out of the mission area. + + +2. Lay out your mission. + - Mission Markers + - The plugin will use the first marker placed as the type/color/shape/size of the marker that will denote the mission. + - when you place a marker, assume its location will be the center of the mission. + - if no marker is placed in the editor, the mission spawner will create one using default settings. + + - the road cone (optional) + - You can use a road cone to denote the precise mission center while you lay things out. + - The plugin will use the roadcone as the alternative means of defining the mission center if no marker is found. + - simply comment out the line defining the spawn location for any roadcones in the .sqf file for the mission if you do not wish it spawned for players. + + - Define the mission center for the most accurate representation of your mission when spawned. + - The mission center will be placed at the center of the first marker placed in the editor OR at the location of the first road cone of any kind. + + - Plece objects (barracks, bunkers, walls, etc) + - simple objects are allowed when the game engine supports them for that item type. + + - place loot chests (optional) + - any item of type "Reammobox_F" can be used + - these can be place in the open, on top of, under or inside a building + - if none are placed, the mission spawner will place one near the center of the mission + + - Place Vehicles (optional) + - Place any vehicles you would like to have patrolling the mission + - The center of the area patrolled will be the location at which you place the vehicle + - If no vehicles are placed, the mission spawner will spawn vehicles according to the settings in GMS_configs.sqf and any mod-specific configs. + + - Place Turrets (optional) + - Place turrets of any type you wish to have spawned. + - Turrets may be in the open, on top of or inside buildings, or even under objects. + - The mission spawner will attempt to place turrects in exactly the same place relative to any buildings or other structures when the turret is inside, above or below an object. + - The mission spawner will spawn turrets according to settings in GMS_congig.sqf if none are definee. + + - Place units (optiona) + - The plugin assumes the location of the unit is the center of a region to be patrolled by a group. + - Thus, the mission spawner will spawn a group of units that will patrol the mission area using the location of the unit as the center of its patrol. + - The parameters for each group include minimum number of units, maximum number of units and difficulty. + - These parameters are included in the output of the plugin and can be edited later if you like. + - The type of unit, uniform and weapons are set by the mission spawner based on GMS_config.sqf and mod-specific configs. + - Units can be place inside or on top of ojbects in which case only a single unit will be spawned at the location specified in the editor. That unit will stand in that location until killed or deleted by the mission spawner. + - The mission spawner will spawn groups throughout the mission area if none are defined in the mission. + +3. Export the mission. + - Select Export Mission from the Export menu. + - A dialog will appear when the mission script has been generated. + - Select copy, then paste the copied text into a text editor. + - Save the file in a folder within the GMS\Missions folder tree. + - Make any changes needed, such as adding a start and end message, or changing mission names or marker settings. + - Add the name of the file to GMS\Missions\GMS_missionLists.sqf + - Start your server and enjoy your new mission! + + Note: + - to be sure only the mission you created is spawned for testing purposes, comment other missions listed for this mission difficulty (such as all missions in _missionListBlue) + - To speed up spawning of missions, in GMS_configs set GMS_debugLevel = 1; \ No newline at end of file diff --git a/GMS_RC Configuration.txt b/GMS_RC Configuration.txt new file mode 100644 index 0000000..5adbfe5 --- /dev/null +++ b/GMS_RC Configuration.txt @@ -0,0 +1,54 @@ +////////////////////////////////////////////////////////////////////////////////////////////////////// + +//GMS_RC Install Instructions// + + *Ensure GMS_Core is installed prior to this script otherwise it will not work!* + + You can download this addon at: https://github.com/Ghostrider-DbD-/GMSCore + +//Step 1; + + Download the file "GMS_RC-master" from the master branch and extract it to your documents folder. + +//Step 2; + + Open the folder - GMS_RC-master\GMS and edit the following files as needed for your prefrences(Remember to save any changes!); + + GMS_cofigs.sqf - General settings. + + GMS_configs_default.sqf - Default settings. + + GMS_configs_epoch.sqf - Epoch server settings. + + GMS_config_exile.sqf - Exile server settings. + + GMS_custom_config.sqf - Custom settings. + +//Step 3; + + Go back 1 folder into "GMS_RC-main" and pack the folder "GMS" into a pbo. + + Add the "GMS.pbo" file to your server addons folder (@Exileserver\addons or @Epochhive\addons). + +//Step 4; + + Open your mpmission file such as Epoch.Altis/Exile.Altis and copy the folder "GMS_Client" into the the root of your mpmission file. + (It could be placed into the following for example: Epoch.Atlis\addons - you would just need to change the directory within the init call function) + + Open your init.sqf/initPlayerLocal.sqf and add the following line: + + [] execVM "GMS_Client\GMS_client.sqf"; - //(If adding to "addons/custom folder you would need to edit the line to show the correct file location E.G; [] execVM "Custom\GMS_Client\GMS_client.sqf"; + + Repack your mpmission file to a pbo and upload to your server. + + Restart your server and if you run into any issues check your client/server RPT for errors. + +//Additional script links from GhostriderGaming [GRG]; + + GMS_Core: https://github.com/Ghostrider-DbD-/GMSCore + + *Optional addition to GMS series - GMS_AI: https://github.com/Ghostrider-DbD-/GMSAIGMS_AI: https://github.com/Ghostrider-DbD-/GMS_AI + + Repair/Rearm/Refule: https://github.com/Ghostrider-DbD-/Rearm-Repair-Refuel- + +//////////////////////////////////////////////////////////////////////////////////////////////////// \ No newline at end of file