Shop, Currency & Kits

Shop, Currency & Kits 2.8

No permission to download
Features:
  • Add any item, dino, beacon or experience points to the shop
  • Points trading system
  • Create custom kits with items and dinos inside
  • Players can receive points for the time spent on server
  • SQLite or MySQL Database
  • Customizable config
  • Automatically give kits on player spawn
Chat Commands:
  • /points - Shows current amount of points.
  • /buy <ID> <Amount> - Buys the item from shop.
  • /trade <'CharacterName'> <Amount> - Sends points to other player (' ' - are necessary).
  • /kit - Shows all kits.
  • /kit <KitName> - Redeems the kit.
  • /buykit <KitName> <Amount> - Buys a kit (if kit has a price).
  • /shop <Page> - Shows a list of available items in the shop.
  • /sell <ID> <Amount> - Sells an item.
  • /shopsell<Page> - Shows a list of available for selling items.
  • /shophelp - Show custom help message.
Console Commands:
  • AddPoints <SteamID> <Amount> - Adds points to the player.
  • SetPoints <SteamID> <Amount> - Changes player's points amount.
  • GetPlayerPoints <SteamID> - Prints how many points player has.
  • ChangePoints <SteamID> <Amount> - Adds or decreases points amount. This command will add points to the current amount. Entered amount number can be negative.
  • ChangeKitAmount <SteamID> <KitName> <Amount> - Adds or decreases player's kits amount. This command will add kits to the current amount. Entered amount number can be negative.
  • ArkShop.Reload - Reloads a config file.
  • ResetPoints - Resets points for all players.
  • ResetKits - Resets kits for all players.
  • ListInvItems - Lists inventory item blueprint paths to the log file.
RCON Commands:
  • AddPoints <SteamID> <Amount> - Adds points to the player.
  • GetPlayerPoints <SteamID> - Prints how many points player has.
  • SetPoints <SteamID> <Amount> - Changes player's points amount.
  • ChangePoints <SteamID> <Amount> - Works the same way as console command.
  • ChangeKitAmount <SteamID> <KitName> <Amount> - Adds or decreases player's kits amount. This command will add kits to the current amount. Entered amount number can be negative.
  • ArkShop.Reload - Reloads a config file.
Configuration:
JSON:
{
  "General":{
    "TimedPointsReward":{
      "Enabled":true, // Can be true or false.
      "Interval":5, // Interval in minutes.
      "Groups":{ // Amount of points given can be configured per group. Groups can be changed.
        "Default":{ // Default group. Can't be removed.
          "Amount":5 // Amount of points to give. Currently it means: 'give 5 points for every 5 minutes spent online'.
        },
        "Premiums":{
          "Amount":15 // Players in group Premiums receives 15 points instead.
        }
      }
    },
    "ItemsPerPage":15, // Amount of entries per page (for /shop command).
    "ShopDisplayTime":15.0, // Shop display time in seconds.
    "ShopTextSize":1.3, // Shop text size.
    "DbPathOverride":"", // Path to database, if 2 or more servers point to the one database, they will share points/kits amount.
                        // If empty, default path is used.
    "DefaultKit":"vip,starter" // Kits that will be automatically given to players on spawn.
Separated by comma, no whitespace needed. Kits will be attempted to be given in the order. So first one is highest priority for trying.
In the example above on player respawn an attempt will be made to give the player 'vip' kit, if not then 'starter'..
  },
  "Kits":{
    "starter":{ // Name (ID) of the kit.
                // Starter kit example. This kit can be used by everyone. Kit gives dinos and items.
      "DefaultAmount":2, // Amount of free kits.
      "Price":90, // Allows players to buy additional kits. If you remove price, players won't be able to buy it.
      "Description":"Starter kit (carno with saddle)", // Description of the kit.
      "OnlyFromSpawn":true, // Players can receive this kit only on spawn
      "Items":[ // List of items in kit, you can add as many as you want.
        {
          "Amount":1,
          "Quality":0,
          "ForceBlueprint":false,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Items/Armor/Saddles/PrimalItemArmor_CarnoSaddle.PrimalItemArmor_CarnoSaddle'"
        }
      ],
      "Dinos":[ // Can be empty if you don't want to add dinos.
        {
          "Level":10,
          "Blueprint":"Blueprint'/Game/PrimalEarth/Dinos/Carno/Carno_Character_BP.Carno_Character_BP'"
        }
      ]
    },
    "vip":{ // Vip kit example. Only specific groups of players are allowed to use it. This kit gives only dinos.
      "DefaultAmount":1,
      "Description":"Vip kit for premiums (ptero)",
      "Permissions":"Admins,Premiums", // Groups which can use this kit. Remove this option to make kit usable by everyone.
      "Dinos":[
        {
          "Level":20,
          "Neutered":true, // Is dino neutered
          "Blueprint":"Blueprint'/Game/PrimalEarth/Dinos/Ptero/Ptero_Character_BP.Ptero_Character_BP'"
        }
      ]
    },
    "tools":{ // Kit gives only items.
      "DefaultAmount":3,
      "Price":50,
      "MinLevel":1, // Minimum player level required to use this kit
      "MaxLevel":20, // Maximum possible level needed to use this kit
      "Description":"Tools kit (pike and club)",
      "Items":[
        {
          "Amount":1,
          "Quality":0,
          "ForceBlueprint":false,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_WeaponPike.PrimalItem_WeaponPike'"
        },
        {
          "Amount":1,
          "Quality":0,
          "ForceBlueprint":false,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_WeaponStoneClub.PrimalItem_WeaponStoneClub'"
        }
      ]
    }
  },
  "ShopItems":{
    "ingots100":{ // Item ID, it should not contain white spaces.
      "Type":"item", // Type of the item, can be "item", "dino","beacon" or experience
      "Description":"Metal Ingot (100x)", // Description for the /shop command
      "Price":15,
      "Items":[ // List of items, works the same way as in kits. But only items are allowed here.
        {
          "Quality":0,
          "ForceBlueprint":false,
          "Amount":100,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_MetalIngot.PrimalItemResource_MetalIngot'"
        }
      ]
    },
    "tools":{
      "Type":"item",
      "Description":"Tools (Metal Hatchet, Metal Pick)",
      "Price":5,
      "Items":[
        {
          "Quality":0,
          "ForceBlueprint":false,
          "Amount":1,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_WeaponMetalHatchet.PrimalItem_WeaponMetalHatchet'"
        },
        {
          "Quality":0,
          "ForceBlueprint":false,
          "Amount":1,
          "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_WeaponMetalPick.PrimalItem_WeaponMetalPick'"
        }
      ]
    },
    "para":{ // Dino
      "Type":"dino",
      "Description":"Parasaurolophus",
      "Level":10,
      "Price":20,
      "MinLevel":10,
      "MaxLevel":15,
      "Blueprint":"Blueprint'/Game/PrimalEarth/Dinos/Para/Para_Character_BP.Para_Character_BP'"
    },
    "carno":{
      "Type":"dino",
      "Description":"Carnotaurus",
      "Level":15,
      "Price":50,
       "Neutered":true,
      "Blueprint":"Blueprint'/Game/PrimalEarth/Dinos/Carno/Carno_Character_BP.Carno_Character_BP'"
    },
    "crate25":{ // Beacon
      "Type":"beacon",
      "Description":"SupplyCrate Lvl 25",
      "Price":100,
      "ClassName":"SupplyCrate_Level25_Double_C"
    },
    "crate2":{
      "Type":"beacon",
      "Description":"Artifact Crate 2",
      "Price":100,
      "ClassName":"ArtifactCrate_2_C"
    },
    "exp1000":{ // Experience
      "Type":"experience",
      "Description":"1000 points of experience",
      "GiveToDino":false, // Can player buy it while riding a dino. If true, experience points can be applied to the dino.
      "Price":55,
      "Amount":1000.0
    },
    "tekengram":{  // Engram
      "Type":"unlockengram",
      "Description":"Engram TEK Boots & Gloves",
      "Price":20,
      "Items":[
        {

"Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Items/Armor/TEK/PrimalItemArmor_TekBoots.PrimalItemArmor_TekBoots'"
        },
        {
      "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Items/Armor/TEK/PrimalItemArmor_TekGloves.PrimalItemArmor_TekGloves'"
        }
      ]
    },
    "allengrams":{  // Cheat command
      "Type":"command",
      "Description":"All engrams",
      "Price":1000,
      "Items":[
        {
          "Command":"GiveEngrams" // You can use {steamid} in command to automatically substitute player's steam id.
        }
      ]
    }
  },
"SellItems":{  // Items available for selling. If you use stacks mod, you need to set blueprints from the mod!
    "metal":{
      "Type":"item",   // Only 'item' can be used for now
      "Description":"100x metal",
      "Price":10,  // Amount of points that player will receive for selling this item
      "Amount":100,  // Required quantity
      "Blueprint":"Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_Metal.PrimalItemResource_Metal'"
    }
   }
}

After server will be started, "ArkShop.db" file will be created in plugins directory. It contains all information about points and kits.

Examples:
Examples (Mods):

Logs:
Logs can be found in 'Win64\ArkApi\Plugins\ArkShop\ShopLog.log'.​

Dependencies:
Installation:
  1. Install ARK: Server API
  2. Copy "ArkShop" folder to "ArkApi/Plugins"
Author
Michidu
Downloads
101,976
Views
101,976
First release
Last update
Rating
4.71 star(s) 68 ratings

More resources from Michidu

Latest updates

  1. 2.8

    Added {steamid} placeholder for buying commands Fixed selling
  2. 2.7

    Added ListInvItems console command to list inventory items blueprints Added more anti-crash...
  3. 2.6

    Added MySQL support Added unload support Added API function to temporarily disable shop Code...

Latest reviews

Why this declaration is invalid?

"K005": {
"DefaultAmount": 1,
"Description": "30000",
"Items": [
{
"Amount": 1,
"Blueprint": "$advkits cmd `addpoints {steamid} 30000`",
"Fixed": true,
"ForceBlueprint": false,
"Quality": 0
}
],
"Price": 0
},
problem code: "Blueprint": "$advkits cmd `addpoints {steamid} 30000`"
Pls tell me how to use CMD command format correctly in configuration file?
the reset kits and reset points doesnt work
Really good plugin but i dont understand how i get 755% items please help Discord : [9L] Mero#3770
overall really good. are there instructions on sharing this throughout a cluster? i see you mention sharing the folder, how do you do that?
If you have a problem with the Steam ID-based point accumulation system, you can solve it by sharing the folder with each server.
By sharing one folder with each server.
Because data is accumulated in only one place.
You can match points for each map.
Very Cool Plugin, but no real in depth guide, how would I go about setting certain players in groups to earn more points than others.
updated both permissions/shop and api but still doesnt seem to work with steamIDs
If you update ArkApi this plugin works, perfect plugin
same problem ccabae
mate. after update of today the arkshop dont work more. i use mysql. befor of update is working
Top