Jump to content

VEMF - Vampire's Epoch Mission Framework


TheVampire

Recommended Posts

If I can get it working in a mission and fix up the BE filters to allow it will you include it? ;) Pending permission from the author of course.

Haven't played with it but I assume it would require a lot of filter editing since any particles have to be clientside. I was just throwing the idea out there for now. Because of the filter requirement I wouldn't include it with VEMF.

Link to comment
Share on other sites

I have custom crate loot working but is there a way to make it spawn like 10 of everything it puts in there?

VFunctions.sqf
_report = [];
	// Load Random Loot Amount
	for "_i" from 1 to ((floor(random 10)) + 10) do {
		_var = (VEMFLootList call BIS_fnc_selectRandom);
		
		if (!(_var in VEMFCrateBlacklist)) then {
			switch (true) do
			{
				case (isClass (configFile >> "CfgWeapons" >> _var)): {
					_kindOf = [(configFile >> "CfgWeapons" >> _var),true] call BIS_fnc_returnParents;
					if ("ItemCore" in _kindOf) then {
						_crate addItemCargoGlobal [_var,10];
					} else {
						_crate addWeaponCargoGlobal [_var,10];
						
						_cAmmo = [] + getArray (configFile >> "cfgWeapons" >> _var >> "magazines");
						{
							if (isClass(configFile >> "CfgPricing" >> _x)) exitWith {
								_crate addMagazineCargoGlobal [_x,10];
							};
						} forEach _cAmmo;
					};
				};
				case (isClass (configFile >> "cfgMagazines" >> _var)): {
					_crate addMagazineCargoGlobal [_var,10];
				};
				case ((getText(configFile >> "cfgVehicles" >> _var >>  "vehicleClass")) == "Backpacks"): {
					_crate addBackpackCargoGlobal [_var,10];
				};
				default {
					_report = _report + [_var];
				};
			};
		};
	};
Link to comment
Share on other sites

 Vampire,

 

Our players are really enjoying the missions. For the most part the latest update is working very well. One player told me this evening that he is not seeing the message announcing the mission. We are using Altis, and have the status bar, R3F lifting, and CPC Name tags running clientside.

Link to comment
Share on other sites

The ai should be walking around. I have yet to see them lay down other than when engaging at distance.

To edit the radio requirement you would modify VEMFBroadcast in VFunctions to just send to all playable units that are players.

 

Thanks for the reply.

I'm a moron, the AI-related question was posted in the wrong topic.

The AIs work just fine.

Link to comment
Share on other sites

@ Vampire...

i think if i set Dynamic Weapon List to: FALSE, the AI spawn with the Weapons in den List below, but have NOT one Magazine... if i kill them, they have only the Weapon.
i will try to set Dynamiic Weapon List to: TRUE and config the Blacklist, to result spawning the same Weapons i like, and test if they have Magazines or not.

 

regards,

DELTA

Link to comment
Share on other sites

@Vampire

 

I get the error in my RPT Vemf is installed twice or.....

 

The log shows a mission starting and timing out but I did not get a message using the quartz radio. I have blackeagls missions running as well. Thanks for your help.

 

My Init.sqf

 

 

//If server execute this script

if (isServer) then {
execVM "\q\addons\custom_server\init.sqf";
//If anything but server execute this script
} else {
[] spawn {
//This is to spawn the markers when players enter after server has started
[] execVM "debug\addmarkers.sqf";
[] execVM "debug\addmarkers2.sqf";
[] execVM "debug\addmarkers75.sqf";
[] execVM "debug\addmarkers752.sqf";
//Event handler to show messages to players // this can be used for other scripts to send messages to players -- see AIM.sqf
"blck_Message" addPublicVariableEventHandler {titleText[format["%1",_this select 1],"PLAIN DOWN",1];};
};
};
 
[] execVM "scripts\fn_statusBar.sqf";
// Name
[] execVM "dialog\player_init.sqf";
 
if (!isServer) then {
waitUntil {!isNull player};
waitUntil {player == player};
 
while {true} do {
_player = player;
player addEventHandler ["Respawn", {
if (getPlayerUID player in ["0"]) then {
player addWeapon "srifle_EBR_F";
player addWeapon "hgun_Pistol_heavy_01_F";
player addWeapon "RPG32_F";
player addMagazine "20Rnd_762x51_Mag";
player addMagazine "11Rnd_45ACP_Mag";
player addMagazine "launch_RPG32_F";
player addWeapon "NVG_EPOCH";
player addWeapon "EpochRadio0";
player addWeapon "ItemMap";
player addWeapon "optic_tws_mg";
player addWeapon "muzzle_snds_B";
player addWeapon "ItemGPS";
player addWeapon "ItemWatch";
player addWeapon "ItemCompass";
player addWeapon "RangeFinder";
player addWeapon "hgun_Pistol_heavy_01_F";
player addBackpack "B_Carryall_cbr";
player addVest "V_TacVest_camo";
player addItemToBackpack "FirstAidKit";
player addItemToVest "10Rnd_762x51_Mag";
player addItemToVest "10Rnd_762x51_Mag";
player addItemToVest "11Rnd_45ACP_Mag";
player addItemToVest "WhiskeyNoodle";
player addItemToVest "ItemSodaOrangeSherbet";
player addItemToVest "meatballs_epoch";
player addItemToVest "sweetcorn_epoch";
player addItemToVest "scam_epoch";
player addItemToVest "ItemSodaRbull";
player addItemToVest "ItemSodaRbull";
player addItemToBackpack "ItemLockbox";
player addItemToBackpack "20Rnd_762x51_Mag";
player addItemToBackpack "20Rnd_762x51_Mag";
player addItemToBackpack "11Rnd_45ACP_Mag";
player addItemToBackpack "11Rnd_45ACP_Mag";
player addItemToBackpack "CinderBlocks";
player addItemToBackpack "CinderBlocks";
player addItemToBackpack "CinderBlocks";
player addItemToBackpack "CinderBlocks";
player addItemToBackpack "CinderBlocks";
player addItemToBackpack "ItemCorrugated";
player addItemToBackpack "MortarBucket";
player addItemToBackpack "launch_NLAW_F";
player addItemToBackpack "launch_NLAW_F";
player addItemToBackpack "HeatPack";
player addItemToBackpack "ColdPack";
player addItemToBackpack "FirstAidKit";
player addItemToBackpack "MeleeSledge";
player addItemToBackpack "Hatchet";
player forceAddUniform "U_O_GhillieSuit";
EPOCH_playerCrypto = 30000;
} else {
player addWeapon "EpochRadio0"; 
player addWeapon "ItemMap";
EPOCH_playerCrypto = 100;
};
}];
waitUntil {_player != player};
};
};
 
/*
File: VInit.sqf
License: Attribution-NonCommercial-ShareAlike 4.0 International
If you were sold this script it is against the license.
If you paid to have this installed, I suggest you get your money back.
 
Description:
Starts all the files that need to run to start VEMF.
All files branch out from here.
*/
private ["_mConfig"];
 
if (!isServer) exitWith {
// Only the server should run this file, client will exit
// If you remove this IF, may god help you with the errors
};
 
// Add Damage Fix until Epoch Fixes it
[] ExecVM "\VEMF\Scripts\VAllowDamage.sqf";
 
// Let's let any heavier scripts run first
sleep 60;
 
// Check if another version is running
if (!isnil("VEMFRunning")) exitWith { diag_log text format ["[VEMF]: <ERROR> VEMF is Installed Twice or Installed Incorrectly!"]; };
 
// Global variable so other scripts can check if VEMF is running
VEMFRunning = true;
publicVariable "VEMFRunning"; // For Clientside Scripts since globals are not public by default in A3
 
diag_log text format ["[VEMF]: Starting Vampire's Epoch Mission Framework."];
 
// Debug. Should be True / True / True
diag_log text format ["[VEMF]: isServer:%1 / isDedicated:%2 / isMultiplayer:%3", isServer, isDedicated, isMultiplayer];
 
diag_log text format ["[VEMF]: Looking for the Config. Ignore the associated File Not Found error."];
 
// Let's Load the Mission Configuration
// This code checks for a config file in the Mission Root before using the Addon Config
// A "File Not Found" Error is to be expected if it doesn't exist.
_mConfig = preprocessFileLineNumbers "VEMFConfig.sqf";
diag_log text format ["[VEMF]: Loading Configuration File."];
if (_mConfig != '') then {
// Config is in the Mission
call compile _mConfig;
} else {
// Use the Config in the Addon
call compile preprocessFileLineNumbers "\VEMF\VEMFConfig.sqf";
};
 
// Report the version
diag_log text format ["[VEMF]: Currently Running Version: %1", VEMFVersion];
 
// Version Check
if (VEMFVersion != "1.0.0c-PreAlpha") then {
diag_log text format ["[VEMF]: Outdated Configuration Detected! Please Update."];
};
 
diag_log text format["[VEMF]: Server is Running Map: %1", (toLower format ["%1", worldName])];
 
// Lets load our functions
call compile preprocessFileLineNumbers "\VEMF\VFunctions.sqf";
 
// Gen Random Weapons
[] ExecVM VEMFGenRanWeps;
 
// Let's Load any Addons
VEMFLock = false;
[] ExecVM VEMFLoadAddons;
 
// Launch Watchdog
[] ExecVM VEMFMissWatchdog;
 
// Launch Mission Timer
[] ExecVM VEMFMissTimer;
 

Link to comment
Share on other sites

Nice Mission Vampire, but non of my players do the mission they cant see marked on the map when i told them that the mission was up everyone asked where no one had a radio so just wanted to ask

 

don't care about it being marked on the map but can i disable the NEED radio part and just make it announced to everyone i want my players to be-able to enjoy your missions with out it bring a chore to find a radio first.

 

Thanks

 

if i change 

    _eRads = ["EpochRadio0","EpochRadio1","EpochRadio2","EpochRadio3","EpochRadio4","EpochRadio5","EpochRadio6","EpochRadio7","EpochRadio8","EpochRadio9"];

to 

_eRads = ["ItemMap"];
 
Would it work?
Link to comment
Share on other sites

  • Richie unlocked this topic

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...