html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504658279,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504658279,MDEyOklzc3VlQ29tbWVudDUwNDY1ODI3OQ==,8909245,2019-06-22T11:39:41Z,2019-06-22T11:39:41Z,COLLABORATOR,"what about a completely different approach to this? when a player enters /god mode, serialize the current state of all their affected properties, and save it to a new PropertyString add an /ungod command, which restores the character state","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504677359,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504677359,MDEyOklzc3VlQ29tbWVudDUwNDY3NzM1OQ==,26235642,2019-06-22T15:59:19Z,2019-06-22T15:59:19Z,CONTRIBUTOR,what happens if the server crashes before you /ungod? ,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504694989,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504694989,MDEyOklzc3VlQ29tbWVudDUwNDY5NDk4OQ==,8909245,2019-06-22T20:11:53Z,2019-06-22T20:12:48Z,COLLABORATOR,"then you just /ungod after the server has restarted that's the point of saving it in a PropertyString. it's persisted to the db","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504805622,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504805622,MDEyOklzc3VlQ29tbWVudDUwNDgwNTYyMg==,26235642,2019-06-24T01:04:48Z,2019-06-24T01:04:48Z,CONTRIBUTOR,"When you say PropertyString do you mean creating a new entry in the db? Or do you mean serializing the data and saving it in something that is already existing? Is there an example of something that is currently saved like this? That could also work but isn't sort of the same thing - just on a different (user controllable) timescale? The way it is setup now it forces the reload on log out (or total reload if the server crashes) which should create shorter 'unsaved' time periods. /ungod would just force the reload when the user chooses. I appreciate the feedback. I'm open to implementing this however we agree is best - or totally dropping it if we agree it is useless, or just too dangerous.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504855418,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504855418,MDEyOklzc3VlQ29tbWVudDUwNDg1NTQxOA==,8909245,2019-06-24T04:44:05Z,2019-06-24T04:44:05Z,COLLABORATOR,"in PropertyString.cs: ``` /* custom */ [ServerOnly] AllegianceMotd = 9001, [ServerOnly] AllegianceMotdSetBy = 9002, [ServerOnly] AllegianceSpeakerTitle = 9003, [ServerOnly] AllegianceSeneschalTitle = 9004, [ServerOnly] AllegianceCastellanTitle = 9005, [ServerOnly] GodState = 9006, ```","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504856223,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504856223,MDEyOklzc3VlQ29tbWVudDUwNDg1NjIyMw==,8909245,2019-06-24T04:48:50Z,2019-06-24T04:48:50Z,COLLABORATOR,"It's just that not saving 1 object in the world, but saving all the others, could possibly leave the world in a very inconsistent state For example, consider this scenario: i go into god mode, then I go through a lot of inventory state changes... I drop an item into the landblock, I give an item to another player. Then I log off. The state of the world would be: the item would be updated, and it would now be owned by the landblock/other player, but there would now be duplicate references to the item: the item would exist in the landblock / other player's inventory, but my own inventory would still contain a reference to it, so it might still appear there as well. There won't actually be a duplicate item, but it will be 2 inconsistent references to the same item, and this can throw all of the world data into an inconsistent state.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-504857231,https://api.github.com/repos/ACEmulator/ACE/issues/2027,504857231,MDEyOklzc3VlQ29tbWVudDUwNDg1NzIzMQ==,8909245,2019-06-24T04:55:06Z,2019-06-24T04:55:06Z,COLLABORATOR,"It's providing similar functionality, but doing it in a much cleaner / consistent way. The current implementation is bending over backwards to do very weird things that doesn't match up with the way things are designed. The state of the world should be a singular, consistent concept -- the idea of ""persist the entire state of the world, EXCEPT for these particular objects"" is not a good idea, and gets into lots of possible loopholes and inconsistent states in the data. There is no ""don't save this particular object to the db"" flag for individual objects for a good reason. This really should be a simple feature, and shouldn't require tendrils into all of the core / underlying systems on the server. The player goes into god mode, and at some time they might want to revert. So give them that ability to revert. Save the state of all the fields affected by god mode. Restore that state.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-507500810,https://api.github.com/repos/ACEmulator/ACE/issues/2027,507500810,MDEyOklzc3VlQ29tbWVudDUwNzUwMDgxMA==,26235642,2019-07-02T03:11:52Z,2019-07-02T03:14:13Z,CONTRIBUTOR,"i liked gm's approach so i ran with it i think this now gives the appropriate level of functionality without the danger of not saving to the db it could even act as a crude way to restore character templates with some tweaks","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589 https://github.com/ACEmulator/ACE/pull/2027#issuecomment-509895540,https://api.github.com/repos/ACEmulator/ACE/issues/2027,509895540,MDEyOklzc3VlQ29tbWVudDUwOTg5NTU0MA==,26235642,2019-07-10T03:44:49Z,2019-07-10T03:44:49Z,CONTRIBUTOR,anything else this needs?,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,459416589