[ECON] NPCTrader v1.1.4 - The Full featured localized shop system [RB740 - 766]

Discussion in 'Inactive/Unsupported Plugins' started by MatCat, Feb 13, 2011.

  1. Offline

    MatCat

    NPC Trader - The Full featured localized shop system

    Version 1.1.4 (Testing Version!)



    The first localized full featured shop system for Bukkit/iConomy, in NPC Form!

    What's better for a localized shop system then your very own NPC Clerk / Teller / Worker / Slave / Whatever word you want to call your NPC!

    Features
    • Localized system
    • Fully player controlled (No admin intervention needed)
    • Full Item and Metadata support (Colored wools, etc)
    • Item name or ID recognition
    • Partial name recognition (If online)
    • Complete internal permissions system for managers of the NPC
    • iConomy Based
    • MySQL data storage
    • Item stocking system
    • In-Game help for everything
    • Supports Permissions and GroupManager (Using FakePermissions) Plugins!
    Installation / Setup

    1. Put NPCTrader.jar in your plugins folder
    2. Put mysql-connector-java-bin.jar in your main minecraft folder
    3. Restart your server (Auto-generates config.yml in plugins/NPCTrader/)
    4. Edit the config.yml for MySQL and other config settings.
    5. Restart once more
    6. Enjoy!
    If for some reason the folder / config does not auto-generate, then you can open the .jar file with 7zip or winzip or other archiving utility that supports jars and extract the config.yml from the jar.


    NOTE: If you do not have or do not know if you have MySQL setup then you either have to setup MySQL or not use this plugin for now. Please do not post questions asking how to install MySQL as that is outside of the scope of this post. You can follow this tutorial (Thanks @Germata!) for detailed windows installation and setup, but I cannot provide support for installing and setting up MySQL, only support for my plugin specifically.

    Permissions

    Permissions will only be used if it is installed. The following is the permissions list:

    Code:
    npc.admin      - Give to admins for full access to all NPCs
    npc.admin.list - Access to /npc list npcs
    npc.user.*     - General user commands, you can specify by replacing * with command name, I.E. buy
    npc.manager.*  - NPC Manager commands
    npc.owner.*    - NPC Owner commands
    npc.create     - Ability to create an NPC 
    If permissions is used you may also specify limits on how many NPCs a specific player or group may have ownership flag on, please see config file for more information.

    Usage

    Once the plugin is installed and running, you can see the in-game help by typing /npc in your chat window. To interact with an NPC just right click on it first.

    Here is a simple tutorial for setting up an NPC named Bob that sell's bread, cooked fish, and cooked pork, and buys wheat, raw fish, and raw pork.

    1. Stand exactly where you want your NPC, including head position and body rotation.
    2. Type: /npc create Bob 6 10 This will create the NPC with 6 Item Slots, each holding 10 units.
    3. Right click on the newly created NPC
    4. Type: /npc setup 1 bread 1 2 0 true false This will setup Slot 1 with Bread, selling lots of 1 at 2 Coins, buying them from players at 0, True for NPC Selling it, False for buying from players.
    5. Repeat step 4 for Cooked fish and Pork
    6. Type: /npc setup 4 wheat 64 0 10 false true This will setup Slot 4 with Wheat, buying lots of 64 at 10 Coins. This one is set False to selling it to players, but true to buy from players.
    7. Type: /npc stock 1 20 This will stock the NPC with 20 breads on slot 1 (Assuming you have enough bread).
    8. Repeat step 7 for raw fish and pork.
    You know have a fully setup and functioning NPC.


    Known Issues / Bugs

    • Config folder does not get generated on Linux - Works on Windows
    • Cookies and beds, and pretty much any other 1.4/1.5 items.
    • Spams console when you stand close to an NPC
    • Gives error when an NPC is spawned (Can be ignored)
    • Head / Rotation is not being properly set on spawn / move. (Fixed in 1.14)
    • Does not work with actual permissions (works with GroupManager)
    • Rename command is broken
    Things Todo

    • Re-write item handling
    • Support for both GroupManager and Permissions
    • iConomy 5 Support
    • Add armor capacity
    • Tie into WorldGuard for checking for build rights (Will be optional)
    Misc


    If you installed MySQL for Windows just to run this plugin then check out this link to see how to create the initial minecraft database you will need.


    *** NOTE: SQLite IS NEVER GONNA HAPPEN! If you want to see an alternative, fork the src, make it work as an option, and I will include it in.***

    Changelog
    • Version 1.1.4
      • Changed out item name / id handling system
      • Now supports all current official items
      • Fixed Move Bug
      • Fixed NPC Creation Errors
      • Fixed a few other errors
      • Fixed Config creation on linux (hopefully!)
    • Version 1.1.3
      • Completely rewrote most of the code that directly interfaces with the NPC Library.
      • Now uses chunk loading/unloading to make sure only NPC's in loaded chunks are loaded (Way more efficient)
      • Changed banker command to only allow setting yourself as banker (to stop an exploit situation).
    • Version 1.1.2
      • Fixed upgrading stack counts for free bug
      • Fixed rename command not working on linux
      • Made it so an NPC must have 1 item slot to be created
      • Added permissions support for owned npc limits (By group or player)
    • Version 1.1.1
      • Fixed issues with quantities of '0'
      • Added rename command
      • Fixed iConomy hooking on startup
    • Version 1.1.0
      • Fixed Admin Override Permissions not working
      • Added Half and Double Slabs
      • Updated to work with B612+
    • Version 1.0.9
      • Updated to work on B531+
      • Updated to work with iConomy 4.*
      • Much needed overhaul of error handling and disabling procedures.
      • Converted integer based money to decimal based.
    • Version 1.0.8
      • Updated for newer builds
    • Version 1.0.7
      • Fixed more issues with ItemData, hopefully they are fixed for good.
      • Added log names
      • Added Coal/Charcoal distinction
      • Order of slots listed will always be in ascending order
    • Version 1.0.6
      • More meta-data issues, resolved.
    • Version 1.0.5
      • My restructuring of the code to try to support SQlite completely foobared the connect and close code, causing timeouts and errors. Fixed it.
    • Version 1.0.3
      • Fixed buy/sell/stock/unstock to use absolute values so that negatives cannot happen.
    • Version 1.0.2
      • Fixed bug where db connection was closed on /npc create
    • Version 1.0.1
      • Fixed bug with null Item Datas
    • Version 1.0.0
      • Fixed many many bugs
      • Added /npc list npcs as an admin command to let you see a full list of NPCs
      • Added recording transactions.
      • Added full permissions support
      • Better error handling and message delivery.
    • Version 0.94
      • Fixed not checking stock when doing /npc setup
      • Made the setup's error messages way more intuitive
    • Version 0.93
      • Fixed disappearing NPC bug.
    • Version 0.92
      • Fixed bug where selling was not checking player inventory.
    • Version 0.91
      • Fixed bug where giving improper arguments for upgrading and creating reported iConomy and NPC Trader out of sync.
    • Version 0.9
      • Initial Release
    You can download the jar here.



    You can download the mysql connector jar here.
     
  2. Offline

    Belarr

    The root of the problem is that we have a bunch of different plugins all doing the same basic thing using different config file formats.

    There are 3 solutions in my mind:
    1) All these permission plugin authors sit down and set a standard that they all work on so we have one well developed plugin​
    2) The Bukkit team picks an official permission plugin​

    And the best one, which is the best long term solution:
    3) The Bukkit team gets their own permission solution implemented​
     
  3. Offline

    Samylots

    hum... I'm around CraftBukkit 421 but i can't say to you the ONE i use ...
    The iConomy is 2.1 i think
     
  4. Offline

    Madoreck

    Is it possible to edit the skins for the NPC's?
     
  5. Offline

    Skate

    when i try to create an npc it says
    "an internal error occurred while trying to perform this task"
     
  6. Offline

    Amethyst

    I believe it goes off your char.png file, so if you change that, the NPC skin will be that skin when you create the NPC. Atleast that's how I think it works!
     
  7. Offline

    denace

    Yes, the most of us have this problem. Hope MatCat will fix this with the next update.
     
  8. Offline

    Skate

    oh ok thank you for the help sir
     
  9. Offline

    ndm250

    I cry everyday this plugin is not updated.
     
  10. Offline

    DJHenjin

    It was supposed to be updated yesterday according to a previous post, This has not happened yet. I would like to be able to use this. grrr update it please
     
  11. Offline

    Volander

  12. Offline

    Amethyst

    I imagine he didn't due to the Bukkit.org being down for much of the evening/night.
     
  13. Offline

    KiloWhiskey

    Build 493 is now the recommended CB build version. Please kick out an update to bring this up to speed. Thank you. :D
     
  14. Offline

    denace

    Hey, please update. Your NPCs are a great work and me and my crew don't want to play without it.
     
  15. Offline

    Amethyst

    I have all these nifty NPC's planned out too! ;)
     
  16. Offline

    Tomato

    Any updates?
     
  17. Offline

    contex

  18. Offline

    Deikkan

    This is probably the 1 plugin I want to see an update for at the moment. My server feels incomplete without it.
     
    ndm250 likes this.
  19. Offline

    mrgreaper

    MATCAT, are you still working on an update chap?
     
  20. Offline

    redf1sh

    Hey, is there a way to change what the npcs say when you approach them? Would be nice to have some of them say something other than "Can I interest you in anything?" [​IMG].
     
  21. Offline

    Yoann

    I got this errormessage when I installed the plugin and started for the first time.

    No directory NPCTrader ist created and I couldn't change MySQL settings...

    I use build 493 and Permissions 2.5.2.
     
  22. Offline

    XCIV

    Ditto
     
  23. Doufám, že bude funkční verze do neděle. Slíbil jsem to našim hráčům.
     
  24. Offline

    Kegan187

    what?
     
  25. Offline

    Fearil

    "I hope that it will be functional version Sunday. I promised our players."
    ... google tells me its Czech...

     
  26. Offline

    mrgreaper

    that was wednesday, you were online 4 am yesterday please can we have an update on reather you are still updating this?
    our server considered local shops but the players voted to wait for your plugin thats how good it is!
    please let us know whats happening
     
  27. Offline

    weasel5i2

    I know what's causing the error

    Code:
    Caused by: java.lang.NoSuchMethodException: com.MatCat.NPCTrader.NPCTrader.<init>()
    .. I had the same problem when I tried recompiling SearchIDs. The error was being caused by plugin.getDescription() failing for no apparent reason. The solution I found was to hard-code the plugin name and version (SearchIDs, 1.21-gigawatts) to get it to not fail on load.

    This has been addressed as Bug #512 - but they say it's not a bug, just a compatibility error.

    If I had the source I'd try hacking at it. :)

    Hope this helps!
     
  28. Offline

    Poinball

    This Work with the Craftbukkit #493 ?
     
  29. Offline

    Deatlev

    What the hell is MySQL??? I Dunno how to install this mod please describe better
     
  30. Offline

    DJHenjin

    Deatlev:
    MySQL is not a mod nor is it anything thats been developed by any of the developers for bukkit. MySQL is a peice of software that is usually used on webservers and games servers as a data storage application. It can store billions of lines of data easily with the only limitation being the amount of hard drive space availiable it runs completely independant of Bukkit.

    If you are looking for a good peices of MySQL server software lookup Wamp server. very easy to setup and very intuitive.
     
  31. Offline

    4am

    www.mysql.org

    And it's used on more than webservers and game servers - It's a database. It's used really anywhere data storage is needed.
     

Share This Page