pull_requests: 470838247
This data as json
id | node_id | number | state | locked | title | user | body | created_at | updated_at | closed_at | merged_at | merge_commit_sha | assignee | milestone | draft | head | base | author_association | auto_merge | repo | url | merged_by |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
470838247 | MDExOlB1bGxSZXF1ZXN0NDcwODM4MjQ3 | 3138 | closed | 0 | updating /permit logic to be closer to retail by default | 8909245 | Currently in ACE, when a player uses /permit to grant access to another player to loot their corpse, this permission remains in effect until it automatically expires after 1 hour, the permitter removes the permission, or the permittee logs out. In retail, after the permittee opened a locked corpse of the permitter, their permission for other locked corpses of the permitter was revoked at that point. There are a few details with this, thank you very much to the community for having a discussion about this in Discord for figuring out the details: - When a permittee opens/closes the locked corpse of a permitter, the corpse does not become available for anyone to access afterwards. Thus, it differs from the corpse owner opening/closing their corpse in this way. When a corpse owner opens/closes their corpse, it is then available for anyone to open afterwards. - However, when a permittee opens/closes a locked corpse of a permitter, even though the permitter is then removed from the permittee's LootPermissions table, the permittee still has access to repeatedly open/close the corpse they gained access to. With this combination of factors, the 'permitteeOpened' table was added to Corpse - The LootPermissions table remains stored on the permittees, same as it was before in ACE, which matches retail. If the permitter logs out, the permittee continues to have access to open 1 locked corpse. If the permittee logs out, they lose their granted permissions, same as in retail. Reference: http://acpedia.org/wiki/Death_and_Corpse_Commands A new server option has also been added, permit_corpse_all, which defaults to false, as per retail. If the server operator wishes to restore previous behavior in ACE, where /permit grants access to all corpses instead of 1 corpse, this can be optionally set to True. This PR also adds some logic that was possibly missing to Corpse.Close() for player corpses. After a corpse owner loots their own corpse (opener == victimId), the corpse should then supposedly become available for anyone to open afterwards. TODO: when LootPermissions expires, a message was sent to the permittee that they no longer have access to loot the corpses of permitter. This would require some kind of LootPermissions_Heartbeat on the permittees. Find out if this message was sent only if the permissions expired naturally, or if it was also sent after successfully opening a permitted corpse. This PR was tested programmatically via unit testing | 2020-08-20T11:12:32Z | 2020-08-26T02:48:12Z | 2020-08-26T02:48:12Z | 2020-08-26T02:48:12Z | facc1a602fe338eeba7be44dcb6f47f88385fb69 | 0 | 004a7ef9cec605ae69640093c5e51ef39060307e | 7e15debd103f855a21ec01d571eb124fee71cb85 | COLLABORATOR | 79078680 | https://github.com/ACEmulator/ACE/pull/3138 |
Links from other tables
- 0 rows from pull_requests_id in labels_pull_requests