Jump to content

Ghostrider-GRG

Member
  • Posts

    952
  • Joined

  • Last visited

  • Days Won

    56

Reputation Activity

  1. Like
    Ghostrider-GRG reacted to OtterNas3 in [RELEASE] VASP - Vehicle and Skin preview on Traders v1.2 (Updated 06/18/2014)   
    Hey folks,
     
    some time ago i pushed something to the public, but here is next!
     
     
    "Damn which Truck was the open Camouflage one?"
    "Bah cant remember which of the Vehicles holds the most amount of Magazines and Weapons..."
    "How many Players can Drive in XYZ Vehicle?"
    "How fast can that Vehicle go?"
     
    "What the hell a 'Donald' skin look like?"
    "'Rocker 1 2 3 whats the difference?"
     
    Ever had such questions?
     
     
    Here you go - VASP - Vehicle and Skin Preview
     
     
    This little Mod let you Preview any Vehicle or Skin in the TraderMenu.
    Vehicles will show additional Infos like:
    Max Speed Max Seats Max Cargo Weapons Max Cargo Magazines Max Cargo Backpacks Max Fuel Max Armor All stuff is totally client side spawned and will not be visible to any other Player on Server!
     
    The Player clicks in the Tradermenu on a Vehicle or a Skin and he will get a hint message to press F5 for a preview of it.
     
    While in preview, you can use these Hotkeys:
    Zoom in/out:       Arrowkeys up/down
    Rotate left/right: Arrowkeys left/right
    Close preview:   F5
     
    After preview the Tradermenu will open again on the same spot the Player left it for the preview.
    Just hit Buy and the last previewed item get bought.
     
    Easy as Pie.

     
    Demo Video
      http://youtu.be/KN8MAEpTC8I
     
    Download:
    https://www.dropbox.com/s/a2ziauc6rudqk97/VASP_v1.2.zip
     
    Install instructions:
    1. Download und unzip VASP_v1.2.zip
    2. unpbo MPMissions\YOURMISSIONNAME.pbo (If your hoster has just folders you can skip this obviously ^^)
    3. Copy the custom folder from unziped VASP_v1.2.zip to MPMissions\YOURMISSIONNAME\
    4. open MPMissions\YOURMISSIONNAME\init.sqf
     
    Find this block:
    if (!isDedicated) then { 0 fadeSound 0; waitUntil {!isNil "dayz_loadScreenMsg"}; dayz_loadScreenMsg = (localize "STR_AUTHENTICATING"); _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; }; And insert this line above the last closing bracket };
           _nil = [] execVM "custom\VASP\VASP_init.sqf"; If you dont have already a custom pulicEH.sqf continue on 5a) else continue on 5b)
     
    5a)
    Still in the init.sqf Find this line:
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf"; and replace with:
    call compile preprocessFileLineNumbers "custom\VASP\publicEH.sqf"; 5b)
    open your custom publicEH.sqf and find this line:

    "PVDZE_plr_SetDate" addPublicVariableEventHandler {setDate (_this select 1);}; and replace with:
    "PVDZE_plr_SetDate" addPublicVariableEventHandler {if (!(player getVariable["Preview",false])) then {setDate (_this select 1);};}; If you dont have already a custom compiles.sqf continue on 6a) else continue on 6b)
     
    6a)
    Still in the init.sqf Find this line:
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf"; and replace with:
    call compile preprocessFileLineNumbers "custom\VASP\compiles.sqf";                //Compile regular functions 6b)
    Open your custom compiles.sqf and find this block:

    // trader menu code if (DZE_ConfigTrader) then { call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_traderMenuConfig.sqf"; }else{ call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_traderMenuHive.sqf"; }; and replace with:
    // trader menu code if (DZE_ConfigTrader) then { call compile preprocessFileLineNumbers "custom\VASP\player_traderMenuConfig.sqf"; }else{ call compile preprocessFileLineNumbers "custom\VASP\player_traderMenuHive.sqf"; }; Find this line:
    fnc_usec_selfActions = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_selfActions.sqf"; //Checks which actions for self and replace with:
    fnc_usec_selfActions = compile preprocessFileLineNumbers "custom\VASP\fn_selfActions.sqf"; //Checks which actions for self If you already use a custom fn_selfActions.sqf open it and find this line:
    _buy = player addAction [localize "STR_EPOCH_PLAYER_289", "\z\addons\dayz_code\actions\show_dialog.sqf",(_traderMenu select 0), 999, true, false, "",""]; and add ABOVE:
    LastTraderMenu = (_traderMenu select 0); 7. repbo MPMissions\YOURMISSIONNAME\ - upload - restart server - enjoy!
     
     
    - Configuration -
    Open VASP_init.sqf and edit this block to your liking:
    /****************************/ /* Configuration */ /****************************/ /* Vehicle Preview on/off */ /* true = ON / false = OFF */ VASP_VehiclePreview = true; /****************************/ /* Skin Preview on/off */ /* true = ON / false = OFF */ VASP_SkinPreview = true; /****************************/ /* !!! DONT EDIT BELOW !!! */  
    - Additional Information -
     
    For those who have MORE then the standard Epoch Skins buyable at the Traders you would need to open MPMissions\YOURMISSIONNAME\custom\VASP\VASP_init.sqf
     
    and add them to this block:

        AllAllowedSkins = [         "Skin_Survivor2_DZ","Skin_SurvivorWcombat_DZ","Skin_SurvivorWdesert_DZ",         "Skin_SurvivorWurban_DZ","Skin_SurvivorWsequishaD_DZ","Skin_SurvivorWsequisha_DZ",         "Skin_SurvivorWpink_DZ","Skin_SurvivorW3_DZ","Skin_SurvivorW2_DZ",         "Skin_Bandit1_DZ","Skin_Bandit2_DZ","Skin_BanditW1_DZ",         "Skin_BanditW2_DZ","Skin_Soldier_Crew_PMC","Skin_Sniper1_DZ",         "Skin_Camo1_DZ","Skin_Soldier1_DZ","Skin_Rocket_DZ",         "Skin_Rocker1_DZ","Skin_Rocker2_DZ","Skin_Rocker3_DZ",         "Skin_Rocker4_DZ","Skin_Priest_DZ","Skin_Functionary1_EP1_DZ",         "Skin_GUE_Commander_DZ","Skin_Ins_Soldier_GL_DZ","Skin_Haris_Press_EP1_DZ",         "Skin_Pilot_EP1_DZ","Skin_RU_Policeman_DZ","Skin_Soldier_TL_PMC_DZ",         "Skin_Soldier_Sniper_PMC_DZ","Skin_Soldier_Bodyguard_AA12_PMC_DZ","Skin_Drake_Light_DZ",         "Skin_CZ_Special_Forces_GL_DES_EP1_DZ","Skin_TK_INS_Soldier_EP1_DZ","Skin_TK_INS_Warlord_EP1_DZ",         "Skin_FR_OHara_DZ","Skin_FR_Rodriguez_DZ","Skin_CZ_Soldier_Sniper_EP1_DZ",         "Skin_GUE_Soldier_MG_DZ","Skin_GUE_Soldier_Sniper_DZ","Skin_GUE_Soldier_Crew_DZ",         "Skin_GUE_Soldier_CO_DZ","Skin_GUE_Soldier_2_DZ","Skin_TK_Special_Forces_MG_EP1_DZ",         "Skin_TK_Soldier_Sniper_EP1_DZ","Skin_TK_Commander_EP1_DZ","Skin_RU_Soldier_Crew_DZ",         "Skin_INS_Lopotev_DZ","Skin_INS_Soldier_AR_DZ","Skin_INS_Soldier_CO_DZ",         "Skin_INS_Bardak_DZ","Skin_INS_Worker2_DZ"     ]; This is ONLY needed if you have custom Skins that are buyable on the Traders!
     

     
    ~ Have fun with it ~
     
    Questions - Bugs - Tell me!
     
    - If you like it - Like it - So I can count Downloads - I like that
     
    #####################################
    #                      Support my work                      #
    #                                    &                                #
    #                                Donate                           #
    #####################################

  2. Like
    Ghostrider-GRG reacted to N340 in Zombie Shield Generator   
    This idea was taken from Base Building. I wanted to get a working zombie shield to work that I could build without using the whole Base Building GUI. 
     
    I got it working fully today very easily but it did require some decent modifications so I thought I would post it for others to use. I personally made it so that others had to build parts to the shield and combine them to make it. This is just a script for you to use as you wish that makes it so that an item (default: CDF_WarfareBUAVterminal) will have scroll options to turn on and off the zombie shield. Configurable in he variables settings. 
     
    If you want any help making it work in a different way, just ask. I am happy to help.
     
    1. First Download the following: https://www.dropbox.com/s/9b0mwstlfz0g7k0/Zedshield.rar
     
    2. Put the shield folder in your mission pbo root folder
     
    3. Open your custom fn_selfactions.sqf and find:
    if(_player_deleteBuild) then { if (s_player_deleteBuild < 0) then { s_player_deleteBuild = player addAction [format[localize "str_actions_delete",_text], "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_deleteBuild; s_player_deleteBuild = -1; }; Then past this under it:
    _lever = cursorTarget; //Zombie Shield if (_cursorTarget isKindof TypeOfZShield) then { if (EnableZShield == 1) then { if (s_player_ZombieShield_on < 0) then { s_player_ZombieShield_on = player addAction [format[("<t color=""#FFF700"">" + ("Zombie Shield On") +"</t>"),_adminText], "shield\ZombieShield.sqf", [_lever, true], 6, true, true, "", ""]; }; if (s_player_ZombieShield_off < 0) then { s_player_ZombieShield_off = player addAction [format[("<t color=""#FFF700"">" + ("Zombie Shield Off") +"</t>"),_adminText], "shield\ZombieShield.sqf", [_lever, false], 6, false, true, "", ""]; }; } else { if (s_player_ZombieShield_on < 0) then { s_player_ZombieShield_on = player addAction [format[("<t color=""#FFF700"">" + ("Zombie Shields are disabled on this server") +"</t>"),_adminText], "", [], 6, false, true, "", ""]; }; player removeAction s_player_ZombieShield_off; s_player_ZombieShield_off = -1; }; } else { player removeAction s_player_ZombieShield_on; s_player_ZombieShield_on = -1; player removeAction s_player_ZombieShield_off; s_player_ZombieShield_off = -1; }; //End Shield 4. Then find this line in fn_selfactions.sqf
    if(DZE_AllowForceSave) then { //Allow player to force save if((_isVehicle or _isTent) and !_isMan) then { if (s_player_forceSave < 0) then { s_player_forceSave = player addAction [format[localize "str_actions_save",_text], "\z\addons\dayz_code\actions\forcesave.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { ***************Replace STUFF IN HERE }; }; Where I put *******************Replace STUFF IN HERE, delete everything there and add this in its place:
    s_player_ZombieShield_on = -1; player removeAction s_player_ZombieShield_off; s_player_ZombieShield_off = -1; player removeAction s_player_forceSave; s_player_forceSave = -1; 5. Open your custom variable.sqf and paste this at the bottom, this is also where you can customize all your settings.
    /**************************************************** Zombie Shield Generator Settings ****************************************************/ EnableZShield = 1; //Enable toggleable zombie shield generator/ 1 = Enabled // 0 = Disabled (If disabled, players can still build shield generators, they just wont do anything) TypeOfZShield = "CDF_WarfareBUAVterminal"; //Type of object used for Zombie Shield, included this only in case some maps have this object banned AllZShieldTypes = ["CDF_WarfareBUAVterminal"]; //DO NOT REMOVE ITEMS FROM THIS ARRAY, you can ADD an object class if you want a different building to be used as a Zombie Shield Generator! MaxZShields = 1; //Maximum number of zombie shield generators a player can be added to, default is 1 ZShieldRadius = 50; //Radius for zombie shield generator, default is 50 ZShieldClean = 0; //Delete Zombies when they enter active shield radius/ 1 = Enabled // 0 = Disabled (If disabled, zombies will be killed but not deleted, could lead to zombie loot farming) Close up, repack and done. Then any object CDF_WarfareBUAVterminal or anything you replace it with will then have a scroll option to turn a shield on and off. 
     
    I have tested this on my servers and works fine. If you have any complications please let me know and ill be happy to help.
     
    Here is a pre compiled Cherno mission PBO with a working zombie shield and the extra_RC.hpp included. You can build it with an Engine and 2 poles like you would any other object
    https://www.dropbox.com/s/gmibobakfec80za/ZHIELD.pbo
     
    Credit for the original code goes to the guys from original BB 1.2.
  3. Like
    Ghostrider-GRG reacted to RimBlock in [Release] - A Plot for life v2.5. Keep your buildables on death. Take plot ownership   
    Plot For Life v2.5 with Snap Pro v1.4.1 & Precise Base Building 1.0.4 (Built for Epoch 1.0.5.1)   Current Version Note: If you are also going to use other building mods (Vector build etc) then please check the other mods have been updated to work with v2.5 before installing.  If they have not then please use A Plot for Life v2.35 which can be downloaded from the links further down this post.   Dropbox: A Plot for Life v2.5 GitHub: A Plot for Life v2.5   V2.4 -> 2.5 upgrade.    1. Download and replace the following files in MPMissions\[Mapname]\Custom\Compile. fn_check_owner.sqf fn_find_plots.sqf 2. Download and merge (see the diffmerge tutorial links further down) the server files found in $SERVERHOME\custom (changes are fairly minimal).   That is it.   New features. Merged in Precise Base Building from his kind permission.  Please show your appreciation to him as well.
      Core Features. The whole system is is switchable between characterID and PlayerUID by setting a variable. All items built after the mod is installed with have the PlayerUID and the characterID stored for ownership checking (locked buildables will only have the PlayerUID stored as the characterID field is used for the lock code). Includes the 1.0.5.2. code to allow either SteamID or BIS PUID (written by icomrade). You can turn on the plot boundary from the plot pole and remove it.  Currently I am using the road cones with lights on top which are also visible at night.  They can be changed. Take Ownership is available from the plot pole to the plot poles owner and allows them to take ownership of all buildables in range excluding  locked storage (safes / lockboxes), tents, locked doors.  This can be changed as it is all controlled via variables.  The core idea is that this will align peoples bases to the new system for steamID storage on legacy bases.  It also means that raiders can raid a base, replace the plot pole, take ownership and not get full access to locked areas but not have 6 cycles to remove stuff etc after taking over.  Depending on the size of the base, number of objects etc this could put a bit of load on the server / DB.  It is also turn off or on-able via a variable so you can set it only to allow players to realign their bases and then disable the option. New function to check ownership or friendly status of a given object. Merged with Snap Pro and Modular build framework with permission from Raymix Please show you appreciation to Raymix as well). Uses the modular build system.
    New functions to reduce instances of common code in the building system.  Both are small and precompiled.
    fn_check_owner.sqf to check ownership and friendly status
    fn_find_plots to get all nearby plot poles and return a count and the nearest alive one (if one exists).
    Optimised code changing nearestobjects to nearEntities.
    Added delay in the Take Ownership function so the Hiveext / DB does not get spammed when taking ownership of large bases.
    Player_build.sqf is no longer used at all and had been removed from the distribution.
    Optimised code what has saved between 20k & 30k in the mission package size.
      Install Instructions are in the zip file (A Plot for Life v2.5).   Guides on how to use Diffmerge and how to integrate scripts together.   Please backup your databases and thoroughly test before putting live.   Report any bugs / suggestions in the thread.   Previous version 2.35 Dropbox: A Plot for Life v2.35 & Snap Pro (by Raymix) v1.4.1 GitHub (v2.35 stable): A Plot for Life v2.35 & Snap Pro (by Raymix) v1.4.1   Outstanding issues None reported. Next Version: 3.0
    Include a action menu (scroll wheel menu) for plot options and builder / owner management ()  
    Beta Testing
    As it seems theres no with an interest to do any beta testing I need to sweeten the deal.  Anyone who helps with beta testing will get access to boobytrapping doors 4 weeks before it is released publicly.  The 4 weeks will start from the v2.4 release date and will include any bug fixing period.  
     
    Boobytrapping Doors - If you have a hand grenade then you can upgrade a locked door to boobytrap it.  If the incorrect door code is entered then the hand grenade will be dropped at the position the player was when they boobytrapped the door (make sure you are on the correct side of the door when setting the trap  ;) ).
     
     
    Releases   Naming convention  

     
    Previous releases (Majors)
     


      Use and Distribution License details.   This mod is licensed under the DayZ Mod License Share Alike (DML) license.   Usage For people wishing to use the mod for their own servers, please use away.  If advertising the mod as a feature of your servers then a shoutout and a linkback to here would be appreciated but is not a requirement.   Distribution For people wishing to modify and distribute my code for this mod, the requirements are different. 1. You contact me and ask (common courtesy really). 2. You make it clear who the original creator is and provide a link to this thread.   Included mods. A Plot for Life v2.35 (Rimblock). <- is fine.
     
    Included mods.
    A Plot for Life
     
    "credits to each addon / script creator" <- is not.
     
    3. The person distributing the mod explicitly states that they are responsible for any issues with their modified version of the mod and not the original creator (i.e. me).
     
    4. Any other requirements under the  DayZ Mod License Share Alike (DML) license.
     
  4. Like
    Ghostrider-GRG reacted to f3cuk in [Release] Wicked AI 2.2.0   
    THIS VERSION WILL NOT WORK WITH DAYZ EPOCH 1.0.6.1 PLEASE USE THIS VERSION: https://github.com/ebayShopper/WICKED-AI
     
    WICKED AI 2.2.0
    Since I really like (read love) the Wicked AI missions and support for them has gone in the latest patches, I decided to dust off the old files and start making these 1.0.5+ compatible. Starting with a few minor bugfixes and some custom loadouts, but quickly turning into a proper redo with awesome help of the - very much alive - mod community!
    ---
    Error reporting
    Please use the form below for reporting errors. I will not reply on help requests that fail to do a proper problem report.
    [b][size=6](Problem title, e.g. Kill type missions sometimes fail to despawn)[/size][/b] [b]WAI Version[/b] (E.g. 2.1.4) [b]World:[/b] (E.g. Taviana 2.0) [b]Mods:[/b] (E.g. @Overpoch, @Origins, @Epoch1051,) [b]Installed add-ons[/b] (Especially the ones that spawn AI, E.g. DZMS, EMT, etc.) [b]Custom loot files[/b] Yes or No [b]Problem description[/b] Tell us your exact problem in as much details as possible [b]What i tried so far[/b] Tell us exactly what you have done to try and fix this problem [b]Config file[/b] [spoiler] -- paste config.sqf here --[/spoiler] [b]Server RPT[/b] [spoiler] -- paste arma2oaserver.RPT here --[/spoiler] ---
    Release 2.2.0
    Native Linux server support Multiple mission support Automatic ammo finder (no need to specify ammo in weaponarray - config.sqf) Option: Locked vehicles with keys randomly on AI Option: Friendly AI Added: Bandit Patrol mission And much more Version history
    06-06-2015 : Release 2.2.0 11-11-2014 : BETA release v3 (2.2.0) 11-11-2014 : BETA release v2 (2.2.0) 16-10-2014 : BETA release (2.2.0) 03-09-2014 : Minor bugfixes (2.1.4) 03-09-2014 : Minor bugfixes (2.1.3) 02-09-2014 : Minor bugfixes and improvements (2.1.2) 01-09-2014 : Minor bugfixes (2.1.1) 31-08-2014 : Release (2.1.0) 26-08-2014 : BETA release (2.1.0) 24-08-2014 : Minor bugfixes (2.0.5) 20-08-2014 : Minor bugfixes (2.0.4) 20-08-2014 : Minor bugfixes (2.0.3) 19-08-2014 : Minor bugfixes (2.0.2) 17-08-2014 : Minor bugfixes (2.0.1) 17-08-2014 : Major update to (2.0.0) 13-08-2014 : Added anti abuse options (1.9.3) 12-08-2014 : Normalization update (1.9.2) 12-08-2014 : Bugfix medi camp (1.9.1) 09-08-2014 : Major dynamic update (1.9.0) 03-08-2014 : Bugfix MV22 mission (1.8.2) 02-08-2014 : Restructured and code cleaned (1.8.1) Installation Instructions
    Download the latest release. Extract the downloaded folder to your desktop and open it Go to your server pbo and unpack it. Navigate to the new dayz_server folder and copy the WAI folder into this folder. Navigate to the system folder and open server_monitor.sqf Find this code at the bottom of the file: allowConnection = true; And past the following code above it: [] ExecVM "\z\addons\dayz_server\WAI\init.sqf"; Repack your server pbo. Optional Radio messages
    Note: These are on by default, change wai_radio_announce in config.sqf to false in order to disable them.
    Go to your mission pbo and unpack it. Open init.sqf Find:
    //[false,12] execVM "\z\addons\dayz_code\compile\local_lights_init.sqf"; Add below: _nil = [] execVM "custom\remote\remote.sqf"; Copy the remote_message folder into your custom folder, if you do not have this one yet simply create it. If you want to be able to switch the radio on or off go to step 5 (note: right click by maca required), else go to step 6 and both remove switch_on_off.sqf and radio.ogg from the remote folder. Open extra_hc.hpp Find:
    class ExtraRc { Add below: class ItemRadio { class switchOnOff { text = "Switch ON/OFF"; script = "execVM 'custom\remote\switch_on_off.sqf'"; }; }; Open description.ext Find:
    class DayZ_loadingScreen Add above class CfgSounds { sounds[] = { Radio_Message_Sound }; class Radio_Message_Sound { name = "Radio_Message_Sound"; sound[] = {custom\remote\radio.ogg,0.4,1}; titles[] = {}; }; }; Repack your mission pbo. Versioning
    For transparency into our release cycle and in striving to maintain backward compatibility, bootstrap is maintained under the Semantic Versioning guidelines. Sometimes we screw up, but we'll adhere to those rules whenever possible.
    Dev team
    Developer f3cuk Developer Jossy Linux support BangL Helping hand nerdalertdk Download
    Wicked AI 2.2.0
  5. Like
    Ghostrider-GRG reacted to PryMary in [Release] - A Plot for life v2.5. Keep your buildables on death. Take plot ownership   
    @RimBlock, funny you should ask! I merged it last night with the latest Snap_Pro but I also implemented the admin build etc to it also so don't have a "clean" version. Give me an hour or so and I will merge one quickly for everyone. I am having no issues with Snap_Pro or P4L and the server / client (me) are now using the new steam patch - 1.63.125548 - I have placed a plot pole - commited suicide - respawned - went back to plot pole (still there and tied to me) and showed the plot boundry and continued building with items snapping.
     
    If you want it all - P4L / Snap_Pro / Instant Admin Build / Instant Admin Upgrade - use this Player_Build.sqf: (Thanks go to @KamikazeXeX - For getting the admin insta-build working)
     



     
    As stated I will merge a player_build with the recent Snap_Pro and P4L and post an edit to this one so as to avoid confusion.
     
    EDIT:
     
    Well that was easier than I thought:
     



     
    For those not sure where to put this, it goes into the snap_pro directory in your custom folder (ONLY HAVE ONE PLAYER_BUILD FILE) then in your compiles.sqf point it to the snap_pro directory NOT PLOTFORLIFE (Sorry RimBlock).
     
     
    Regards,
     
    Pry
  6. Like
    Ghostrider-GRG reacted to KamikazeXeX in [How to/Update] Snap Build Pro W/ Admin Fast Build + Upgrade and Extra RC Building system   
    So, (prepare for a bit of reading) everyone has been posting in both raymix's thread and WGC GeekGarage's thread about whether Admin Fast Build/Upgrade can be included into Snap Build Pro, I decided I was going to look into the matter, it took me some time to get it worked out so i present to you, Snap Build Pro with Admin Instant Build/Upgrade.

    CHANGELOG:
     
    Update #9: Updated variant 2 + 3 to A Plot for life v2.34
     
    Update #8: Added new variant from variant 2 but now includes needed changes for build vectors.
     
    Update #7: Fixed 3 lines that caused objects to not snap to each other this occurred during the 1.4 to 1.4.1 update.
     
    Update #6: Removed ghostriders changes as it seems to cause a building already in progress loop as it did on earlier versions.
     
    Update #5: Updated Snap Build Pro to version 1.4 and merged in Ghostriders fixes, thanks for that broski!
     
    Update #4: Updated to A Plot For Life v2.2.6 and changed the build distance checks as castle walls were causing a cancelled building issue.
     
    Update #3: Updated Snap Build Pro to version 1.3.1.
     
    Update #2: Updated Snap Build Pro to version 1.3.
     
    Update #1: Updated distances so you can move up to 20 meters from where you started building on both versions and updated the the plot for life version to a plot for life v2.2.4.
    INSTALLATION:

    As I'm going to assume you all have Snap Build Pro installed already I will assume you already have a custom compiles, if you are yet to have installed Snap Build Pro, do so now and verify it works before trying this out, you will also need a custom variables file, again I'm not going to provide instructions on how to do this, there is plenty of information out there on how its done.  :P

    As I'm running A Plot for life and Indestructible items for 1.0.5.1 with my Snap Build pro the file bellow is so you can be lazy without making the adjustments and just swap it out with mine.
     
    Head to my github below and check for the version you wish to use.
      Use the SnapPro+A files if you want the plain version of Snap Build Pro with Admin Build only.

    Use the SnapPro+A+P4L+Inde files If you want the version of Snap Build Pro that has Admin Build, A Plot For Life and Indestructible items for 1.0.5.1.

    Use the SnapPro+A+P4L+Inde+BuildVect files If you want the version of Snap Build Pro that has Admin Build, A Plot For Life, Indestructible items for 1.0.5.1 and Build Vectors.
      https://github.com/KamikazeXeX/SnapPro-AdminBuild  
    Once you have verified that Snap Build Pro works, download whatever version of my files you need, if you wish to install different mods later I would recommend that you use the SnapPro+A set of files on Github, simply replace your current player_build.sqf with the one from the zip file.
    FAST UPGRADE
    Now, for fast upgrade you will need to go into your fn_selfActions.sqf and look for this
    s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "\z\addons\dayz_code\actions\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""]; and change to
    s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "PATH-TO-YOUR-CUSTOM-SCRIPTS\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""]; Replace PATH-TO-YOUR-CUSTOM-SCRIPTS with the path to the directory in which you will be storing your custom scripts, e.g "custom\scripts\player_upgrade.sqf".
     
    from there you need to go into your custom variables file and add this line
    WG_adminBuild = ["0","0","0"]; very near the top just below this line
    disableSerialization; Replace the 0's with your PlayerUID/SteamUID's for the players and admins that you want to have access to instant building.  :D

    REMOVING
    For your players to be able to remove the custom buildables they make you will need to do the following.
    Go into your custom variables again and find this line.
    dayz_allowedObjects = just below this line
    WG_OwnerRemove =[]; and insert any of the class names of items you want in the custom build system.

    Go back into your fn_selfActions.sqf and find
    _isModular = _cursorTarget isKindOf "ModularItems"; and change it to this
    _isModular = (_cursorTarget isKindOf "ModularItems") or ((typeOf _cursorTarget) in WG_OwnerRemove); you must remember to add your custom items to the "dayz_allowedObjects" and "DZE_maintainClasses" sections in your variables.sqf any object you add to "DZE_isRemovable" will be removable by anyone!

    That's it from me, from here you will want to go over to WGC GeekGarage's main post and read up on how to add the rest of the right click system and add the custom buildables in, here is a link to the original thread 

    Credits to WGC GeekGarage and raymix for the original scripts, Acmed for Indestructible items for 1.0.5.1, RimBlock for Plot for Life, OtterNas3 for the original snap building that was a backbone for this project, Maca134 for originally creating the SnapBuild concept Otter's is based off and also his Extra RC, striker for Build Vectors in variant 3 and lastly Nekuan for keeping on pushing me to get this going!

    I hope everyone enjoys this! If anyone needs help I will be available on my teamspeak @ ts.xexgaming.org and here on the forums! I will try to keep this updated and work out how to fix any bugs that you may come across! :D

    ~KamikazeXeX from XeXGaming


    Credits

     (OtterNas3)

     (WGC GeekGarage)

    (Achmed)

    (Rimblock)

    (RayMix)

    (Striker)
  7. Like
    Ghostrider-GRG reacted to MrTesla in [Tutorial] Disabling R3F Tow/Lift for Locked Vehicles   
    This will disable the functions of the R3F Artillery & Logistics addon (tow, lift, load in, and move) for vehicles that are locked.
     
    Requirements:
    -Something to unpack pbo files, such as PBO Manager.
    -Text editor (Notepad++ recommended)
     
    1. Unpack these files:
    -dayz_code.pbo from your @DayZ_Epoch folder in your Arma 2 OA directory
    -mission pbo
    -server pbo (dayz_server.pbo)
     
    2. Copy the "local_lockunlock.sqf" from "dayz_code\compile\" folder and the "compiles.sqf" from the "dayz_code\init\" folder and place them into your mission file. For this tutorial, they'll be placed in a folder call "Custom".
    NOTE: If you already have a custom "compiles.sqf" in your mission file (such as for self BB and other addons) you don't need to copy it over. Just use the one you already have and skip step 5.
     
    3. In the "local_lockunlock.sqf", change this section (and only this section):
    if (local _vehicle) then { if(_status) then { _vehicle setVehicleLock "LOCKED"; } else { _vehicle setVehicleLock "UNLOCKED"; }; }; to this:
    if (local _vehicle) then { if(_status) then { _vehicle setVehicleLock "LOCKED"; _vehicle setVariable ["R3F_LOG_disabled",true,true]; } else { _vehicle setVehicleLock "UNLOCKED"; _vehicle setVariable ["R3F_LOG_disabled",false,true]; }; }; 4. In "compiles.sqf", change the file path in this line to point to your edited "local_lockunlock.sqf":
    local_lockUnlock = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle So for this tutorial, it would be changed to this:
    local_lockUnlock = compile preprocessFileLineNumbers "Custom\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle 5. In your mission file's "init.sqf", change the file path in this line to point to your edited "compiles.sqf":
    call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf"; //Compile regular functions For this tutorial, it would be changed to this:
    call compile preprocessFileLineNumbers "Custom\compiles.sqf"; //Compile regular functions 6. Repack the mission file and upload it to your server.
     
    7. Open "server_publishVehicle2.sqf" in the "dayz_server\compile\" folder and "server_monitor.sqf" in the "dayz_server\system\" folder.
     
    8. In "server_publishVehicle2.sqf", after the 3rd line (_object setvehiclelock "locked";):
        if(!_donotusekey) then {         // Lock vehicle         _object setvehiclelock "locked";     }; add this line:
    _object setVariable ["R3F_LOG_disabled",true,true]; 9. Do the same thing in the "server_monitor.sqf" in this section:
    if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then { _object setvehiclelock "locked"; }; so it should look like this:
    if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then { _object setvehiclelock "locked"; _object setVariable ["R3F_LOG_disabled",true,true]; }; 10. Repack the server pbo and upload it to the server.
  8. Like
    Ghostrider-GRG reacted to Barra81 in [Release] ComboKeyChanger_cKc [Updated 1.2]   
    Do you ever want to change your door or safe key, here is the solution,
    just open your safe or door and click "Set new key".
    It will open the Epoch-ComboLock or KeypadUI, show you your old Key and after setting the new one, the actual key.
     
    Install is pretty easy, 
     
    In yourmissionfile.pbo, open "description.ext"
     
    add
    #include "ckc\ckc_defines.hpp" #include "ckc\ckc_ui.hpp" #include "ckc\ckc_SafeUI.hpp" at the very bottom of the "description.ext".
     
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
     
    In yourmissionfile.pbo, open "compiles.sqf"
     
    add
    ckc_button = compile preprocessFileLineNumbers "ckc\ckc_button.sqf"; ckc_upddoor = compile preprocessFileLineNumbers "ckc\ckc_upddoor.sqf"; ckc_updSafe = compile preprocessFileLineNumbers "ckc\ckc_updSafe.sqf"; below
    player_unlockDoor = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_unlockDoor.sqf"; ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
     
     
     
    In yourmissionfile.pbo, open "fn_selActions.sqf"
     
    add
    //Allow owner to change Door code if((_isDestructable || _cursorTarget isKindOf "Land_DZE_WoodDoorLocked_Base" || _cursorTarget isKindOf "CinderWallDoorLocked_DZ_Base") && (DZE_Lock_Door == _ownerID)) then { if ((s_player_lastTarget select 1) != _cursorTarget) then { if (s_player_ckc > 0) then { player removeAction s_player_ckc; s_player_ckc = -1; }; }; if (s_player_ckc < 0) then { s_player_lastTarget set [1,_cursorTarget]; s_player_ckc = player addaction["Set new Code", "ckc\ckc_startUI.sqf","",0,false,true,"", ""]; }; } else { player removeAction s_player_ckc; s_player_ckc = -1; }; //Allow owner to change vault code _unlockedVault = ["VaultStorage"]; if(typeOf(cursortarget) in _unlockedVault && _ownerID != "0" && (player distance _cursorTarget < 2)) then { if (s_player_Safe_ckc < 0) then { if ((typeOf(cursortarget) == "VaultStorage") &&(_ownerID == dayz_combination || _ownerID == dayz_playerUID) ) then { s_player_Safe_ckc = player addaction["Set new Code", "ckc\ckc_startSafeUI.sqf","",1,false,true,"", ""]; }; }; } else { player removeAction s_player_Safe_ckc; s_player_Safe_ckc = -1; }; ABOVE
    //Allow owner to pack vault Again in the "fn_selfActions.sqf"
     
    add
    player removeAction s_player_ckc; s_player_ckc = -1; player removeAction s_player_Safe_ckc; s_player_Safe_ckc = -1; just below
     
      player removeAction s_player_upgrade_build; s_player_upgrade_build = -1; player removeAction s_player_maint_build; s_player_maint_build = -1; player removeAction s_player_downgrade_build; s_player_downgrade_build = -1; finally copy the "ckc" Folder in the download file, to yourmissionfile.pbo main directory.
     
    Youre done ;)
     
    Tested with Epoch Vers. 1.0.5.1, but should work with older versions too.
     
     
      UPDATE since post #39 :
     
    - Fixed missing   ";" bug
     
    - "Set new Key" option no longer appears at the Lockbox
     
    - Safe updates to Database directly after setting a new Key
     
     
     
     
    UPDATE since post #55
     
    - fixed bug occuring when player want to "Set new Code" two times in a row at doors.   Thanks to Jossy for pointing it out ;)
     
    - fixed save to DB bug for Safes (randomly the inventory of the safes was not updated to the DB) ...safes are really save now :)
     
     
     
    For people who wanna just update from the old Version:
     
    DELETE the old "cKc" folder and replace it with the new one.
     
    Please replace the entrys in the "fn_selfactions.sqf" with the new ones, posted in the code spoiler above.
     
     
     
     
     
     
     
     
    Im sorry for any inconvenience... 
     
     
     
     
     
    ComboKeyChanger_CKC.zip
  9. Like
    Ghostrider-GRG reacted to OtterNas3 in [RELEASE] Vehicle Key Changer - For making Masterkey - V 1.4 (Updated 06/15/2014)   
    Just finished it and thought someone could like it...
    You have many, many (many, ...) Vehicles? You have many, many (many, ...) different Keys? Already need to attach a list with Key = Vehicle to your Monitor to keep track of em? Need 30 minutes to start driving because you dont have such a list? Frustrated? ALL OVER!
     
    This little script allows you and the Players on your Server to copy Vehicles, that you got the Key for, to another Key that's in your Inventory!
     
    Example:
    Car 1: Red Skoda - Red Key (1234)
    Car 2: Green Skoda - Green Key (4321)
     
    You need a Keymakers Kit!
    Put both keys in your Inventory, look at the Car 1 and select "Change Vehicle Key" from the action menu.
     
    You get a list with all Keys in your Inventory, to select from a menu. In this case the list would just be one: Green Key (4321)
    Not in the list is the Key for Car 1, so no Red Key (1234)
     
    Select the new Key you want to put the car on and: voila!
     
    You can throw away the unneeded Red Key (1234)
    The Old vehicle Key gets added to your Backpack
    Car 1 & Car 2 are both now on the Green Key (4321)
     
    You can allow players to "Claim" Vehicles that are dynamic spawned on the Map and does not yet need a Key.
    This is a option you can turn On/Off!
    You can set a price for claiming vehicles also.
     
    THIS DOES NOT HOWEVER INCLUDE MISSIONVEHICLES THAT ARE NOT SPAWNED CORRECTLY!
    IF YOU WANT TO BE ABLE TO CLAIM MISSIONVEHICLES, TELL THE MISSION DEVELOPER TO SETUP HIS SPAWNCODE FOR VEHICLES TO A CORRECT WAY!
     
    Changelog 1.4
    I changed some functions and implemented some small fixes mentioned by other users in this Thread.
    Specially for just bought vehicles and the "get not saved after driving" thing.
    This should also fix the duping for some of you, i never had it yet and cant reproduce. just made the call a bit different now.
     
     
    If it doesnt work as it should, gimme a shout.
     
    And for people that think this Mod is a total mess. Dont use it?
    It works on my Server for a loooooooooooooong time now without any errors!
     
     
     
    Demo Video
    http://www.youtube.com/watch?v=bEUmLrje_5o
     
     
    Like?
     
    DOWNLOAD:
    https://www.dropbox.com/s/mq0dvpzawtwmam8/VehicleKeyChanger_v1.4.zip
     
     Install Instructions:
    1. Download and unzip VehicleKeyChanger_v1.4.zip
    2. unpbo MPMissions\YOURMISSIONNAME.pbo
    3. copy the custom folder from the unziped VehicleKeyChanger_v1.4.zip to MPMissions\YOURMISSIONNAME\
    4. open MPMissions\YOURMISSIONNAME\init.sqf
     
    Find this block:
    if (!isDedicated) then { 0 fadeSound 0; waitUntil {!isNil "dayz_loadScreenMsg"}; dayz_loadScreenMsg = (localize "STR_AUTHENTICATING"); _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; }; And insert this line above the closing bracket };
    _nil = [] execVM "custom\VehicleKeyChanger\VehicleKeyChanger_init.sqf"; 5.
    Configuration:
    Edit custom\VehicleKeyChanger\VehicleKeyChanger_init.sqf
     
    Edit this block to your likings!

    ///////////////////////////////////////////////// ///////////////////////////////////////////////// // Edit these settings to fit your needs/likes // ///////////////////////////////////////////////// ///////////////////////////////////////////////// /// Claim Vehicles that does not yet need Key /// ///////// 0 = Not allowed | 1 = Allowed ///////// vkc_claiming = 0; ///////////////////////////////////////////////// //////// Claim Vehicles costs this Item ///////// /// Any Item can be used here, some examples: /// //// ItemTinBar, ItemSilverBar, ItemGoldBar, //// ////// ItemSilverBar10oz, ItemGoldBar10oz, ////// ///// ItemBriefcase20oz, ItemBriefcase100oz ///// //////// set to "0" to disable the costs //////// vkc_claimingPrice = "ItemGoldBar10oz"; ///////////////////////////////////////////////// ////////// Change Key costs this Item /////////// ////////////// see above examples /////////////// //////// set to "0" to disable the costs //////// vkc_Price = "ItemSilverBar"; ///////////////////////////////////////////////// /////// Need KeyKit to use this function //////// ////////// 0 = Not needed | 1 = Needed ////////// vkc_needKeykit = 1; ///////////////////////////////////////////////// ///////////////////////////////////////////////// /////////////// DONT EDIT BELOW ! /////////////// ///////////////////////////////////////////////// 5. repbo MPMissions\YOURMISSIONNAME\
    - upload it to your server -
     
    6. unpbo @DayZ_Epoch_Server\addons\dayz_server.pbo
     
    7 copy server_updateObject.sqf from your unziped VehicleKeyChanger_v1.4.zip to @DayZ_Epoch_Server\addons\dayz_server\compile\  and overwrite the existing one. (This just adds a function for this mod nothing else changed)
    If you already have a custom server_updateObjects.sqf you need to compare my file with yours and make the changes yourself!
     
    8. repbo @DayZ_Epoch_Server\addons\dayz_server\
    - upload it to your server -
     
    9 copy this file to your Servers BattlEye filters folder:
    publicvariableval.txt
     
    FYI: INFISTAR AdminCheat, ummm sorry meant AntiCheat, users!
    Cause he uses his own BE filter files should not copy paste this file over your existing one, else you will get kicked for all the cool nice admin functions that comes with your Infistar! You need to do the change yourself if you get kicked for anything regarding this script.
    I dont had and will not have a look at Infistar's BE files to sort things out!
     
    10. Restart your server
    11. Enjoy it and cleanup your vaults!
     
    12. DONT LOOSE YOUR MASTERKEY! :rolleyes:
     
     
    -- Additional Information ---
     
    For InfiStar AdminCheat (ummm sorry meant AntiCheat...) users:

     
     
    Have fun with it!
     
    - If you like it - Like it - So I can count Downloads - I like that
     
    #####################################
    #                      Support my work                      #
    #                                    &                                #
    #                                Donate                           #
    #####################################

  10. Like
    Ghostrider-GRG reacted to WGC GeekGarage in [Howto/Release] Tie PlayerUID To All Buildable Objects / Keep plot pole after death [No SQL Triggers] UPDATE 16/04/2014   
    First off i would like to thank one of my players in my community Tim aka maccon for the patience to help me test this to the point where I think he don't like spawning and joining in DayZ any more. We have tried to test this extensively in many different scenarios and i just can't get it to fail at all. So i really hope this is true.

    Now to the fun part, converting to PlayerUID tied build system. This is not a beginner choice, but i will try and explain it step for step, even tho you might not fully understand why it has to be like this or that when we edit the code, just know that it has to be and you shouldn't edit it any other way then how i explain you to do it.

    I expect that you have custom compiles.sqf and fn_selfAction.sqf else search for it on the forum how to

    First off a little help for debugging, i'm going to show you how to log info from the clients connected to your server to the Server RPT! This is NOT the same as using the client RPT file so do not exclude looking in that if anything isn't working for you.
    Open "Client_PBO\dayz_code\init" folder and copy publicEH.sqf to your "MISSION_FOLDER\custom" folder Open your mission init.sqf and change call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf"; to call compile preprocessFileLineNumbers "custom\publicEH.sqf"; Open your publicEH.sqf that we just copied and search for PVDZE_obj_setlocalVars below this line add this in "WG_admin_Log" addPublicVariableEventHandler {_logWGadmin = _this select 1;diag_log format["Client To Server: %1",_logWGadmin];}; any where you want to log anything from the client to the server log you use this code _log = (format["your text here: %1 %2 %3",your,variables,here]);WG_admin_Log = [_log];publicVariableServer "WG_admin_Log"; The above code will show "Client To Server: your text here: your variables here" in the server RPT Thats it for Client to server logging use it as you want, it helped me out alot! beside the Server and Client RPT






     
    Change Character to PlayerUID
    Then Search for
     
    Download Kronzkys String Functions Library from HERE
      Extract KRON_Strings.sqf to the root of your mission folder and open up the init.sqf in your mission folder and add to the bottom nul=[] execVM "KRON_Strings.sqf"; Now open KRON_Strings.sqf and at the bottom add this KRON_convertPlayerUID = { private["_in","_up","_out"]; _in=_this select 0; _up=[_in] call KRON_StrUpper; _out=[_up,"AX","999"] call KRON_Replace; _out }; In your custom compiles add or edit the following (depending on how your run your compiles.sqf) to what in the codebox fnc_usec_damageActions = compile preprocessFileLineNumbers "custom\fn_damageActions.sqf"; player_updateGui = compile preprocessFileLineNumbers "custom\player_updateGui.sqf"; player_build = compile preprocessFileLineNumbers "custom\player_build.sqf"; Now copy over "Client_PBO\dayz_code\compile\fn_damageActions.sqf" and "Client_PBO\dayz_code\compile\player_updateGui.sqf" to the custom folder
      Open player_updateGui.sqf in the custom folder and go to line 155 and replace this _charID = player getVariable ["CharacterID", "0"]; _rcharID = _humanityTarget getVariable ["CharacterID", "0"]; with this _charID = getPlayerUID player; _found=[_charID,"AX"] call KRON_StrInStr; if (_found) then { _charID=[_charID] call KRON_convertPlayerUID; }; _rcharID = getPlayerUID _humanityTarget; _found=[_rcharID,"AX"] call KRON_StrInStr; if (_found) then { _rcharID=[_rcharID] call KRON_convertPlayerUID; }; and add "_found" to the private array at the top
      Open fn_damageActions.sqf in the custom folder and go to line 58 and replace this _charID = _unit getVariable ["CharacterID", 0]; with this _charID = getPlayerUID _unit; _found=[_charID,"AX"] call KRON_StrInStr; if (_found) then { _charID=[_charID] call KRON_convertPlayerUID; }; Now go to line 153 and change _action = _unit addAction ["Tag as friendly", "\z\addons\dayz_code\actions\player_tagFriendly.sqf", [], 0, false, true, "", ""]; to _action = _unit addAction ["Tag as friendly", "custom\player_tagFriendly.sqf", [], 0, false, true, "", ""]; and add "_found" to the private variable at the top of the file
      Now copy over "Client_PBO\dayz_code\actions\player_tagFriendly.sqf" to your custom folder and open it up and replace _callerID = _caller getVariable "CharacterID"; _targetID = _target getVariable "CharacterID"; with _callerID = getPlayerUID _caller; _found=[_callerID,"AX"] call KRON_StrInStr; if (_found) then { _callerID=[_callerID] call KRON_convertPlayerUID; }; _targetID = getPlayerUID _target; _found=[_targetID,"AX"] call KRON_StrInStr; if (_found) then { _targetID=[_targetID] call KRON_convertPlayerUID; }; Now add "_found" to the private array at the top of the file
      Now copy over "Client_PBO\dayz_code\actions\remove.sqf" and "Client_PBO\dayz_code\actions\player_upgrade.sqf" and "Client_PBO\dayz_code\actions\player_build.sqf" to your custom folder and open remove.sqf up and find at line 15 _activatingPlayer = player; just below add this _playerUID = getPlayerUID _activatingPlayer; _found=[_playerUID,"AX"] call KRON_StrInStr; if (_found) then { _playerUID=[_playerUID] call KRON_convertPlayerUID; }; Find _isOwnerOfObj = (_objOwnerID == dayz_characterID); and replace it with _isOwnerOfObj = (_objOwnerID == _playerUID); Now find if(dayz_characterID != _ownerID) then { and replace it with if(_playerUID != _ownerID) then { Now add "_playerUID" and "_found" to the private array at the top of the file
      Now open up player_upgrade.sqf you copied before and find _needText = localize "str_epoch_player_246"; below that insert _playerUID = getPlayerUID player; _found=[_playerUID,"AX"] call KRON_StrInStr; if (_found) then { _playerUID=[_playerUID] call KRON_convertPlayerUID; }; Then find if(dayz_characterID == _ownerID) then { and replace it with if(_playerUID == _ownerID) then { Now add "_playerUID" and "_found" to the private array at the top of the file Now open up player_build.sqf you copied before and find (This is also relatively easy to do if you use my or otternas version of snap build) if (player getVariable["combattimeout", 0] >= time) exitWith {DZE_ActionInProgress = false; cutText [(localize "str_epoch_player_43"), "PLAIN DOWN"];}; just below add _playerUID = getPlayerUID player; _found=[_playerUID,"AX"] call KRON_StrInStr; if (_found) then { _playerUID=[_playerUID] call KRON_convertPlayerUID; }; Then find if(dayz_characterID == _ownerID) then { and replace it with if(_playerUID == _ownerID) then { Then find (if you use otternas or my version of build snap _tmpbuilt is _object) _tmpbuilt setVariable ["CharacterID",dayz_characterID,true]; and replace with _tmpbuilt setVariable ["CharacterID",_playerUID,true]; Then find (if you use otternas or my version of build snap _tmpbuilt is _object) PVDZE_obj_Publish = [dayz_characterID,_tmpbuilt,[_dir,_location],_classname]; and replace with PVDZE_obj_Publish = [_playerUID,_tmpbuilt,[_dir,_location],_classname]; Now add "_playerUID" and "_found" to the private array at the top of the file
      Now copy over "Client_PBO\dayz_code\actions\player_buildingDowngrade.sqf" to your custom folder and open player_buildingDowngrade.sqf up and search for _needText = localize "str_epoch_player_246"; and add this just below
    _playerUID = getPlayerUID player; _found=[_playerUID,"AX"] call KRON_StrInStr; if (_found) then { _playerUID=[_playerUID] call KRON_convertPlayerUID; }; Then Search for
    // check if friendly to owner if(dayz_characterID == _ownerID) then { and replace it with
    // check if friendly to owner if(_playerUID == _ownerID) then { Then search for 
    _object setVariable ["CharacterID",dayz_characterID,true]; _objectCharacterID = dayz_characterID; and replace it with
    _object setVariable ["CharacterID",_playerUID,true]; _objectCharacterID = _playerUID; Now add "_playerUID" and "_found" to the private array at the top of the file
      In your fn_selfAction.sqf find "\z\addons\dayz_code\actions\remove.sqf" and replace with "custom\remove.sqf" there is 2 places it has to be changed.

    Now search for player_upgrade.sqf and change the path to "custom\player_upgrade.sqf" Then search for _ownerID = _cursorTarget getVariable ["CharacterID","0"]; just below add _playerUID = getPlayerUID player; _found=[_playerUID,"AX"] call KRON_StrInStr; if (_found) then { _playerUID=[_playerUID] call KRON_convertPlayerUID; }; Now search for if(_isModular and (dayz_characterID == _ownerID)) then { and replace it with if(_isModular and (_playerUID == _ownerID)) then { Now search for //Packing my tent if(_isTent and (player distance _cursorTarget < 3)) then { if (_ownerID == dayz_characterID) then { and replace it with //Packing my tent if(_isTent and (player distance _cursorTarget < 3)) then { if (_ownerID == _playerUID) then { Now search for //Sleep if(_isTent and _ownerID == dayz_characterID) then { and replace with //Sleep if(_isTent and _ownerID == _playerUID) then { Now search for player_buildingDowngrade.sqf and change the path to "custom\player_buildingDowngrade.sqf"

    Now add "_playerUID" and "_found" to the private array at the top of the file
      Now you'r done and all build objects are now tied with your PlayerUID instead of CharacterID's. Friend system is also converted same goes for upgrade and remove. Just remember if you die the player has to refriend the players he was friends with before but they don't have to do it back unless they die themself. This also works perfectly if you run multiple characters as all characters have the same PlayerUID and they can all build. on the same plot.

    So go tell your players to rebuild their plot pole!

    I will not give any other install instructions or help in any other way as there is simply too many factors involved. i have tried following this guide before i posted it and it works if you follow it step for step. I will not help installing it on your server and i don't take any responsibility if you break anything on your server. Remember always to do backup!


     
    If you want to test it out visit my Napf server 178.32.54.36:3000

    I do NOT allow anyone to repost this on other sites, if you have a translated version into any language post it in the thread and I will merge it and give credit for translation. If I find a translated version or same version posted on other sites I will do what I can to get it removed and that person will never get any sort of help ever again from me!
×
×
  • Create New...