Sometimes I end up crafting items that are complete nonsense, neither fun nor useful, they just clutter up my inventory and I want to get rid of them. So I periodically dump the contents of my local storage into my text editor, manually remove the unwanted entries, and then load the edited data back into the game.
Needless to say, it's a pretty tedious process. I feel like I should be able to do something this basic right out of the game, in an easier way.
The basic idea
Add a simple way to delete items from your inventory
The problems
I'm not sure what a good implementation might look like from a functional point of view, so let's start by looking at the potential problems and limitations and see if we can come up with an approach that overcomes them:
- Players must not be able to accidentally delete items.
- On the other hand, players with a lot of crap in their inventory must still be able to remove a lot of items seamlessly (e.g. not be bothered with a confirmation popup every time).
- For very long lists of items, simply removing an item from the DOM could be a problem performance-wise, as the browser will have to re-render each subsequent item.
Implementation idea
Given the above, I'm convinced that deleting should be done in batches. One approach (which could also be the starting point for introducing other features) would be to allow the selection of items, and then have a button to delete the selection, similar to what you have with a mailbox: you select all the emails you want to get rid of, then hit the trash button.
This would prevent accidental deletions: the user would have to select the items AND click the delete button. You could even add a confirmation popup if you like; it shouldn't bother people with a lot of stuff to delete too much, as it would only show up once. And the DOM will only suffer once, rather than flickering and lagging after every single removal.
What do you think?