TexturePackMenu
Download Latest Release
Source available on GitHub (open source, pull requests accepted)
View Changelog
IMPORTANT NOTE: Spout is required and this will only work for players using the Spoutcraft client.
Description
This plugin will override the player's normally chosen texture pack while they are on your server. They will be set to a default texture pack of your choice when they first connect, after which they can choose from a list of available texture packs you have selected. After they choose a different texture pack from your list, their choice will be remembered on subsequent logins.
This will allow you to prevent players from using transparent texture packs to cheat (finding ores and hidden chests easily), and allow players to switch between popular texture packs without leaving the server.
Command
/texture - show the texture pack selection menu. In-game players only.
/texture reload - reload the texture pack list from config.yml.
/texture reset <player> - reset the texture pack for the specified player to the server default. This can be useful if a player selects a texture pack which is larger than their allocated memory can handle.
Permissions
These are "superperms" (built-in Bukkit) permissions, so older Permissions plugins will not be able to affect them.
texturepackmenu.texture (granted by default) - allows the use of the /texture command. Since it is granted by default to all players, if you don't want certain players to be able to use it, you will need to revoke the permission.
texturepackmenu.reload (default Ops and server console only) - allows use of the /texture reload command.
texturepackmenu.reset (default Ops and server console only) - allows use of the /texture reset <player> command.
Setup Info
To require that players use the Spoutcraft client on your server, you can set this option in Spout's config.yml file:
ForceSinglePlayerClient: true
You will need to edit the default config.yml for this plugin to contain a list of texture pack names and download URLs that you have chosen. Editing the file should be pretty straightforward, as it is formatted for ease of modification. You can see the default config.yml file here.
It is even possible to allow players to keep their own texture pack by default (instead of overriding it) and essentially just use the plugin to showcase other texture packs.
If you appreciate this plugin, you are welcome to .
Thanks to the following people who have been gracious enough to donate: Jeremie Swartz
@THEfunnplayer111231
This plugin depends on several features provided by Spout and the Spoutcraft client, which were last updated for Minecraft 1.6.x versions. They weren't updated beyond that.
I see that the Spout domain is no longer up, so even those versions of Spout and Spoutcraft no longer seem to be available. That being the case, I'm going ahead and marking this project as abandoned.
why not 1.10 update now?
Why is this plugin so outdated! Cannot download...
It depends on functionality that was provided by Spout/Spoutcraft, which has been long since abandoned.
Something like this might eventually be possible through Sponge. Whatever the case, my source is available for anyone wanting to adapt it for another platform which provides the functionality.
@Dyrocraft
The source is already available on GitHub at the link above.
I don't have a problem with maintaining the plugin for compatibility, but generally it doesn't need updating between versions of CraftBukkit / Spout. I don't really have time to spend checking each version of Spout to make sure it still works, so I depend on somebody posting that there's a problem if it breaks with a specific version.
EDIT: by the same token, I depend on someone posting that it does work before I'm comfortable updating the compatible CraftBukkit version number listed for the latest download.
Its a shame to let a plugin like this be abandoned, will you be keeping the version up to date? If you'd like I could update things for you. Just pm the download link for the project and ill be more than happy to update this plugin and keep it alive.
@anavirn80
I'm no longer actively developing new features for this plugin, sorry.
Hi
Is it possible to upgrade it to force player to use a specific texture pack per world ? It would be very nice
I was having a famous mine craft server 1 year ago and a plugin was doing this with spout, but i can't find him... A lot of things has changed in bukkit and spout.org :/
PS : i'm using multiverse, last beta of bukkit and last spout version
@AStrongerFellow
Just specify the desired texture pack as the very first one in the list (you may have "player choice" there) and it will be set when they connect in to your server.
Of course if you really want to force it on everyone, as covered in the info above, you'll need to require all your players use the Spoutcraft client.
@Brettflan
Thank you. Another question, how do I force a certain texture pack to load upon joining? I have set all the links in the config to the texture pack I want. And it will load if I do /texture then select it. But how can I make it so that when they enter the server a certain texture pack is forced?
@AStrongerFellow
Yes, though at this point I'm leaving it up to users to report any problems that might crop up before I investigate and fix them. I don't really have the time or desire to actively test it out with every new CraftBukkit and Spout release.
Is this still being updated?
I love that you've already got this updated to 1.4.5...just wish there was a 1.4.5 client :/
MC
@lANTHONYl
Sure, thanks.
@Brettflan
Yes, that was a more direct response to the issue i am presenting. Previous response have seemed to focus on the downloading of texture packs.
Thank you for persevering through these comments, and thank you again for your commitment to continue with bug fixes and compatibility updates. I appreciate your work and dedication.
@lANTHONYl
I do understand what you're saying; I'll try one last time. There is no way to tell through a plugin (such as this one) what texture pack the user currently has loaded, unless they've added that feature since I last checked. Once again, that would be up to Spout/Spoutcraft to see that they're already using the texture pack specified by the plugin and not bother reloading it on the user's end.
@Brettflan
I appreciate your commitment to continue with bug fixes and compatibility updates. Furthermore, I intend to support plugins that my server utilizes. However, my server is still in development and has no players. Also, I know a "promise to support" does you no immediate good, so please accept my sincere appreciation.
Now, it is clear that you are misunderstanding my comment, maybe I didn't provide enough clarification. There is no issue with the packs being downloaded if the connecting client already has it. The issue is that clients are loading the texture pack, even if it is currently loaded. I turn on spoutcraft and i have the KoP 128 texture pack as my default. It's already loaded. When i join my server, the KoP 128 texture pack gets loaded again because that is what TexturePackMenu has as the default. The client has a momentary freeze while the texture pack is initialized. There should be no need to re-initialize the texture pack since the client already has it as the active texture pack.
Spout already checks for an existing properly-named texture pack on the client side and does an MD5 checksum to verify that it's the same as the one on the server. It should then allow the client to load their existing copy without having to download it from your server again. I just explained that below, but maybe I didn't provide enough clarification. If that feature is not working, yet again, that should be on Spout.
Beyond that, I don't have any real interest in doing any further major development of this plugin beyond bugfixes and compatibility updates. That's it. I no longer run a server, and only a single person ever showed any interest in actually supporting the development of this plugin via donations, so I have better things to spend my time on. Sorry.
If you want to pursue it further with the Spout team, help yourself. I accept reasonable pull requests, so if you come up with an improvement and would like to share it with others, feel free to submit one.
@Brettflan
I asked in #spout about a way to verify the texture pack a client has loaded. DDoS said to open a ticket on the issue tracker. I don't know if you have an accout there, but if you do, maybe open a ticket to request a way to verify the currently loaded texture pack client side. I don't have an account there so he suggested i post to the forum.
@lANTHONYl
Cool, thanks for testing it. I'll go ahead and release 1.0.9 officially in a bit.
I understood what you were saying, and as I said that should be handled by Spout+Spoutcraft.