Fix oversight in #53 #55
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The security patch made in #53 made one slight oversight when patching the exploit allowing cheaters to open any inventory by simply overriding client code.
This oversight was that temporary stashes don't have their type set to
stashbuttemp, this causes the script to treat it like a person exploiting and will drop the player.To address this, a simple condition was added to the type check to exclude the case when the found inventory type is
tempand the requested one isstash.Another viable approach would be to alter the creation of temporary stashes to have their type be
stashbut this would require some changes to theInventory.Createto adapt the passed variable if it'stempto stash. This shouldn't cause breaking changes at first glance, but it does alter a core system which I don't think is the ideal solution for this hotfix.