TradeMe with API to create custom trades (1.7.10-1.21.x) icon

TradeMe with API to create custom trades (1.7.10-1.21.x) -----

Trade by Items/Money/Exp/McMMO/Jobs exp/Residence/GriefPrevention



[​IMG]

[​IMG]
User friendly trading plugin. What else to say about it :) You can trade items, money, exp, McMMO, Jobs exp, Jobs points, GriefPrevention blocks, PlayerPoints,TokenManager, MyPet pets, BeastTokens, Kingdoms resource points or even Residence with other players. Includes API to support 3rd party plugins injecting custom trade modes. Example code can be found over GitHub

Why did I created this:
I know that there is bunch of trading plugins out there. But none of them doing what it suppose to do. Some of them lets you trade only with items, some of them lets you add money, but they doing it in really funky way I might say... And none of them offering exp trade. Not talking about Residence, mcmmo or jobs exp trading.

[​IMG]
CMILib
Java 8 and up


Optional:
Vault - for economy support
McMMO - for mcmmo exp trading support
Jobs - for jobs exp trading support
Residence - for residence trading support
GriefPrevention - For trading with GP blocks
PlayerPoints - For trading with player points
MyPet - For trading with your pets
Kingdoms - For trading with kingdoms resource points
TokenManager - For trading tokens
MMOCore - For trading with skill and attribute points
BeastTokens - For trading tokens


[​IMG]
2.0.0.0

[​IMG]
  • Lightweight
  • Have API for custom trade modes
  • Very easy to use
  • Multi-world support
  • Dynamic trade window depending on users permissions
  • Item trade fields dynamic variations from 12 to 20 fields
  • Trading with Items (optional)
  • Trading with Money (optional)
  • Trading with Exp (optional)
  • Trading with McMMO exp (optional)
  • Trading with Jobs exp (optional)
  • Trading with Residence (optional)
  • Trading with GriefPrevention blocks (optional)
  • Trading with PlayerPoints (optional)
  • Trading with MyPet pets (optional)
  • Trading with Kingdoms resource points (optional)
  • Trading with TokenManager tokens (optional)
  • Trading with BeastTokens (optional)
  • Trading with MMOCore skill points or/and attribute points (optional)
  • Option to limit trading based by both players permission groups
  • Supports taxes being taken after trades.
  • Supports Shift clicking
  • With sounds to be even more friendly
  • By default players have 8 different amount values to play around: 1, 10, 100, 1000, 10 000, 100 000, 1 000 000, 10 000 000
  • By holding shift, while changing amount, will multiply amount 10 times!
  • Trading logging into SqLite/Mysql data bases
  • WorldGuard support
  • Vanished players support
  • Dynamic trade window, will change according of users permissions!
  • Option to have simple trade window with simple -s variable
  • Shift + Right click to offer trade
  • Possibility to accept trade by clicking on chat message!
  • Accept counter to prevent last second changes
  • Action bar messages on money/exp/mcmmo offer change.
  • Any changes will reset accept buttons for both sides, so no cheating
  • Option to lock QuickBar to prevent trades from it (Some plugins uses it, like spells)
  • Detailed feedback after trade with how much money/exp/mcmmo you got and item list.
  • Customizable trade distance
  • Prevent trades between different game modes
  • Prevent trades between worlds
  • Prevent trades in specific WorldGuard regions
  • Prevent trades in specific Residence areas
  • Possible to set up black listed worlds for trade
  • Option for each player to block trade offers from player
  • Option for each player to block all trade offers
  • Admins can start, by force (Luke use your force...), trade between 2 players
  • Item black list support
  • All messages are customizable
  • Customizable money/exp/mcmmo increments
  • All "Buttons" are customizable
  • Permissions to bypass blocked worlds, players, trading between worlds or global player trading block.
Code (Text):

# Shows if there is available new version on login with trademe.versioncheck permission node
ShowNewVersion: true
DataBase:
  # Use: mysql or sqlite
  DataBaseType: sqlite
  mysqlHost: localhost
  mysqlPort: 3306
  mysqlDatabase: trademe
  mysqlUsername: root
  mysqlPassword: realystrongone
Language: EN
#
# This will allow you to globaly disable trades with specific modes
# You can always give or take trade options with permission like trademe.moneytrade or trademe.exptrade
TradeModes:
  ItemTrade: true
  JobsTrade: true
  KingdomsTrade: true
  MoneyTrade: true
  ResidenceTrade: true
  PlayerPointsTrade: true
  McMMOTrade: true
  ExpTrade: true
  JobsPointsTrade: true
  MyPetTrade: true
  GriefPreventionTrade: true
#
# Time to accept trade, in seconds
AcceptDelay: 15
#
# Time until counter ends, in seconds
Confirm: 3
#
# Time in sec for how long after combat player can't trade
NonCombat: 10
#
# Time in milliseconds between each click in trade inventory
# Mainly to prevent to fast clicking and avoiding incorrect amount showing up because of that
# Keep it at 200 as this will limit clicks to be no mo often than 5 times in one second
ClickCooldown: 200
#
# When this set to true, players can give trade offers or accept them by sneeking and pressing right mouse button on a player
ShiftRightClick: false
#
# You can lock quickbar and prevent players from trading from it
LockQuickBar: false
#
# Prevent trading between game modes
NoTradeBetweenGameModes: true
#
# If this set to true, players will be check for appropriate trade permissions between different permission groups for particular trade mode
# Player should have trademe.moneytrade.[groupname] permission node to trade with that group with money
# In example: player1 has Newbie group and player2 - Advanced group
# player1 should have trademe.moneytrade.advanced and player2 should have trademe.moneytrade.newbie permission nodes for option to trade with money
# Posible nodes: trademe.moneytrade.[groupname], trademe.exptrade.[groupname], trademe.mcmmotrade.[groupname], trademe.jobstrade.[groupname], trademe.residencetrade.[groupname]
TradeGroups: false
#
# While this is true, Distance wont work
BetweenWorlds: true
#
# World groups to separate trades if you have multiverse or similar plugin
WorldGroups:
  Group1:
  - World
  - World_nether
  - World_the_end
  Group2:
  - ''
  Group3:
  - ''
  Group4:
  - ''
  Group5:
  - ''
# Max distance players can trade to each other, BetweenWorlds should be set to false for this to work
# Set 0 if you dont want to have distance restriction
Distance: 0
Logging:
  # When this set to true, all trades will be logged into database for tracking down who traded what at which time
  # Disable this if you are not interested in tracking this information and want to avoid having aditional database
  Use: true
AutoPurge:
  Use: false
  # Set for how long to keep trade information in database by minutes
  # 43200 = 30 days
  # 20160 = 14 days
  # 10080 = 7 days
  # 1440 = 24 hours
  TimeRange: 43200
Residence:
  # Do you want to use residence max limit
  # With this set to false players can have more residences than its been set up in residence config file
  UseMaxLimit: true
Regions:
  # You can set in witch regions players can trade or cannot
  WorldGuard:
    Allow:
      Use: false
      List:
      - testRegion
      - testRegion2
    Deny:
      use: false
      List:
      - testRegion3
      - testRegion4
  # You can set in witch residence players can trade or cannot
  Residence:
    Allow:
      Use: false
      List:
      - testResidence
      - testResidence2
    Deny:
      use: false
      List:
      - testResidence3
      - testResidence4
BlockedWorlds:
- testWorld
- testWorld_nether
# List of item id's to be blocked from trade
BlockedItems:
- 137
- 166
# List of item lore to be blocked from trade
# this can be only part of line without color codes
BlockedLore:
- One line of lore
- second line
- color code not necessary
# Max lvl allowed for player to have, if McMMO config files are not modified its is 1000
McMMO:
  MaxLvl: 1000
Numbers:
  ShortNames:
    # With this enabled big numbers will be shortened from 1234567 to 1m or 1.23m
    Enabled: false
    # With this enabled numbers will be shown like 1.23m instead of only 1m
    Show2Numbers: true
    '1000': k
    '1000000': m
    '1000000000': b
    '1000000000000': t
Amounts:
  Exp:
    '1': 1.0
    '2': 100.0
    '3': 10000.0
    '4': 1000000.0
  # All amounts used for buttons to increase/decrease
  # Inform players about posibility to use Shift button to rise increment by 10 times
  Money:
    '1': 1.0
    '2': 100.0
    '3': 10000.0
    '4': 1000000.0
  Jobs:
    '1': 1.0
    '2': 100.0
    '3': 10000.0
    '4': 1000000.0
  JobsPoints:
    '1': 1.0
    '2': 100.0
    '3': 10000.0
    '4': 1000000.0
Taxes:
  # Taxes for transfers
  Exp:
    Fixed:
      # Fixed amount of Exp will be taken during transfer
      Use: false
      Amount: 100
    Percentage:
      # Percentage amount of Exp will be taken during transfer
      # 10.0 means user will receive 10% less money
      Use: false
      Amount: 10
  # Taxes for transfers
  Money:
    Fixed:
      # Fixed amount of Money will be taken during transfer
      Use: false
      Amount: 100
    Percentage:
      # Percentage amount of Money will be taken during transfer
      # 10.0 means user will receive 10% less money
      Use: false
      Amount: 10
  # Taxes for transfers
  Jobs:
    Fixed:
      # Fixed amount of Jobs will be taken during transfer
      Use: false
      Amount: 100
    Percentage:
      # Percentage amount of Jobs will be taken during transfer
      # 10.0 means user will receive 10% less money
      Use: false
      Amount: 10
  # Taxes for transfers
  JobsPoints:
    Fixed:
      # Fixed amount of JobsPoints will be taken during transfer
      Use: false
      Amount: 100
    Percentage:
      # Percentage amount of JobsPoints will be taken during transfer
      # 10.0 means user will receive 10% less money
      Use: false
      Amount: 10
Buttons:
  Confirm:
    # Id/meta used for confirm button
    Confirmed:
      Id: 160
      Meta: 5
    UnConfirmed:
      Id: 160
      Meta: 14
  Counter:
    # Id/meta used for column counter buttons
    ColumnOn:
      Id: 160
      Meta: 5
    ColumnOff:
      Id: 160
      Meta: 15
  # Filled up when iten trading is turned off
  ItemFields:
    Id: 160
    Meta: 7
  # Id/meta used for empty slot to fillup
  EmptySlot:
    Id: 160
    Meta: 8
  TradeModes:
    Exp:
      1Amount: BUCKET:0
      2Amount: MILK_BUCKET:0
      3Amount: WATER_BUCKET:0
      4Amount: LAVA_BUCKET:0
      Offered: EXP_BOTTLE:0
      Sub:
        NA:
          OfferOff: EXP_BOTTLE:0
          OfferOn: EXP_BOTTLE:0
    Residence:
      Offered: STAINED_GLASS:5
    Money:
      1Amount: GOLD_NUGGET:0
      2Amount: GOLD_INGOT:0
      3Amount: GOLD_BLOCK:0
      4Amount: DIAMOND:0
      Offered: GOLD_INGOT:0
      Sub:
        NA:
          OfferOff: EYE_OF_ENDER:0
          OfferOn: EYE_OF_ENDER:0
    Jobs:
      1Amount: INK_SACK:15
      2Amount: INK_SACK:7
      3Amount: INK_SACK:8
      4Amount: INK_SACK:0
      Offered: DIAMOND_HOE:0
      Sub:
        Miner:
          OfferOff: DIAMOND_HOE:110
          OfferOn: DIAMOND_HOE:110
        Hunter:
          OfferOff: RAW_FISH:0
          OfferOn: RAW_FISH:0
        Digger:
          OfferOff: DIAMOND_AXE:0
          OfferOn: DIAMOND_AXE:0
        Weaponsmith:
          OfferOff: DIAMOND_SWORD:0
          OfferOn: DIAMOND_SWORD:0
        Woodcutter:
          OfferOff: DIAMOND_BOOTS:0
          OfferOn: DIAMOND_BOOTS:0
        Builder:
          OfferOff: BOW:0
          OfferOn: BOW:0
        Enchanter:
          OfferOff: GOLDEN_APPLE:1
          OfferOn: GOLDEN_APPLE:1
        Brewer:
          OfferOff: LEASH:0
          OfferOn: LEASH:0
        Farmer:
          OfferOff: DIAMOND_SPADE:0
          OfferOn: DIAMOND_SPADE:0
        Crafter:
          OfferOff: DIAMOND_PICKAXE:0
          OfferOn: DIAMOND_PICKAXE:0
        Explorer:
          OfferOff: DIAMOND_HOE:0
          OfferOn: DIAMOND_HOE:0
        Fisherman:
          OfferOff: IRON_BLOCK:0
          OfferOn: IRON_BLOCK:0
    JobsPoints:
      1Amount: MONSTER_EGG:0
      2Amount: MONSTER_EGG:1
      3Amount: MONSTER_EGG:2
      4Amount: MONSTER_EGG:3
      Offered: REDSTONE_LAMP_OFF:0
      Sub:
        NA:
          OfferOff: REDSTONE_LAMP_OFF:0
          OfferOn: REDSTONE_LAMP_OFF:0


 

[​IMG]

/Trade - Shows all possible commands and information
/Trade [playername] [-s] - Sends trade offer
/Trade accept - Accept to currently pending trade request
/Trade deny - Refuses trade request

/Trade block [playername] - Blocks trade requests from player (per user)
/Trade toggle - Toggles global trade accepts (per user)
/Trade force [playername] [playername] [-s] - Starts trade between 2 players
/Trade reload - Reloads config file


[​IMG]

By default regular user will have access to accept, deny, block, toggle and of course /trade [username] commands.

trademe.trade - gives access to trade offer and accept in general. By default its given for all players.

trademe.commandoffer - allow to give trade offer with command (given by default)
trademe.shiftoffer - allow to give trade offer by shift clicking
trademe.command.accept - /trade accept
trademe.command.deny - /trade deny
trademe.command.block - /trade block
trademe.command.toggle - /trade toggle
trademe.command.reload - /trade reload
trademe.command.force - /trade force
trademe.command.set - /trade set
trademe.command.purge - /trade purge
trademe.command.log - /trade log

trademe.logothers - Access to logs of other people

trademe.moneytrade - gives permission to trade with money
trademe.moneytrade.[group] - gives permission to trade with money with particular permission group if TradeGroups enabled in config file.


trademe.exptrade - gives permission to trade with exp
trademe.exptrade.[group] - gives permission to trade with exp with particular permission group if TradeGroups enabled in config file.


trademe.mcmmotrade - gives permission to trade with mcmmo exp
trademe.mcmmotrade.[group] - gives permission to trade with mcmmo exp with particular permission group if TradeGroups enabled in config file.


trademe.jobstrade - gives permission to trade with jobs exp
trademe.jobstrade.[group] - gives permission to trade with jobs exp with particular permission group if TradeGroups enabled in config file.

trademe.jobspointstrade - gives permission to trade with jobs points

trademe.jobspointstrade.[group] - gives permission to trade with jobs points with particular permission group if TradeGroups enabled in config file.

trademe.residencetrade - gives permission to trade with residences
trademe.residencetrade.[group] - gives permission to trade with residences with particular permission group if TradeGroups enabled in config file.


trademe.geriefpreventiontrade - gives permission to trade with GriefPrevention blocks
trademe.geriefpreventiontrade.[group] - gives permission to trade with GriefPrevention blocks with particular permission group if TradeGroups enabled in config file.

trademe.playerpointstrade - gives permission to trade with PlayerPoints
trademe.playerpointstrade.[group] - gives permission to trade with PlayerPoints with particular permission group if TradeGroups enabled in config file.

trademe.mypettrade - gives permission to trade with MyPet pets
trademe.mypettrade.[group] - gives permission to trade with MyPet pets with particular permission group if TradeGroups enabled in config file.

trademe.kingdomstrade - gives permission to trade with kingdoms resource points
trademe.kingdomstrade.[group] - gives permission to trade with Kingdoms resource points with particular permission group if TradeGroups enabled in config file.

trademe.tokenmanagertrade - gives permission to trade with TokenManager tokens

trademe.tokenmanagertrade.[group] - gives permission to trade with TokenManager tokens with particular permission group if TradeGroups enabled in config file.

trademe.mmocoreattributestrade - gives permission to trade with MMOCore attribute points

trademe.mmocoreattributestrade.[group] - gives permission to trade with attribute points with particular permission group if TradeGroups enabled in config file.

trademe.mmocoreskillpointstrade - gives permission to trade with MMOCore skill points
trademe.mmocoreskillpointstrade.[group] - gives permission to trade with MMOCore skill points with particular permission group if TradeGroups enabled in config file.




trademe.vanishtrade - Allows to trade while vanished

trademe.groupbypass - Bypasses world groups
trademe.blockbypass - Bypasses players blocks
trademe.globalbypass - Bypasses global player trade block
trademe.betweenworldbypass - Bypasses blocking trade between worlds
trademe.worldbypass - Bypasses blocked trade worlds
trademe.itembypass - Bypasses item black list
trademe.debug - Shows debug messages if debuging is enabled in config file


[​IMG]
  • TradeEndEvent - fired when trade is ended by one of players
  • TradeFinishEvent - fired when trade is successfully finished
  • TradeStartEvent - fired when trade is being started
Pictures:

[​IMG]

[​IMG]

[​IMG]

[​IMG]

Setup:
  1. Drag and Drop jar into your plugins folder
  2. Start and stop server for default files to be created
  3. Edit by your choice, start and enjoy :)
ToDo:
  • Any ideas from you? :)

Terms and conditions

Plugin is under the All rights reserved license
This plugin cannot be refunded
You are not allowed to redistribute or resell this plugin in any website
You are not allow to modify or decompile this plugin
The price will change in the future

Review section only for reviews, not for bug reports or feature requests!
Resource Information
Author:
----------
Total Downloads: 2,003
First Release: May 29, 2015
Last Update: Nov 11, 2024
Category: ---------------
All-Time Rating:
113 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings