MCCSandbox Wiki
Advertisement

General

Survive mod adds another layer of immersion that is saved for the hardcore gamers.

Survive mod adds the ability to scavenge for food, ammo and weapons and the need to drink, eat where the world climate effects the player and can cause him to get sick and more.

It is recommended to use survive mod with the MCC campaign but you can use it any way you like to.

Enabling Survive Mode

Enable survival mod either from the setting module or the mission settings in MCC.

Scavenging

Survival search

Player searching boxes for some loot

Scavenging is a basic aspect in the survival mode where the player can use ACE self interaction key or hold the MCC interaction key while close to any map object in order to search this item and maybe find some useful stuff.

Stashes

Useful stuff would be found in most of the map objects and custom object placed by the mission maker.

Any stash discovered by the player will be saved on the server and it will persistent as scavenging requires iniDBi mod running on the server side. This means that players can hide their valuable goods under a specific tree and come back even after server restart to find out that their stash is intact, unless it was raided but some other players.

More to that, empty stashes will re-spawn every in-game 24 hours by default. The mission maker can change the time period before stash refresh by altering the "MCC_surviveModRefresh" variable in the init.sqf file, where the default value is 1 which means 24 hours.

For example if the mission maker want empty stashes to re-spawn every 48 hours he should put "MCC_surviveModRefresh = 2;" in the init.sqf file. Or "MCC_surviveModRefresh = 0.5" for every 12 hours refresh.

Stashes locations and behavior

Stashes can be found in garbage, barrels, furniture, bushes, graves, boxes, pallets, wrecks and ammo boxes. Each stash has a random chance to have one or more valuable items inside. The items changes by the stash type, for example military vehicle wreck will have more chance to have weapons and ammunition and bushes and trees will most likely yield fruits and dry wood.

Stashes Items

Items in the stashes are randmoly selected from the items and weapons, mod included, that are running on the server. 


Custom MCC items

Survive items

Lighting a head torch from inventory

MCC comes with some default custom survival items that can be found while scavenging. This items include: antibiotics, painkillers, fuel cans, food, water exc.

This survival items can be used by the player - see bellow or turned in the start location box for some personal valor points and global resources. For example turning in a fuel can will add the player 50 personal valor points that he in turn can spend in-order to take some new weapons or ammo from the shared box, and additional 50 supply points that the side leader can spend on a new vehicle.

Player can use some of the items by double clicking them in the inventory and selecting the desired action:

Antibiotics: used to heal sickness permanently.

Painkillers: used to remove sickness effects temporary.

Vitamins: slow down hunger effects.

Food Container,Cereal Box,Rice, Powdered Milk, Fruits: Can be eaten.

Bacon, Baked Beans: Can be eaten but need to open the can first.

Water, Canteen, soda cans: Can be drank.

Empty Bottle: Can be used to fill water or fuel.

Empty Canteen: Can be used to fill water only from any water source.

Empty fuel canister: Can be used to fill water from any vehicle with fuel.

Can-opener or a Screwdriver: Can be used to open cans.

Head torch: lights the dark requires batteries.

Matches: Create fire places, needs dry wood.

Food and Drink

Food and water

Food and water status

When survival mode is on players will need to drink and eat from time to time, preventing doing it will cause players to loose stamina and suffer from visual effects such as blurry vision and may end up in death.

Players can see their status when opening the inventory.






For Mission Makers

Adding custom interactions with inventory items and gear

You can set custom actions to any item in the players inventory by adding a new cfg called CfgMCCitemsActions in the description.ext file.

Example:

SurviveItems-1

In the example above you can see that I've added interaction for the MCC_canteenMurky magazine class. When the player will double click this item in his inventory he would have up to two available actions:

Purificat water - that requires MCC_waterpure in the player magazines as defined in the "condition" entry.

Drink Murky Waters - which doesn't have any conditions and call for the MCC_fnc_surviveUseFood.

You can use the MCC survival functions which can be found in the in-game function library or create your own functions and conditions.

it is important that each class in the CfgMCCitemsActions will have the same className as the object you are trying to add the custom interaction. You can download example file here

Variable Variable in the example Explained
item className MCC_canteenMurky Should much the item className as in cfgWeapons or cfgMagazines
action className pureWater can be anything
icon "" The path to the PAA file type icon. Leave "" for none
function [] spawn MCC_fnc code execute when clicking the action. _itemClass will always be a STRING of the selected item className 
condition "" code executed when double clicking the item. If not return true the action will not show. 
DisplayName Drink STRING - the action display text
















Setting Custom Water and Food Consumption Rate

You can change consumption rate by adding this variables in the init.sqf of your mission:

"MCC_survivalCaloriesPerHour" by default it is 1000 calories per hour.

"MCC_survivalWaterPerHour" by default it is 100 milliliters per hour.



Setting object as spawn points

By default all ArmA3 map objects such as wrecks, trees, trash bins exc serves as spawn points for survival items. Mission Makers can change the default spawn points and thier drop chance. Keep in mind that the object are just place holders and the don't really hold loot so you don't need to confine yourself to cargo objects and even objects such as pile of trash can spawn loot in it. Also keep in mind that MCC take into account the object position, means an object that can be move around such as - car, little ammo box exc will count as a new spawn object every time they move - this can lead to exploit by the players.

To set up custom Spawn Points Objects you'll need to expand the description.ext file or just include (#include "myObjects.hpp") new file from the description file.

MCC will first look for a custom spawn object file in the mission and if not is found it will use it default spawn objects config file.

The config class name must be: CfgMCCspawnObjects

The sub class names is up to you and have no effect. 

each class holds this values which you have to take into consideration. Example:

You can download an example file here. 

class CfgMCCspawnObjects {
	class MCC_barrels {
		itemClasses[] = {"garbagebarrel","garbagebin"}; //Full object class name or partial 
		chanceWeapon = 5;   //Chnace to drop weapons
		maxWeapon = 1;   //Max weapons per drop
		chanceAmmo = 20;  //Chance to drop ammo
		maxAmmo = 2;  //Max magazines in drop
		chanceMed = 10;  //Chance to drop medical stuff
		maxMed = 2;  //Max medical items in drop
		chanceFuel = 10;  //Chance to drop fuel
		maxFuel = 2;  //Max fuel items  in drops
		chanceRepair = 20; //Chance to drop Repair
		maxRepair = 2;  //Max repair items in drops
		chanceFood = 20;  //Chance to drop food
		maxFood = 2;  //Max food items in drop
		chanceMoney = 15;  //Chance to drop money
		maxMoney = 5;  //Max money in drop
		chanceFruit = 0;  //Chance to drop fruits or wood
		maxFruit = 0;  //Max fruit items in drop
	};

	class MCC_grave {
		itemClasses[] = {"grave_forest","grave_dirt","grave_rocks"};
		chanceWeapon = 15;
		maxWeapon = 1;
		chanceAmmo = 20;
		maxAmmo = 6;
		chanceMed = 10;
		maxMed = 2;
		chanceFuel = 10;
		maxFuel = 2;
		chanceRepair = 10;
		maxRepair = 2;
		chanceFood = 10;
		maxFood = 2;
		chanceMoney = 15;
		maxMoney = 5;
		chanceFruit = 1;
		maxFruit = 1;
	};
};



Setting custom loot

You can set what loot can be spawned in each object category as you have seen above there are the: MCC_medItems, MCC_fuelItems, MCC_repairItems, MCC_foodItem, MCC_money, MCC_fruits, MCC_survivalWeapons, MCC_survivalMagazines, MCC_survivalAttachments categories. 

You can define each items/weapons/magazines in each category by creating custom CfgMCCspawnItems config in you description.ext file or just creating an new hpp file and including it in your mission. For example

class CfgMCCspawnItems {
	class MCC_medItems {
		itemClasses[] = {{"MCC_antibiotics"},{"MCC_painkillers"},{"MCC_bandage"},{"MCC_vitamine"}};
	};

	class MCC_fuelItems {
		itemClasses[] = {{"MCC_fuelCan"},{"MCC_fuelbot"}};
	};

	class MCC_repairItems {
		itemClasses[] = {{"MCC_ductTape"},{"MCC_butanetorch"},{"MCC_oilcan"},{"MCC_metalwire"},{"MCC_carBat"},{"MCC_canOpener"},{"MCC_screwdriver"},{"MCC_matches"}};
	};

	class MCC_foodItem {
		itemClasses[] = {{"MCC_foodcontainer"},{"MCC_cerealbox"},{"MCC_bacon"},{"MCC_rice"},{"MCC_bottle_water"},{"MCC_franta"},{"MCC_bottle_empty"},{"MCC_powderedMilk"},{"MCC_RedGull"},{"MCC_Spirit"},{"MCC_can_dented"}};
	};

	class MCC_money {
		itemClasses[] = {};
	};

	class MCC_fruits {
		itemClasses[] = {{"MCC_fruit1"},{"MCC_fruit2"},{"MCC_wood"}};
	};

	class MCC_survivalWeapons {
		itemClasses[] = {};
	};

	class MCC_survivalMagazines {
		itemClasses[] = {};
	};

	class MCC_survivalAttachments {
		itemClasses[] = {};
	};

};




For example:

''MCC_survivalCaloriesPerHour = 500;''

''MCC_survivalWaterPerHour = 50;''
Advertisement