Essentials icon indicating copy to clipboard operation
Essentials copied to clipboard

[bug] !identity purge leaves incosistent block ownership

Open LordTylus opened this issue 4 years ago • 2 comments

Tun on Torch 1.88 SE 1.104 and Essentials v1.7.1.44-105-gc94132c

Hello there,

on our server today we had two instances where identity purge did screw up quite a lot.

When a player becomes inactive identity purge removes the identity, from the known identities list, removes them from a faction, removes their grid and transfers block ownership over to the biggest owner of the remaining grids.

However it does not touch the authorship of these grids. Leaving behind inconsistent buildby information.

What happened?

In the first instance on our server we noticed that my PCU-Transferrer plugin is not able to transfer blocks from nobody to the player. (apparently the grids lost authorship practically overnight). The previous author became inactive. After exporting the grids and inspecting the XML I noticed:

              <Owner>144115188075857195</Owner>
              <BuiltBy>144115188075856831</BuiltBy>

Even if it showed nobody as author it still had the old ID as author.

However

     <item>
        <Key>144115188075856831</Key>
        <Value>
          <Entries>
            <Entry>
              <name>4. Silver &amp;</name>
              <description>Current position</description>
              <coords>
                <X>-135541.98000524979</X>
                <Y>-239419.03058033084</Y>
                <Z>-387135.4666187868</Z>
              </coords>
              <isFinal>true</isFinal>
              <showOnHud>false</showOnHud>
              <alwaysVisible>false</alwaysVisible>

this ID now belongs to a GPS coordinate.

In an other instance something similar happened. A player was inactive and an other new player took over his ID starting off with a whole lot of stuff in their Info Tab that was never built by them.

Proposed Solutions

  1. essentials itself seems to store all already seen player IDs. maybe it could use this information to prevent new entities to optain any of these IDs. So this mixup would not happen

  2. Before the identity gets removed the authorship could either be transferred over to the biggest grids owner similar to ownership itself (which however is problematic because it could push him over limit) (like 22/12 gatling turrets) or -12334 PCU remaining. Or just setting the Build-By Information to nobody properly. to prevent such mixup.

Question

Is there a command that can only remove inactive players grids, and remove them from factions / transfer PCU away from them, but not delete the whole identity?

Setting blocks to no authorship has some annoying side effects especially on wleders where players can then print ships built by nobody and ignore limits entirely. By keeping the identity and just remove the grids players could not do that.

If there is no command like that I could create one.

LordTylus avatar Oct 03 '19 21:10 LordTylus

I support this ! We had similar issues with identity purge.

❤️

ghost avatar Nov 11 '19 08:11 ghost

lil update here. Though this is still an issue I created a

!gridcleanup command in my PCU transferrer which I use for quite a while now.

It does the same as !identity purge but does not delete the identity which therefore does not cause funny business with the identity ids.

LordTylus avatar Feb 07 '20 20:02 LordTylus