Jump to content
  • 0

GAs that Damages Zombies and AI


chi

Question

Is there anyway to get this to do damage to the AI on my server and zombies? I use WAI and DZAI

Thanks in advance to anyone who can help.

Spoiler

private["_chance"];

While{true} do {
waituntil{
((nearestObject [getpos player, "SmokeShellRed"]) distance player < 10)
and
(getpos (nearestObject [getpos player, "SmokeShellRed"]) select 2 < 0.5)
};

//cuttext ["It's Lethal Green Gas!!", "PLAIN DOWN"];

r_player_blood = r_player_blood - 2000; //OPTIONAL //This will remove 1000 blood from the infected player upon infection

    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [15]; // intensity of blur
    "dynamicBlur" ppEffectCommit 3; // time till vision is fully blurred
    //enableCamShake true; // enables camera shake
    //addCamShake [10, 45, 10]; // sets shakevalues
    //5 fadeSound 0.1; // fades the sound to 10% in 5 seconds
    
    _chance = ceil (random 5);
    
    if (_chance <= 3) then {
        [player,"cough",0,false] call dayz_zombieSpeak;
    };
    
    sleep 5;
    
    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
    "dynamicBlur" ppEffectCommit 5; // time it takes to normal
    //resetCamShake; // resets the shake
    //20 fadeSound 1; //fades the sound back to normal
};

 

Link to comment
Share on other sites

18 answers to this question

Recommended Posts

  • 0

for zeds maybe something llike this ?

  

while {true} do {
 sleep 1;

  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findZeds = _pos2 nearEntities ["zZombie_Base", gas_area];
    _contar = count _findZeds;
    for "_i" from 0 to (_contar -1) do
    {
      _zeds = _findZeds select _i;
     _zeds setDamage 1; 
	 sleep 4;
     deletevehicle _zeds; 
    };
  };
};

 

Link to comment
Share on other sites

  • 0
16 hours ago, chi said:

@juandayz

Do I put this in the same file as the player teargas that I put in the spoiler? also, how would I add AI to get damaged. Thanks for all of your help man!!!!!!

 

hey chi yes u can execute this part trough the primary gas sqf...

gas.sqf

Spoiler

private["_chance"];

While{true} do {
[] execVM 'put\your\path\gaszeds.sqf';
waituntil{
((nearestObject [getpos player, "SmokeShellRed"]) distance player < 10)
and
(getpos (nearestObject [getpos player, "SmokeShellRed"]) select 2 < 0.5)
};

//cuttext ["It's Lethal Green Gas!!", "PLAIN DOWN"];

r_player_blood = r_player_blood - 2000; //OPTIONAL //This will remove 1000 blood from the infected player upon infection

    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [15]; // intensity of blur
    "dynamicBlur" ppEffectCommit 3; // time till vision is fully blurred
    //enableCamShake true; // enables camera shake
    //addCamShake [10, 45, 10]; // sets shakevalues
    //5 fadeSound 0.1; // fades the sound to 10% in 5 seconds
    
    _chance = ceil (random 5);
    
    if (_chance <= 3) then {
        [player,"cough",0,false] call dayz_zombieSpeak;
    };
    
    sleep 5;
    
    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
    "dynamicBlur" ppEffectCommit 5; // time it takes to normal
    //resetCamShake; // resets the shake
    //20 fadeSound 1; //fades the sound back to normal
};

gaszeds.sqf

Spoiler

while {true} do {
 sleep 1;

  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findZeds = _pos2 nearEntities ["zZombie_Base", gas_area];
    _contar = count _findZeds;
    for "_i" from 0 to (_contar -1) do
    {
      _zeds = _findZeds select _i;
     _zeds setDamage 1; 
	 sleep 4;
     deletevehicle _zeds; 
    };
  };
};

 

Link to comment
Share on other sites

  • 0
3 minutes ago, chi said:

The gas to kill the zeds work great. If anyone can figure out how to make it damage WAI and DZAI, please help me out. Thanks. And Thanks again @juandayz!!

you welcome chi.... i guess u need to find how to call the ai.... something like center east,,, but really i dont have idea... but i u get this name u can test replacing

zZombie_Base

by the ai name

like:

while {true} do {
 sleep 1;

  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findZeds = _pos2 nearEntities ["AI NAME HERE", gas_area];
    _contar = count _findZeds;
    for "_i" from 0 to (_contar -1) do
    {
      _zeds = _findZeds select _i;
     _zeds setDamage 1; 
	 sleep 4;
     deletevehicle _zeds; 
    };
  };
};
Link to comment
Share on other sites

  • 0

@chior maybe define into a variable all ai names who will be affected by the gas  ..

_ai = ["Bandit1_DZ","BanditW1_DZ"];

so gas.sqf

Spoiler

private["_chance"];

While{true} do {
[] execVM 'put\your\path\gaszeds.sqf';

[] execVM 'put\your\path\gasia.sqf';
waituntil{
((nearestObject [getpos player, "SmokeShellRed"]) distance player < 10)
and
(getpos (nearestObject [getpos player, "SmokeShellRed"]) select 2 < 0.5)
};

//cuttext ["It's Lethal Green Gas!!", "PLAIN DOWN"];

r_player_blood = r_player_blood - 2000; //OPTIONAL //This will remove 1000 blood from the infected player upon infection

    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [15]; // intensity of blur
    "dynamicBlur" ppEffectCommit 3; // time till vision is fully blurred
    //enableCamShake true; // enables camera shake
    //addCamShake [10, 45, 10]; // sets shakevalues
    //5 fadeSound 0.1; // fades the sound to 10% in 5 seconds
    
    _chance = ceil (random 5);
    
    if (_chance <= 3) then {
        [player,"cough",0,false] call dayz_zombieSpeak;
    };
    
    sleep 5;
    
    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
    "dynamicBlur" ppEffectCommit 5; // time it takes to normal
    //resetCamShake; // resets the shake
    //20 fadeSound 1; //fades the sound back to normal
};

 

 

 

gasia.sqf

Spoiler

while {true} do {
 sleep 1;
_ai = ["Bandit1_DZ","BanditW1_DZ"];//ADD ALL AI SKINS FROM YOUR MISSIONS
  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findAi = _pos2 nearEntities [_ai, gas_area];
    _contar = count _findAi;
    for "_i" from 0 to (_contar -1) do
    {
      _theAi = _findAi select _i;
     _theAi setDamage 1;
   //REMOVE 2 LINES FROM BELLOW IF U DONT WANNA DELETE CORPS AFTER 4 SECONDS

sleep 4;
     deletevehicle _theAi;

    };
  };
};

gaszeds.sqf

Spoiler

while {true} do {
 sleep 1;

  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findZeds = _pos2 nearEntities ["zZombie_Base", gas_area];
    _contar = count _findZeds;
    for "_i" from 0 to (_contar -1) do
    {
      _zeds = _findZeds select _i;
     _zeds setDamage 1; 
	 sleep 4;
     deletevehicle _zeds; 
    };
  };
};

 

Link to comment
Share on other sites

  • 0
10 hours ago, juandayz said:

or maybe use "Man"   like:

_findAi = _pos2 nearEntities ["Man", gas_area];

I tried this, and i can't tell if it kills ai because i die as soon as it leaves my hand when i throw it. hahaha

 

Gonna try using the skins tomorrow and i'll let you know if it works.

Link to comment
Share on other sites

  • 0
19 minutes ago, chi said:

I tried this, and i can't tell if it kills ai because i die as soon as it leaves my hand when i throw it. hahaha

 

Gonna try using the skins tomorrow and i'll let you know if it works.

lol so "Man" also take players? mmm see in infi safezone script "man" is used.. also in fn_selfActions... but i dont know...  heres the part of infi: do not use it for gas,, its just a part of other script

if (isNil 'USE_AI_REMOVER') then { USE_AI_REMOVER = false; } else { if (typename USE_AI_REMOVER != 'BOOL') then { USE_AI_REMOVER = false; }; };
            if (USE_AI_REMOVER) then
            {
                {
                    if ((!isNull group _x) && (getPlayerUID _x == '')) then
                    {
                        deleteVehicle _x;
                    };
                } forEach (player nearEntities ['Man',100]);
            };

Link to comment
Share on other sites

  • 0

@juandayz

This is the loadout file for DZAI... Wouyld "_unit" be how i should call them?

Spoiler

private ["_unit","_weapongrade","_weapons","_weapon","_magazine","_backpacks","_gadgetsArray","_backpack","_gadget","_inventory"];
_unit = _this select 0;
_weapongrade = _this select 1;

if (_unit getVariable ["loadoutDone",false]) exitWith {diag_log format ["DZAI Error: Unit already has loadout! (%1)",__FILE__];};

if !(_weapongrade in DZAI_weaponGradesAll) then {
    _weapongradeInvalid = _weapongrade;
    _weapongrade = DZAI_weaponGrades call BIS_fnc_selectRandom2;
    diag_log format ["DZAI Error: Invalid weapongrade provided: %1. Generating new weapongrade value: %2. (%3)",_weapongradeInvalid,_weapongrade,__FILE__];
};

if ((count (weapons _unit)) > 0) then {
    removeAllWeapons _unit;
    {_unit removeWeapon _x} count ["ItemMap","ItemGPS","ItemCompass","ItemRadio","ItemWatch"];
};

_weapons = missionNamespace getVariable ["DZAI_Rifles"+str(_weapongrade),DZAI_Rifles1+DZAI_Rifles2+DZAI_Rifles3];
if ((_weapongrade == 0) && {(0.25 call DZAI_chance)}) then {
    _weapons = missionNamespace getVariable ("DZAI_Pistols" + str(floor(random 2)));
};
_backpacks = missionNamespace getVariable ["DZAI_Backpacks"+str(_weapongrade),DZAI_Backpacks1+DZAI_Backpacks2+DZAI_Backpacks3];

//Select weapon and backpack
_weapon = _weapons call BIS_fnc_selectRandom2;
_backpack = _backpacks call BIS_fnc_selectRandom2;

//Add weapon, ammunition, and backpack
_magazine = getArray (configFile >> "CfgWeapons" >> _weapon >> "magazines") select 0;
_unit addMagazine _magazine;
_unit addWeapon _weapon;
_unit selectWeapon _weapon;
_unit addBackpack _backpack;

 

Link to comment
Share on other sites

  • 0

@juandayz

so I found this

I have set the variables like it says in my WAI spawn_group.sqf

Spoiler

if (isServer) then {

    private ["_rocket","_launcher","_pos_x","_pos_y","_pos_z","_aiskin","_unarmed","_current_time","_gain","_mission","_ainum","_aitype","_mission","_aipack","_aicskill","_position","_unitnumber","_skill","_gun","_mags","_backpack","_skin","_gear","_aiweapon","_aigear","_aiskin","_skillarray","_unitGroup","_weapon","_magazine","_gearmagazines","_geartools","_unit"];

    _position             = _this select 0;
    _pos_x             = _position select 0;
    _pos_y             = _position select 1;
    _pos_z             = _position select 2;
    _unitnumber         = _this select 1;
    _skill                 = _this select 2;
    _gun                 = _this select 3;
    _mags                 = _this select 4;
    _backpack             = _this select 5;
    _skin                 = _this select 6;
    _gear                 = _this select 7;
    _aitype                = _this select 8;
    
    if (typeName _gun == "ARRAY") then {
        _launcher        = _gun select 1;
        _gun            = _gun select 0;
    };

    if (typeName _aitype == "ARRAY") then {
        _gain             = _aitype select 1;
        _aitype         = _aitype select 0;
    };
    
    if (count _this > 9) then {
        _mission = _this select 9;
    } else {
        _mission = nil;
    };

    _aiweapon             = [];
    _aigear             = [];
    _aiskin             = "";
    _aicskill             = [];
    _aipack             = "";
    _current_time        = time;
    _unarmed            = false;

    if(_aitype == "Hero") then {
        _unitGroup    = createGroup RESISTANCE;
    } else {
        _unitGroup    = createGroup EAST;
    };

    if(_pos_z == 0) then {
        if(floor(random 2) == 1) then { 
            _pos_x = _pos_x - (5 + random(25));
        } else {
            _pos_x = _pos_x + (5 + random(25));
        };            

        if(floor(random 2) == 1) then { 
            _pos_y = _pos_y - (5 + random(25));
        } else {
            _pos_y = _pos_y + (5 + random(25));
        };
    };

    for "_x" from 1 to _unitnumber do {

        call {
            if(typeName(_gun) == "SCALAR") then {
                if(_gun == 0)             exitWith { _aiweapon = ai_wep_assault; };
                if(_gun == 1)             exitWith { _aiweapon = ai_wep_machine; };
                if(_gun == 2)             exitWith { _aiweapon = ai_wep_sniper; };
            } else {
                if(_gun == "random")     exitWith { _aiweapon = ai_wep_random call BIS_fnc_selectRandom; };
                if(_gun == "unarmed")     exitWith { _unarmed = true; };
                _weapon = _gun;
            }
        };

        if (!_unarmed) then {
            _weapon     = _aiweapon call BIS_fnc_selectRandom;
            _magazine     = _weapon     call find_suitable_ammunition;
        };

        call {
            if(typeName(_gear) == "SCALAR") then {
                if(_gear == 0)             exitWith { _aigear = ai_gear0; };
                if(_gear == 1)             exitWith { _aigear = ai_gear1; };
            } else {
                if(_gear == "random")     exitWith { _aigear = ai_gear_random call BIS_fnc_selectRandom; };
            };
        };
        
        _gearmagazines     = _aigear select 0;
        _geartools         = _aigear select 1;

        call {
            if(_skin == "random")     exitWith { _aiskin = ai_all_skin         call BIS_fnc_selectRandom; };
            if(_skin == "hero")     exitWith { _aiskin = ai_hero_skin         call BIS_fnc_selectRandom; };
            if(_skin == "bandit")     exitWith { _aiskin = ai_bandit_skin     call BIS_fnc_selectRandom; };
            if(_skin == "special")     exitWith { _aiskin = ai_special_skin     call BIS_fnc_selectRandom; };
            _aiskin = _skin;
        };

        if(typeName _aiskin == "ARRAY") then {
            _aiskin = _aiskin call BIS_fnc_selectRandom;
        };

        _unit = _unitGroup createUnit [_aiskin,[_pos_x,_pos_y,_pos_z],[],0,"CAN COLLIDE"];
        [_unit] joinSilent _unitGroup;
        _unit setVariable ["WAIAI", true, true];
        call {
            if(_aitype == "hero")         exitWith { _unit setVariable ["Hero",true]; _unit setVariable ["humanity", ai_remove_humanity]; };
            if(_aitype == "bandit")     exitWith { _unit setVariable ["Bandit",true]; _unit setVariable ["humanity", ai_add_humanity]; };
            if(_aitype == "special")     exitWith { _unit setVariable ["Special",true]; _unit setVariable ["humanity", ai_special_humanity]; };
        };

        if (!isNil "_gain") then { _unit setVariable ["humanity", _gain]; };

        call {
            if(_backpack == "random")     exitWith { _aipack = ai_packs call BIS_fnc_selectRandom; };
            if(_backpack == "none")     exitWith { };
            _aipack = _backpack;
        };
        
        if (isNil "_mission") then {
        
            _unit enableAI "TARGET";
            _unit enableAI "AUTOTARGET";
            _unit enableAI "MOVE";
            _unit enableAI "ANIM";
            _unit enableAI "FSM";
        
        };

        removeAllWeapons _unit;
        removeAllItems _unit;

        if (sunOrMoon != 1) then {
            _unit addweapon "NVGoggles";
        };

        if (!_unarmed) then {
            for "_i" from 1 to _mags do {
                _unit addMagazine _magazine;
            };
            _unit addweapon _weapon;
            _unit selectWeapon _weapon;
        };

        if(_backpack != "none") then {
            _unit addBackpack _aipack;
        };

        {
            _unit addMagazine _x
        } count _gearmagazines;

        {
            _unit addweapon _x
        } count _geartools;
        
        // Add Coins
        _coinsRandom = random 1;
        if (_coinsRandom <= 0.5) then {
        _cash = round(random 20) * 10; // number between 0 and 200
        _unit setVariable["CashMoney",_cash ,true];
        };
        // Add Coins End
        
        call {
            if(_skill == "easy")         exitWith { _aicskill = ai_skill_easy; };
            if(_skill == "medium")         exitWith { _aicskill = ai_skill_medium; };
            if(_skill == "hard")         exitWith { _aicskill = ai_skill_hard; };
            if(_skill == "extreme")     exitWith { _aicskill = ai_skill_extreme; };
            if(_skill == "random")         exitWith { _aicskill = ai_skill_random call BIS_fnc_selectRandom; };
            _aicskill = ai_skill_random call BIS_fnc_selectRandom;
        };

        {
            _unit setSkill [(_x select 0),(_x select 1)]
        } count _aicskill;
        
        ai_ground_units = (ai_ground_units + 1);

        _unit addEventHandler ["Killed",{[_this select 0, _this select 1, "ground"] call on_kill;}];

        if (!isNil "_mission") then {
            wai_mission_data select _mission set [0, (((wai_mission_data select _mission) select 0) + 1)];
            _unit setVariable ["missionclean", "ground"];
            _unit setVariable ["mission", _mission, true];
        };

    };

    if (!isNil "_launcher" && wai_use_launchers) then {
        call {
            //if (_launcher == "Random") exitWith { _launcher = (ai_launchers_AT + ai_launchers_AA) call BIS_fnc_selectRandom; };
            if (_launcher == "at") exitWith { _launcher = ai_wep_launchers_AT call BIS_fnc_selectRandom; };
            if (_launcher == "aa") exitWith { _launcher = ai_wep_launchers_AA call BIS_fnc_selectRandom; };
        };
        _rocket = _launcher call find_suitable_ammunition;
        _unit addMagazine _rocket;
        _unit addMagazine _rocket;
        _unit addWeapon _launcher;
    };

    _unitGroup setFormation "ECH LEFT";
    _unitGroup selectLeader ((units _unitGroup) select 0);

    if(_aitype == "Hero") then {
        if (!isNil "_mission") then {
            [_unitGroup, _mission] spawn hero_behaviour;
        } else {
            [_unitGroup] spawn hero_behaviour;
        };
    } else {
        if (!isNil "_mission") then {
            [_unitGroup, _mission] spawn bandit_behaviour;
        } else {
            [_unitGroup] spawn bandit_behaviour;
        };
    };

    if(_pos_z == 0) then {
        [_unitGroup,[_pos_x,_pos_y,_pos_z],_skill] spawn group_waypoints;
    };

    diag_log format ["WAI: Spawned a group of %1 AI (%3) at %2",_unitnumber,_position,_aitype];
    
    _unitGroup
};

and changed gasai.sqf to this to just test WAI

Spoiler


while {true} do {
 sleep 1;

  gas_area = 26;
  _playerPos = getPos player;
  _nearGas = nearestObject [_playerPos, "SmokeShellRed"];
  if (!isNull _nearGas) then {
    _pos2 = getPos _nearGas;
    _findAi = _pos2 nearEntities ["WAIAI", gas_area];
    _contar = count _findAi;
    for "_i" from 0 to (_contar -1) do
    {
      _theAi = _findAi select _i;
     _theAi setDamage 1; 
    };
  };
};

Nothing happens to the AI though. Any ideas? Again, I have WAI and DZAI.

Link to comment
Share on other sites

  • 0
9 hours ago, juandayz said:

this line,, you need define WAIAI

How would i do that? I'm lost here

I understand like _WAIAI would need to be defined, but I though maybe since I set the variable in the WAI spawn_group file, that it would register like "zZombie_base" does.

Teach me something. lol

Link to comment
Share on other sites

  • 0

@chi "zZombie_base" its default of epoch, u dont need define it.. also "Man"  but "_WAIAI" its in an "external" sqf of WAI MISSIONS... like my skins variable  _ai = ["Bandit1_DZ","BanditW1_DZ"];

When you add a new variable external of epoch you need to define it...

so at the top of the gas sqf

_WAIA = i dont know what  are you trying XD but here you put whats means _WAIA ;

Link to comment
Share on other sites

  • 0
1 hour ago, juandayz said:

@chi "zZombie_base" its default of epoch, u dont need define it.. also "Man"  but "_WAIAI" its in an "external" sqf of WAI MISSIONS... like my skins variable  _ai = ["Bandit1_DZ","BanditW1_DZ"];

When you add a new variable external of epoch you need to define it...

so at the top of the gas sqf

_WAIA = i dont know what  are you trying XD but here you put whats means _WAIA ;

Understood.

I was trying to use "WAIAI" in the same way that this guy calls them for his debug monitor.

Can you help me with this? Here is the link

Thanks

Link to comment
Share on other sites

  • 0
On 19/11/2016 at 0:59 PM, oldmatechoc said:

Any one know a way to make a player immune to the effects if their carrying something? Like NVG's in Namalsk, :wink:

 

hey you can try something like this.. i dont think its gonna work at first but its a begining

Spoiler

private["_chance"];

While{true} do {
[] execVM 'put\your\path\gaszeds.sqf';

[] execVM 'put\your\path\gasia.sqf';
waituntil{
((nearestObject [getpos player, "SmokeShellRed"]) distance player < 10)
and
(getpos (nearestObject [getpos player, "SmokeShellRed"]) select 2 < 0.5)
};


///////////////////////////////////////////////////////////////////////////////

//Uncoment bellow if u wanna use tools////in this case an axe
//inmune = false;
//_inventory = items player;
//_currentWeapon = primaryWeapon player;
//_hashatchet = false;
//if ((_currentWeapon == "MeleeHatchet_DZE") || ("ItemHatchet" in _inventory)) then {                    
//_inmune= true;                                                                            
//};                                                                                    


//using items
_inmune = false;
_hasitems = "ItemIDhere" in magazines player;

if (_hasitems) then {
_inmune = true;
};

if (_inmune) exitWith {
cuttext ["your safe now", "PLAIN DOWN"];
}else{
///////////////////////////////////////////////////////////////////////////////

 

 

 

//cuttext ["It's Lethal Green Gas!!", "PLAIN DOWN"];

r_player_blood = r_player_blood - 2000; //OPTIONAL //This will remove 1000 blood from the infected player upon infection

    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [15]; // intensity of blur
    "dynamicBlur" ppEffectCommit 3; // time till vision is fully blurred
    //enableCamShake true; // enables camera shake
    //addCamShake [10, 45, 10]; // sets shakevalues
    //5 fadeSound 0.1; // fades the sound to 10% in 5 seconds
    
    _chance = ceil (random 5);
    
    if (_chance <= 3) then {
        [player,"cough",0,false] call dayz_zombieSpeak;
    };
    
    sleep 5;
    
    "dynamicBlur" ppEffectEnable true; // enables ppeffect
    "dynamicBlur" ppEffectAdjust [0]; // enables normal vision
    "dynamicBlur" ppEffectCommit 5; // time it takes to normal
    //resetCamShake; // resets the shake
    //20 fadeSound 1; //fades the sound back to normal
};
};

 

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
  • Discord

×
×
  • Create New...