Git Product home page Git Product logo

epoch-admin-tools's Introduction

Epoch Admin Tools V-1.10.0

Admin Tools

(Click here for more screenshots)

This is an admin menu with powerful tools for the purpose of testing and/or administrating a DayZ Epoch Mod server. Most tools will also be compatible with original DayZMod servers and other derivatives.

You may use this script free of charge and modify for your own needs, however you MAY NOT distribute this code or any modified versions of it without my permission. If you have new features you think people may benefit from please open a pull request to have it added to this tool. The main reason for this is to be sure the tool is of the best possible quality and that harmful code is not distributed under the guise of my work. If you are worried about the integrity of the dll files look at the change log for MD5 hash values.

Table of Contents:

Features:

For help with Administration:

  • Multiple Admin levels
  • Spectate players
  • "Display code" for locked vaults/doors
  • "Create key" for vehicles with lost keys
  • Base management - Copy/Paste/Export/Import/Delete bases
  • Spawn crates with weapons, items, and supplies
  • Spawn vehicles via the menu or a custom-made graphical vehicle menu (screenshot) (Thanks @Sandbird!)
  • Log admin tool use to combat possible abuse of the tool

Other features:

  • Godmode
  • Teleport
  • Flying
  • Invisibility
  • Infinite Ammo / No recoil
  • Change skins
  • Delete, repair/refuel vehicle
  • Heal players
  • ESP - display players and objects on the map
  • Spawn temporary buildings on the map
  • ...and more!

Installation

  1. Click Download Zip on the right sidebar of this Github page.

    Recommended PBO tool for all "pack", "repack", or "unpack" steps: PBO Manager

  2. Log into your server via FTP or your host's File Manager. Locate, download, and unpack (using PBO Manager or a similar PBO editor) your MPMissions/Your_Mission.pbo, and open the resulting folder.

    Note: "Your_Mission.pbo" is a placeholder name. Your mission might be called "DayZ_Epoch_11.Chernarus", "DayZ_Epoch_13.Tavi", or "dayz_mission" depending on hosting and chosen map.

  3. Extract the admintools folder from the Epoch Admin Tools project zip into the root of your mission folder.

  4. If you are allowed to use custom dll's (some hosts forbid it)

    Copy all files inside the DLL folder (not the folder itself) to your ROOT server folder (where arma2oaserver.exe and @DayZ_Epoch is located)

    IMPORTANT: You may need to allow the dll through your antivirus because some antivirus block unknown dll's. Windows may also require you to unblock it by right clicking it, selecting properties, and selecting unblock

  5. Open the init.sqf in the root of your mission folder.

  6. Paste the following

    call compile preprocessFileLineNumbers "admintools\config.sqf"; // Epoch admin Tools config file
    call compile preprocessFileLineNumbers "admintools\variables.sqf"; // Epoch admin Tools variables

    Directly under this:

    call compile preprocessFileLineNumbers "server_traders.sqf";

    So that it looks like this:

    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";
    progressLoadingScreen 0.1;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";
    progressLoadingScreen 0.2;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";
    progressLoadingScreen 0.4;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";
    progressLoadingScreen 0.5;
    call compile preprocessFileLineNumbers "server_traders.sqf";
    call compile preprocessFileLineNumbers "admintools\config.sqf"; // Epoch admin Tools config file
    call compile preprocessFileLineNumbers "admintools\variables.sqf"; // Epoch admin Tools variables
    progressLoadingScreen 1.0;
  7. Paste the following at the bottom of the init:

    [] execVM "admintools\Activate.sqf"; // Epoch admin tools
  8. If you use the normal battleye antiahck or similar do this step, if not then skip it.

    Find the antihack line in your init.sqf, it may or may not be the same as this

    [] execVM "\z\addons\dayz_code\system\antihack.sqf";

    if you have the line above replace it with this:

    // Epoch Admin Tools
    if ( !((getPlayerUID player) in AdminList) && !((getPlayerUID player) in ModList)) then 
    {
    	[] execVM "admintools\antihack\antihack.sqf"; // Epoch Antihack with bypass
    };

    If you do not have the mentioned line then simply replace the antihack.sqf line in the above code with the one you have.

  9. Save the init.sqf

  10. Open your description.ext

  11. Paste the following at the very bottom:

    // Epoch Admin Tools
    #include "admintools\dialog.hpp"
  12. Open admintools\config.sqf

  13. Replace the "111111111" with your Player ID in order to have full access to the menu.

  14. The mission pbo is done. Repack it and upload it to your server (FTP or host's File Manager).

  15. Extract the .txt files from the Epoch-Admin-Tools/Battleye folder to your server's Battleye folder, overwriting the existing .txt files.

    Note: The location of your server's Battleye folder depends on the server and hosting. For some users, this may be in CONFIGFILES/Battleye.

  16. Locate your @DayZ_Epoch_Server/addons/dayz_server.pbo on your server host, download and unpack it, and open the resulting dayz_server folder.

  17. Open init/server_functions.sqf and replace this:

        if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x)  && !((typeOf vehicle _x) in DZE_safeVehicle)) then {

    ...with this:

    	// Epoch Admin Tools
        if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x)  && !((typeOf vehicle _x) in DZE_safeVehicle) && (vehicle _x getVariable ["MalSar",0] !=1)) then {

    Note: This step may not work well if you use other mods that modify this operator. The important code to fit into this operator is (vehicle _x getVariable ["MalSar",0] !=1) which can be added easily with a rudimentary knowledge of programming.

  18. Now open your compile/server_updateObject.sqf and place this:

    // Epoch Admin Tools
    if (_object getVariable "MalSar" == 1) exitWith {};

    ...immediately above this:

    if (!_parachuteWest and !(locked _object)) then {
  19. Repack the server pbo and upload it to your server.

View the Epoch Admin Tools Wiki for additional configuration options and help.

Updating

Follow these steps exactly or there may be errors and extra files left behind.

  1. Download the version you want to update to.

    The newest update download is here: Download Zip

  2. Go to the install directory for the admin tools:

    Epoch -> MPMissions -> YourMissionName -> admintools

  3. Copy your AdminList.sqf file to your desktop

  4. Go back one directory to Epoch -> MPMissions -> YourMissionName and delete the admintools folder

  5. Copy the new admintools folder you downloaded in the zip to this directory

    If you are asked to replace any file then you did not delete everything correctly.

  6. Open your init.sqf, find and delete the Epoch Admin Tools edits

    • [] execVM "admintools\Activate.sqf"; // Epoch admin tools
    • The epoch antihack edit inside the !isDedicated if statement. (Only if it exists)
    • The call compile lines showin in the step below that may belong to the tool
  7. Paste the following

    call compile preprocessFileLineNumbers "admintools\config.sqf"; // Epoch admin Tools config file
    call compile preprocessFileLineNumbers "admintools\variables.sqf"; // Epoch admin Tools variables

    Directly under this:

    call compile preprocessFileLineNumbers "server_traders.sqf";

    So that it looks like this:

    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";
    progressLoadingScreen 0.1;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";
    progressLoadingScreen 0.2;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";
    progressLoadingScreen 0.4;
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";
    progressLoadingScreen 0.5;
    call compile preprocessFileLineNumbers "server_traders.sqf";
    call compile preprocessFileLineNumbers "admintools\config.sqf"; // Epoch admin Tools config file
    call compile preprocessFileLineNumbers "admintools\variables.sqf"; // Epoch admin Tools variables
    progressLoadingScreen 1.0;
  8. Paste the following at the bottom of the init.sqf:

    [] execVM "admintools\Activate.sqf"; // Epoch admin tools
  9. If you use the normal battleye antiahck or similar do this step, if not then skip it.

    Find the antihack line in your init.sqf, it may or may not be the same as this

    [] execVM "\z\addons\dayz_code\system\antihack.sqf";

    if you have the line above replace it with this:

    // Epoch Admin Tools
    if ( !((getPlayerUID player) in AdminList) && !((getPlayerUID player) in ModList)) then 
    {
    	[] execVM "admintools\antihack\antihack.sqf"; // Epoch Antihack with bypass
    };

    If you do not have the mentioned line then simply replace the antihack.sqf line in the above code with the one you have. If you do not have an antihack line at all DO NOT add this code, just skip this step.

  10. Save the init.sqf and close it

  11. Now go into the admintools folder and open config.sqf

  12. Open the AdminList.sqf you copied to your desktop.

  13. Copy all of the UIDs from the old Adminlist to your new one. This version has many changes and no longer uses AdminList.sqf

You have now successfully and correctly updated your tools.

FAQ

  • I'm getting kicked with "Script Restriction #X"!
  • Make sure you've installed the Battleye filters perfectly in the instructions. If it still fails, you can fix the error yourself with a little knowledge about how the filters work.
  • The menu doesn't appear.
  • The most likely cause of this error is either a syntax error in your init.sqf (e.g. a missing semi-colon), a syntax error in your admintools\config.sqf (e.g. a comma after the last string in the array of Admins/Mods - see above optional instruction) or forgetting to add your Player ID (or typing it wrong) into the admintools\config.sqf. Specific errors can be found by reading your server's RPT file. Also see Debugging Techniques.
  • I get stuck at the loading screen with the arma2oaserver.rpt error that I am missing files.
  • This is most often caused by a broken PBO packaging tool. Reinstall or use a different tool.
  • How do I add something to my personal tools?
  • This is found in the Epoch Admin Tools Wiki

Error Reporting

BEFORE posting an issue on Github or on the main discussion forum:

  • Review the installation instructions and be sure you've done every step EXACTLY as stated. They are not forgiving. If one step is done incorrectly, it won't work.
  • If you think you might have installed it incorrectly, follow the YouTube Video Install Tutorial
  • Check your server's RPT log for errors. This will identify 99% of problems with the menu. Be ready to copy/paste the RPT log into Pastebin or Gist in an issue or in the discussion forum for help with troubleshooting.
  • If all else fails, install these tools onto a fresh, unedited mission.pbo and server.pbo to get it working, then start installing additional addons/mods one at a time until the admin tools break in order to identify the conflict.

If your problem persists after doing the above:

Credits

This project is based heavily on Malory's Custom Epoch Admin Tools, which itself is based on BluePhoenix Admin Tools.

  • Project Leader: NoxSicarius (Nox)
  • A huge thanks goes out to Gregarious who began this project and did a huge amount of work on the tool. We were sad to see him go, but his generous contributions will be remembered.

epoch-admin-tools's People

Contributors

akelorian avatar bualdoot avatar cinjun avatar deannreid avatar evocation avatar f3cuk avatar gregariousjb avatar iforgotmywhat avatar leodr99 avatar logi-26 avatar meowzors avatar noxsicarius avatar onefox avatar sandbird avatar slayterson avatar wikallen avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.