Project details
Project: MyPlayerBuilds
dev language: c# oxide
Plugin language: en, de
Author: Danevi / RustFlash — v2.2.0 Author: @RustFlash
MyPlayerBuilds is a Rust plugin that allows players to save, load, list, and delete their own bases—per player, including limits, cooldowns, and optional backups. It uses the CopyPaste plugin for the actual copying/pasting. If CopyPaste is missing, the plugin will unload immediately.
OnCopyFinished, file is copied to a player-specific folder; when loading, it is temporarily written to the CopyPaste directory and then cleaned up again./save.[a-zA-Z0-9_-]+), look at building blocks for saving, ground for loading; timeout fallback if the copy hook does not fire./save <name> [copy-args…] Saves the base when you view a building block. Enforces name regex, max base limit, and cooldown; sets a pending save, triggers copy, and waits for OnCopyFinished (10 s timeout).
/load <name> [paste-args…]
Loads the base at the ground position you are looking at. Copies the player file to copypaste/ and executes paste. Without additional arguments, autoheight true is set; followed by a success message + hook, cleanup of the temp file.
/listbases
Lists the player's saved bases.
/deletebase <name>
Deletes the named base file and removes the entry from the player data.
myplayerbuilds.use – Required for all chat commands.myplayerbuilds.admin – only for console commands (debug/test). Both are registered during init.MyPlayerBuilds.json (in the config folder) controls limits, cooldown, backups, and debug logs.
{
“Maximum bases per player”: 10,
“Save cooldown in seconds”: 60,
“Enable automatic backups”: true,
“Debug mode”: false
}
oxide/data/MyPlayerBuilds/<steamid>/<name>.jsonoxide/data/copypaste/<name>.jsonmyplayerbuilds.debug on|off – Toggle debug logs.myplayerbuilds.testload <playerId> <baseName> – Check file/existence/size, content preview (first 200 characters).myplayerbuilds.listsaves <playerId> – List all saved bases for a player.SavePlayerBuild(userId, baseName, buildData) : boolGetPlayerBuild(userId, baseName) : string|nullGetPlayerBuilds(userId) : List<string>English + German out-of-the-box (lang keys stored in the code).
load, run, enjoy 💝