Zilch's Wishlist
-
Clans
Clans gives your players one menu for everything a clan does: create it, invite people, hand out roles, make alliances, set gather quotas and clan skins, and check where the clan sits in the top. If you run ServerPanel, the menu opens inside it as its own category and matches your template, V1, V2 or V4. Without ServerPanel it opens fullscreen, in the Old Style or the New Rust look.
Clans also takes over Rust's own clan system. The F1 clan menu, the clan chat tab, clan names on the map and Rust+ all show Clans data, and in-game clan score events count toward your clan rating. Players get one clan, not two that disagree with each other.
Clan leaders build their own ranks. A role has a name, a color and twelve rights, from inviting and kicking to changing the avatar or toggling ally friendly fire, so a big clan can run itself without handing everyone leader rights. Data lives in JSON, Protobuf or MySQL, and one console command moves it between them. Updating from 1.x keeps your settings: old moderators become roles and the page settings move into the new menu.
🌟 Features of Clans
Five menu layouts – ServerPanel V1, V2 and V4, picked from your ServerPanel template on its own, plus two fullscreen styles, Old Style and New Rust. Every layout is a template file in data/Clans/Templates, where positions, colors and sizes can be changed Clan roles – leaders create roles with their own name and color and pick the rights: invite, kick, promote, demote, alliances, avatar, description, tag color, gather rates, skins, friendly fire and ally friendly fire Rust's clan system runs on Clans – the F1 clan menu, the clan chat tab, clan names on the map and Rust+, with in-game clan score events counting toward the rating Alliances – send, accept, cancel and revoke alliances, with a separate friendly fire switch for allies Friendly fire – per clan, with turret protection for clan mates as an option Gather rates – the clan sets how much of each resource every member has to bring in, and the menu shows how far each member got Clan skins – one set of skins for the whole clan, so you can tell your own people from the enemy at a glance Clan identity – avatar, tag color and a description, each behind its own role right Clan and player tops – pages with a page number field; the columns and the stat tiles on the About Clan page and in profiles are set in the config, each can be turned off or put behind a permission Player and clan profiles – open them from the member lists and the top tables Your menu, your pages – reorder, rename, hide or lock menu categories and pages behind permissions Paid actions – charge for creating, joining, leaving, kicking, disbanding, setting skins or the avatar, and for invites, through any economy plugin or with items Tag rules – minimum and maximum length, a blocked words list and an allowed characters filter. Errors show right in the Create a clan window Clan and alliance chat, with BetterChat support Clans Discord companion plugin – clan events and clan chat go to Discord through webhooks, and clan leaders can set their own webhook Storage – JSON, Protobuf or MySQL, and clans.convertstorage moves everything to another type Cleanup – purge inactive clans, and wipe clans, players or invites on a new map, each on its own switch Built for big servers – the top is rebuilt in small steps, data is written only when something changed, and the menu template is prepared in the background at startup
⚡ Performance
Clans is built for big servers. Statistics, friendly fire checks and turret targeting run without allocating memory on every call, the clan and player top is rebuilt in small steps instead of one long freeze, and data is written to storage only when something changed.
🖼️ Showcase
Fullscreen – Old Style
Fullscreen – New Rust
ServerPanel V1
ServerPanel V2
ServerPanel V4
✨ What Makes It Different
Clan roles – a name, a color and twelve rights per role
Rust's own clan menu shows the same clan
Clan events and chat in Discord
🎮 Commands
Players (the /clan and /clans names can be changed in the config):
/clan – open the clan menu /clan create <tag> – create a clan /clan disband – disband your clan /clan leave – leave your clan /clan join – open your invites /clan invite <name/steamid>, /clan withdraw <name/steamid> – invite a player, cancel an invite /clan kick <name/steamid> – kick a member /clan promote <name/steamid>, /clan demote <name/steamid> – move a member up or down a role /clan allyinvite <tag>, allywithdraw, allyaccept, allycancel, allyrevoke <tag> – manage alliances /clan ff, /clan allyff (also /cff, /aff) – toggle friendly fire for the clan and for allies /clan description <text>, /clan tagcolor <hex> – set the description and the tag color /clan discord – set the clan's Discord webhook (Clans Discord) /cinfo <tag> – information about a clan /c, /cchat – clan chat; /a, /achat – alliance chat Admins (clans.manage, needs clans.admin😞
list, listex – all clans, with members and online status in listex show [name/userId] – one clan and its members msg [clanTag] [message] – send a message to a clan create [name/userId] [clanTag], rename [oldTag] [newTag], disband [clanTag] invite, join, kick, owner, promote, demote [clanTag] [name/userId] Console:
clans.convertstorage <JSON|Protobuf|MySQL> – move all player and clan data to another storage type clans.refreshtop – rebuild the clan and player top now clans.refreshskins – reload the skins players can pick for clan skins clans.reborn.convert (Clans Converter) reads the data file of Clans Reborn (data/Clans.json) and makes clans from it clans.umod.convert (Clans Converter) does the same for the uMod Clans plugin (data/clan_data.json) clans.convert.olddata (Clans Converter) moves player settings from the data of Clans 1.x, such as friendly fire and clan skins clans.import.playerdatabase [field] (Clans Converter) brings player data over from the PlayerDatabase plugin. The field name defaults to Clans, and PlayerDatabase has to be loaded
🛡️ Permissions
clans.admin – the clans.manage command clans.cancreate, clans.canjoin, clans.canleave, clans.candisband, clans.cankick, clans.canskins – each is checked only when its switch is on in the "Permission Settings" section of the config Menu categories, pages, top columns, stat tiles, clan skins and the avatar change can each take a permission name of your own. The plugin registers it on load.
⚙️ Web Config Editor
Manage your Clans settings in our web-based configuration editor. Every section of the config gets its own form, so you can set up roles, pages, top columns, paid actions and storage without editing the JSON file by hand.
Web Config Editor
P.S. Join our Discord at https://discord.gg/mevent and request the "Clans" group for access to the web configuration editor.
🎥 Video
🧪 TEST SERVER
Join our test server to view and experience all our unique features yourself!
Copy the IP Address below to start playing!
connect 155.103.86.38:28015
📚 FAQ
Q: What are the files in the download, and which ones do I need?
A: The archive has three plugin files, and only Clans.cs is required. It is the plugin itself, with the menu, roles, alliances, gather rates, skins, tops and storage, and it runs fine without the other two. ClansDiscord.cs is optional: it posts clan events and clan chat to Discord webhooks, so skip it if you do not use Discord. To use it, put your server webhook into "Admin webhook URL". Every event has its own switch and color, and team chat is off by default. Clan leaders can add their own webhook with the DISCORD button or /clan discord, and you can limit that to a permission and to the hosts you allow. ClansConverter.cs is optional and needed once, only when you move clan data from another plugin: install it, run the matching command from the server console or RCON (they do not work from the in-game F1 console), check that your clans came over, then delete the file. The commands are listed under Console above. If you start from scratch, you do not need it.
Q: How do I add Clans to ServerPanel?
A: In ServerPanel, create a category with Type: Plugin, Plugin Name: Clans, Plugin Hook: API_OpenPlugin. Clans reads your ServerPanel template and picks the matching layout: t1 and t1_1 give V1, t2 and t3 give V2, t4 gives V4. While that category exists, /clan opens it. To force a layout, set "UI Pattern" in the config to V1, V2, V4 or Fullscreen instead of Auto.
Q: Which storage type should I pick?
A: JSON is the default and works out of the box. Protobuf is faster and smaller on disk for big servers. MySQL lets several servers share clan data. You can switch any time with clans.convertstorage.
Q: I am updating from Clans 1.x. What happens to my data?
A: Clans and settings carry over. Old moderator settings and member colors become clan roles, and the page settings move into the new menu categories. The interface settings moved from the config to the template files in data/Clans/Templates. If you used PlayerDatabase, run clans.import.playerdatabase from Clans Converter once.
Q: Does Clans work with my other plugins?
A: Clans has the same API as other popular clans plugins, so plugins that support clans work with it too.
Q: How do I show the clan top on the screen?
A: Install Clans Top.
Q: Which other plugins do I need?
A: ImageLibrary on Oxide, for avatars and icons. Carbon has the image module built in.
Q: Where do I edit the text, or add my own language?
A: oxide/lang/en/Clans.json (or carbon/lang/en/). Copy it to lang/<code>/Clans.json and translate the values. English and Russian are included.
Q: Where can I see an example of the config?
A: Config
🔧 Hooks
void OnClanCreate(string tag) void OnClanCreated(IClan clan, ulong leaderId) void OnClanUpdate(string tag) void OnClanDestroy(string tag) void OnClanDisbanded(string tag, List<ulong> memberUserIDs) void OnClanRenamed(string oldTag, string newTag) void OnClanLeaderChanged(ulong newLeader, ulong oldLeader, string tag) void OnClanMemberJoined(ulong userId, string tag) void OnClanMemberLeft(ulong userId, string tag) void OnClanMemberGone(ulong userId, string tag) void OnClanMemberKicked(ulong userId, ulong actorId, string tag) void OnClanMemberPromoted(ulong userId, ulong actorId, string tag, string role) void OnClanMemberDemoted(ulong userId, ulong actorId, string tag, string role) void OnClanInvite(ulong inviterId, ulong targetId, string tag) void OnClanInviteRejected(ulong userId, string tag) void OnClanInviteWithdrawn(ulong inviterId, ulong targetId, string tag) void OnClanAllianceInvite(string tag, string targetTag, ulong actorId) void OnClanAllianceAccepted(string tag, string targetTag, ulong actorId) void OnClanAllianceInviteRejected(string tag, string targetTag, ulong actorId) void OnClanAllianceInviteWithdrawn(string tag, string targetTag, ulong actorId) void OnClanAllianceRevoked(string tag, string targetTag, ulong actorId) void OnClanChat(BasePlayer player, string message, string tag) void OnClanTopUpdated()
Questions, ideas and bug reports go to our Discord.
-
Zombie Apocalypse
Zombie Apocalypse is a city in a dome, vast in size, full of loot and also full of Zombies. As fast as you kill them then more will come.
First major update in years so is completely different to older versions.
-
Survival Arena
By imthenewguy in Plugins
Survival Arena is a plugin that spawns a Battle-royal style game, where players must scavenge for equipment and fight to the death, all while staying inside of a shrinking, non-radiated zone.
The plugin spawns a large play area high in the sky and inherits the biome type from the ground below. This means that if the area is suspended above an arctic biome, all of the rocks, trees, logs and bushes will be spawned mirroring that biome type.
Players are teleported into the center building when they join, and once the game begins, they must loot containers to gear up to survive. Players are returned to their original locations when they leave the event or respawn after dying at the event.
Server owners can change or add loot profiles via the config. The plugin will select a random profile when the arena begins and fill the loot containers based on your specifications.
It comes with 2 default loot profiles:
Primitive - spears, melee weapons, bows, crossbows, burlap equipment, revolvers etc GunLoot - more modern weapons.
The plugin uses EventHelper to run automatically, handle joining and leaving, and will allow players to vote to start the game.
Admins can also add additional trees, bushes, logs and loot spawns to the arena via command.
Type: Chat Command: survivalarena Function: Sends the user the UI to start up the game. Loot profiles, spawn height and lobby time can be adjusted here before starting the game. Type: Chat/Console Command: startarena <heightMod> <lobbytime> <arenaName> <lootProfile> Function: Spawns and starts the game using the specified heightmod and lobbytime parameters. You can simply use the command with no parameters to start it using the default settings and a random arena/lootprofile. Type: Chat/Console Command: endarena Function: Ends any active games and despawns the arena. Type: Chat Command: spawnarena <name> Function: Spawns the arena, but does not start the game. Useful for debugging and development. Type: Chat Command: setcentrepoint Function: Sets the arena's new center point at the players location. Useful if you want to move the spawn so it has more biome variety. Be sure not to make it too high or too close to the ground. Type: Chat Command: survival Function: Used to join the game when the lobby is active. Type: Chat Command: saremove Function: Removes the tree, loot container, log or bush that the player is looking at. This will no longer spawn in future games. Type: Chat Command: addtree Function: adds a tree spawn at the players position. Type: Chat Command: addbush Function: adds a bush spawn at the players position. Type: Chat Command: addlog Function: adds a log spawn at the players position. Type: Chat Command: addloot Function: adds a loot spawn at the players position. Type: Chat Command: saleave Function: Leaves the event Type: Console/Chat Command: wipeoldarena Function: Wipes any entities that are at the same height or higher than the arena.
survivalarena.admin
survivalarena.autojoin
If you wish to create your own arena, you may follow this tutorial here: https://youtu.be/BxmcjHjIJDU
Please note that the map file name needs to contain survivalarena or it will not allow the getarena command to work. Also I will not be offering support for this, so use at your own risk.
API
Hook Calls
void OnSurvivalArenaStart() - Called when the lobby starts. void OnSurvivalArenaEnd() - Called when the game is ending. void OnSurvivalArenaWin(BasePlayer player) - Called when a player wins the game. void OnEventLeave(BasePlayer player, string pluginName) - Called when a player leaves the event. object OnEventJoin(BasePlayer player, string pluginName) - Called when a player is attempting to join the event. Returning a string will prevent the player from joining and will print the string to them. void OnEventJoined(BasePlayer player, string pluginName) - Called when a player has successfully joined the arena. void OnPlayerItemsRestored(BasePlayer player) - called when a players items have been restored.
Hook Methods
bool IsEventPlayer(BasePlayer player) - returns true or null if the player is an EventPlayer.
-
Boss Monster
This plugin adds to the game a variety of NPC bosses with different abilities and a very adaptable configuration
Description
Using this plugin you can add NPC bosses to any point on the map. You can set up any ability with the plugin configuration. If it is necessary, you can add multiple abilities to one boss.
Abilities are divided into two categories, ones take place in a certain radius from the NPC, and others are triggered by damaging from an NPC.
The map also displays the location of the actual bosses (their name and amount of health).
You can give any clothes and weapons for NPCs using the configuration.
Custom Map
Maps that have a configuration for the appearance of boss on their custom monuments
You can also download all these files for all maps here
Dark Ages Blue Tears All files for custom maps are stored in the folder oxide/data/BossMonster/CustomMap. You don't have to delete files from there, the plugin will understand by itself which map is currently installed on the server and will download only the necessary file if there is one in this folder. The plugin will tell you about this process in the console during the plugin loading. It will write in the console what file works on the current map, and what ones don’t work
If you want to create a custom place for the boss to appear on your custom map or on a map that is not in this list, you have to create the ID of this custom map. After that you need to place an item such as a RAND Switch on your map. It must be placed randomly, where it will not be visible to other players. You will get the identifier, if you add up the three coordinates of the position of this object from RustEdit (x, y and z) and write the resulting value in the parameter of your file (an example file can be taken from ready-made files) - ID
As an example, let's take the coordinates (26.896, -456.158, 527.258), then our identifier is 26.896 - 456.158 + 527.258 = 97.996
Then you need to indicate a list of bosses that will appear on your map. You need to copy the configuration data block for each boss. In the database parameters you will specify the name of the boss and a list of positions where it can appear
Dependencies (optional, not required)
GUI Announcements Notify Discord Messages AlphaLoot CustomLoot Economics Server Rewards IQEconomic PveMode
Chat commands (only for administrators)
/WorldPos - displays the actual player’s position on the map
/SavePos <name> - saves a new position to the configuration file for the boss with the name - name, relative to the nearest monument
/SpawnBoss <name> - spawn of the boss with the name - name in the coordinates of the administrator
Console commands (RCON only)
SpawnBoss <name> – spawn of the boss with the name – name
KillBoss <name> – kill all bosses with the name – name
Plugin Config
en - example of plugin configuration in English ru - example of plugin configuration in Russian
Boss Config
en - example of plugin configuration in English ru - example of plugin configuration in Russian
Custom Map Config
en - example of plugin configuration in English ru - example of plugin configuration in Russian
Hooks
void OnBossSpawn(ScientistNPC boss) - сalled when a boss appears on the map
void OnBossKilled(ScientistNPC boss, BasePlayer attacker) - сalled when a player kills a boss
API
ScientistNPC SpawnBoss(string name, Vector3 pos) - spawns a boss named name in position pos
void DestroyBoss(ScientistNPC boss) - destroys the boss
My Discord: KpucTaJl#8923
Join the Mad Mappers Discord here!
Check out more of my work here!
- #abilities
- #boss
- (and 16 more)
-
Shoppy Stock
By ThePitereq in Plugins
RUST Plugin Test Server
TEST MY PLUGINS THERE!
connect play.thepitereq.ovh:28050
Shoppy Stock is a powerful and versatile economy system designed to enrich your Rust server with shops, stock markets, transfers, exchanges, and deposit features.
This plugin makes it easy to create multiple shops with unique currencies, set up dynamic stock markets with item listings, and manage a fully customizable server selling center—plus many more advanced options.
Plugin package (zip) contains:
ShoppyStock plugin ShoppyConverter plugin (Converts 1.x config to 2.0 config)
Global
Includes over 17 detailed Rust-themed GUI windows. Optimized for performance—actions are lightweight and won’t burden your server. Highly expandable, limited only by your imagination. Fully customizable popup messages through the PopUp API. Comprehensive command and API support for currency management. Full language support for all messages and items. Supports NoEscape integration. Complete UI color customization. NPC interaction support for shops and stock markets. Page memory feature remembers your position in the shop when reopened. Deposit and withdraw currencies to and from items. Currency exchange between different types. Built-in currency leaderboard. Shops
Create multiple shops, each using different currencies. Easily import your old currency from other economy plugins. Organize items into categories with custom icons for seamless browsing. Unified search bar across all categories. Buy exactly the amount of items you need. Full custom item support. If currency is item-based, allow deposits into the shop as virtual currency and withdrawals back to items. Granular permission system configurable for each action. Daily or wipe purchase limits. Purchase cooldowns. Configurable discount system. Random offer rotations with customizable listings. Progressive pricing — prices can increase by set values or multipliers on each purchase. Stock Market
Create multiple markets with different currencies. Favorite items tab for quick access. Automatic listing of all vanilla Rust items with blacklist support. Multiple sorting options for better market management. Buy and sell request creation. Configurable server sell price history. Permission-based limits on how many listings each player can create. Listings can be canceled, refunded, or returned to the market at no cost. Customizable taxes on market actions. Support for extra item info like durability and plant genes. Timed price rolls to adjust prices at set hours. Demand-based pricing that adjusts based on item popularity (DiscordCore required for messages). Advanced selling center with a price calculator using over 15 variables (e.g., amount sold, online player count). Stock Market Broker system—players can store or refund items, set alert prices, and even auto-sell resources while offline. Custom categories and full custom item support. Web API support for price checks or integration into server tools (requires web server). Statistics module for fine-tuning your economy. Timed listings with configurable availability durations. Ability to buy back resources sold to the market. Listing taxes based on listing time. Dynamic price history graphs. Individual configuration for server buy/sell offers per item. Generation of historical price data. Transfer
Send currencies to other players, whether they’re online or offline. Configurable transfer limits and taxes.
The following core permission is static and cannot be changed. However, the configuration files include hundreds of customizable permissions covering nearly every action.
shoppystock.admin - Grants full access to admin commands and management tools.
All commands can be fully customized in the configuration. Below are the default commands included with the plugin:
/shop or /s — Opens the main Shoppy Stock interface. /adminshop — Opens the admin shop management panel. (Available in version 2.1) /deposit — Opens the currency deposit inventory. /mshop or /goldshop — Opens a specific shop. /market — Opens the stock market interface for a specific currency (defaults to “money”). /sell — Opens the sell inventory to sell items directly to the server (defaults to “money”). /list — Opens the interface to list a new item on the stock market (defaults to “money”). /bank — Opens the bank interface for a specific stock market (defaults to “money”). /stockcode <code> — Displays a private listing using a code shared by the listing owner. updateprices — Console command showing details on rolling or updating item prices in the stock market.
Shoppy Stock is packed with powerful features, and configuring everything the first time can feel overwhelming.
This guide provides a quick walkthrough to help you get started and understand key parts of the plugin.
Optional Supported Currency Plugins
Economics ServerRewards BankSystem IQEconomic
Moving from V1 to V2.
Shoppy Stock V2 has been almost completely rewritten from scratch, reusing less than 10% of the old code.
The new configuration is redesigned to be more intuitive and feature-rich.
To help you migrate, use the provided ShoppyConverter, which can convert about 95% of your old configs and data files to the new format.
After converting, always review your new configs carefully — V2 includes dozens of new options that won’t automatically adjust to your preferred settings.
How to convert:
Place ShoppyConverter.cs in your plugins folder. Follow console instructions to move files to the required location. Run the conversion command as instructed. Once converted, place the new files in the correct folders as indicated.
Configuration Files
The plugin’s extensive features are divided across several files and folders:
/config/ShoppyStock.json
Main config containing default settings for currencies, shops, stock markets, and global options. /data/ShoppyStock/playersData.json
Stores global plugin data and player currencies. /data/ShoppyStock/Shops/Configs/<shopName>.json
Shop configs, including available categories and items. /data/ShoppyStock/Shops/Statistics/
Data on daily limits, unique purchases, and more. /data/ShoppyStock/StockMarkets/Configs/<stockName>.json
Stock market configs. /data/ShoppyStock/StockMarkets/Listings/
Player buy and sell offers. /data/ShoppyStock/StockMarkets/PlayerData/
Alert data, favorites, banked items, etc. /data/ShoppyStock/StockMarkets/PriceCache/
Historical price data and current server sell prices. /data/ShoppyStock/StockMarkets/Statistics/
Data on items sold to the server and total currency earned.
Main Config Highlights
Web API
You can use the Web API to show market prices on your website.
Requires web hosting with PHP support.
Download apiupdate.php by CLICKING HERE.
Place it in the directory set by your “Web Price API - Link” config.
Make sure it has permission to create api.html.
The generated file will be accessible at <Web Price API - Link>/api.html.
Server-Selling Items → Default Sell Amount Calculation (DSAC)
DSAC helps define the average number of items sold in a period, based on your server’s player activity. The period is an one price roll time.
Example: a PvE x10 server with ~20–30 players might set wood’s DSAC to 1,800,000 — based on my some calculations, but adjust based on your own stats and server needs.
Always Run Timer on Hour Minute
Controls when the plugin rolls stock prices.
For example:
Values: 0, 30, 60 → rolls at x:00 or x:30. Values: 0, 20, 40, 60 → rolls at x:00, x:20, or x:40.
Stock Market - Default Categories
By default, the stock market includes these categories:
Favourites MyListings Bank AllItems Use these codenames in your configs to customize display order.
Stock Market Item Text Info Display Method
If your server supports item.text, you can toggle this option to show listed item text info.
Currently plugin supports two ways of displaying data. You can enable them based on the config number:
0 - Disabled 1 - Reads raw item.text field and shows on screen 2- Reads item.text as Dictionary<string, string> and supports key translation, currently experimental. If your plugin works on item.text info and any of the solutions above doesn't fit you, feel free to message me to create another implementation!
Items - Custom Detail Info (skinId: languageKey)
You can add custom info tags in listings (similar to showing tool condition or clone genes).
For example, tag certain items as “Upgrade Ingredients.”
Redeem Inventory Name
Make sure to create a storage with this name in RedeemStorageAPI — otherwise, items from certain actions could disappear, and errors may occur.
Generating Shop Config With All Vanilla Items
To automatically add all vanilla RUST items to a shop:
In /config/ShoppyStock.json, set Generate Config With All Default RUST Items to true in the desired shop section. Delete the existing shop config file in /data/ShoppyStock/Shops/Configs/. Reload the plugin—this will generate a new config containing all default items.
Shop Data Config Highlights
Shop Items - Commands
Supports few types of dynamic variables in commands:
{userId} → buyer’s Steam ID {userName} → buyer’s nickname {userPosX}, {userPosY}, {userPosZ} → buyer’s coordinates
A collection of answers to common questions about demand systems, price multipliers, stock market trends, and developer API.
Multiplier Events & Demand System
Q: How does the demand system work? What is “weight”?
A: The demand system uses “Multiplier Events” defined in the main config. Each event has a weight that determines its chance to be chosen during a price roll. How often demands appear is configured in your stock market file at: /data/ShoppyStock/StockMarket/Configs/<shopName>.json. Make sure names in the main config and stock market config match exactly.
Q: How do “minimal” and “maximal” work?
A: These define a range for random price multipliers.
Example: if minimal is 1.4 and maximal is 1.8, and the original price is 1.4, the final rolled multiplier might be ~1.685 → final price becomes ≈ 2.359.
If the random roll goes above max or below min, it’s clamped to min/max.
Stock Market - Timestamps & Trends
Q: What are timestamps used for?
A: The plugin stores historical price data which appears in charts for players with the correct permission.
Tip: set a reasonable timestamp retention value even if you don't plan to show players now—this lets you start collecting useful data early.
Data Folder, Stock Market Config
Q: Blocked Multiplier Listing Keys
A: Certain items you want excluded from permission price multipliers.
Price Calculator
Q: Price Change - Price Fluctuation Percentage
A: Adds random small price changes to keep the market realistic when no other events run.
Q: Price Change - Same Price Actions Min/Max
A: Controls how many rolls prices must go up or down in sequence, making trends look more natural.
Q: Price Change - Chances To Increment Based On Current Price Percentage
A: It's the chance to run the action listed above. It's made in "<price percentage>": <price increase chance (percentage)> format. It's made to make prices go higher more easily when they are low and harder when they are high.
Q: Price Drop - Amount Sell Values Penalty Multiplier
A: When many items are sold fast, price roll becomes negative × penalty multiplier, making it drop quicker.
Q: Price Drop - Amount Sold Max Price Penalty
A: If a huge amount of an item (e.g., 10000% of DSAC) is sold, price is locked to e.g., 25% of original value for a period (e.g., 24 price rolls).
Q: Price Increase - DSAC Not Achieved
A: When item demand is too low (<100% DSAC sold), price increases faster to encourage farming, e.g., by x1.5.
Q: Default Sell Amount Calculation - Players Online Multiplier
A: Automatically scales DSAC based on current player count (checked each price roll). Useful if online population varies greatly.
Q: Price Multipliers - Minimal Time Distance Between Events
A: Sets a cooldown between multiplier events to avoid price spikes.
Q: Price Multipliers - Chance To Appear Based On Sold Amount
A: Lets multipliers trigger more often when few or many items are sold.
Q: Price Multiplier Events
A: Defines how many price rolls the price-increase/decrease event should last.
Server Sell Items
Q: What is the price parent system?
A: Lets you set base items (e.g., Metal Ore) and refined items (e.g., Metal Fragments) so that fragments always stay more valuable than ore by a set difference, encouraging refining.
int GetCurrencyAmount(string shopName, BasePlayer player) - Returns player's balance rounded down to integeer. If not found returns 0. int GetCurrencyAmount(string shopName, ulong userId) - Returns player's balance rounded down to integeer. If not found returns 0. float GetCurrencyAmountFloat(string shopName, BasePlayer player) - Returns player's balance. If not found returns 0. float GetCurrencyAmountFloat(string shopName, ulong userId) - Returns player's balance. If not found returns 0. bool TakeCurrency(string shopName, BasePlayer player, int amount) - Takes player currency. Returns true if taken and false if not. bool TakeCurrency(string shopName, BasePlayer player, float amount) - Takes player currency. Returns true if taken and false if not. bool TakeCurrency(string shopName, ulong userId, int amount) - Takes player currency. Returns true if taken and false if not. bool TakeCurrency(string shopName, ulong userId, float amount) - Takes player currency. Returns true if taken and false if not. void GiveCurrency(string shopName, ulong sellerId, int amount) - Gives player currency. void GiveCurrency(string shopName, ulong sellerId, float amount) - Gives player currency. string FormatCurrency(string shopName, BasePlayer player) - Returns player's formatted balance.
Video Configuration
Contains all configuration files shown on video.
My private configuration created for my purposes.
Note: many custom item features won’t work directly on your server—they're specific to the author’s private setup.
Example Configuration.zip
Default Main Config
CLICK HERE!
Default Shop Data Config
CLICK HERE!
Default Stock Market Data Config
CLICK HERE!
