Jump to content

RimBlock

Member
  • Posts

    1140
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by RimBlock

  1. Rim let me know what you find in testing. I can confirm in default epoch that the behavior is different.

     

    In default epoch you must be the plot owner or tagged as friendly to remove a lock from a door.

     

    With P4L mod anyone can remove a lock from a door that is unlocked.

     

    Ok, tested and working as expected.

     

    Put lock on door that I do not own.

    Shutdown server

    Change plot pole ownership to someone else

    Start server

    Unlock door lock

    Downgrade door

     - Error message - no plot pole nearby.

  2. As for admin bases only. Personally i think admin should play by the same rules and mods that all players do to make it fair. I run it that cinder are indestructible where wood is not so players have to work up to the safety of cinder.

     

    Depends on how you run your admins.

     

    I expect my admins to be like game marshels.  Being in the game but not so much part of the game.  in order to keep the reality of the game world I would expect the admin to drive or fly to a player rather than teleport like the shopkeeper in Mr Ben (him of "...as if by magic, the shopkeeper appeared").  To facilitate this a base is of great use but you don't want the items falling in to players hands so having it indestructable would be a big bonus.

     

    If admins want to play the game they should join the game as players not as admins (thus loosing access to admin tools and resources).

     

    This of course only works if you have multiple admins able to take turns in playing and assisting others.

     

    There is a thread on different admin styles which is quite interesting.

     

    If you would rather not then no problems :) .

  3. Yep it should do :)

     

    When i tested it im sure i did check that but if someone could confirm it would be helpfull

     

    If you are damaging the buildings via sql events (rather than in game actions) then it should be good.  If those sql events do not exist then you may have issues as the maintenance only kicks in when the object is damaged.

     

    Likewise, the events are defaulted to daily schedules and any sql object based updates only update in the game world on server restart.

     

    One thing you may want to look at if you have an interest and if it is not already inbuilt is to make the bases indestructable for select steamIDs (i.e. for admin owned bases).

  4. Hmm interesting, I had issues like that but once I updated ML100 files (or whatever they are called). It worked without Issue. I'm running Server 2012 RTM.

     

    In regards to help! I really would like to give back... It's been so much fun setting up a server, and I couldn't of done it without people like you.. I'll create a install video this weekend.

     

    Great, thanks.

     

    Please also be aware that I will be releaseing a 2.3.0 BETA over the weekend with a few code changes but there will be no functional changes.  It is just chopping out some codee that is repeated in multiple files and putting it in its own .sqf (resulting in smaller file sizes).

     

     

    Rim let me know what you find in testing. I can confirm in default epoch that the behavior is different.

     

    In default epoch you must be the plot owner or tagged as friendly to remove a lock from a door.

     

    With P4L mod anyone can remove a lock from a door that is unlocked.

     

    Did a quick test last night but it was flawed.  Will retest tonight.  Have finished my other testing and reverted my test system back to the code ofr this test so should be able to hit it as soon as I get home.

     

    ok here's the my edited version for my mission file, it's not (probably) going to be the same as yours so please check the links in fn_selfactions etc... I included a pic of my layout so you know what you're dealing with :)

     

    https://www.dropbox.com/s/8si86riwzfdk6e7/P4L-Snap-pro.rar

     

     

    EDIT: This only includes the edits for P4L & snap_pro no other edits are included. in "core" system files

     

    Pry

     

    Fantastic, thanks for your work on this.

     

    So what people need to do is download RayMix, install them both and then replace the player_build.sqf with the version you have supplied ?.

  5. Thanks everyone.  Will reply tomorrow in detail.

     

    Cen, same for me.  The mod allows non-owner / friendly to remove the lock.  Debug info I have up to now.

     

    Need to put some more debug in the player_buildingdowngrade.sqf.  I expect a mismatch on what is being checked to allow or abort.
     
    Update.
    Dagnabbit.... Added the lock to the door, changed the door ownership but didn't change the plot pole ownership....
     
    Will test again tonight.
  6. Also would you be ok with me making a custom install guide? I have installed you mod on a new epoch server and a modded epoch server.

     

    Go for it.  I will probably follow it as I want to add this at a later date when I have some time away from killing bugs.  Would be great and save me some time so I can actually enjoy this and other mods  :) .  I have always said I would be happy to work with others on this and other projects as different people see things in different ways and can potentially build something much better than I can alone so if anyone wants to contribute, just let me know  ;) .

     

    One other thing I have noticed is that if I have a Windows update pending a reboot, ARMA II OA seems to go a bit strange.  I am getting errors about missing variables that are clearly there etc.  Hoping a server reboot will resolve it.  Have noticed this in the past.  My server is running Win Server 2012r2 Essentials (just for reference).

  7. Rim can you confirm a major bug for me.

     

    If you unlock a door that is NOT yours (you don't own plot and are not tagged as friendly), you get the option to remove the lock from it.

     

    Before you needed to have control of the plot pole (be owner) in order to remove locks.

     

    I need to know if it's this mod or if it's my file edits.

     

    Hi Cen,

     

    It i is lunchtime here but will give it a try when I get home tonight.

     

    Unlocking the door has no affect on ownership looking at the script. 

     

    Looking at the code for fn_selfactions.sqf

    // downgrade system
    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_downgrade_build > 0) then {
    			player removeAction s_player_downgrade_build;
    			s_player_downgrade_build = -1;
    		};
    	};
    
    	if (s_player_downgrade_build < 0) then {
    		s_player_lastTarget set [1,_cursorTarget];
    		s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], 
    "\z\addons\dayz_code\actions\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];
    	};
    } else {
    	player removeAction s_player_downgrade_build;
    	s_player_downgrade_build = -1;
    };

    Seems it does not care who owns the object before allowing the downgrade option to appear (update: Just spotted the "DZE_Lock_Door == _ownerID". The ownerID is set as "_ownerID = _cursorTarget getVariable ["ownerPUID","0"];").  It really depends on how DZE_Lock_Door is being set.  Just checking through the code now.

     

    Update 2:

    Unlocking the door sets DZE_Lock_Door = "";.  Still should not create a match with the ownerPUID of the door though which reverts to 0 even if empty.

     

    DZE_Lock_Door is not changed in fn_selfactions.sqf either.  It is just checked in there.

  8. RimBlock,

     

    I am haveing an issue with the plotpole on server restart.  if i place a plotpole i can remove it fine and build just fine.  If I restart the server It acts like its not mine and takes 1 of 6 and I cant build because it complains about needing a plotpole.

    any Suggestions?

     

    How about other items if you try to remove them or is it just the plot pole that does not see you as the owner for removal ?.

     

    You are running v2.2.2 with the small manual fixes (see 1st post) ?.

  9. Ok, so I set up a test server and started from scratch. Your Script and install worked without issue (no surprise there).

     

    I then started adding other custom mods I use.

     

    BINGO! I found the issue, it the snapping mod I’ve been using here:

     

    [RELEASE] Build Snapping - Extended v1.6 (Updated 02/20/2014)

    Link

     

    Once I removed this mod your scripts worked again. Do you know why this may be breaking it? And is there a snapping mod you know that works with you scripts?

     

    It’s 12 am here so I am gonna hit the sack. I’ll look over the snapping mod tomorrow to see if I can work it out.

     

    Thanks so much for all your help and a great mod, your efforts and dedication do not go unnoticed!

     

    Mike.

     

     

    Thanks Mike,

     

    As I have just got this to a fairly stable state, I have not tried with any other mods yet, athough I have used the OtterNas3s version of snapping with the 1.1 version and found it to be very helpful. 

     

    Raymix has just released his which allows most things to snap to each other (walls to floors, cinder to wood etc).  Looks good from the video so I will probably take a look at trying to get that working with this mod shortly.

     

    Update: Reading through the thread, seems someone has got it working with A Plot for Life as well.

  10. If the code is now working well (will update the download file tonight) then I will be working on two other bits before caking the changes and pushing the to Epoch Git.

     

    Functionise

    • Medic animation
    • Plot pole check

    As you may have noticed, if looking throught the various buildable (and other) code, the medic animation is used quite a lot.  This means that a standard block of code is appearing in multiple files and doing more ro less the same thing.  I will be creating a seperate function that these scripts can call thus removing multiple sets of duplicate code from multiple files (small mission files and more efficent code usage).  I will be making it accept a number of parameters and this is where your input would be helpful.

     

    Something like

    Returns: true or false.  True = animation completed without abort.

     

    Variables

    _anim - Which animation to play.

    _complete - Anim cycle completed (without abort).

    Object: Object animation is for (i.e. trader, buildable, vehicle)

    MaxDist: Max distance from object before auto-abort.

     

    Anything else you think would be cool to add guys ?.

     

    I will be doing the same for the plot pole ownership check as that code is repeated in a number of files but I think that one is pretty cut and dried on what it needs and what is returned.

  11. What I mean is that in default epoch when you die, even if you're an owner, you still need to unlock the safe again with a code.

     

    When you die with this mod you don't have to enter the code again.

     

    err, so for vaults, you want to track the safe code, the playerUID and the characterID so if a player dies you then can ask them to re-enter the code again.

     

    The quick answer is not without a redesign and also storing the characterID as well.  I guess you could try to find a way to clear the ownerPUID of the vaults owned by a player if their character dies, possibly in the player_death.sqf but it is likely to be a fiar bit of work and troubleshooting.

     

    Why are you looking to do this, out of interest ?. 

  12. Easiest, but not most efficent, way would be to

     

    fn_selfactions.sqf

     

    Find

    _combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], 
    "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];

    change to

    _combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], 
    "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];

    All this does is mean that if you are the owner then you have to unlock using combination else unlock by combination.

     

    The cleaner way would be to setup a variable in variables.sqf (say "_vaultOwnerMustUnlock") set it in variables.sqf as false for default (owners do not need to unlock via combination).

     

    Put it in the init.sqf and set to true or false depending on preference.

     

    in the fn_selfactions.sqf

     

    find (around line 540)

    _combi = player addAction [format[localize 
    "STR_EPOCH_ACTIONS_OPEN",_text],"\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];

    Change to

    if (_vaultOwnerMustUnlock) then{
      _combi = player addAction [format[localize 
    "STR_EPOCH_ACTIONS_OPEN",_text],"\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
    }else{
    _combi = player addAction [format[localize 
    "STR_EPOCH_ACTIONS_OPEN",_text],"\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];
    };

    That will sort out vault locking.

     

    Vault packing also locks the vault before packing so you can do the same there if you wish (around line 565 in the same file).  A good rule of thumb is to look for "if(_characterID == dayz_combination || _ownerID == _playerUID) then {" in fn_selfactions.sqf and fn_damageactions.sqf for items only the owner can do.

×
×
  • Create New...