Wajeeh Agbariya's Wishlist
-
XBuildingSkinMenu
XBuildingSkinMenu - building block skins menu for your server.
- Optimization of the interface for different monitor resolutions.
- Storing player data in - oxide/data/XDataSystem/XBuildingSkinMenu
- There is a lang ru/en/uk/es.
- Sound effects when interacting with the menu.
- Possibility to allow only the owner of the cupboard to paint the building blocks of the house.
- Possibility to paint building blocks only when authorized in the cupboard.
- Possibility to paint building blocks with a hit of a hammer.
[ Each player can turn on/off in the main menu for convenience. ]
- Possibility to paint building blocks when upgraded.
- Possibility to use effects when painting.
- Possibility to paint each house separately.
[ You can paint an unlimited number of houses at the same time. ]
- Plugin support - BGrade and IQGradeRemove.
- Chat messages about the started/completed of painting the house.
[ The number of painted building blocks. ]
- Chat messages about the started/completed of painting items/constructions inside the house.
[ The number of painted items/constructions. ]
- Chat messages: the house is already being painted - items/constructions in the house are already being painted.
- To paint the containers, the color chosen by the player through the Spray can is used.
- UI button for easy transition from the XBuildingSkinMenu menu to the XSkinMenu menu. [ And vice versa. ]
- Possibility to choose color in UI.
- Automatic replenishment of the configuration with new skins of building blocks.
- Permissions for each skin.
- Automatically reset selected skins from a player, if revoke away their permission.
Permissions
xbuildingskinmenu.use - access to plugin functionality. [ Skins menu, hammer, building, painting the whole house. ] xbuildingskinmenu.entity - access to painting items/constructions inside the house. [ Requires XSkinMenu plugin version 1.1.14 and above. ] xbuildingskinmenu.default - default permission for skins. Commands
/bskin - open the building block skins menu. API
ulong GetBuildingSkin(BasePlayer player, string grade) - returns the skin of the building block selected by the player. ulong GetBuildingSkin(BasePlayer player, BuildingGrade.Enum grade) - returns the skin of the building block selected by the player. ulong GetBuildingSkin(BasePlayer player, BuildingBlock block) - returns the skin of the building block selected by the player. Config
{ "General setting": { "Automatically add actual skins of building blocks to the configuration": true, "Only the owner of the cupboard can start painting the house": false, "Use effects when painting home": true, "Use effects when painting items/constructions in the house": true, "Use effects when painting building blocks by hitting a hammer": false, "Enable painting of items/constructions in the house using player skins from the XSkinMenu plugin": false, "Skins for buildings": { "Wood": { "0": { "ImageURL": "", "Permission": "" } }, "Stone": { "0": { "ImageURL": "", "Permission": "" }, "10220": { "ImageURL": "", "Permission": "xbuildingskinmenu.default" }, "10223": { "ImageURL": "", "Permission": "xbuildingskinmenu.default" }, "10225": { "ImageURL": "", "Permission": "xbuildingskinmenu.default" } }, "Metal": { "0": { "ImageURL": "", "Permission": "" }, "10221": { "ImageURL": "", "Permission": "xbuildingskinmenu.default" } }, "TopTier": { "0": { "ImageURL": "", "Permission": "" } } }, "Default skins for new players": { "Wood": 0, "Stone": 0, "Metal": 0, "TopTier": 0 } }, "GUI setting": { "Close the menu by tapping on an empty area of the screen": false, "Material_background_0": "assets/icons/greyout.mat", "Color_background_0": "0 0 0 0", "Color_background_1": "0.517 0.521 0.509 0.95", "Color_background_2": "0.217 0.221 0.209 0.95", "Skin background color": "0.517 0.521 0.509 0.5", "Background color of the selected skin": "0.53 0.77 0.35 0.8", "Close button (icon) color": "1 1 1 0.75", "Color of buttons in cupboard": "0.35 0.45 0.25 1", "Button text color in cupboard": "0.75 0.95 0.41 1", "Hammer button color - On": "0.35 0.45 0.25 1", "Hammer button text color - On": "0.75 0.95 0.41 1", "Hammer button color - Off": "0.65 0.29 0.24 1", "Hammer button text color - Off": "0.92 0.79 0.76 1", "AnchorMin - button 1": "0.5 0", "AnchorMax - button 1": "0.5 0", "OffsetMin - button 1": "395 621.5", "OffsetMax - button 1": "572.5 641.5", "AnchorMin - button 2": "0.5 0", "AnchorMax - button 2": "0.5 0", "OffsetMin - button 2": "395 646.5", "OffsetMax - button 2": "572.5 666.5" } } -
XWipeCalendar
XWipeCalendar - beautiful calendar for your server.
- Optimization of the interface for different monitor resolutions.
- There is a lang ru/en/uk/es.
- Automatic calendar generation.
- Display for one day several events.
- Possibility to create N events.
- Possibility to set the calendar for the whole year.
- Ability to view customized months.
Permissions
xwipecalendar.use - permission to view the calendar. Commands
/wipe, /calendar - open calendar. Config
{ "General settings": { "Close the calendar by tapping anywhere on the screen": false, "Timezone - UTC+0:00": 0, "Use local computer/hosting time. [ Requests to an external time service and time zone will be disabled ]": true }, "Settings GUI": { "Background color_1": "0.517 0.521 0.509 0.95", "Background color_2": "0.217 0.221 0.209 0.95", "The color of the numbers of the current month": "1 1 1 0.75", "The color of the numbers of the next month": "1 1 1 0.1", "Block color": "0.417 0.421 0.409 0.95" }, "List of events. Description of events - oxide/lang/(ru/en/uk/es)": { "1": [ ... ], "2": [ ... ] }, "Time": "2024-00-00T00:00:00.00" } -
Building Symmetry
This plugin introduces symmetry features to streamline construction and upgrade processes. Choose from various symmetry shapes, including Square, Triangle, and Hexagon, and select symmetry types such as Normal2Sided, Normal3Sided, Normal4Sided, and Normal6Sided. Automatically mirror building actions across symmetrical axes for efficient base design and upgrades, including automatic building shape detection for Square, Triangular or Hexagonal bases, it has a user-friendly interface to enhance your building experience in Rust. Seamlessly toggle between symmetry shapes and types with the intuitive UI, providing precise control over your construction projects.
Symmetry Features:
* Support for Square, Triangle, and Hexagon symmetry shapes.
* Choose between Normal2Sided, Normal3Sided, Normal4Sided and Normal6Sided symmetry types.
* Mirror building and upgrade actions across symmetrical axes.
* "R" Key + Hammer in hand -> removal tool. (Remove the entity/structure you're looking at).
UI Features:
* Shape Selection: Easily switch between Square, Triangle, and Hexagon symmetry shapes.
* Type Selection: Choose from Normal2Sided, Normal3Sided, Normal4Sided and Normal6Sided symmetry types. (Depends on the symmetry shape.)
* Enable and Disable symmetry
* Reset Symmetry: Reset the symmetry information (shape, type, position)
* Show center: Display the symmetry center.
* Symmetry Hit Center Build Calculation (Building or Proximity)
Chat Commands:
* /sym_ui: Enable/Disable symmetry UI (Enabled by default).
Console Commands:
* sym_reset: Reset the symmetry information.
* sym_shape: Change the symmetry shape.
* sym_type: Change the symmetry type.
* sym_displaycenter: Display the symmetry center position.
* sym_status: Enable or Disable symmetry.
* sym_ui_pos: Allow players to move the UI position freely.
* sym_ui_reset: Reset the UI position to default position.
Permissions:
symmetry.use symmetry.admin Oxide: o.grant <user/group> <name/id> symmetry.use Carbon: c.grant <user/group> <name/id> symmetry.use
Config:
{ "Removal Tool (Def: true)": true, "Open Symmetry UI on Connect (Def: true)": true, "Symmetrical Upgrade (Def: true)": true, "UI Menu X Position (def: 0)": 0.0, "UI Menu Y Position (def: 0)": 0.0, "Check Building cost (def: false)": false, "Check for Deployables before placing (def: false)": false, "Display center functions (def: false)": false, "Disable Symmetrical entity kill": true, "Symmetry UI Command": "sym_ui", "Symmetry Admin UI Command": "sym_admin", "Symmetry UI X/Y Position command": "sym_ui_pos", "Symmetry UI Position reset command": "sym_ui_reset", "Enable Entity Shortname check? (def: false)": false, "Entity Shortnames to check if they're grounded.": [ "box.wooden.large", "box.wooden", "storage_barrel_a", "storage_barrel_b", "storage_barrel_c", "gates.external.high.stone", "wall.external.high.stone", "gates.external.high.wood", "wall.external.high", "wall.external.high.ice", "wall.ice.wall" ] }
Showcase videos:
-
Auto Wipe
Auto Wipe - This plugin allows to schedule regular wipes, including map, blueprint, and data resets. It offers customizable settings for wipe intervals and automated backups to prevent data loss. This plugin will simplify the maintenance process and reduce administrative workload.
What this plugin can do?
Create specific wipe schedules for daily, weekly and monthly basis. Wipe oxide(config/data/logs/plugins)/map files. Create backups of data/map files. Send discord wipe message using tool: https://discohook.org/ Do files replacements during wipe. (In case if you want to load new config files for new map) Set own startup ConVars such as 'server.seed', 'server.levelurl'. No additional scripts or harmony mods required, everything plugin based.
How it works?
When the wipe preset schedule is enabled and matched, the plugin sends a restart command. During server startup, it deletes all configured files before they are loaded by other plugins or the server itself and executes all commands from the preset. It is recommended to have software or a batch file that will automatically start the server after shutdown because the "restart" command only shuts down the server without restarting it.
CONFIGURATION
{ "Wipe restart seconds": 10, "Enabled wipe presets": [ "monthly", "biweekly", "weekly" ], "Backup files before wiping them?": false, "Discord webhook url": "", "Wipe presets": { "weekly": { "Identity/Map files that should be wiped.": [ ".sav", "player.deaths.", "player.identities.", "player.states.", "player.tokens.", "sv.files." ], "Oxide files that should be wiped.": [ "data/WIPE", "config/wipe.json", "logs" ], "ConVar commands (executed on server start)": [ "server.level \"Procedural Map \"", "server.seed \"55555\"", "server.worldsize \"400\"", "server.saveinterval \"300\"", "server.levelurl \"\"" ], "Wipe commands (executed on server full load)": [ "test command here", "and another one" ], "Is wipe preset persistent, if true it won't be auto removed after executed.": true, "Wipe schedule": { "Schedule frequency (Daily, Weekly, Monthly)": "Weekly", "Time of day in local time or UTC": "11:31:00", "Day of week for weekly/monthly frequency (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)": "Friday", "Number of Matching Days? Sets the number of days per month to match the given criterion (default is 1).": 1, "Use UTC time? (If false, local time will be used)": false, "Time since map file creation time, for FileTime frequency.": "00:00:00" }, "Discord wipe announce message files (data/AAutoWipe/filename.json) (Use: 'https://share.discohook.app/go/j1elnjf1' to get json)": [ "weeklywipe" ], "File replacements (SUPPORTS ONLY ZIP)": [ { "Zip source file (Located in data/AAutoWipe/filename.zip)": "test", "Destination (from root folder)": "oxide/" } ] }, "biweekly": { "Identity/Map files that should be wiped.": [ ".sav", "player.deaths.", "player.identities.", "player.states.", "player.tokens.", "sv.files." ], "Oxide files that should be wiped.": [ "data/WIPE", "config/wipe.json", "logs" ], "ConVar commands (executed on server start)": [ "server.level \"Procedural Map \"", "server.seed \"55555\"", "server.worldsize \"400\"", "server.saveinterval \"300\"", "server.levelurl \"\"" ], "Wipe commands (executed on server full load)": [ "test command here", "and another one" ], "Is wipe preset persistent, if true it won't be auto removed after executed.": true, "Wipe schedule": { "Schedule frequency (Daily, Weekly, Monthly)": "FileTime", "Time of day in local time or UTC": "11:31:00", "Day of week for weekly/monthly frequency (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)": "Friday", "Number of Matching Days? Sets the number of days per month to match the given criterion (default is 1).": 1, "Use UTC time? (If false, local time will be used)": false, "Time since map file creation time, for FileTime frequency.": "14.00:00:00" }, "Discord wipe announce message files (data/AAutoWipe/filename.json) (Use: 'https://share.discohook.app/go/j1elnjf1' to get json)": [ "weeklywipe" ], "File replacements (SUPPORTS ONLY ZIP)": [ { "Zip source file (Located in data/AAutoWipe/filename.zip)": "test", "Destination (from root folder)": "oxide/" } ] }, "monthly": { "Identity/Map files that should be wiped.": [ ".sav", "player.blueprints", "player.deaths", "player.identities", "player.states", "player.tokens", "sv.files" ], "Oxide files that should be wiped.": [ "data/Kits/kits_data.json", "data/wipe", "config/wipe.json", "logs" ], "ConVar commands (executed on server start)": [ "server.level \"Procedural Map\"", "server.seed \"55555\"", "server.worldsize \"400\"", "server.saveinterval \"300\"", "server.levelurl \"\"" ], "Wipe commands (executed on server full load)": [ "test command here", "and another one" ], "Is wipe preset persistent, if true it won't be auto removed after executed.": true, "Wipe schedule": { "Schedule frequency (Daily, Weekly, Monthly)": "Monthly", "Time of day in local time or UTC": "14:00:00", "Day of week for weekly/monthly frequency (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)": "Tuesday", "Number of Matching Days? Sets the number of days per month to match the given criterion (default is 1).": 1, "Use UTC time? (If false, local time will be used)": true, "Time since map file creation time, for FileTime frequency.": "00:00:00" }, "Discord wipe announce message files (data/AAutoWipe/filename.json) (Use: 'https://share.discohook.app/go/j1elnjf1' to get json)": [ "monthlywipe" ], "File replacements (SUPPORTS ONLY ZIP)": [ { "Zip source file (Located in data/AAutoWipe/filename.zip)": "test", "Destination (from root folder)": "oxide/" } ] } } } COMMANDS
autowipe.run <preset name> - runs auto wipe preset
CONTACTS
Need help or custom plugin for your server?
Contact me using Discord: metangerine
----------------------------------------------------------------------
-
Caravan
This plugin will add Caravans to your server that will attempt to transport valuable loot along the roads. Carriages are used to transport goods along the roads as configured, pulled by Horses. These convoys are accompanied by NPCs, Riders, and Balloons! By default, the plugin comes with 3 different caravan presets.
The easiest caravan will be fun for early wipe and allows some basic loot for low effort Caravan raids. In order to rob the most difficult caravan, players will need to be tactical about their ambush and it will be much more challenging! The road selection system can make the Caravan less predictable as the NPCs try to find a safe route.
The Caravan can traverse any road type, including good old country dirty roads. You can set up timers for each preset in the config file, to keep the more difficult Caravan from showing up until later in a wipe!
Riders
These can be very dangerous opponents! Unlike regular NPCs, they will quickly close the gap continually shooting at the players as they ride! Riders can be especially effective using short ranged weapons, they are deadly with a shotgun!
Balloons
These are mobile sniper towers on which several NPCs can be placed. In the config, armor can be added to the balloon, greatly increasing the protection for the Caravan snipers.When the caravan stops, Balloons will start moving around randomly, making it more difficult for players to hide! After defeating all of the snipers, Balloons will fall to the ground and explode.
Required Dependency (must install this free plugin)
NpcSpawn – link is included and can be found in the ReadMe file included with download
Chat commands (admin only)
/caravanstart - launches the event using a random preset based on your configuration /caravanstart PresetName - add the name of a preset from the configuration to launch a specific preset /caravanstop - stops the event /caravanroadblock - the event will not be held on the road where you are standing (clear the Blocked roads section of config when you change maps) /caravanpathstart - stand at starting point and enter command to start recording a custom route /caravanpathsave RoutePresetName - to save a custom route (enter anything you'd like in place of RoutePresetName) /caravanpathcancel - to reset the route
Console commands (RCON only)
caravanstart - launches the event using a random preset based on your configuration caravanstart PresetName - add the name of a preset from the configuration to launch a specific preset caravanstop - stops the event
Plugin Config
en – example of plugin configuration in English ru – example of plugin configuration in Russian
Hooks
void OnCaravanStart() - сalled when a caravan appears void OnCaravanStop() - сalled when a caravan disappears void OnCaravanEventWin(ulong userId)
Check out the rest of my work: Adem's Codefling Library
You can reach out to me in Discord: Adem's Discord Profile
Thanks to Jbird for writing, translation, & support: Jbird's Discord Profile
Join the Mad Mappers Discord!