Jump to content

blckeagls' Real Zombies v0.0.5


blckeagls

Recommended Posts

Nobody does not solve this problem?

need to  create trigger in safezones if not exist and  use variable inSafeZone = true or false (enter or  exit)   and put condition   in zombi script

 if(!inSafeZone) then{

    code that spawn zombies

};

like in my nuke script in my github ..  :)  or send me version that u use i can modify.,.

Link to comment
Share on other sites

NOT TESTED!!! 

open mission.sqm  with eliteness and add to class sensor (1 for every safezones and update items numbers too)

class Item3   //update numbers
		{
			position[] = {947.996,0.756651,7475.45};  //coords of safezone change with corrects coords
			a = 1000;
			b = 1000;
			activationBy = "ANY";
			repeating = 1;
			interruptable = 1;
			age = "UNKNOWN";
			name = "nozombiesafezone";
			expCond = "(player distance nozombiesafezone) < 1000;";
			expActiv = "hint ""You have entered A Safe Zone! "";  inSafeZone = true;";
			expDesactiv = "hint ""You are leaving the Safe Zone!""; inSafeZone = false;";
			class Effects{};
		};

if u have sensor in mission.sqm about safezone need only add  inSafeZone = true; and  inSafeZone = false; 

 

change fnc_zmarkers.sqf  or compare with this

/*
	file: fn_zombieinit.sqg
	author: corvobrok
	
	descripttion: create random zombies near the player (more zombies if you are in a city)
*/
_units =  ["zedcivil2","z_deadsurvivor","zZombie_Base","z_policeman","z_soldier_heavy","z_soldier","z_soldier_pilot","z_villager3","z_villager2"];
_suoni =  ["zomb1","zomb2","zomb3"];

_marker = zombiemkr select 0;

if (isNil "inSafeZone") then {
    inSafeZone = false;
};

	while {true} do {
	     waitUntil {
        !inSafeZone
        };
		{
			if (player distance getmarkerpos _x < player distance getmarkerpos _marker) then
			{
				_marker = _x;
			};
			sleep 0.01;
		}foreach zombiemkr;

		if (player distance getmarkerpos _marker < markerdist) then
		{
			if (count zarray < zombielimit) then {
				_pos = [(position player select 0) + floor (random 400)-200, (position player select 1) +floor (random 400)-200, 0];
				_type = _units call BIS_fnc_selectRandom;
				_type createUnit [_pos, groupZMB,"[this]spawn fncZcontact;"];
				sleep 0.2;
			};
		}
		else {sleep 3;};
		sleep 1;
		_rand = floor (random 2);
		if (count zarray >2 && _rand > 0) then
		{
			_one = zarray call BIS_fnc_selectRandom;
			_two = _suoni call BIS_fnc_selectRandom;
			_one say3d _two;
		};
		
		if (zdebugging > 0) then
		{
			if (!isdedicated) then 
			{
				hintsilent format ["DEBUGGING MENU\n>single player<\n\n>Spawned zombies: %1\n>Nearest Marker: %2m",(count zarray),floor (player distance getmarkerpos _marker)];
			}else
			{
				hintsilent format ["DEBUGGING MENU\n>dedicated server<\n\n>Spawned zombies: %1\n>Nearest Marker: %2m",(count zarray),floor (player distance getmarkerpos _marker)];
			};
		};
	};

and  fnc_Zproximity.sqf or compare with this

/*
	file: fn_proximity.sqf
	author: corvobrok
	
	descripttion: create random zombies near the player (more zombies if you are in a city)
*/
_maxnum = zombielimit;
_units =  ["zedcivil2","z_deadsurvivor","zZombie_Base","z_policeman","z_soldier","z_soldier_pilot","z_villager3"];
_suoni =  ["zomb1","zomb2","zomb3"];
_zombienum=0;

if (isNil "inSafeZone") then {
    inSafeZone = false;
};
	while {true} do {
	    waitUntil {
        !inSafeZone
    };
		_house= getPos player nearObjects ["House",120];
		_nhouse =count _house;
		if (zombielimit > 50) then {_zombienum = _nhouse;};
		if (zombielimit > 20 && zombielimit < 51)then {_zombienum =floor (_nhouse/2);};
		if (zombielimit < 21) then {_zombienum =floor (_nhouse/3);};
		if (_zombienum > _maxnum) then {_zombienum = _maxnum;};
		if (count zarray < _zombienum) then {
			_pos = [(position player select 0) + floor (random 400)-200, (position player select 1) +floor (random 400)-200, 0];
			_type = _units call BIS_fnc_selectRandom;
			_zombie = groupZMB createUnit [_type, _pos, [], 0, "NONE"];
			[_zombie]spawn fncZcontact;
			sleep 0.2;
		};
		sleep 1;
		_rand = floor (random 2);
		if (count zarray >2 && _rand > 0) then
		{
			_one = zarray call BIS_fnc_selectRandom;
			_two = _suoni call BIS_fnc_selectRandom;
			_one say3d _two;
		};
		
		if (zdebugging > 0) then
		{
			if (!isdedicated) then 
			{
				hintsilent format ["DEBUGGING MENU\n>single player<\n\n>Spawned zombies: %1\n>House near player: %2\nMax Zombies: %3",(count zarray),count _house,_zombienum];
			}else
			{
				hintsilent format ["DEBUGGING MENU\n>dedicated server<\n\n>Spawned zombies: %1\n>House near player: %2\nMax Zombies: %3",(count zarray),count _house,_zombienum];
			};
		};
	};

need to try cuz i havent script installed i cant try...  ;)

Link to comment
Share on other sites

in fnc_zconctact.sqf  can also change this

 
_target setDamage (damage _target + (zombiedamage/100));
		

with this

  if(!inSafeZone)then{
	_target setDamage (damage _target + (zombiedamage/100));
 };

 using with sensor safezones above..

Link to comment
Share on other sites

in fnc_zconctact.sqf  can also change this

 
_target setDamage (damage _target + (zombiedamage/100));
		

with this

  if(!inSafeZone)then{
	_target setDamage (damage _target + (zombiedamage/100));
 };

 using with sensor safezones above..

Continue to spawn,No errors .rpt

Link to comment
Share on other sites

Spawning is ok , they just shouldn't do any harm in a safezone

yea if sensors and variable are setup correctly  not damage to players .. 

 

try this .... 

fnc_Zmarkers.sqf

/*
	file: fn_zombieinit.sqg
	author: corvobrok
	
	descripttion: create random zombies near the player (more zombies if you are in a city)
*/
_units =  ["zedcivil2","z_deadsurvivor","zZombie_Base","z_policeman","z_soldier_heavy","z_soldier","z_soldier_pilot","z_villager3","z_villager2"];
_suoni =  ["zomb1","zomb2","zomb3"];

_marker = zombiemkr select 0;

if (isNil "inSafeZone") then {
    inSafeZone = false;
};
  while {true} do {
	if !(inSafeZone)then{
		{
			if (player distance getmarkerpos _x < player distance getmarkerpos _marker) then
			{
				_marker = _x;
			};
			sleep 0.01;
		}foreach zombiemkr;

		if (player distance getmarkerpos _marker < markerdist) then
		{
			if (count zarray < zombielimit) then {
				_pos = [(position player select 0) + floor (random 400)-200, (position player select 1) +floor (random 400)-200, 0];
				_type = _units call BIS_fnc_selectRandom;
				_type createUnit [_pos, groupZMB,"[this]spawn fncZcontact;"];
				sleep 0.2;
			};
		}
		else {sleep 3;};
		sleep 1;
		_rand = floor (random 2);
		if (count zarray >2 && _rand > 0) then
		{
			_one = zarray call BIS_fnc_selectRandom;
			_two = _suoni call BIS_fnc_selectRandom;
			_one say3d _two;
		};
		
		if (zdebugging > 0) then
		{
			if (!isdedicated) then 
			{
				hintsilent format ["DEBUGGING MENU\n>single player<\n\n>Spawned zombies: %1\n>Nearest Marker: %2m",(count zarray),floor (player distance getmarkerpos _marker)];
			}else
			{
				hintsilent format ["DEBUGGING MENU\n>dedicated server<\n\n>Spawned zombies: %1\n>Nearest Marker: %2m",(count zarray),floor (player distance getmarkerpos _marker)];
			};
		};
	  };
	};

fnc_Zproximity.sqf

/*
	file: fn_proximity.sqf
	author: corvobrok
	
	descripttion: create random zombies near the player (more zombies if you are in a city)
*/
_maxnum = zombielimit;
_units =  ["zedcivil2","z_deadsurvivor","zZombie_Base","z_policeman","z_soldier","z_soldier_pilot","z_villager3"];
_suoni =  ["zomb1","zomb2","zomb3"];
_zombienum=0;

if (isNil "inSafeZone") then {
    inSafeZone = false;
};
   while {true} do {
	if !(inSafeZone)then{
		_house= getPos player nearObjects ["House",120];
		_nhouse =count _house;
		if (zombielimit > 50) then {_zombienum = _nhouse;};
		if (zombielimit > 20 && zombielimit < 51)then {_zombienum =floor (_nhouse/2);};
		if (zombielimit < 21) then {_zombienum =floor (_nhouse/3);};
		if (_zombienum > _maxnum) then {_zombienum = _maxnum;};
		if (count zarray < _zombienum) then {
			_pos = [(position player select 0) + floor (random 400)-200, (position player select 1) +floor (random 400)-200, 0];
			_type = _units call BIS_fnc_selectRandom;
			_zombie = groupZMB createUnit [_type, _pos, [], 0, "NONE"];
			[_zombie]spawn fncZcontact;
			sleep 0.2;
		};
		sleep 1;
		_rand = floor (random 2);
		if (count zarray >2 && _rand > 0) then
		{
			_one = zarray call BIS_fnc_selectRandom;
			_two = _suoni call BIS_fnc_selectRandom;
			_one say3d _two;
		};
		
		if (zdebugging > 0) then
		{
			if (!isdedicated) then 
			{
				hintsilent format ["DEBUGGING MENU\n>single player<\n\n>Spawned zombies: %1\n>House near player: %2\nMax Zombies: %3",(count zarray),count _house,_zombienum];
			}else
			{
				hintsilent format ["DEBUGGING MENU\n>dedicated server<\n\n>Spawned zombies: %1\n>House near player: %2\nMax Zombies: %3",(count zarray),count _house,_zombienum];
			};
		};
	  };
	};

if sensors and variable are correct cant spawn zombies ... u have hint message enter /exit safezones?

Edited...

Link to comment
Share on other sites

Spawning is ok , they just shouldn't do any harm in a safezone

Sry W4lly but this was a response to Wesd (Continue to spawn,No errors .rpt)

 

Also for the class sensors use unique names , same name no safezone

 

 class Sensors

 {

 items = 3;  

 class Item0

        {

            position[] = {13326.5,0.16426,14515.2};

            a = 75;

            b = 75;

            activationBy = "ANY";

            repeating = 1;

            interruptable = 1;

            age = "UNKNOWN";

            name = "centresafezone";            

            expCond = "(player distance centresafezone) < 75;";

            expActiv = "hint ""You have entered A Safe Zone!""; inSafeZone = true;";

            expDesactiv = "hint ""You are leaving the Safe Zone!""; inSafeZone = false;";

            class Effects{};

        };

 class Item1

        {

            position[] = {6192.46, 0.00154114, 16834};

            a = 100;

            b = 100;

            activationBy = "ANY";

            repeating = 1;

            interruptable = 1;

            age = "UNKNOWN";

            name = "westsafezone";

            expCond = "(player distance westsafezone) < 100;";

            expActiv = "hint ""You have entered A Safe Zone!""; inSafeZone = true;";

            expDesactiv = "hint ""You are leaving the Safe Zone!""; inSafeZone = false;";

            class Effects{};

        };

 class Item2

        {

            position[] = {18451.9, 0.00143814, 14278.1};

            a = 100;

            b = 100;

            activationBy = "ANY";

            repeating = 1;

            interruptable = 1;

            age = "UNKNOWN";

            name = "eastsafezone";

            expCond = "(player distance eastsafezone) < 100;";

            expActiv = "hint ""You have entered A Safe Zone!""; inSafeZone = true;";

            expDesactiv = "hint ""You are leaving the Safe Zone!""; inSafeZone = false;";

            class Effects{};

        };

    };

 

 

And ive reduced Chuma's @zombi/addons a bit so its a zombi event , no need for old Dayz-mod items or whatevers (itembandage ???)

 

https://mega.co.nz/#!CZZxlBzR!MuHC8b7PlfpZb5nPEzLfNESCzzk95blEPKSTU9-PyRk

 

Read the  "just 3 pbo's needed.txt"  , to reduce the @zombi/addons size

Link to comment
Share on other sites

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
  • Advertisement
×
×
  • Create New...