We recommend using the Thunderstore Mod Manager or an alternative for installing mods
Put MarketplaceAndServerNPCs.dll into BOTH server and client BepInEx plugin folder. Mod WILL NOT WORK ONLY IN CLIENT SIDE.
SHORT VIDEO ON HOW ITS WORKING
Mod adds 5 different NPCs to server so admins can configure them from serverside with no need to restart server for applying settings.
Marketplace NPC - allows players to sell/buy items by setting them on marketplace with setting quantity + price. Even if player is offline he still will get gold if someone buys his item. (Player will need to get his gold by clicking "Income" button in right bottom).
new Trader NPC - is basically a trader npc that sells items that admins set in MarketPlace.cfg file. This file is auto-updated into serverside so that you don't need to restart server for applying new items to a trader.
ServerInfo NPC - shows text info from ServerInfo.cfg file which is also updated in runtime. Rich-text is automaticly applied to text, so you can use <color=red> </color> and other rich text markers. Also I added custom <button>Name, link, width, height<button> mark so you can add dynamic buttons to your server info
Daily Reward NPC - allows players to get reward setted up by admins in RewardList.cfg file every N seconds (DailyRewardTime value is setted in MarketPlace.cfg)
Feedback NPC - players can send message to your discord server webhook. So its basically some kind of feedback / ask admins for help / report trouble NPC. Webhook link setted up in MarketPlace.cfg file
you need to have NPCtoolAdmin in your hands. You can spawn this tool prefab with any mod that can spawn prefabs and items.
with NPCtoolAdmin in your hands open console (F5) and write: kgspawnnpc
If you want to change NPC type you need to interact with him while NPCtoolAdmin is equipped in your hand
If you CROUCH + interact - you're going to snap him to floor and turn him if NPC is not auto-turnable for player
YOU NEED TO START SERVER ONE TIME IN ORDER TO FOLDERS / CFG FILES TO BE CREATED. I RECOMMEND YOU TO WATCH MOD SHOWCASE VIDEO FIRST. NOTE THAT THIS MOD IS STILL NOT TESTED WELL AND ITS IN BETA. PLEASE FEEL FREE TO REPORT ALL BUGS YOU FIND
With NPCtoolAdmin in your hand you can add NPC component to any CHARACTER / HUMANOID object IF YOU NEED TO. (you can try to add it on RRR NPCs). But I DO NOT RECOMMEND you to do that since this new feature NOT TESTED YET
VIDEO ABOUT ADDING COMPONENT TO SKELETON FOR EXAMPLE
NPC that players can use to BUY/SELL any item in game. After item is sold, player needs to click "Income" button to get his gold in inventory. Even if player is offline he will still get Gold if his item is purchased. MarketPlace.cfg has values related to Marketplace NPC:
OnlyEpicLootItems <= if this option is true, then players will be able to sell ONLY EPICLOOTITEMS. So the enchanted items with ANY EpicLoot effect.
ItemMarketLimit <= This is LIMIT OF SLOTS players can have. not COUNT of items but slots that they are putting in marketplace. Limit is shown on top of Marketplace GUI window name.
BlockedPlayers <= steam ids of players you want to block from using Marketplace NPC, example: BlockedPlayers: 77123712381238, 77312312731283, 732189381239
[BlockedPrefabs] <= this option allows you to make a list of items that players cannot put in Marketplace, so if you want to block players from putting Silver and Iron in market, this is an example:
NPC will read info from ServerInfo.cfg and display that on GUI. Rich text markers can be applied to text you write. Guide
Also if you want to add button in your GUI (that will open any link), you can use <button>Name of button, link to site, width, height<button> ServerInfo npc uses "default" profile by default. But you can add as many info profiles you want (same as Trader NPC profiles). Example below:
non-profiled text will be applied to every new Info NPC with "default" profile. But if you want to add your own you need to add new line with [ProfileName] and then in new line write your text you want Don't forget to come to Info NPC with TOOL => press G => write profile name and press Enter
NPC allows admins to add items to it, so they can make vanilla Coins useful Server reads info from Traders.cfg. Example:
If you want to add new profile just add new line with [ProfileName], and add items in next line as you want with format = ItemPrefab, count, price So if you want to add an npc profile that will sell 10 wood for 5 gold and 1 firesword for 5000 gold you need to write:
Don't forget to use NPCtoolAdmin to set Trader NPC current profile. Come close to NPC and press G
NPC will read info from RewardList.cfg and display that on GUI. Players can obtain next reward every N minutes, that value is taken from MarketPlace.cfg :
DailyRewardTime: 360 <= it allows players to get next reward every 360 minutes = 6 hours Rewards reading images from plugins/MarketImages folder, and reading RewardList.cfg every line as new reward. Every line should look like this:
png/jpg file name | list of items you get for reward (PrefabName,count) | description
You can add as many reward items you want, just make sure every ItemPrefab has number name after coma.
If you want to add reward with jpg/png name IMAGE.png and reward items : 10 Coins, 50 Silver, 80 Wood and 20 Iron with description LOL, it will look like that:
IMAGE.png | Coins, 10, Silver, 50, Wood, 80, Iron, 20 | LOL
How my RewardList + MarketImages folder from video looks like:
NPC allows players to send message that then will be showed up in your discord webhook. Discord webhook link is taken from MarketPlace.cfg file:
Please note that the install buttons only work if you have compatible client software installed, such as the Thunderstore Mod Manager. Otherwise use the zip download links instead.
|Upload date||Version number||Downloads||Download link|