Jump to content
  • 0

Plot Pole and Saving Bases


NAIL

Question

Not sure if this has been brought up yet, or anyone would like to help me develop this as a mod, but I have an idea that I would like to implement on my server.

 

Plot poles are a great feature, however I don't believe they are used to their potential.  In my opinion a plot pole should have the following features:

 

  • Make it so no other player can place base building items down. (already working)
  • Be assigned to player ID not instance
  • Be a zombie barrier (zombies can be drawn to the pole, just not spawn within its radius)
  • Same with AI, they can be drawn to the pole, just not spawn within its perimeter.  (I have Sarge AI)
  • FINALLY **IMPORTANT** Make the plot pole maintainable, and maintaining a plot pole resets the 6 day despawn on all other base built items inside its perimeter.

I will be trying to figure out how to write a script to do this, and would love if anyone else would like to join me on this endeavor.  

 

I would make plot poles really rare, and would also like to possibly make it so you would need more than one on a larger base.

 

Or, better yet, only allow one plot pole per uid, this way if a team wanted multiple bases, they would need to divide the required plot poles.

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

I'm currently working on a hack fix kind of like this. I don't think its the best long term solution but I wanted to create a script that allow players to spend less time maintaining their base but also allow server owners to keep more aggressive cleanup methods.

 

1. Identify where each plot pole is on the map according to the object_data table.

2. FOR EACH plot pole identified, find the (base building) item that has the highest/lowest damage within 30 meters

3. Take the value obtained from step 2 and update all (base building) items damage level to that value within 30 meters

 

The idea here is that all your base building items stay at the same damage level. Say all of your base building items were left alone for a few days and they are at 10% health AND within 30m of a plot pole. You log in and maintain the stairs going up to your base, upon the next restart ALL of the base building items in the same 30m of a plot pole that the stairs are in will be upgrade to the same health level the stairs where updated too when you maintained it.

 

Obviously there are some cons

1. Possible economic de-stabilization due to super cheap maintenance costs (1lumber could fix an entire base)

2. Not sure yet but it might cause a problem when trying to permanently remove an object via destruction.

3. Possible PvP imbalance issues

4. Possible trolling/greifing exploitation.

 

Bonuses could be

1. player doesn't have to spend an hour just maintaining a base and can focus on other things

2. admins can still have aggressive cleanup scripts

3. Makes plot pole more important and the price for one more appropriate in my opinion

 

Notes: this script could really be tied into ANY item, in the future one could consider adding a "Hired worker" item instead of a plot pole that you "maintain"  with Gold bars as payment instead of lumber or scrap metal. The value of the currency decides for how many days the hired worker will run the script!

Link to comment
Share on other sites

  • 0

You and I are on the same page, Tactical Ex.  I like the idea of having to only repair 1 item.  I was thinking if there was a way to make the plot pole "central repair" for the base, and it has different levels of "damage" like a car does.  

 

A plot pole would only repair the appropriate items with the appropriate materials.  If any item is repaired it resets the despawn time on the whole base, however if something at 10% is left unrepaired it still has a good chance of being destroyed.

 

A plot pole could say when scrolled:

 

"repair base"

lumber 45%

mortar 87%

scrap metal 74%

cinder blocks 34%  (say we have 6 items that require cinder blocks to repair, 4 are broke and require 2 cinder blocks each.  Each cinder block you give would up the damage 12%)

 

This system would still require the appropriate materials to repair bases, however It would not burn extra materials just to dump loot.

 

Only the owner* can repair the plot pole, so aggressive cleanup is still working, as if the owner does not maintain their base within 6 days of last maintenance, or being built it would all despawn.

 

 

 

*what I am not sure about is how to limit bases.   Each plot pole only 1 owner, or allow people to co-own a plot pole where they all have the option to repair bases.  if each person is limited to say 2 active plot poles we would probably have more smaller bases, If you allow multiple people on 1 plot pole you would have fewer larger bases.

 

 

And finally, I have a crutch here.  I have knowledge of several coding languages, c++, php, java, actionscript, and more, however codeing for arma is new to me and I have yet to find really good documentation.  Also the files I would have to base this off of are huge.  for example just to get a scroll selection on the plot pole I have no idea what its called... 

if(_isPlotPole and _ownerID == dayz_characterID) then {


s_clothes = player addAction [("<t color=""#FF0000"">" + ("Repair Base") + "</t>"), "fixes\baseRepair.sqf",cursorTarget, 1, false, true, "",""];
	};

or where to start as I know this code is completely wrong..  

 

 

 

 

blah blah blah...  

 

any one have a location of a simple tutorial for learning the proper syntax for addAction?

Link to comment
Share on other sites

  • 0

I think I am going to take a stab at a different temporary solution to this, 

 

I am going to write an SQL statement that resets all items linked to a player id to the current date.  This way all a player has to do to save thier base is to log in every x days, x being the number set in the config settings.

 

I'll  post this solution here as soon as I write it.

Link to comment
Share on other sites

  • 0

I think I am going to take a stab at a different temporary solution to this, 

 

I am going to write an SQL statement that resets all items linked to a player id to the current date.  This way all a player has to do to save thier base is to log in every x days, x being the number set in the config settings.

 

I'll  post this solution here as soon as I write it.

how will you overcome the fact that most items are tied to the characterid and not the playerid is?

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
  • Advertisement
  • Discord

×
×
  • Create New...