MGTDB

Block "stacking" of construction items

12 posts in this topic

Some constructive "construction" criticism xD

Has anyone managed to block this practice of stacking building items within each other?
 

 

  • Like 1

Share this post


Link to post
Share on other sites
Advertisement

Well, it can be done.  As I took several years of Algebra/Trig/Calculus, Geometry I did not.  And as I am old now, my higher math skills have faded.

What you would have to do is to take the coords of the piece when it is placed, then compare it to any piece within that size in the DB.  This would be the 'Union of Sets' principle.

So, if new piece is 2x*4y and its center coords are (10x,10y), it would have to see if any piece is (x>9 and x<11) and (y>8 and y<12).  If this statement is 'true', then it would be overlapping.

Sadly, this 'check' would have to be done on every single piece in the DB.  And the more pieces, the longer the check as well as more 'hits' on the DB too.

For every piece, the DB would have to be polled OR the DB read into the user's RAM/Memory and process from there.  BUT, in reading in the entire DB CAUSES an issue.  What about when you have 2+ people building at the same time?  So, reading the DB would NOT WORK!  Because it is actively being modified.

Note:  Entire DB = Player's DB

 

This is the same issue when you have a document being worked on by many people, for example.  ;)

But, all of this must be done BEFORE the user sees it being 'set'.

 

Also, there are times when overlapping is legit.  I had a floor that did not line up for some weird reason, so instead of re-doing an hours worth of work, I just placed down another floor to cover the 'big gap'.  So, at times, overlapping IS legit.  Also try building DOWN.  Pieces do NOT 'snap'!  You MUST set every piece manually, which WILL have overlaps due to the manual setting process.

 

While my method WOULD work, it is probably not the best.  What the best?  It is silly, but it will work!  Call your local University/College and get a math professor on the phone.  Ask them!  They will tell you how/a better way!

 

While I understand the 'issue', blocking it would not be the best.  It is like saying that since cooking has killed people in the past, all cooking should be illegal.

Another 'approach/solution' is needed instead of making it 'illegal' system-wide.  For example, server owners make it a rule that this is forbidden and if caught?  XYZ will be done.  And then offer a reward to players who snitch on those with multiple walls.

BUT, this also would not work.  What would I do?  I would place the 2nd wall RIGHT NEXT TO THE FIRST WALL.  It has the SAME EFFECT and does NOT 'violate' the 'overlapping rule'.  The attacking player would never see the 2nd wall!  SAME EFFECT, SAME OUTCOME!

 

For me and my server; players build how they want too (for the most part).  ALL bases can be raided - PERIOD.  Who says it must be easy?

:)

Edited by Z80CPU
  • Like 2

Share this post


Link to post
Share on other sites
7 hours ago, Z80CPU said:

ALL bases can be raided - PERIOD.  Who says it must be easy?

Raiding shouldn't be easy but it should be worthwhile, that's the point. If you need to glitch wall into wall to protect your base, you'r just a cheap architect.

If i have to spend 500k into raidtools,  getting a flag and items worth 200k cuz some douche thought he have to build 10 walls in each other (and abusing the system imho), it's just bullshit and preventing the sense of raiding. PERIOD - go play PVP then.

 

If we see stuff like that on our server or wall behind wall, behind wall (we have clear rules about that), we remove all walls and make the way free for players.

 

I was always thinking about altering move/start construction to prevent playing nearer then 1m or so - shouldn't be that hard? Will give it a try

 

 

 

 

Share this post


Link to post
Share on other sites

See, that is an option in which I mentioned - Using a rule.

Multiple walls?  One behind the other?  Is this any different that people who put a door lock then a dead bolt on their doors?  To me, it is the same.

But, this is what makes you and I special!  We are different and see things in a different ways!  No one way is 'perfect' and no one way is 'fool proof'.

To each his own!

:)

  • Like 2

Share this post


Link to post
Share on other sites

It wouldn't have to be done with every object in the database... Do a search when trying to place the object for isWithin 5m of another object(s), if so then check the centre coords of said object(s)...

Edited by Monkeynutz

Share this post


Link to post
Share on other sites

You could do this with the 'NearestObject' command...I think...

You would still have the issue of multiple people building though...

Do note, my original suggestion was based on thoughts 'on the fly' and no in-depth examination of such was expended on this.

:)

 

Share this post


Link to post
Share on other sites
Advertisement

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

  • Recently Browsing   0 members

    No registered users viewing this page.