Jump to content

He-Man

Developer
  • Posts

    808
  • Joined

  • Last visited

  • Days Won

    63

Reputation Activity

  1. Like
    He-Man reacted to DirtySanchez in [DEC2017] Arma 3 EpochMod Server Installation and Setup - [NOV2020] FireDaemon Tutorial Link   
    Server Installation
    [NOV2020] Thank you @PAL-18 for the DM with a link to your newly updated info for Arma 3 Dedicated Server Setup Under FireDaemon Pro
    https://kb.firedaemon.com/support/solutions/articles/4000086687

    [DEC2017] Instructions below
    Difficulty Level: Medium
    Time to invest: Depends upon knowledge of Arma 3 but should be a few hours with 20/20/20 breaks
    ** 20/20/20: Every 20 minutes, get up and focus on something 20 ft away for at least 20 seconds
    1. Download Arma 3 Server files by going into Steam -> LIBRARY -> TOOLS
     This will download to your Steam Library folder. (most likely in program files -> steam -> steamapps -> common)   OPTIONALLY you can install SteamCMD and download arma 3 server from there Create a folder for SteamCMD (e.g. C:\Servers\SteamCMD) Create a folder for your Server (e.g. C:\Servers\EpochServer) Download SteamCMD: http://media.steampowered.com/installer/steamcmd.zip Paste the SteamCMD.exe into your created SteamCMD folder Create an empty file "Update_Arma.bat" in your SteamCMD folder Open this file with notepad(++) and paste this code into this file: @echo off @rem http://media.steampowered.com/installer/steamcmd.zip SETLOCAL ENABLEDELAYEDEXPANSION :: DEFINE the following variables where applicable to your install SET STEAMLOGIN=mylogin mypassword SET A3serverBRANCH=233780 -beta :: For stable use 233780 -beta :: For Dev use 233780 -beta development :: Note, the missing qotation marks, these need to be wrapped around the entire "+app_data......" :: There is no DEV branch data yet for Arma 3 Dedicated Server package !!! SET A3serverPath=C:\Servers\EpochServer\ SET STEAMPATH=C:\Servers\SteamCMD\ :: _________________________________________________________ echo. echo You are about to update ArmA 3 server echo Dir: %A3serverPath% echo Branch: %A3serverBRANCH% echo. echo Key "ENTER" to proceed pause %STEAMPATH%\steamcmd.exe +login %STEAMLOGIN% +force_install_dir %A3serverPath% +"app_update %A3serverBRANCH%" validate +quit echo . echo Your ArmA 3 server is now up to date echo key "ENTER" to exit pause  
    Enter your Steam Login and optional your Server / Steam path (folder) Save this file and run it to install / update your Arma3 Server 2. Setup a new folder on your drive (Skip this when using steamCMD)
    If only hosting a single server, simply "EpochServer" is fine If needing to install multiple server, you can alternately name this "EpochServers" and make a subfolder "EpochMapName" for the server     * FOR THE REST OF THIS SETUP WE WILL REFER TO THE SERVER FOLDER AS "EpochServer"


    3. Move your Arma 3 Server files over to your new folder to start building your Epoch Server (Skip this when using steamCMD)
    Copy and Pasting these files will work just fine
    4. Copy the Client Files to your Server
    Copy your @Epoch folder to the "EpochServer" By default it should be located in "C:\Program Files (x86)\Steam\steamapps\common\Arma 3\!Workshop\@Epoch" Optionally you can download these files also from http://epochmod.com -> Downloads -> Client
    5. Copy the Server Files to your Server
    Download the Server files from here: https://github.com/EpochModTeam/Epoch Click on the green button "Clone or download" and download the Zip file Unzip the downloaded file and go into the Server_Install_Pack folder Copy the contents of the Server_Install_Pack into your "EpochServer" main root
    6. Setup your preferences of your epoch server
         A. Location:  "EpochServer"\sc\server.cfg
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/sc/server-example.cfg Rename server-example.cfg to server.cfg and configure it setup your server name, passwords, mission file name (optional: difficulty and other config entries)      B. Location: "EpochServer"\@epochHive\epochAH.hpp
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/%40epochhive/epochah.hpp#L2 turn on/off the antihack-admin panel      C. Location: "EpochServer"\@epochHive\epochConfig.hpp
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/@epochhive/epochconfig.hpp Server settings for restarts, time and other important settings      D. Location: "EpochServer"\@epochHive\epochServer.ini 
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/%40epochhive/EpochServer.ini Very Important: Battleye RCON and Database port/password settings (See next post for more)
    7. Setup your database config
        Location: "EpochServer"\DB\redis.conf
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/DB/redis.conf port and password change here
    8. Setup your preferences of your epoch server
        Location: "EpochServer"\sc\battleye\beserver.cfg or beserver_x64.cfg
    https://github.com/EpochModTeam/Epoch/blob/experimental/Server_Install_Pack/sc/battleye/example-beserver_x64.cfg Which depends on what x86/x64 server executable you are running. Should be self explanatory which is needed when? right? If not, x86 means 32bit and x64 means 64bit
    9. These below are part of epoch_server_settings.pbo.  The links provided are to the source files on github for example purposes.

        Location: "EpochServer"\@epochHive\epoch_server_settings.pbo\
       A. config.cpp
    https://github.com/EpochModTeam/Epoch/blob/experimental/Sources/epoch_server_settings/config.cpp more server settings    B. configs\maps\yourmapname.h
    https://github.com/EpochModTeam/Epoch/blob/experimental/Sources/epoch_server_settings/configs/maps/tanoa.h Only if using a map other than Altis do you need to use a yourmapname.h file (ie. tanoa.h) Default Map Configs    C. configs\CfgLootTable.h
    https://github.com/EpochModTeam/Epoch/blob/experimental/Sources/epoch_server_settings/configs/CfgLootTable.h Defined Base Loot Tables (if you use Apex, use CfgLootTable_APEX.h)    D. configs\CfgMainTable.h
    https://github.com/EpochModTeam/Epoch/blob/experimental/Sources/epoch_server_settings/configs/CfgMainTable.h Defined Loot per Crate (What kind of Loot will spawn in defined crate-Types)

    10. These below are part of mission file pbo.  The links provided are to the source files on github for example purposes.
        Location:   "EpochServer"\mpmissions\epoch.yourMapName

       A. epoch_configs\Configs\CfgEpochClient.hpp
    https://github.com/EpochModTeam/Epoch/blob/release/Sources/epoch_config/Configs/CfgEpochClient.hpp
    Most important configs needed Server and Client side
        B. epoch_configs\Configs\Cfg*.hpp <- refers to all the Cfg hpp files
    https://github.com/EpochModTeam/Epoch/blob/release/Sources/epoch_config/Configs/
    Look through these files. Most of them have helpful hints, how to configure
     
  2. Thanks
    He-Man got a reaction from Grahame in Door remote script   
    I like your idea and I have done some more work on it.
    http://plays.tv/video/5aa4580e23dbbbd67b/door-opener
    I will rework it a bit, make some configs and give it to you. I think tomorrow evening...
  3. Like
    He-Man got a reaction from natoed in Door remote script   
    Hey, I have played a bit with this function and have a sample for you.
    This Script will check, if you are in your Plotpole-Range and will open / close the nearest handleable visible Door from your Position.
    Eventually you have to add some Door classes and add a distance check (if wanted).
    To Close the nearest opened Door, just change "_open = true" to "_open = false".
    _open = true; _config = 'CfgEpochClient' call EPOCH_returnConfig; _buildingJammerRange = getNumber(_config >> "buildingJammerRange"); _nearjammers = nearestobjects [player,["Plotpole_EPOCH"],_buildingJammerRange]; if (_nearjammers isEqualTo []) exitwith { ["You are not in your PlotPole-Range",5] call Epoch_Message; }; _nearestJammer = _nearjammers select 0; if !((_nearestJammer getVariable["BUILD_OWNER", "-1"]) in[getPlayerUID player, Epoch_my_GroupUID]) exitwith { ["You are not in your PlotPole-Range",5] call Epoch_Message; }; _OpenableItems = ["CinderWallGarage_EPOCH","WoodLargeWallDoorL_EPOCH","WoodLargeWallDoor_EPOCH","Land_BarGate_F","CinderWallDoorwHatch_EPOCH"]; _NearestDoors = []; _fnc_CheckDoorsToOpen = { _NearestDoors = (nearestobjects [_nearestJammer,_OpenableItems,_buildingJammerRange]) select { ([_x, "VIEW"] checkVisibility [eyePos player, [(getposasl _x select 0),(getposasl _x select 1),(getposasl _x select 2) + 1.5]]) > 0.5 && ( _x animationPhase "open_left" < 0.5 && _x animationPhase "open_right" < 0.5 && _x animationPhase "Door_1_rot" < 0.5 && _x animationPhase "Open_Door" < 0.5 ) }; _NearestDoors }; _fnc_CheckDoorsToClose = { _NearestDoors = (nearestobjects [_nearestJammer,_OpenableItems,_buildingJammerRange]) select { ([_x, "VIEW"] checkVisibility [eyePos player, [(getposasl _x select 0),(getposasl _x select 1),(getposasl _x select 2) + 1.5]]) > 0.5 && ( _x animationPhase "open_left" > 0.5 || _x animationPhase "open_right" > 0.5 || _x animationPhase "Door_1_rot" > 0.5 || _x animationPhase "Open_Door" > 0.5 ) }; _NearestDoors }; if (_open) then { _NearestDoors = call _fnc_CheckDoorsToOpen; } else { _NearestDoors = call _fnc_CheckDoorsToClose; }; if (_NearestDoors isequalto []) exitwith { [format ["No Door to %1 found",if (_open) then {"open"} else {"close"}],5] call Epoch_Message; }; _DoorToHandle = _NearestDoors select 0; _value = (if (_open) then {1} else {0}); _DoorToHandle animate ['open_left', _value]; _DoorToHandle animate ['open_right', _value]; _DoorToHandle animate ['Door_1_rot', _value]; _DoorToHandle animate ['Open_Door', _value];  
  4. Like
    He-Man got a reaction from Grahame in Door remote script   
    Hey, I have played a bit with this function and have a sample for you.
    This Script will check, if you are in your Plotpole-Range and will open / close the nearest handleable visible Door from your Position.
    Eventually you have to add some Door classes and add a distance check (if wanted).
    To Close the nearest opened Door, just change "_open = true" to "_open = false".
    _open = true; _config = 'CfgEpochClient' call EPOCH_returnConfig; _buildingJammerRange = getNumber(_config >> "buildingJammerRange"); _nearjammers = nearestobjects [player,["Plotpole_EPOCH"],_buildingJammerRange]; if (_nearjammers isEqualTo []) exitwith { ["You are not in your PlotPole-Range",5] call Epoch_Message; }; _nearestJammer = _nearjammers select 0; if !((_nearestJammer getVariable["BUILD_OWNER", "-1"]) in[getPlayerUID player, Epoch_my_GroupUID]) exitwith { ["You are not in your PlotPole-Range",5] call Epoch_Message; }; _OpenableItems = ["CinderWallGarage_EPOCH","WoodLargeWallDoorL_EPOCH","WoodLargeWallDoor_EPOCH","Land_BarGate_F","CinderWallDoorwHatch_EPOCH"]; _NearestDoors = []; _fnc_CheckDoorsToOpen = { _NearestDoors = (nearestobjects [_nearestJammer,_OpenableItems,_buildingJammerRange]) select { ([_x, "VIEW"] checkVisibility [eyePos player, [(getposasl _x select 0),(getposasl _x select 1),(getposasl _x select 2) + 1.5]]) > 0.5 && ( _x animationPhase "open_left" < 0.5 && _x animationPhase "open_right" < 0.5 && _x animationPhase "Door_1_rot" < 0.5 && _x animationPhase "Open_Door" < 0.5 ) }; _NearestDoors }; _fnc_CheckDoorsToClose = { _NearestDoors = (nearestobjects [_nearestJammer,_OpenableItems,_buildingJammerRange]) select { ([_x, "VIEW"] checkVisibility [eyePos player, [(getposasl _x select 0),(getposasl _x select 1),(getposasl _x select 2) + 1.5]]) > 0.5 && ( _x animationPhase "open_left" > 0.5 || _x animationPhase "open_right" > 0.5 || _x animationPhase "Door_1_rot" > 0.5 || _x animationPhase "Open_Door" > 0.5 ) }; _NearestDoors }; if (_open) then { _NearestDoors = call _fnc_CheckDoorsToOpen; } else { _NearestDoors = call _fnc_CheckDoorsToClose; }; if (_NearestDoors isequalto []) exitwith { [format ["No Door to %1 found",if (_open) then {"open"} else {"close"}],5] call Epoch_Message; }; _DoorToHandle = _NearestDoors select 0; _value = (if (_open) then {1} else {0}); _DoorToHandle animate ['open_left', _value]; _DoorToHandle animate ['open_right', _value]; _DoorToHandle animate ['Door_1_rot', _value]; _DoorToHandle animate ['Open_Door', _value];  
  5. Thanks
    He-Man got a reaction from Tarabas in Door remote script   
    I have moved it to Q&A, as you are asking for help.
    When it is finished, you can publish it in Scripts.
  6. Like
    He-Man got a reaction from Donnovan in Error   
    For the damage:
    Epoch Debug only check "damage Player".
    In this scripts, you do "sethitindex" for all hits, but do not change the overall damage.
    That is the reason, why the damage is not displayed.
    If I have checked it correctly, you can change:
    {_uTarget setHitIndex [_forEachIndex,_x + _damage,true];} forEach (getAllHitPointsDamage _uTarget select 2); to
    _hits = getAllHitPointsDamage _uTarget select 2; _uTarget setdamage ((damage _uTarget) + _damage); {_uTarget setHitIndex [_forEachIndex,_x + _damage,true];} forEach _hits;  
  7. Like
    He-Man reacted to Kenobi in Error   
    I am so sorry, now it works great and thank you, He-man :-)
  8. Like
    He-Man got a reaction from Kenobi in Error   
    Weird...
    You have changed this?
     
    BRPVP_processZombieHit = compileFinal ' params ["_uTarget","_damage"]; _hits = getAllHitPointsDamage _uTarget select 2; _uTarget setdamage ((damage _uTarget) + _damage); {_uTarget setHitIndex [_forEachIndex,_x + _damage,true];} forEach _hits; '; THis should not change anything in the behavior. Or are there any errors in rpt?
  9. Like
    He-Man got a reaction from Kenobi in Error   
    For the damage:
    Epoch Debug only check "damage Player".
    In this scripts, you do "sethitindex" for all hits, but do not change the overall damage.
    That is the reason, why the damage is not displayed.
    If I have checked it correctly, you can change:
    {_uTarget setHitIndex [_forEachIndex,_x + _damage,true];} forEach (getAllHitPointsDamage _uTarget select 2); to
    _hits = getAllHitPointsDamage _uTarget select 2; _uTarget setdamage ((damage _uTarget) + _damage); {_uTarget setHitIndex [_forEachIndex,_x + _damage,true];} forEach _hits;  
  10. Like
  11. Like
    He-Man got a reaction from natoed in [WIP] Potential Uniform/Vest Glitch Fix   
    You could reduce a bit performance with this:
     
    { if (alive _x) then { if (uniform _x == "" || vest _x == "") then { if !(getPlayerUID _x isEqualTo "") then { [uniform _x, vest _x] remoteExecCall ["UniformVestCheck", owner _x]; }; }; }; } forEach allPlayers; Then you only push it, if the player really has no visible uniform / vest for the Server.
     
    Another really helpfull (new) command is "getunitloadout" and "setunitloadout".
    UniformVestCheck = { if (typeOf player == "VirtualMan_EPOCH") exitWith {}; params ["_uniform", "_vest"]; if (!(uniform player isEqualTo _uniform) || !(vest player isEqualTo _vest)) then { player setunitloadout (getunitloadout player); //["The server had to replace your uniform as it was bugged", 5] call Epoch_message; }; }; Then the player will just completely reload his loadout...
  12. Thanks
    He-Man got a reaction from Grahame in [WIP] Potential Uniform/Vest Glitch Fix   
    You could reduce a bit performance with this:
     
    { if (alive _x) then { if (uniform _x == "" || vest _x == "") then { if !(getPlayerUID _x isEqualTo "") then { [uniform _x, vest _x] remoteExecCall ["UniformVestCheck", owner _x]; }; }; }; } forEach allPlayers; Then you only push it, if the player really has no visible uniform / vest for the Server.
     
    Another really helpfull (new) command is "getunitloadout" and "setunitloadout".
    UniformVestCheck = { if (typeOf player == "VirtualMan_EPOCH") exitWith {}; params ["_uniform", "_vest"]; if (!(uniform player isEqualTo _uniform) || !(vest player isEqualTo _vest)) then { player setunitloadout (getunitloadout player); //["The server had to replace your uniform as it was bugged", 5] call Epoch_message; }; }; Then the player will just completely reload his loadout...
  13. Like
    He-Man reacted to Grahame in A3E DZMS   
    ARMA3 DayZ Mission System (DZMS)
    This is a purely derivative port of the DayZ Mission System to ARMA3/Epoch. I have added functionality where appropriate (equipping uniforms for example) and stripped and replaced ARMA2 or DayZ/Epoch specific code in this implementation.
    The DayZ Mission System is a very good, lightweight and modular mission system.
    Credits
    There are a lot of people who have contributed to DZMS on A2/DayZ/Epoch. Please check the links below for many of them. Personally they all have my thanks for providing a solid mission system that has been a lot of fun to play in the years I've spent on DayZ/Epoch:
    Download
    Download from GitHub at:
    https://github.com/morgoth0/A3E-DZMS
    Installation Instructions
    If using Vanilla ARMA3/Epoch, and you just want to just try it out simply download and upload the DZMS.pbo in the @EpochHive folder into the @EpochHive/addons folder on your server.
    The source files, including the three config files are located in the DZMS folder on GitHub
    Coming soon
    All the missions included within the latest version of DZMS 1.1 uploaded by @JasonTM will be implemented using CUP Terrains Core for use on maps and servers that support it. A module to support Static weapons at missions More diverse and varied loot tables for custom crates A port of the DZMS Hotspots code for roadblocks and other such interesting things The ability to run multiple major, minor and hotspot missions Better configuration instructions and a mission file design tutorial
  14. Like
    He-Man reacted to Grahame in EpochZ: Black Tide   
    Several more changes in the past week on EpochZ: Black Tide, some major, some cosmetic:
    Added Apex's boats and 4WD offroads to the trader price lists Added the Greek HK416 (uses STANAG mags) Added my customized version of A3EAI (roaming AI). AI now have appropriate gear and weapons depending on their difficulty level: 0 = civilian, 1 = Greek Army & Police, 2 = BAF, 3 = USMC. Played a bit with the loot found on roaming AI too Removed the plant spawn markers and configured Epoch so it does not make the other markers larger as the map is zoomed Freshened up starting spawn gear and locations Added a knife and can opener to the traders and loot. You now need a knife or hatchet to gut a dead animal You now need a knife, can opener or hatchet to open all cans other than sardines. You will get a decreasing hunger reward depending on which you use due to wastage Morphine now works properly and only heals leg damage after you have broken one (a broken leg in Epoch happens when you take over 50% damage there). If your leg is not broken then using morphine has no effect (but does not use up the injector) Added missing Mk200 to traders Added missing SR-25 and SR-25EC to the traders Added the following missing magazines to the traders: 10-round Sa-61 and blue, purple and orange 6-round signal mags Added the following missing muzzles to the traders: Khaki and sand variants of the 5.56mm and 7.62mm standard ARMA3 suppressors Reworked trader dialogs so some of the items now appear in the proper categories rather than being lumped under Magazines>Other. Added two new categories: Magazines>Medical and Magazines>Vehicle Repair to make it easier to find these items Temporarily removed vanilla Epoch UAVs. I had fixed something that I had done that had broken them but apparently I fixed it too well since they were starting to spam people. Will get the issue resolved and add them back. In the interim, the A3EAI system that handles roaming AI has it's own UAVs that summon in AI help (actually in a more realistic way). That system is still active. Added the Ural chassis to the traders as well as a couple of other items that were glitched in the black markets Removed the toxicity and radiation effects of sardines... I like sardines! Now if only I could make toast @Helion4 (hint, hint ) Tactical Bacon moved to correct Magazines>Food section in BM trader Anti-virus pills/injectors moved to correct Magazines>Medical section in BM trader Added new buildings used in current and future Points of Interest to the ground loot tables Replaced the ATMs in the trader camps with bankers (the guys in the suits). Hold SPACE and click on the Crypto ("Bank") icon. ATMs no longer access the bank but phones do (you are on the phone with your banker)
     
  15. Like
    He-Man got a reaction from BenQ in [Release] HS Blackmarket 1.6 | 'New' Trader System | Special Trader | Blackmarket   
    Change it to:
        _vars = _player getVariable['VARS', call EPOCH_defaultVars_SEPXVar];
     
    and also change:
        [['effectCrypto',_newcrypt],(owner _player)]call EPOCH_sendPublicVariableClient;
    to
      _newcrypt remoteExec ['EPOCH_effectCrypto',(owner _player)];
  16. Like
    He-Man reacted to Grahame in [Release] HS Blackmarket 1.6 | 'New' Trader System | Special Trader | Blackmarket   
    @BenQIf you look on page 43 (the same page as your post appeared) to @He-Man's post on May 7th you will find the answer to your question... 
  17. Like
    He-Man reacted to Donnovan in Error   
    Error
     
  18. Like
    He-Man reacted to Honey Bee in BEC Bug after Last Update   
    Hi,
    al was fine. If anybody have the same problem, write a  beserver_x64.cfg . Than it should work ;-D.
    Thank you all for taking the time to help me ♥♥♥
     
    LG
    Honey
  19. Like
    He-Man got a reaction from Honey Bee in BEC Bug after Last Update   
    I am only using the Lobby kick of BEC and it is working. So I think you really have a fail in your port configuration.
    Port in "SC\BattleEye\BEServer.cfg" is 2310
    In BEC Config:  Port = 2310
  20. Like
    He-Man reacted to salival in Anyone in need of a coder?   
    Just thought i'd weigh in on this.
    I don't know what @vbawol stance is on people taking donations on here for doing work, but here's my opinion
    The world works on payment for time spent on things, if you spend your hard earned time helping people, you should be able to take donations but DONT excpect them. HOWEVER.
    I have helped a lot of people on here that have paid people to set up their servers and done either a shit job or not finished the job at all.
    If you are serious in wanting to do paid work setting up peoples servers and writing scripts, you better do a bloody good job.
  21. Like
    He-Man got a reaction from Razor1977 in [Server Addon] ZCP - Zupa's Capture Points 2.0 Updated for Epoch 0.3   
    I found something in my archive. Not sure, if it is currently working and I will not support it, if it fails. But you can try:
    https://www.dropbox.com/s/qjsetwqvw9uzht6/a3_epoch_server_zcp.pbo?dl=0
    Should work without any client files. If you find rpt errors, I can try to help you. But again, I am not official supporting it...
  22. Thanks
    He-Man got a reaction from Vitalii_V in Enable God mode   
    Indestructible Base objects?
    https://github.com/EpochModTeam/Epoch/blob/release/Server_Install_Pack/%40epochhive/epochconfig.hpp#L75-L88
  23. Sad
    He-Man reacted to GriffinZS in [GER] EPOCH 1.0: Sperrgebiet Esseker | AI, Zombies, Missions   
    server closed 
  24. Like
    He-Man got a reaction from Razor1977 in Epoch Vehicles Unlockable By Anyone   
    It is related on too long expire values for VehicleLock.
    This should fix it:
    https://github.com/EpochModTeam/Epoch/commit/8b6a25506de5b4ef3666d9cc5de0b649fe446bf3
  25. Like
    He-Man reacted to Ghostrider-GRG in Epoch Vehicles Unlockable By Anyone   
    Thank you - to elaborate, I caused the saving of vehicle lock data to fail when I extended the time after which the lock expires (  vehicleLockTime = 2559200;  ). Placing the time in quotes should address this issue.
     
    Also, I would like to extend a very big Thank You to He-Man who put in quite a bit of work and back and forth to identify the cause of the problem.
×
×
  • Create New...