Login [Register]
Don't have an account? Register now to chat, post, use our tools, and much more.
Have you ever been looking for a specific item and just couldn't find it? Do you feel like you've looked in the same chest for the 5th time and are about ready to burn the whole house down out of pure anger?

Well I did, and I decided to do something about it!

This plugin allows you to find all chests within a certain radius that contain the item you're looking for.

Most bugs have already been ironed out with the help of Monkey0x9. So if anyone wants to check it out, I can open a server tomorrow.

GitHub source: https://github.com/lennartVH01/ItemFinder

Screenshot
I've had this thread open for a while, because I think this looks like an amazing plugin, and definitely something I want to support on Cemetech if it's feasible. Does it require a server-side component, a client-side component, or both?
It's entirely server-side, the chests are marked by sending the player fake invisible glowing magma cubes.

I'm currently still finishing up with the WorldGuard/Towny integration, after that I'll post in the skype group for doing a demo/final test.
I can see this being helpful for admins. I assume users will only be able to see items within their own town?

Are there permissions to extend the reach for admins? Such as if I know Player X stole diamonds and they put them in a chest in his base, can I search for that block and find that chest? I know log block does this to a degree but I really love visual stuff and I can see this being a helpful graphical front end for LogBlock, instead of their system of just dumping stuff in the chat box.

I'm not saying to integrate with LogBlock, though that could be awesome, but I would totally use this to find items in chests over LogBlock.
Alex wrote:
I can see this being helpful for admins. I assume users will only be able to see items within their own town?


I actually intended it to just exclude towns/regions to which the player does not have access. Currently, if a player can open a chest, it can also be found by ItemFinder. This is of cource something that could made configurable down the line.

Alex wrote:
Are there permissions to extend the reach for admins? Such as if I know Player X stole diamonds and they put them in a chest in his base, can I search for that block and find that chest?


Yes, quite literally. ItemFinder.find.admin removes the maximum search radius. It also skips the WorldGuard/Towny permission checks. Just in case they have a fight over who can build where. Razz

Alex wrote:
I know log block does this to a degree but I really love visual stuff and I can see this being a helpful graphical front end for LogBlock, instead of their system of just dumping stuff in the chat box.

I'm not saying to integrate with LogBlock, though that could be awesome, but I would totally use this to find items in chests over LogBlock.


I doubt it's possible to inject the display code into LogBlock during runtime, but a custom LobBlock build would be perfectly feasible.
LennartVH01 wrote:
It's entirely server-side, the chests are marked by sending the player fake invisible glowing magma cubes.
Brilliant!

I'm really glad you're including Towny support; that's beautiful. And I see that you're doing testing now, so if no one responds to me before I finish testing, I'll edit this with my feedback.

Edit: Just tested it; really great development and design work. We discussed a few potential feature additions and bug-fixes:
  • Also searching the player's inventory and Ender Chest inventory, and mentioning in the chat if the item in question was found in those place(s).
  • Checking the chest-access flag instead of the build flag in WorldGiarded areas. Unfortunately, it seems like there might not be an API to actually access this?
  • Axis-aligning the invisible magma cubes to the X and Z axes. This seems like an extremely minor issue and not worth a ton of effort.
  • Possibly added a maximum radius even for administrators, to prevent clumsy administrators (Rolling Eyes) from crashing the server by accident.
I don't think I'm a fan of having the ItemFinder plugin announcing where a user found an item. Unless that's something only that player can see?

KermMartian wrote:
Possibly added a maximum radius even for administrators, to prevent clumsy administrators (Rolling Eyes) from crashing the server by accident.


I have no idea who you could be referring to.
Alex wrote:
I don't think I'm a fan of having the ItemFinder plugin announcing where a user found an item. Unless that's something only that player can see?


The chests are marked per player, two players can even be searching the same chests and each would only see their respective selection.
Yes, I get that but Kerm said, as a suggestion:

Quote:
Also searching the player's inventory and Ender Chest inventory, and mentioning in the chat if the item in question was found in those place(s).


I'm not a fan of that. I don't care what someone searched or where it was found. I think it should be logged in the console, perhaps, but not broadcast to all players. But I assume he means informing the player privately, much like LogBlock informs me privately in the chat.
ItemFinder has been "close to release" for long enough, so after finishing up today I've finally released it on GitHub.

Some changes since the last version:
  • Searching the player's inventory and enderchest.
  • It now checks WorldGuard's chest-access flag instead of the canBuild function
  • SuperMax radius for admins of 1000 blocks (just shy of crashing a small server Razz)
  • Recursively searching ShulkerBoxes in chests

Most major bugs should be fixed, but there's probably still a few small ones left unsquashed. Which is why it's marked as a pre-release.

I intend to keep in in pre-release for about 2 weeks just so we can get some actual use testing done before the main release.

If you find any bugs, please either let me know in chat or place a bugreport on ItemFinder/Issues
Congratulations on releasing this, sir! It has been installed on the Cemetech server, and I look forward immensely to using it during my build projects. Thank you for putting good documentation in your repository, as well. We'll keep you posted on positive and negative experiences with it.

Edit: Lennart himself managed to trigger the first error:
Code:
[elided]
Turns out that it was a Java 7 vs. Java 8 issue, and should be fixed now.
Say I wanted to install this for when I am playing a local game; what are its dependencies?
It only requires Bukkit/Spigot to run. If you have WorldGuard or Towny installed it'll tap into their permissions so that only containers that can be opened by a given player can be found by the plugin.

After some testing on cemetechMC we found a few bugs in v1.0-alpha, so I reccommend using 1.0-alpha-2 once it's released later today.
Some people seem to have issues when using /find together with Optifine, where the found chests don't mark properly and they are marked with solid white cubes, this is entirely to blame on optifine, to fix it, simply go to Options->Video Settings->Performance and turn Fast Renderer OFF

Before:


After:
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are GMT - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement