Jump to content

[RELEASE] Area Maintenance for Player Bases (Script)


Axe Cop

Recommended Posts

I dont want to use SelfBloodbag on my Epoch server but want to use this maintenance script. However you talk about fn_Selfactions.sqf which us provided under SelfBloodbag threads. 

 

Is there a way to set this up without having to install selfbloodbag please ?

This script has nothing to do with self bloodbag, I just mentioned it because most servers use it and it is similar to install this script :)

You need a custom fn_selfActions.sqf, it does not come with self bloodbag but with the epoch client installation, you just have to copy it in your mission and change it for this to work.

If you want i could tell you what to do but there are already 100 tutorials for that in this forum, I don't want to repeat the same steps in every topic I hope you understand.. but you are right there should be a FAQ in this forum with questions and answers for new server admins :)

 

Here maca did a good job explaining the steps needed to customize your self actions file (or others it works the same for most files): http://dayzepoch.com/forum/index.php?/topic/965-release-trader-menu-dialogs (step 1 to 3)

Link to comment
Share on other sites

Nope, DZE_Housebase are just the dynamic doors from the modular building system.. defined in the file https://github.com/vbawol/DayZ-Epoch/blob/master/SQF/dayz_code/Configs/CfgVehicles/DZE/Doors.hpp (search for DZE_Housebase in that file).

If you want to add the other building stuff like sandbags, tank traps etc you can use "BuiltItems", see this file https://github.com/vbawol/DayZ-Epoch/blob/master/SQF/dayz_code/Configs/cfgVehicles.hpp (ModularItems are also defined in there)

If I want to add for example LightPole_DZ must I then add "LightPole_DZ" or "ASC_EU_LHVOld". And I think its not possible to add "Fortifications" from the vehicle Class, or?

class ASC_EU_LHVOld;
        class LightPole_DZ: ASC_EU_LHVOld
        {
                armor = 200;
                scope = 2;
                offset[] = {0,2.5,0};
                displayName = "Light Pole";
                vehicleClass = "Fortifications";
                maintainBuilding[] = {{"ItemLightBulb",1}};
        };
Link to comment
Share on other sites

 

If I want to add for example LightPole_DZ must I then add "LightPole_DZ" or "ASC_EU_LHVOld". And I think its not possible to add "Fortifications" from the vehicle Class, or?

class ASC_EU_LHVOld;
        class LightPole_DZ: ASC_EU_LHVOld
        {
                armor = 200;
                scope = 2;
                offset[] = {0,2.5,0};
                displayName = "Light Pole";
                vehicleClass = "Fortifications";
                maintainBuilding[] = {{"ItemLightBulb",1}};
        };

 

you would add either.  LightPole_DZ would inherit from ASC_EU_LHVOld. but LightPole_DZ is more specific.  In terms of maintaining light poles, it doesnt really matter.

 

For example, we use a lot of "isKindOf" [Air] which is a top level class for helicopters, planes, gyros etc.

 

If we wanted to only allow Hueys we'd have "isKindOf UH1Y_DZ" or whatever...that is a subclass of "Air"

 

Hope that makes sense.

Link to comment
Share on other sites

those items are not modular and have no maintenace (they are "buildables").

 

In any case, I've asked Axe for permission to add this to the base mod.

 

https://github.com/vbawol/DayZ-Epoch/issues/793

 

That would be nice. Always nice when mods I add to my server become standard features in another version. Saves me some work! :)

Link to comment
Share on other sites

Axe Cop, we've started using your script, too and it promises to be a huge improvement - thanks for it!

 

I'm happy it will be included into Epoch base. To whom should I propose the following wishes?

  • Make cost configurable with 2 external variables: pay <g> gold for <n> items. That would allow a quite good cost approximation formula cost_total = ceil(items_total * <g> / <n>) with subsequent conversion into 10oz or briefcases without too many case statements involved.
  • Make the maintain radius configurable.
  • Ensure that _any_ type of item needing maintenance is covered, to avoid oversights or the need to manually add e.g. "BuiltItems".

The last point definitely being the most important ;-)

Link to comment
Share on other sites

Now to the problem, I wanted to ask about, originally:

 

as I said, we (as in: our main admin, I'm only asking dumb questions ;-) have started using your script and the day before yesterday everything seemed to be fine:

  • Look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Activate mouse-wheel, on the left white options to maintain/preview are visible.
  • Choose preview, get info about item count&cost, info is consistent with manual count.
  • Walk away to another plot pole, repeat -> success.

 

Now we made a couple of other changes and managed to break the whole thing :-(

 

Changes that we think to have made (you never remember everything, it seems ;-):

 

There's no obvious scapegoat, I think. To make the problem worse, we tried to make a rollback (used the old mission) and the problem is still there.

 

I do not think the fault is with Axe Cop's script, but perhaps someone can point me to the possible cause.

 

The symptoms:

  • Look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Activate mouse-wheel, on the left white options to maintain/preview are visible.
  • Choose preview, no reaction, at all! It's not clear to me if the lookup process is stuck or if it comes back, empty.
  • Again look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Again activate mouse-wheel, on the left no white options to maintain/preview are visible.
  • Walk away from pole, whenever the mousewheel is used, you get 'remove plotpole' in the middle of the screen.
  • If you try to remove plot pole you get the 'remove already in progress' message.
  • You don't get options (mid screen popup or mouse wheel action) to open vehicles or safes, anymore.

Only after relog (I didn't try skin change) the behaviour goes back to normal (until one tries to use the area maintenance, again).

 

Any hints? Perhaps anyone who managed to break his car/safe open menu in any other way?

 

Thanks in advance!

Link to comment
Share on other sites

Now to the problem, I wanted to ask about, originally:

 

as I said, we (as in: our main admin, I'm only asking dumb questions ;-) have started using your script and the day before yesterday everything seemed to be fine:

  • Look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Activate mouse-wheel, on the left white options to maintain/preview are visible.
  • Choose preview, get info about item count&cost, info is consistent with manual count.
  • Walk away to another plot pole, repeat -> success.

 

Now we made a couple of other changes and managed to break the whole thing :-(

 

Changes that we think to have made (you never remember everything, it seems ;-):

 

There's no obvious scapegoat, I think. To make the problem worse, we tried to make a rollback (used the old mission) and the problem is still there.

 

I do not think the fault is with Axe Cop's script, but perhaps someone can point me to the possible cause.

 

The symptoms:

  • Look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Activate mouse-wheel, on the left white options to maintain/preview are visible.
  • Choose preview, no reaction, at all! It's not clear to me if the lookup process is stuck or if it comes back, empty.
  • Again look at plot pole ('remove plot pole' option visible in the middle of the screen).
  • Again activate mouse-wheel, on the left no white options to maintain/preview are visible.
  • Walk away from pole, whenever the mousewheel is used, you get 'remove plotpole' in the middle of the screen.
  • If you try to remove plot pole you get the 'remove already in progress' message.
  • You don't get options (mid screen popup or mouse wheel action) to open vehicles or safes, anymore.

Only after relog (I didn't try skin change) the behaviour goes back to normal (until one tries to use the area maintenance, again).

 

Any hints? Perhaps anyone who managed to break his car/safe open menu in any other way?

 

Thanks in advance!

Hey, first you can write alot about a "little" problem haha

Seems to me pretty clear, you've made an error when changing my script, sorry dude but I have to see what changes you did because your symptoms tell me that the options never come back and you can't do any other things which means the variables at the end of my script never will be executed:

TradeInprogress = false; // this will re-enable all other upgrade, trade or whatever options, global epoch variable used in many scripts
s_player_maintain_area = -1; // this will re-enable the maintain area options, if this is not reached they won't come back (until you relog)!
s_player_maintain_area_preview = -1;

So there has to be an error in the script, seems like you've changed more than just adding the BuiltItems? Just send me the script or the error message in your report file (there should be one, if you made a syntax error at least).

Link to comment
Share on other sites

Hey, first you can write alot about a "little" problem haha

Yep, I believe in 'more information is better information' ;-)

 

In any case, I found a missing closing curled bracket in our version of the sqf that should lead to TradeInprogress staying true.

 

I'll inform my admin and I think that the rollback we did was not as complete as we thought it was -> user error.

 

Thanks for the hint!

Link to comment
Share on other sites

Yep, I believe in 'more information is better information' ;-)

 

In any case, I found a missing closing curled bracket in our version of the sqf that should lead to TradeInprogress staying true.

 

I'll inform my admin and I think that the rollback we did was not as complete as we thought it was -> user error.

 

Thanks for the hint!

Check this tool out for checking the syntax of ArmA script files, I onyl use it sometimes to check simple errors but be aware it might show "wrong" errors and as far as I know it doesn't support all new script commands from ArmA2 OA, in any case it may help with something like a missing ";" or brackets: http://www.armaholic.com/page.php?id=11817

Link to comment
Share on other sites

Axe Cop first of all i want to thank u for that imba script :) but im major noob and really dont know how to enforce your maintanance script to start counting  safes and buildables like sandbags, tanktraps, and h barriers . Maybe u can update your first post and make a instruction how to do this for ppl like me ? thx

Link to comment
Share on other sites

Axe Cop first of all i want to thank u for that imba script :) but im major noob and really dont know how to enforce your maintanance script to start counting  safes and buildables like sandbags, tanktraps, and h barriers . Maybe u can update your first post and make a instruction how to do this for ppl like me ? thx

Just replace this

_objectClasses = ["ModularItems", "DZE_Housebase"];

with

_objectClasses = ["ModularItems", "DZE_Housebase","BuiltItems","VaultStorageLocked","LockboxStorageLocked"];

"BuiltItems" is everything like tank traps, sandbags etc, I'm sure I've posted the list somewhere here or check the cfgVehicles.hpp yourself.

no guaratiees that it will work since only the items mentioned in the first post are maintainable by default, safes and everthing with gear in it will be emptied I guess but i'm not sure.. try at own risk :D

Link to comment
Share on other sites

i added only BuiltItems there so this looks now:

 

_objectClasses = [""ModularItems", "DZE_Housebase","BuiltItems"];

 

but your script dont work now :) i mean i see option for maintain and preview but i cant see how many objects got and cant maintain base :) so my question is where i can find this cfgvehicles? cause i cant find it in missions, dayz_server and dayz_code

Link to comment
Share on other sites

i added only BuiltItems there so this looks now:

 

_objectClasses = [""ModularItems", "DZE_Housebase","BuiltItems"];

 

but your script dont work now :) i mean i see option for maintain and preview but i cant see how many objects got and cant maintain base :) so my question is where i can find this cfgvehicles? cause i cant find it in missions, dayz_server and dayz_code

It should like that, maybe you changed something else by mistake?

 

Anyway the cfgVehicles.hpp is encoded in the config.bin inside the dayz_code.pbo, but you can see the current version of the file here: https://github.com/vbawol/DayZ-Epoch/blob/master/SQF/dayz_code/Configs/cfgVehicles.hpp (look there for "BuiltItems")

Link to comment
Share on other sites

i only use copy and paste option , didnt do any mistake for sure :D

 

maybe in hfb servers is something different like always?:D

Edited by beeste
Link to comment
Share on other sites

well, didnt see that mistake here [""ModularItems" :D u didnt see that too :D double " i will try now again

 

ok ty its working fine now :)

I can't see everything dude, but good that you've found it yourself haha.. that error wasn't in my example though :D

And I only use notepad++ for editing ArmA files, with javascript syntax highlighting it's pretty good and you would have seen an error like that at least.. :D

Link to comment
Share on other sites

This script has nothing to do with self bloodbag, I just mentioned it because most servers use it and it is similar to install this script :)

You need a custom fn_selfActions.sqf, it does not come with self bloodbag but with the epoch client installation, you just have to copy it in your mission and change it for this to work.

If you want i could tell you what to do but there are already 100 tutorials for that in this forum, I don't want to repeat the same steps in every topic I hope you understand.. but you are right there should be a FAQ in this forum with questions and answers for new server admins :)

 

Here maca did a good job explaining the steps needed to customize your self actions file (or others it works the same for most files): http://dayzepoch.com/forum/index.php?/topic/965-release-trader-menu-dialogs (step 1 to 3)

 

 

I thank you and admire a very nice reply :)  Yes, I am a new admin and I also would not prefer to be the cause of duplication :)

I'll look into the thread you pasted and try to install your maintenance script. 

 

Once again. Thank you for great work! 

Link to comment
Share on other sites

Hello Axe,

 

Do you know if the maintain area works with the Y position.

I mean the range by default is 50 meters arround the plot pole. But it's 50m in X position or both ? (X,Y)

 

More players on my servers got a floor and ask me if they have to place a plot pole on the ground floor and on the floor.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...