Jump to content

Ghostrider-GRG

Member
  • Posts

    952
  • Joined

  • Last visited

  • Days Won

    56

Reputation Activity

  1. Like
    Ghostrider-GRG reacted to hambeast in [TUTORIAL] How to use Public Variables   
    FYI, this guide is for advanced arma coders.  This guide will assume you know how to pack/unpack PBO's, edit files, and are comrfortable with coding.  You must also have an understanding of locality as in client vs server side.
     
    A note on locality:  Your mpMissions folder is NOT only client side.  When I started coding I made this assumption and I was wrong.
     
     
    Lesson 1:  Event Handlers Basics
     
    Event handlers are the bread and butter of Arma2 MP coding.  They are little logic functions that the server sets aside until they are called by a public variable.  In my experience they have very low overhead so don't be afraid to make use of them.
     
    example 1: Change players skin
    Add this code to the bottom of your init.sqf (in your mpMission)
    // expects: [_playerUID,_CharacterID,_skinClassName] // this line says ONLY run on the ClientSide.  The server will see this and ignore it.  This means that when a client gets this command, they and only they will execute this. if (!isDedicated) then {   "PV_ChangePlayerSkin" addPublicVariableEventHandler {     // handle our packet.  _this select 0 returns the PV name, _this select 1 returns our input packet    _packet = _this select 1;  // should contain [_playerUID, _characterID, _skinClassName]    _playerUID = _packet select 0;    _characterID = _packet select 1;    _skinClassName = _packet select 2;       // set our player to the skin    [_playeruid,_characterID, _skinClassName] spawn player_humanityMorph;   }; }; Ok so now we got our event handler set up, if any client sends the PV "PV_ChangePlayerSkin" all clients connected will execute this event handler.  Here is how we send the command to all players.  This code can be called anywhere, on a client, or from the server itself.
     
    example:
      PV_ChangePlayerSkin = [_playerUID,_CharacterID,_skinClassName];   publicVariable "PV_ChangePlayerSkin"; But you may be asking, how do I set just a single player's skin instead of everyone on the server?   We do this with publicVariableClient.  I am unsure if you can call this command from clientside as I only use it serverside but here is how you do it regardless. // lets assume we want to set our cursorTarget's skin (the player we are looking at) _player = cursorTarget; _owner = owner _player; // owner command returns the client # we will need for the next step. _playerUID = getPlayerUID _player; _characterID = _player getVariable ["CharacterID","0"]; _skinClassName = "FR_GL"; // my personal skin PV_ChangePlayerSkin = [_playerUID, _characterID, _skinClassName]; _owner publicVariableClient "PV_ChangePlayerSkin"; // only send the PV to the specific client  
    Now when we send our public variable we only send it to the client we wish to.  There are a myriad of ways to get player objects loaded into memory but that will be covered later.
  2. Like
    Ghostrider-GRG reacted to hellraver in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    Use this Code:

     

    vkc_AllowedClaimVehicle = [ "SUV_Blue", "SUV_Camo", "SUV_Charcoal", "SUV_DZ", "SUV_Green", "SUV_Orange", "SUV_Pink" ]; if (!isNull cursorTarget && (typeOf cursorTarget) in vkc_AllowedClaimVehicle && (player distance cursorTarget <= 10) && (!isEngineOn cursorTarget)) then {
  3. Like
    Ghostrider-GRG reacted to TheVampire in [Release] DayZ Mission System   
    DZMS is a logic and useability rewrite of the DayZChernarus Mission System.
    DZMS should be considered as an "updated" DayZChernarus Mission System.

    Why Use DZMS instead of DayZChernarus MS?
    DZMS has a simple Configuration File, no more digging through code No more junk code! (Anyone who has read add_unit_server will understand) Simple Install! DZMS Requires a single line edit. No more server_cleanup confusion! No more messy mission code! DZMS uses functions for most code. DZMS is rewrote with all maps in mind, not just Chernarus. Hence the Generic Rename. DZMS is completely server sided! No marker files needed in the Mission PBO! No more "Novy Sobor Bug"! Plus, many features have been added!
    Option to save vehicles to the database! If Vehicle Saving is off, Users are warned when entering vehicles! Randomized Crate Loot! No more static crate loot! Adjustable Body Despawn Time! Optional: AI Ran Over have no gear! More!  
    The Current Version is v1.2

    Download Instructions: https://github.com/SMVampire/DZMS-DayZMissionSystem
    Project Tracking: https://github.com/SMVampire/DZMS-DayZMissionSystem/projects
     
    (Note: I have given The Fuchs permission to use DZMS as the base for EMS.)
  4. Like
    Ghostrider-GRG reacted to hellraver in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.5.4 (Updated 26/10/2014)

    Changes: Debugging (heli distance menu appears) I'm sorry. Was my fault.

    Have Fun!

    Best regards

    hellraver

    Hint: This is a unofficial version and is not from Otternas3!!!
    VehicleKeyChanger_v1.5.4.zip
  5. Like
    Ghostrider-GRG reacted to flakvest in Are vehicles being unlocked automatically?   
    You can also create a MYSQL event that will unlock abandoned cars after a certain period of time.  Here is what I am using.  Just edit to make the table name match the spelling and capitalization of your 'object_data' table.  This unlocks vehicles that are at least 4 days old and haven't been touched in 10 days.  You can change the numbers to reflect the time you want this to happen.
     
    DROP EVENT IF EXISTS unlockAbandonedVehicles; CREATE EVENT unlockAbandonedVehicles ON SCHEDULE EVERY 1 DAY COMMENT 'Unlocks vehicles that have been abandoned' DO UPDATE `Object_DATA` SET `CharacterID` = 0 WHERE `LastUpdated` < DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 4 DAY) AND `Datestamp` < DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 10 DAY) AND `CharacterID` > 0 AND `Classname` NOT IN ('VaultStorage','LockboxStorage','VaultStorageLocked','LockboxStorageLocked','WoodShack_DZ','StorageShed_DZ','TentStorageDomed','TentStorageDomed2','TentStorage')  AND `Inventory` <> '[]' AND `Inventory` IS NOT NULL;
  6. Like
    Ghostrider-GRG got a reaction from jackal40 in HiveExt Error Help   
    It looks as if there is an error in your database. You might try just rolling it back an hour. However, the hive error is for one of your trades, I believe for tid 493. Have you tried searching your traders_data table using 493 as the TID ?  That should help you narrow down the problematic entry.
  7. Like
    Ghostrider-GRG got a reaction from jackal40 in HiveExt Error Help   
    I am glad my input was helpful. Good luck with your new dedi-box.
  8. Like
    Ghostrider-GRG reacted to DeanReid in [Resources] Scripts | Tools | AIO   
    Tutorials
    ===============
     
    Admin Guide
    ================
    - - RayMix
    - NGHD
    -  - hambeast
    - Editing Battleye Files - Apocalypsetiger
    - Adding Custom Buildings - Blur
    - - Gr8Boi
     
    Tutorials
    ===============
    A}
    - jOoPs
    - - Nemaconz
    - - jOoPs
    - Raymix
    - - jOoPs
    - Add Items/Vehicles/Weapons to Traders M1 - xBowBii
    - Add Items/Vehicles/Weapons to Traders M2 - xBowBii
    -  f3cuk
    - http://epochmod.com/forum/index.php?/topic/9917-how-to-anti-glitch-script-block-unconscious-players-from-being-dragged-into-bases/- Sandbird
    - http://epochmod.com/forum/index.php?/topic/7874-how-to-watermark-on-the-bottom-left-of-screen/ - Indiculous
    - http://epochmod.com/forum/index.php?/topic/9832-how-to-implement-picture-on-the-bottom-left-of-screen/ - BAROD
    - http://epochmod.com/forum/index.php?/topic/7879-how-to-adding-intro-music/ - Indiculous
     
    C}
    - http://epochmod.com/forum/index.php?/topic/6844-tutorial-clickable-self-bloodbag-with-configurable-limitations-updated-02212014/ - adg
    - http://epochmod.com/forum/index.php?/topic/16084-tutorial-clean-vehicle-flip-right-click-version/ - Chunk. No Captain Chunk
     
    D}
    - http://epochmod.com/forum/index.php?/topic/2112-tutorial-disabling-r3f-towlift-for-locked-vehicles/ - MrTesla
    - http://epochmod.com/forum/index.php?/topic/4229-how-to-disable-rain-fog-multiple-setups-available/ - Scenic
    - http://epochmod.com/forum/index.php?/topic/3009-how-to-default-starting-loadouts-and-custom-loadouts-through-database/ - AVendettaForYou
    - http://epochmod.com/forum/index.php?/topic/9775-tutorialrelease-disable-the-salvage-vehicle-option-while-in-trader-city/ - WAE
     
    E}
    - http://epochmod.com/forum/index.php?/topic/13538-how-to-evd-mounted-weapons/ - Brockie
     
     
    H}
    - http://epochmod.com/forum/index.php?/topic/6755-tutorial-how-to-change-bloodhungerthirsttemp-gui/ - SpreadKiller
    - http://epochmod.com/forum/index.php?/topic/11797-tutorial-harvestable-hemp-smoking-weed-pot-farms/ - FragZ
     
    I}
    - http://epochmod.com/forum/index.php?/topic/1673-how-to-cpc-indestructible-bases/ - ToejaM
     
    K}
    - http://epochmod.com/forum/index.php?/topic/9366-howto-release-keep-your-plot-pole-after-you-die/ - Spectral
     
    M}
    - Mission/Server Rotation - Turtle
     
    R}
    - http://epochmod.com/forum/index.php?/topic/11952-tutorial-removechange-trading-animations-for-faster-trading/ - Gr8Boi
    - http://epochmod.com/forum/index.php?/topic/10743-fixtoolbox-remove-camo-net-and-remove-tank-trap/ - Zelik
    - http://epochmod.com/forum/index.php?/topic/14950-howto-refresh-dynamic-vehicles-on-restart/- f3cuk
     
     
    S}
    - http://epochmod.com/forum/index.php?/topic/14447-how-toupdate-snap-build-pro-w-admin-fast-build-upgrade-and-extra-rc-building-system/ - KamikazeXeX
    - http://epochmod.com/forum/index.php?/topic/9660-player-safe-reset-mission/ - Cramps2
     
    T}
    - http://epochmod.com/forum/index.php?/topic/9552-howtorelease-tie-playeruid-to-all-buildable-objects-keep-plot-pole-after-death-no-sql-triggers-update-16042014/ - WGC GeekGarage
     
    U}
    - http://epochmod.com/forum/index.php?/topic/6130-howto-use-journal/ - jOoPs
     
     
     
    {Vehicle/Player/Zombie Reskin/Retextures}
    ===========================
    - http://epochmod.com/forum/index.php?/topic/15116-how-to-reskinretexture-vehicles/?p=112257 - Brockie
    - http://epochmod.com/forum/index.php?/topic/19731-release-10-custom-skin-textures/ - Zupa
     
     
    {Vehicle Skins}
    - http://epochmod.com/forum/index.php?/topic/19873-blood-splattered-ural-yellow/ - ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/19874-blood-splattered-v3s/- ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/19872-blood-splattered-lada-white/ - ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/19871-blood-splattered-hatchback-yellow/ - ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/19875-icarus-buses-coke-pepsi-mountain-dew/ - ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/19877-green-tractors-easier-to-hide-in-the-woods/ - ZombieDanceTeamLeader
    - http://epochmod.com/forum/index.php?/topic/15301-new-suv-skinstextures/ - FriendlyPA
    - http://epochmod.com/forum/index.php?/topic/13263-release-hollows-nissan-350zs/ - HollowAddiction *Overwatch/OverPoch ONLY*
     
    {Player Skins}
     
     
     
    {Zombie Skins}
    - http://epochmod.com/forum/index.php?/topic/19876-female-zombie-originally-the-hooker-skin/ - ZombieDanceTeamLeader
     
     
     
    {OverPoch Tutorials}
    =======================
    - http://epochmod.com/forum/index.php?/topic/12487-tutorial-overpoch-custom-traders-all-weaponsammovehicles-in-menus/ - RayMix
  9. Like
    Ghostrider-GRG got a reaction from hellraver in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    @hellraver,
     
    Your version 1.4.2 works beautifully on my test server. Thank you very much for sorting the issues with this script. I will be adding it to our servers and will report any bugs identified.
  10. Like
    Ghostrider-GRG reacted to raymix in [Tutorial] Overpoch - Custom traders, all weapons/ammo/vehicles in menus   
    This Video Tutorial covers:
    Add custom Traders anywhere on map
    Find positions on map (also covering safezones/sensors a little bit)
    Add your own custom Menus to traders
    Add all Overwatch weapons, ammo and vehicles to your menus
    Use notepad++ to convert Loot CFG (or literary ANY) file into SQL query that you can to insert items faster into database.
     
    Notepad++ tricks:
    I will show you some cool tricks how to clean out junk data from files, filter out only stuff you need and convert it into a different code that can be used elsewhere.
    In this video I will be using Macros, TextFX and Find&Replace options to show you awesome stuff you can do with notepad++ to affect thousands of lines automatically!
    You will need TextFX plugin.
     
    SQL:
    I am using Heidi SQL to edit my databases. Any other tool is very well capable of doing the same job well. I just love filtering on heidi. It's also free.
    This is by no means targeted towards advanced users, beginners only. If you are advanced user and dislike the method, please share your method instead for all of us to learn from.
    I am not sharing actual SQL code because database names differs for different hosts, also I think notepad++ tricks are awesome thing to know, might be handy in future.
    In fact If database structure ever changes, you can reuse tricks learned here instead to update it quickly.
     
    Overwatch vehicles used in video:



    Alternative list of all Overwatch weapons/ammo/vehicles (Test out your new Notepad++ skill and convert it into SQL!)
    PROTIP: if using alternative list - to filter out ammo from weapons Write Ammo Type: in search, leave search window open. Then create macro:
    [Home] > [F3] > [shift]+[END] > [DEL] > [Down] > [Home]
    This will delete last part on all rows that says ammo and leave weapons only. Apply similar method to delete weapons instead.
     
    Credits and [How to] Install server: infiSTAR for awesome AH/Admin tool
     

     
    00:00 - 20:00 Adding traders 20:00 - 35:05 Notepad++ filtering out the junk 35:05 - 36:40 Notepad++ TextFX deleting duplicate rows 36:40 - 41:55 Notepad++ Seperating ammo from weapons using macros 41:55 - 57:42 Converting classnames into SQL query (adding stuff to traders in database) 57:42 - Final in-game test
  11. Like
    Ghostrider-GRG reacted to Zupa in [Release] 3.0 Door Management - No More Codes   
    [RELEASE] Door Management - No More Codes
     



    First release ONLY for Plot 4 Life users. 
     
    Tired of giving in codes? Which code belongs to which door anyways? Geezus, some guy put a bot on my door to break the code. FUCK THAT
     
    Here comes Door Management. Throw away your codes and enjoy a simple eye scan. Add your friends to your list on the door an enjoy a stress free "door opening" experience. Door opening too fast? dont worry just put the opening time a bit longer. 
     
    Inspired by plotManagement but now for Doors!
     
     

     
     
     
    If you press the unlock action you will not see a code dialog anymore. My dialog overwrites this dialog with my personal one. Here you get to simple action to press  EYE SCAN. This will open the door after 2 seconds of scanning. Fails when you are not on the manage list ofcourse. Only people on the manage list can manage the door ofcourse. Owner will be alwyas highest authority and can never be erased. (Thanks P4L - Rimblock).
     
    [insert Image of the manage window here when i'm @ home, or anyone else provide it in the meantime]
     
    If you press manual code you get the old dialog back. You can disable this in the config section.
     
    This Scripts DOES not change anything gamebreaking or database related. The door code is still being used, but only codewise (back-end). You dont see anything in the front-end.
     
    Instructions
     
     
    0 - Download the files from github:
     
    https://github.com/DevZupa/DoorManagement
     
     
    1 - in your description.ext: ( Mission PBO ) 
     
    Add to the bottom: ( THE DEFINES IS UPDATED, overwrite any other defines i gave u at other mods of mine!)
    If you get any duplicates of classes, just delete them from the defines.hpp, problem solved.
    #include "doorManagement\defines.hpp" #include "doorManagement\doorUnlock.hpp" #include "doorManagement\doorManagement.hpp" #include "doorManagement\ComboLockUI.hpp" 2 - In your compiles.sqf:  ( Mission PBO )  Add the following lines  
    /*DoorManagement Zupa*/ DoorGetFriends = compile preprocessFileLineNumbers "doorManagement\doorGetFriends.sqf"; DoorNearbyHumans = compile preprocessFileLineNumbers "doorManagement\doorNearbyHumans.sqf"; DoorAddFriend = compile preprocessFileLineNumbers "doorManagement\doorAddFriend.sqf"; DoorRemoveFriend = compile preprocessFileLineNumbers "doorManagement\doorRemoveFriend.sqf"; player_unlockDoor       = compile preprocessFileLineNumbers "doorManagement\player_unlockDoor.sqf"; player_unlockDoorCode = compile preprocessFileLineNumbers "doorManagement\player_unlockDoorCode.sqf"; player_manageDoor       = compile preprocessFileLineNumbers "doorManagement\initDoorManagement.sqf"; player_enterCode       = compile preprocessFileLineNumbers "doorManagement\player_enterCode.sqf"; player_changeCombo = compile preprocessFileLineNumbers "doorManagement\player_changeCombo.sqf";  /*DoorManagement End*/   Above
    BIS_Effects_Burn = compile preprocessFile "\ca\Data\ParticleEffects\SCRIPTS\destruction\burn.sqf"; AND place "//" infront of the normal  player_actions so it looks like this:
    // player_unlockDoor   = compile preprocessFileLineNumbers "defaultfile.sqf";   //player_changeCombo = compile preprocessFileLineNumbers "defaultfike.sqf";  3 - Variables.sqf: Add somewhere at the top: NOT FIRST LINE:
    /**DoorManagement Config**/ DoorAdminList = ["-2","-3"]; // List of Player Id's of admins that can manage all doors AllowManualCode = true;// 2 reason| 1: Allows breaking codes (if 2nd config = false and code = 3 digits) | 2: Friends can access access not owned doors until owner gets on. HarderPenalty = true;// Cen's Penalty: Flashes screen white. And kicks player to lobby if failed more then (random number between 4 and 14) times. // AllowUncrackableCode = false; // in next release: if set to true, player can change code to more then 4 digits, The manualCode will always fail when he does. THIS is for AntiCodeCrack servers that allow Manual Code for people that like that system. // in next release. AllowManualCode will allow players to change the code in the DoorManagement Menu. /**DoorManagement Config END**/ DZE_DoorsLocked = ["Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallDoorLocked_DZ","CinderWallDoorSmallLocked_DZ"];            4 -  FN_SELFACTIONS.SQF:
     
    a - Add the following
    player removeAction s_player_manageDoor; s_player_manageDoor = -1; // u might also want to add this to variables reset in your variables.sqf Under
    player removeAction s_player_barkdog; s_player_barkdog = -1; player removeAction s_player_warndog; s_player_warndog = -1; player removeAction s_player_followdog; s_player_followdog = -1; b - Place the following:
    //Allow manage door if((_typeOfCursorTarget in DZE_DoorsLocked)) then { if (s_player_manageDoor < 0) then { s_player_manageDoor = player addAction ["<t color='#0059FF'>Manage Door</t>", "doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false]; }; } else { player removeAction s_player_manageDoor; s_player_manageDoor = -1; }; above
    //Allow owner to unlock vault Now in the Server.pbo
     



    5 -  server_monitor.sqf ( Mostly found in dayz_server/system/ if you are not using any modded one).
     
    a) place
    if (typeOf (_object) in DZE_DoorsLocked) then { _object setVariable ["doorfriends", _intentory, true]; }; under
    _object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];  
    B - Find  ( IF NOT USING PLOTMANAGEMENT )



    if (count _intentory > 0) then { Replace that with
    if ((count _intentory > 0) && !(typeOf( _object) in DZE_DoorsLocked)) then { B - IF USING PLOT MANAGEMENT, 
     
    REplace:
    if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then { With
    if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ") && !(typeOf( _object) in DZE_DoorsLocked)) then { 6 -  server_UpdateObject.sqf ( Mostly found in dayz_server/compile/ if you are not using any modded one).
     
    Change 
    _inventory = [ getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object ]; into ( IF NOT using PLotManagement)
     
    _isNormal = true; if (typeOf (_object)in DZE_DoorsLocked) then{ _isNormal = false; _inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item }; if(_isNormal)then { _inventory = [ getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object ]; }; IF USING PLOT MANAGEMENT
     
    Change
    if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then{ _inventory = _object getVariable ["plotfriends", []]; //We're replacing the inventory with UIDs for this item } else { _inventory = [ getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object ]; };  Into
    _isNormal = true; if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then{ _isNormal = false; _inventory = _object getVariable ["plotfriends", []]; //We're replacing the inventory with UIDs for this item }; if (typeOf (_object)in DZE_DoorsLocked) then{ _isNormal = false; _inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item }; if(_isNormal)then { _inventory = [ getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object ]; }; Infistar Antihack
    If you're running Infistar Antihack, add this to the dialogs array;



    711195, 41144 And this to the '_cMenu =' section
    "DoorManagement","Entercode" IMPORTANT FOR NON PLOT 4 LIFE USERS
     
  12. Like
    Ghostrider-GRG reacted to hellraver in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    Hi Guys,

    I have a new integrated method so that they cannot multiply vehicles with the commanding menu.
    And I found a small error in the VehicleKeyChanger_init.sqf. Soon I integrate claim vehicles without key ;-)

    Best regards

    hellraver

    Hint: This is a unofficial version and is not from Otternas3!!!
    VehicleKeyChanger_v1.4.2.zip
  13. Like
    Ghostrider-GRG reacted to kat in Overpoch Database Trader Entries   
    Config:
    GitHub: Database Entries
     
    ;) I've made some entries for my custom traders for the new overpoch weapons/ammo.
    Your trader TID will be different than mine so you will have to change that. 
     
    I've separated them into each class. *note some may be in the wrong section, forgive me, i'm not a gun nut...  :rolleyes:
    Feel free to adjust the prices etc.
     
    I'm using navicat so It may be different using other methods.
    But to add, create a new query and simply paste the below entries.
     
    *note your "traders_data" may be different, change to suit your database.
    *If you find any mistakes or feel that something needs to be more balanced price wise please comment and ill update, Thanks   ;)
    AK Variants:




    G3 Variants:




    Sidearms:




    Masada ACR




    SCAR Rifles:




    HK416's




    HK417's




    LMG's




    Snipers:



     
    ACR snow camo:
      ACR black camo:
  14. Like
    Ghostrider-GRG reacted to Matijs in [TUTORIAL] How to install an overpoch server & custom loot tables   
    Here is a link to the Overpoch Server Config Folder and the MPMission file:

    http://adf.ly/pbQHC
  15. Like
    Ghostrider-GRG reacted to Zupa in [Release] 2.1 Plot Management - UPDATED Object Counter   
    Testing the following.
     
    Instead of doing anything in remove.sqf ( RESTORED IT TO DEFAULt).
     
    I use the following in fn_selfactions.sqf
     
    P4L only.
    ///Allow owners to delete modulars if(_isModular) then { if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then { _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0]; _IsNearPlot = count (_findNearestPoles); _fuid = []; _allowed = []; if(_IsNearPlot > 0)then{ _thePlot = _findNearestPoles select 0; _owner = _thePlot getVariable ["ownerPUID","010"]; _friends = _thePlot getVariable ["plotfriends", []]; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _fuid; if ( _playerUID in _allowed) then { // && _ownerID in _allowed // If u want that the object also belongs to someone on the plotpole. _player_deleteBuild = true; }; }else{ if(_ownerID == _playerUID)then{ _player_deleteBuild = true; }; }; }; }; //Allow owners to delete modular doors without locks if(_isModularDoor) then { if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then { _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0]; _IsNearPlot = count (_findNearestPoles); _fuid = []; _allowed = []; if(_IsNearPlot > 0)then{ _thePlot = _findNearestPoles select 0; _owner = _thePlot getVariable ["ownerPUID","010"]; _friends = _thePlot getVariable ["plotfriends", []]; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _fuid; if ( _playerUID in _allowed) then { // && _ownerID in _allowed // If u want that the object also belongs to someone on the plotpole. _player_deleteBuild = true; }; }else{ if(_ownerID == _playerUID)then{ _player_deleteBuild = true; }; }; }; };
  16. Like
    Ghostrider-GRG reacted to striker in [Release] Build Vectors - Rotate objects in Dayz Epoch (v2.34 P4L & non-P4L)   
    https://www.youtube.com/watch?v=gsa44JO02VQ&amp;amp;feature=youtu.be
     
    Credit Is Due Where Due
     

     

    Special Thanks to Raymix and his Script!
    Special Thanks to RimBlock and his 
    Special Thanks to Jossy and the future improvements I hope to see from him! Check out his work
    Special Thanks to KamikazeXeX for his changes to the AdminBuild for Snap Building Pro and his help!
     
    Notice
    These files have been tested and work on the maps Chernarus and Taviana.

    Installation
    Warning: This script is fairly untested and could cause unforeseen problems. USE AT YOUR OWN RISK!
    Please backup your database before you implement this encase something goes wrong!

    Newest Build Vectors Installation (version 4)
     
    Snap Build Pro Only
    Files & Install guide
    http://bitly.com/BuildVectorsSBPv4
     
    Plot 4 Life & Snap Build Pro
    Files:
    http://bitly.com/BuildVectorsV4

    Install Guide:
    https://github.com/strikerforce/DayzBuildVectors


    Legacy Installation (version 3)




    Road Map
    Keep menus up when clicked for better user experience Known Issues
    None Change Log




    Version 1:
    Released
    Version 1.1:
    Updated server_monitor.sqf to make sure the vector is the correct format.
    Version 2:
    Updated files for the snap building pro update v1.3.
    Added files for Adminbuild and Right Clickables.
    Version 3:
    Updated files for snap building pro v1.4.1
    Ghost preview supported (Thanks Jossy!)
    Version 4:
    Cleaned up some of the HORRENDOUS code :P
    Fixed issue with objects not snapping correctly to objects of a certain degree after restart. ;)
     
     
    Appreciate and support my work?
  17. Like
    Ghostrider-GRG got a reaction from rosska85 in [Release] 2.1 Plot Management - UPDATED Object Counter   
    Seems to work perfectly on a test server. I am running it with PP4L 2.26, SnapPro 1.4.1, and extra_rc build.
     
    Many thanks for a great add-on.
  18. Like
    Ghostrider-GRG reacted to Defay in [Release] Cen's Custom GUI for Epoch/Overpoch   
    Hey guys,
    so I saw that there are lot of people asking how to get an GUI looking like this:
     

     
    This is not my work, I'm only posting a tutorial on how to do it. This is from user Cen who was so nice to share it with us.
    All credits go to: Cen
     
    Tutorial:
     
    1.) First download these files and extract them in the root of your mission folder or mission.pbo.
    Download Link or Attached files.
     
    2.) Add this to the bottom of description.ext
    class RscPictureGUI { access = 0; type = 0; idc = -1; colorBackground[] = {0,0,0,0}; colorText[] = {0.38,0.63,0.26,0.75}; font = "TahomaB"; sizeEx = 0; lineSpacing = 0; text = ""; style = "0x30 + 0x100"; x = 0; y = 0; w = 0.2; h = 0.15; }; class RscTextGUIK { type = 0; idc = -1; style = 0x02; colorBackground[] = {0,0,0,0}; colorText[] = {1, 1, 1, 0.5}; //color[] = {1, 1, 1, 0.5}; font = "TahomaB"; size = 0.03; sizeEx = 0.03; x = 0; y = 0; w = 0.1; h = 0.2; }; #include "dayz_code\gui\ATD_Hud.h" 3.) Add this line to a custom compiles.sqf or overwrite the path in the existing compiles.sqf (depends how you call yours).
    I will not do a tutorial on how to add custom compiles as there are plenty of them already out here on this forum.
    player_updateGui = compile preprocessFileLineNumbers "dayz_code\compile\player_updateGui.sqf"; 4.) Edit ATD_Hud.h to your liking.
     
    And that should be it! If you have any questions or problems with it, please post down below and I'll try to get back to you as soon as possible or send me a PM.
    Let me know how I did for my first tutorial and thanks again to Cen for the HUD and letting me post a tutorial on this.
    ATD-HUD-FILES.zip
  19. Like
    Ghostrider-GRG reacted to WGC GeekGarage in [How To/Update] Build Snap with Right Click custom build, admin fast build + upgrade Version 1.6.5 IMPORTANT UPDATE: extra_rc   
    By request I have updated the player_build file for snapping so it will work with admin fast build (not remove) and right click custom build
     
    Always do a backup of your own player_build.sqf before going further!
     
    I do NOT take credit for anything other than the changes to the file. The majority of the script was done by Maca134 and OtterNas3 and Epoch Dev Team
     
    Requirements:
    - Install Maca134's right click script - http://epochservers.com/viewtopic.php?f=14&t=13
    - Install Build Snap Extended - 
     
     
    Now to the update
    Download this SQF file and replace the player_build.sqf in your Mission PBO\custom\snap_build folder:
    http://www.wreckinggames.net/download/player_build.sqf
     
    in your variables.sqf add this line
    WG_adminBuild = ["123456789","987654321"];  near the top just below
    disableSerialization; add player UID's to this array (change the example UID's) for those players who should have fast build
     
     
    Here is an example of the extra_rc.hpp, i have used the ruby as a test inventory item
    class ExtraRc { class ItemRuby { class menuItem1 { text = "Sandbag Tower"; script = "[""Land_Fort_Watchtower_EP1"",[""ItemToolbox"",""ItemHatchet_DZE""],[[""ItemRuby"", 1],[""PartGeneric"", 1]],[0,6.5,2.5]] execVM ""custom\snap_build\player_build.sqf"";"; }; }; }; Here is how the array works:
    script = "[""Land_Fort_Watchtower_EP1"",[""ItemToolbox"",""ItemHatchet_DZE""],[[""ItemRuby"", 1],[""PartGeneric"", 1]],[0,6,2.5]] execVM ""custom\snap_build\player_build.sqf"";";
     
    ""Land_Fort_Watchtower_EP1"" is the object you want to build
     
    [""ItemToolbox"",""ItemHatchet_DZE""] is the toolbelt items needed to build the object
     
    [[""ItemRuby"", 1],[""PartGeneric"", 1]] List of items needed to build construction. Only have one of each item name and then set the number to how many of that item. If only a single item the array should look like this [[""PartGeneric"", 1]]
     
    [0,6,2.5] is the item offset from your character. First number is Left/Right offset, second number is front/back offset, last number is Up/Down offset. Remember that comma is the seperator between the number and period is decimal seperator!
     
    also remember the double quotes are VERY important around class names!
     
    To be able to remove custom items as an owner only this is how you would go about it:
    In your variables.sqf i would recommend near dayz_allowedObjects create a new public array containing the objects you would be able to remove i call mine 
    WG_OwnerRemove =[];  insert any classname you want from the custom build system.
     
    in the custom fn_selfAction.sqf find
    _isModular = _cursorTarget isKindOf "ModularItems";  and change it to 
    _isModular = (_cursorTarget isKindOf "ModularItems") or ((typeOf _cursorTarget) in WG_OwnerRemove); remember to add your custom objects in "dayz_allowedObjects" and "DZE_maintainClasses" in your variables.sqf any object added to "DZE_isRemovable" every one have a chance to remove!
     
    Remember to share any objects that you might add so we all don't need to sit and create offsets for the same items and please only for items that you cannot already build in Epoch system
    http://dayzepoch.com/wiki/index.php?title=Modular_Building_System
    http://dayzepoch.com/wiki/index.php?title=Crafting_System
     
    ________________________________________________________________
     
    Now to the admin fast upgrade, download the following file
    http://www.wreckinggames.net/download/player_upgrade.sqf
    Now just redirect in your fn_selfaction.sqf to the new player_upgrade.sqf where the current player_upgrade.sqf is being called
     
    This requires that you have "WG_adminBuild" in your variables.sqf!
     
    The reason why i added fast build and upgrade for admins is that I suck at using the 3D map editor, but wanted to build some event houses here and there on the map, so i use this fast build to do it. Just know that i think that admin fast build should not be misused by admins in any way just because you don't like to wait, if you play with your players, do it fully legit or you are a coward.
    ________________________________________________________________
     
    To be able to remove non-target able objects you need to copy object_removeNet.sqf from dayz_code\compile and put it into your mission file.
    Then in compiles.sqf you need to redirect it to your mission file and then open it and add the item to the array with the nets.
    Now when standing on heli pad you can right click your toolbox and use the remove net option and it will remove the heli pad
    ________________________________________________________________
     
    I'm hosting the files myself so it won't get deleted by accident
     
    If you like my small update please visit my servers :) all info on www.wreckinggames.net
     
    - GeekGarage
  20. Like
    Ghostrider-GRG reacted to Axe Cop in Elevator Script for Players and Vehicles [WIP/Prototype]   
    I had an idea about doing an elevator script to extend the base building a little or just for some fun with ArmA/Epoch! :D
     
    Here is a video of the current prototype: (and don't laugh I got stuck after I fell from the roof  :P)

    Just recorded another video to show how to call an elevator, I've placed 4 stops around the house, looks kinda funny yeah :D

    If anyone is wondering, I use the preview version of the metal floor to display the stop points of the elevator.. some item has to be present so you can call the elevator there and the positions get saved to the database. This item can be changed in the config but the preview items have no collisions so you can just travel through it and it's easy to see where the elevator can stop.
     
    Everything is saved to the database without any need to modify the server files or database structure. It only updates the "CharacterID" field in the "object_data" table like safes or locked door also do in Epoch, I don't want to bore you with the technical details but I encoded the elevator and stop point ID's in an 8 digit long code, always starting with "6976" (that is ASCII code for "EL" :P), the next 3 digits are the elevator ID and the last the elevator stop ID. Meaning you can have up to 10 stops per elevator (0-9) for now. It looks like this (without the "-"), just in case you want to find an elevator in the database or whatever.
    ID 8 digits: EL-ID-STID = 6976-###-# e.g the ID's of an elevator with 2 additional stop points: 69760010 -> 69760011 -> 69760012
     
    The elevator can be build similar to the in-place upgrade system from Epoch, so just look at a metal floor (item can also be changed in the config) and you will get an option "Upgrade to Elevator" and "Upgrade to Elevator Stop", the elevator stop can only be build if there is an elevator in range (max. range for the elevator to travel can be changed, default 25m), you have to select an elevator first (the select action will be available if you look at an elevator, also new built elevator are selected by default).
    Once you have built an elevator with at least 1 stop point you can just look at it and select "Activate Elevator: Next Stop" or "Activate Elevator: Previous Stop", it will then find and move to the next/previous stop. If there is no stop in range you get a message and nothing happens, the menu could be hidden if there is no next stop for the elevator but in the first version the actions are always shown.
    You can also call the elevator at any stop point, it will travel along the way, stopping at every stop point and wait there (default 5 sec. can be changed in the config).
     
    Installation and configuration
    Ok now to the installation and configuration of the elevator script. The script is only client side, so very easy to add to your mission file!
    You can get the current scripts here: https://github.com/vos/dayz/tree/master/elevator just download the whole folder and extract it to your mission file.
    To enable the script on your server add this line to your init.sqf at the end of the block "if (!isDedicated) then {" (so just above the next "};" should be fine):
    ["elevator"] execVM "elevator\elevator_init.sqf"; Assuming your have the elevator folder with the scripts in your mission root, the only parameter of the script "elevator" is the folder relative to your mission file, it's needed to load the other scripts from that folder. You can change it to "scripts\elevator" if your put the elevator-folder there for example.
     
    That is all you have to do to install the elevator script on your server, there are some config variables you can change, take a look at the file "elevator_init.sqf" where it says "global variables", you can change the values there, but I would suggest changing it in your init.sqf like the Epoch settings, e.g.:
    ELE_MaxRange = 100; // maximum range the elevator can travel / stop points can be built (in meter) ELE_Speed = 5; // speed of the elevator (meters per second) ELE_StopWaitTime = 0; // disable the wait time if you call the elevator ... ["elevator"] execVM "elevator\elevator_init.sqf"; Added building requirements and upgrade animation to build the elevator and elevator stops. Default requirements are:
    ELE_RequiredBuildTools = ["ItemToolbox", "ItemCrowbar"]; // required tools for building an elevator and elevator stop ELE_RequiredBuildItems = [["PartGeneric",4], "PartEngine", "ItemGenerator", "ItemJerrycan"]; // required items to build an elevator ELE_RequiredBuildStopItems = [["PartGeneric",4]]; // required items to build an elevator stop You will get the default messages from Epoch if you are missing the tools or items.
     
    There are no access restrictions yet! Any player can built or use an elevator with this version, so keep that in mind if you want to use it on a live server. I already have some ideas to use the default car keys to use an elevator, that should work.. unless your have some better ideas for access control? :)
     
    Just one more thing, as I use the "MetalFloor_Preview_DZ" for the elevator stop by default, if you want to keep it like that you have to add that class to your allowed objects in Epoch, otherwise Epoch will delete it right after you upgrade a metal floor to a stop point. To do that the class needs to be added to the file "dayz_code\init\variables.sqf", at line 466 there is a list "dayz_allowedObjects", just add "MetalFloor_Preview_DZ" to that list and copy the file to your mission folder as usual (the file is referenced in the init.sqf). if you don't want to do that just replace the stop class with this config variable:
    ELE_StopClass = "MetalFloor_Preview_DZ"; Replace the classname with whatever you like, I didn't test any other but the elevator will just travel there and you can call the elevator with looking at that object.
     
    Remember this is still work in progress, there might be bugs and maybe the elevator ID gets changed so already built elevators might not work after an update, but you can already play around with the script and tell me what you think, Ideas are welcome... :)
  21. Like
    Ghostrider-GRG reacted to rosska85 in [RELEASE] One click currency combine from inventory   
    Just a very simple little addition which I mashed up from the Epoch Change script. One of the biggest annoyances I found with the Epoch currency system was how long it took to combine it all into nice neat piles for storing away, so this lets you do it in one click without having to travel all the way to a trader. 
     
    Tested with 1.0.5.1, instructions are provided for clean Epoch and modded Epoch.
     
    Feature:
    Simply adds a right click menu option to all currency in your inventory which lets you 'combine' all of your currency to the highest denomination. Saves so much time and no annoying medic animation to boot.  Download Link
     
    Installation instructions can be found on my GitHub.
     
    Hopefully the instructions are ok, I put this together on my server a week or two ago and I had to try and remember exactly what parts were needed haha. 
     
    If you're running mudzereli's Deploy Anything, see
     
    As requested, a video of it in action.

  22. Like
    Ghostrider-GRG reacted to hellraver in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    Hi Guys!

    I have a new fix for the duping Problem.
    In this Variant does not must to click on "Exit" it.
    The script will now exit properly when you click on the right mouse button.
     

    /***********************************/ /* Vehicle Key Changer v1.4.1 */ /* Written by OtterNas3 */ /* January, 11, 2014 */ /* Last update: 01/09/2014 */ /* Edited: hellraver */ /***********************************/ /* Setup the private variables */ private ["_locationPlayer","_magazinesPlayer","_max","_j","_actionArray","_targetVehicle","_targetVehicleID","_targetVehicleUID","_playerKeys","_playerKeysDisplayName","_targetVehicleKeyName","_itemKeyName","_targetVehicleClassname","_targetVehiclePos","_targetVehicleDir","_Price","_claimingPrice","_timeout"]; /* Remove the Action Menu entry */ player removeAction s_player_copyToKey; s_player_copyToKey = 0; player removeAction s_player_claimVehicle; s_player_claimVehicle = 0; /* Get the array and setup the variables */ _actionArray = _this select 3; _targetVehicle = _actionArray select 0; _targetVehicleID = _targetVehicle getVariable ["ObjectID","0"]; _targetVehicleUID = _targetVehicle getVariable ["ObjectUID","0"]; /* Check if the Vehicle is in the Database, if false exit */ if (_targetVehicleID == "0" && _targetVehicleUID == "0") exitWith {cutText ["Sorry but\nthis Vehicle does not support\nKeychange/Claiming!","PLAIN",0];s_player_copyToKey = -1;s_player_claimVehicle = -1;}; /* Setup more variables */ _playerKeys = _actionArray select 1; _playerKeysDisplayName = _actionArray select 3; _targetVehicleKeyName = _actionArray select 4; _itemKeyName = _actionArray select 5; _Price = _actionArray select 6; _claimingPrice = _actionArray select 7; _targetVehicleClassname = typeOf _targetVehicle; _targetVehiclePos = getPosATL _targetVehicle; _targetVehicleDir = getDir _targetVehicle; /* Just in case it is a just bought vehicle and does not yet have a ObjectUID variable set */ if (_targetVehicleUID == "0") then { _targetVehicleUID = ""; { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _targetVehicleUID = _targetVehicleUID + str(round(_x)); } forEach _targetVehiclePos; _targetVehicleUID = _targetVehicleUID + str(round(_targetVehicleDir + time)); _targetVehicle setVariable["ObjectUID",_targetVehicleUID,true]; }; /* Setup the Key Names list to select from */ keyNameList = []; for "_i" from 0 to (count _playerKeysDisplayName) -1 do { keyNameList set [(count keyNameList), _playerKeysDisplayName select _i]; }; /* Setup the Key Numbers list to select from */ keyNumberList = []; for "_i" from 0 to (count _playerKeys) -1 do { keyNumberList set [(count keyNumberList), _playerKeys select _i]; }; /* Resetting menu variables*/ keyNameSelect = ""; exitscript = true; snext = false; /* Creating the menu */ copyMenu = { private ["_keyMenu","_keyArray"]; _keyMenu = [["",true], ["Select the new Key:", [-1], "", -5, [["expression", ""]], "1", "0"]]; for "_i" from (_this select 0) to (_this select 1) do { _keyArray = [format['%1', keyNameList select (_i)], [_i - (_this select 0) + 2], "", -5, [["expression", format ["keyNameSelect = keyNameList select %1; keyNumberSelect = keyNumberList select %1", _i]]], "1", "1"]; _keyMenu set [_i + 2, _keyArray]; }; _keyMenu set [(_this select 1) + 2, ["", [-1], "", -5, [["expression", ""]], "1", "0"]]; if (count keyNameList > (_this select 1)) then { _keyMenu set [(_this select 1) + 3, ["Next", [12], "", -5, [["expression", "snext = true;"]], "1", "1"]]; } else { _keyMenu set [(_this select 1) + 3, ["", [-1], "", -5, [["expression", ""]], "1", "0"]]; }; _keyMenu set [(_this select 1) + 4, ["Exit", [13], "", -5, [["expression", "keyNameSelect = 'exitscript';"]], "1", "1"]]; showCommandingMenu "#USER:_keyMenu"; }; /* Wait for the player to select a Key from the list */ _j = 0; _max = 10; _locationPlayer = player modeltoworld [0,0,0]; if (_max > 9) then {_max = 10;}; while {keyNameSelect == ""} do { [_j, (_j + _max) min (count keyNameList)] call copyMenu; _j = _j + _max; waitUntil {keyNameSelect != "" || snext || player distance _locationPlayer > 0.2}; if (player distance _locationPlayer > 0.2) then { breakOut "exit"; }; snext = false; }; /* Player selected a Key, lets make the Vehicle update call */ if (keyNameSelect != "exitscript") then { /* Check again for the needed price or claiming price and remove em from the players inventory */ _magazinesPlayer = magazines player; if (_Price != "0") then { /* Player still has the costs in hi inventory */ if (_Price in _magazinesPlayer) then { [player, _Price, 1] call BIS_fnc_invRemove; systemChat (format["Keychange costs a %1, thanks for your Payment!", _Price]); /* Player doesn't have the costs anymore, tried to trick the system? */ } else { systemChat (format["Keychange costs a %1, you had it and tried to trick the system - Keychange for this Vehicle disabled!", _Price]); /* This disables the Keychange ability for this vehicle JUST for this Player */ /* However he can relog and try again but it is a little punishment for trying to trick it */ _targetVehicle setVariable ["VKC_disabled", 1]; s_player_copyToKey = -1; s_player_claimVehicle = -1; breakOut "exit"; }; }; if (_claimingPrice != "0") then { /* Player still has the costs in hi inventory */ if (_claimingPrice in _magazinesPlayer) then { [player, _claimingPrice, 1] call BIS_fnc_invRemove; systemChat (format["Claiming Vehicle costs a %1, thanks for your Payment!", _claimingPrice]); /* Player doesn't have the costs anymore, tried to trick the system? */ } else { systemChat (format["Claiming Vehicle costs a %1, you had it and tried to trick the system - Claiming for this Vehicle disabled!", Price]); /* This disables the Claiming ability for this vehicle JUST for this Player */ /* However he can relog and try again but it is a little punishment for trying to trick it */ _targetVehicle setVariable ["VKC_claiming_disabled", 1]; s_player_copyToKey = -1; s_player_claimVehicle = -1; breakOut "exit"; }; }; /* We got the Money lets do our Job */ /* Lock the vehicle */ _targetVehicle setVehicleLock "LOCKED"; /* The super duper OneForAllAnimation... */ player playActionNow "Medic"; /* Remove the Key from the Toolbelt of the player and put it in the Backpack - No Backpack and the Key gets lost */ if (_itemKeyName != "0") then { if (!isNull (unitBackpack player)) then { [player, _itemKeyName, 1] call BIS_fnc_invRemove; (unitBackpack (vehicle player)) addWeaponCargoGlobal [_itemKeyName, 1]; systemChat (format["%1 has been moved to your Backpack", _targetVehicleKeyName]); }; }; /* This calls the custom update function which we put it in server_updateObject.sqf */ PVDZE_veh_Update = [_targetVehicle, "vehiclekey", player, _targetVehicleClassname, keyNumberSelect, keyNameSelect, _targetVehicleID, _targetVehicleUID]; publicVariableServer "PVDZE_veh_Update"; /* Wait for success or timeout */ _timeout = 20; while {_timeout > 0 && isNil "PVDZE_vkc_Success"} do { if (_Price != "0") then { cutText["~~ Performing Keychange ~~\n~~ Please wait ~~","PLAIN",0.5]; }; if (_claimingPrice != "0") then { cutText["~~ Performing Claim ~~\n~~ Please wait ~~","PLAIN",0.5]; }; sleep 1; _timeout = _timeout - 1; }; /* Inform the player about the success and tell him to check the Key */ if (!isNil "PVDZE_vkc_Success") then { if (_Price != "0") then { cutText["~~ Vehicle Keychange - SUCCESS ~~","PLAIN",1]; systemChat (format["Changed Vehicle Key to %1", keyNameSelect]); systemChat (format["Please check Vehicle function with %1 before you throw away %2!", keyNameSelect, _targetVehicleKeyName]); }; if (_claimingPrice != "0") then { cutText["~~ Vehicle Claiming - SUCCESS ~~","PLAIN",1]; systemChat (format["You claimed this Vehicle with: %1", keyNameSelect]); }; PVDZE_vkc_Success = nil; /* This updates the Vehicle as it is now, position, gear, damage, fuel */ /* Should prevent the "backporting" some dudes reported. */ /* Just fyi i never had that but just in case... */ [nil,nil,nil,_targetVehicle] execVM "\z\addons\dayz_code\actions\forcesave.sqf"; /* Something went wrong, inform the player and refund the costs */ } else { if (_Price != "0") then { cutText["~~ Vehicle Keychange - FAIL ~~","PLAIN",1]; systemChat (format["Sorry something went wrong", keyNameSelect]); systemChat (format["Please try again. If it keeps failing, please contact a Admin!", keyNameSelect, _targetVehicleKeyName]); [player,_Price] call BIS_fnc_invAdd; systemChat (format["Refunded %1",_Price]); }; if (_claimingPrice != "0") then { cutText["~~ Vehicle Claiming - FAIL ~~","PLAIN",1]; systemChat ("Sorry something went wrong"); systemChat ("Please try again. If it keeps failing, please contact a Admin!"); [player,_claimingPrice] call BIS_fnc_invAdd; systemChat (format["Refunded %1",_claimingPrice]); }; }; }; /* Reset the action menu variables for a new run */ s_player_copyToKey = -1; s_player_claimVehicle = -1; /**************************************/ /* That's it, hope you enjoy this Mod */ /* */ /* Yours sincerly, */ /* Otter */ /**************************************/ Here the final Version and new Release as attached files which solves the problem with duping :-)
    Greets

    hellraver
    VehicleKeyChanger_v1.4.1.zip
  23. Like
    Ghostrider-GRG reacted to SpearMintTrooper in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    Cheers hellraver will test this shortly :-)
  24. Like
    Ghostrider-GRG reacted to BetterDeadThanZed in [Release] 2.1 Plot Management - UPDATED Object Counter   
    Once this is sorted out and bug free, I think it would make an excellent addition to Epoch as an included feature!
  25. Like
    Ghostrider-GRG reacted to Zupa in [Release] 2.1 Plot Management - UPDATED Object Counter   
    Plot Management 2.1 With Object Counter
     


    By Zupa & rosska85 


    Explanation
     
    This scripts adds a dialog to the plotpole where you can add people form the surroundings to your plotpole. They will be able to build for ALWAYS in the radius of that plotpole untill he gets removed from the plotpole. Everyone on the plot can "Manage" the plot. Owner will always be the highest power on the plote.


    If you dont use plotForLife mod and you add yourself to the plot, you will alwyas be able to build even after you die.


    Add yourself in admin list (fn selfactions section), so admin can manage all plots.


    Technical


    The people on the plotpole gets saved to the DB in the gear variable of the plotpole. The friends are in the plotfriends variable.
    [["46446465","Zupa],["456749879","MyLonelyFriend"]


    Maintain Version:


    You can use the maintain version with Default of SingleCurrency version of Epoch. This will allow you to maintain the area in your plot management menu!
    Show the plot area with a fancy dome made by Zero Remorse's Scripter! 
    Preview any cost before it gets spent!


    Credits


    rosska85 : His people saving on the plotpole gear field! Maca: The idea and code inspiration for this public mod Zero Remorse: Great Dome to show plot area.

    Screenshot


    Default Version:




     
    NEW Maintain version:
     



     Installation
     
     

    Files needed:


    https://github.com/DevZupa/PlotManagement


    Download it with the zip button on right side.


     
    Installation Instructions are on the github readme's


    MAINTAIN VERSION 2.1 !:


    Which files are updated:


    plotObjects.sqf (new) initPlotManagement.sqf (udpated) plotManagement.hpp add extra line in compiles.sqf change 1 number in player_build.sqf





    Same as the default but also add
    MaintainPlot = compile preprocessFileLineNumbers "zupa\plotManagement\maintain_area.sqf"; PlotPreview = compile preprocessFileLineNumbers "zupa\plotManagement\plotToggleMarkers.sqf"; PlotObjects = compile preprocessFileLineNumbers "zupa\plotManagement\plotObjects.sqf"; // NEW to your compiles.sqf  after
    if (!isDedicated) then { Now default max range is 30m to check if there are too many objects in one spot. 
    Lets change that to the plotRadius, so my plot menu can show u how many objects ( that can be maintain) are still able to be build.
     
    in player_build.sqf 
     
    look in a IF for:

    nearObjects ["All",30]change that to
    nearObjects ["All",DZE_PlotPole select 0]To change maintani price ( for default very obvious in maintain_area.sqf). for single currency


    change the 1 to any price you want per object.
    _theCost = _count * 1;For example
    _theCost = _count * 150; // 150 coins per object. INFINISTAR:


    Add the following number to the dialogs array:
    711194 AND


    Add
    "PlotManagement" to 
    _cMenu = You've succesfull have plotManagement






    NEW Update 1.1:


    Github updated with file:
    plotNearbyHumans  - ALLPLAYERS.sqf


    Rename to:
    plotNearbyHumans.sqf (overwrite default)


    IF YOU WANT ALL PLAYERS LISTED ON THE LEFT


    New Update 2.0:


    Fixed all players showing in list Added maintain area/ preview area cost/ preview area (in a dome)

    IF you have single currency user the maintain_areaSC as maintain_area ( rename it and delete the other one).


    Important info:
×
×
  • Create New...