BetterTC

BetterTC 1.6.4

✅ COMPATIBILITY WITH FACEPUNCH NEW POLICY

As some of you may already know, Facepunch has updated its server policies regarding the distribution of paid content.
Servers are no longer allowed to provide paid Skins or DLC for free to players who have not purchased them legitimately.

You can read the updated policy here: https://facepunch.com/legal/servers

Because of this, BetterTC has been updated to fully comply with the new guidelines:

✅ Skin ownership validation added:

Only the following will be shown or usable:
  • Building skins, Tool Cupboard (TC) skins, and Wallpapers that the player legitimately owns in their Steam inventory.
  • Any existing free skins.
Key notes:
  • All available building skins will still be shown, but players can only use them for upgrading or reskinning if they own them or they are free.
  • Only free, custom, and owned wallpapers will be visible. More custom wallpapers coming soon.
  • TC skins will only be visible and selectable if the player owns them.
✅ New configuration option:
"Bypass DLC ownership check (⚠ only allowed on creative/test servers per Facepunch rules)": false,

⚠️ VERY IMPORTANT
This option should only be enabled on creative or training servers. Using it on public PvP or PvE servers violates Facepunch’s policies and may result in your server being penalized or blacklisted.
You’ve been warned!
  • Internal update of the external wooden wall skin, which was initially called Frontier and is now named Legacy. You may need to click the blue CheckUpdate button to fix the icon.
  • Compatibility fix with IQGradeRemove.
  • Compatibility fix with WallpaperPlanner.
  • Compatibility fix with SimpleSymmetry. Thanks to Shady and SiCkNeSs!
  • New custom wallpapers added, created by BOOBLEJ.
  • I've migrated the API used to retrieve the latest internal updates to a CDN. This will offer greater availability and reduce the number of issues when performing checks.,
  • I've changed the way the previous check is performed, which corrects the Tick Rate expulsions. I would recommend that admins experiencing this issue try this now and let me know if the problem is 100% resolved.,
  • The container skin color images have been replaced with actual colors, so now 15 images with the colors aren't downloaded (optimization).,
On another note, I'm aware that the default wallpapers sometimes seem to spawn randomly in some builds, without any sense. I ask that any clients who experience this issue please privately provide me with the list of plugins related to the build they have on their server. This may help me replicate it on my server.
Another update on the same day, but I think it's important for servers that have the bettertc.wallpaper.nocost permission enabled.

Now, if a player has this permission enabled and tries to pick up a wallpaper, they won't be given cloth when they pick it up. If you use this permission for a player group, it's recommended that you apply it to the default group so that there aren't players who can get the cloth while others can't.

I've also patched a minor bug that occurred when placing wall wallpapers. The sound effect wouldn't play, and wallpaper protection wouldn't be applied if it was enabled.

I've released a lot of updates lately; I recommend checking out the changelog since 1.5.0.
Thanks to @BoobleJ, scaling support has been added for buttons in the TC interface.

For this reason, this update will update the positioning values in the config. If you use other plugins that add buttons to the interface, you'll need to adjust the new fields:

"GUI Buttons TC - OffsetMin": "280 621",
"GUI Buttons TC - OffsetMax": "573 643",

If you're not familiar with these values, here's a brief explanation:

280 -> Horizontal Left
573 -> Horizontal Right
621 -> Vertical Down
643 -> Vertical Up

If you need help adjusting this, I'll be happy to help you on my Discord.
THIS FIXES A SMALL VISUAL BUG WITH WALLPAPERS CAUSED IN VERSION 1.5.1
  • I've had to remove the feature added in version 1.5.1 that caused all wallpapers to face the same direction. This was causing bugs when the foundations were in different positions. It's not an easy task to tackle, so I'd better remove it.
  • Instead, I've added a chat command (with BetterTC admin permission): /wphammer that will spawn a special wooden hammer.
  • I've also added a console command wphammer <playername or steamid> in case you want to add it to a Shop or CraftPanel.
With the hammer, players can rotate wallpapers to the correct position simply by hitting them. The current hammer skin is a placeholder; I hope to add the final one later. (If anyone wants to make a skin for this, we can talk about it.)
- Ceiling wallpapers are now applied to roofs.
- Wallpapers are now always placed with the same rotation for square foundations and floors. This doesn't apply to triangular ones; I tried but couldn't get it to work properly.

Please read the entire changelog for version 1.5.0 as it was a major update.
BIG UPDATE. READ EVERYTHING CAREFULLY. DO NOT UPDATE BEFORE THE JUNE UPDATE.
  • The Wallpaper system has been reprogrammed to make it compatible with the new Roof and Floor Wallpapers.
  • Wallpaper types are now filtered in the GUI, and custom Wallpapers now have a check icon that distinguishes them from the game's original ones.
  • The game's own Wallpapers are now fully loaded directly from the game itself. In other words, I no longer have to manually add any new ones that may be added in the future.
  • Custom Wallpapers (the ones I create) are now stored in a new Data file. It is not necessary to delete this file during Wipes. However, all custom wallpapers that existed before are no longer compatible, so I had to update them so they load again.
  • [Added Suggestion] And now that we have a data file to store them… you can add and delete your own Wallpapers! To do this, you need to have the bettertc.admin permission enabled, then use a new chat command I’ve added for this purpose. Or use it through the console… To delete, simply click the red X button (my custom wallpapers are persistent — even if you delete them, they will return). It is very important that the Wallpaper is updated, otherwise it will not load on the wall.
Chat Command:
  • Usage: /addwp <skinid> <Wall|Floor|Ceiling>
  • Example: /addwp 3356517390 Wall
Console Command:
  • Usage: addwp <skinid> <Wall|Floor|Ceiling>
  • Example: addwp 3356517390 Wall

  • A new permission has been added to allow players to see custom wallpapers. Make sure to grant the new permission: bettertc.wallpaper.custom so players can view them.
  • The Frontier Wooden External Wall skin has been added. It can now be swapped with the regular wooden wall skin. Thanks to bmgjet for the patch that fixed the spawn issue with these walls. This skin is not officially available in the game.
  • The Ice External Wall skin has also been added. This skin is officially available in the game during Christmas.
  • Now, when changing the skin of external walls, the entity is no longer fully repaired for free (exploit prevention); it retains the same health it had before.
  • I also fixed a reported bug where, if the player didn’t have the bettertc.tcskindeployed permission, changes allowing certain items in the TC wouldn’t apply. This should now work correctly, even if the TC skin is changed using the spray can.
  • [Added Suggestion] A new config parameter has been added: "Wallpaper Damage": true. When set to false, wallpapers cannot be broken by melee or bullets. However, they can still be destroyed with C4 or rockets. Completely blocking damage is more complex and, in my opinion, unnecessary.
  • [Added Suggestion] The repair system has been optimized and a new config parameter has been added: "Repair Cooldown After Recent Damage (seconds)": 30.0. This helps prevent repair abuse during raids. With this setting, recently damaged structures cannot be repaired immediately.
  • [Added Suggestion] Compatibility with Carbon’s Image Module. Now, if your server runs Carbon instead of Oxide, it will use Carbon’s integrated module instead of Image Library.
  • [Added Suggestion] A new parameter has been added to disable the multicolor option for the Container skin. Disabling this option (enabled by default) will slightly improve FPS in buildings that use this skin: fewer colors = better performance.

I hope you enjoy all these improvements, to which I’ve dedicated a lot of time. Feel free to share your reviews and opinions to let me know what you think.

Finally, I hope you won’t be misled by other similar plugins that keep copying every improvement I add.

If you're interested in creating Custom Wallpapers for your server:
In this version, compatibility for external wall skins has been added. External walls function differently from regular building blocks, so I had to implement a separate system for them. To support this, I’ve added a button within the existing skin menu that displays the external wall icon.

This feature will reskin external walls placed by the player who activated the function, as well as those placed by their team members. Only walls within the distance defined in the configuration—measured from the Tool Cupboard—will be affected.

IMPORTANT:​

Be aware that this reskin feature is currently free and does not require any resources. I may implement a cost system in the future to avoid potential abuse.

EVEN MORE IMPORTANT:​

Delete your current config file before updating the plugin. If you don't, you may run into issues.

Configuration parameters added with this update:
  • "Reskin Wall Enable": true // Enables or disables the external wall reskin button globally
  • "Only reskin on wall of the same grade": false // Prevents changing between incompatible wall types
  • "Reskin Wall TC Distance (Default: 150)": 150.0 // Don't go overboard with this distance; it could be problematic
  • "Wallpaper Enable": true // Enables or disables the wallpaper feature button globally

A new permission has been added so that only selected players can use this new feature: bettertc.upwall
Fix after today's update, Thursday, April 3rd.