CraftConomy

CraftConomy is a simple, lightweight and yet very effective economy handling plugin. It provides a very easy API for the developer to use. Manage your whole server in-game money with this plugin! Lottery, Shops, Payments, Killing reward, Anything! Your imagination is the only limit you can encounter!
Latest version: 3.3. Compatible with Craftbukkit 1.8 (1.7.9 too!)
Download
Found a bug? Have a suggestion?
GitHub
irc.spi.gt #craftconomy
Javadoc
Documentation
- Translations
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Features:
- Simplicity: This plugin is a simple drag & drop to use with a in-game setup wizard!
- Multiple data storage: Choose between a vast array of data storage for your player data (Currently only SQLite/MySQL but more to come!)
- Multi-World support (Have different balance between worlds)
- Multi-Currency support
- Bank support
- PayDay support
- Convert from iConomy / BoseEconomy / Essentials / Feconomy (Dev build)!
- Very fast!
- Supported by Vault!
- And much much more!
Todo
- Add the Interest system
Update Checking
This plugin utilizes Gravity's update checker to notify when a new version of the plugin is out, it will not automatically download the new version. It also notifies the admins that a new plugin version is available. This can be enabled ordisabled in the config.yml. To disable update-checking, set updates.check-for-updates to false. To disable admin notifying, set updates.notify-admin to false.
Metrics Collection
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
A unique identifier The server's version of Java Whether the server is in offline or online mode The plugin's version The server's version The OS version/name and architecture The core count for the CPU The number of players online The Metrics version Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
-
View User Profile
-
Send Message
Posted Aug 14, 2012@CerbX
http://wiki.greatmancode.com/display/CRAFTCONOMY/Permissions . It contains all permissions for the /money command. I need to update the page for all the other commands.
-
View User Profile
-
Send Message
Posted Aug 14, 2012@greatman321
Hey, did you change any permission nodes? When I give a group Craftconomy.money.holdings it won't let them check their balances, but when I use Craftconomy.* or Craftconomy.money.* it lets them check it.
-
View User Profile
-
Send Message
Posted Aug 14, 2012Hello!
Craftconomy3 now have Craftconomy 2 importer (Untested yet)! Also fixed some bugs with created MySQL tables (the acl table was bugging)
http://jenkins.thebigdigmc.info/job/Craftconomy3/211/artifact/target/craftconomy3-3.0.0-SNAPSHOT.jar
Use this Vault: http://ci.herocraftonline.com/job/Vault/lastSuccessfulBuild/artifact/target/Vault-1.2.18-SNAPSHOT.jar
-
View User Profile
-
Send Message
Posted Aug 14, 2012@djaddi
http://jenkins.thebigdigmc.info/job/Craftconomy/5/artifact/target/Craftconomy-2.3.5-SNAPSHOT.jar
-
View User Profile
-
Send Message
Posted Aug 14, 2012Hey there.
This error is thrown for every interaction with CraftConomy (including CraftConomy's own commands, e.g. /money top). Same with default currency settings, so that can't be it.
Have fun,
Addi
-
View User Profile
-
Send Message
Posted Aug 14, 2012@CrazyDavid14K
Never a good idea to run 2 economy plugin on a server... That's why you have problems working with Craftconomy.
-
View User Profile
-
Send Message
Posted Aug 14, 2012@pimsserver
You have a issue with your Currency configuration. Be sure it's alright.
-
View User Profile
-
Send Message
Posted Aug 14, 2012Does this use Vault because when i'm in my server it uses EssentialsEconomy instead of craftconomy and like when i buy from moneyshop it uses EsentialsEco instead of craftconomy can you or someone else tell me how to fix this because i never had this issue.
And one more thing in iconomy when its installed it automatically disables EssentialsEconomy Can you do that for your plugin plz it will be great for many users/Server owners.
-
View User Profile
-
Send Message
Posted Aug 14, 2012CB 2321 CC 2.3.5
log: http://pastebin.com/uQt27kNS
settings: http://pastebin.com/CwjebDsK
-
View User Profile
-
Send Message
Posted Aug 13, 2012Hello again!
The Craftconomy V2 to V3 importer is about half done. Currently it should (I didin't test it yet) import all currency and accounts (with their according balance). Nothing about banks is imported yet. It doesn't work with custom table names unfortunatly due to the way SimpleSave (The plugin I use to load databases) works. Ill do a converter for that later.
Also. I took the time to create a simple logo for Craftconomy! :
(http://dl.dropbox.com/u/28996829/craftconomy.png)
You can get the new version here: http://jenkins.thebigdigmc.info/job/Craftconomy3/202/artifact/target/craftconomy3-3.0.0-SNAPSHOT.jar
-
View User Profile
-
Send Message
Posted Aug 13, 2012@surfarcher
Yes iConomy is done but I didin't test it yet.
-
View User Profile
-
Send Message
Posted Aug 13, 2012@greatman321
So you've finished the iConomy conversion code and the other bits? Oh that's awesome to hear! TY!
-
View User Profile
-
Send Message
Posted Aug 13, 2012@greatman321
My logblock mysql server works fine... and there both hosted on my website... and the files are being created...
-
View User Profile
-
Send Message
Posted Aug 13, 2012@doggyroc
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet successfully received from the server was 7,133,609 milliseconds ago. The last packet sent successfully to the server was 2 milliseconds ago.
Your connection to your SQL server fails.
-
View User Profile
-
Send Message
Posted Aug 13, 20122012-08-13 11:04:27 [SEVERE] com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet successfully received from the server was 7,133,609 milliseconds ago. The last packet sent successfully to the server was 2 milliseconds ago.
2012-08-13 11:04:27 [SEVERE] at sun.reflect.GeneratedConstructorAccessor101.newInstance(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at java.lang.reflect.Constructor.newInstance(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3082)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2968)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3516)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1474)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.utils.SQLLibrary.query(SQLLibrary.java:96)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.utils.SQLLibrary.entryExist(SQLLibrary.java:256)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.utils.DatabaseHandler.exists(DatabaseHandler.java:295)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.Account.<init>(Account.java:51)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.AccountHandler.getAccount(AccountHandler.java:118)
2012-08-13 11:04:27 [SEVERE] at me.greatman.Craftconomy.listeners.CCPlayerListener.onPlayerJoin(CCPlayerListener.java:16)
2012-08-13 11:04:27 [SEVERE] at sun.reflect.GeneratedMethodAccessor309.invoke(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at java.lang.reflect.Method.invoke(Unknown Source)
2012-08-13 11:04:27 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:330)
2012-08-13 11:04:27 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
2012-08-13 11:04:27 [SEVERE] at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:35)
2012-08-13 11:04:27 [SEVERE] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
2012-08-13 11:04:27 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.c(ServerConfigurationManagerAbstract.java:161)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.ServerConfigurationManagerAbstract.a(ServerConfigurationManagerAbstract.java:92)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.NetLoginHandler.d(NetLoginHandler.java:121)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.NetLoginHandler.c(NetLoginHandler.java:41)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:44)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.DedicatedServerConnection.b(SourceFile:29)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:579)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:472)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:404)
2012-08-13 11:04:27 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:539)
2012-08-13 11:04:27 [SEVERE] Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2529)
2012-08-13 11:04:27 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2979)
2012-08-13 11:04:27 [SEVERE] ... 32 more
Every... 5... minutes...
-
View User Profile
-
Send Message
Posted Aug 13, 2012@surfarcher
it's somewhat readiness atm. Whole thing is not fully tested tho.
-
View User Profile
-
Send Message
Posted Aug 13, 2012@greatman321
Thanks for the update greatman321! Do you have a feeling for when v3 will be approaching readiness?
-
View User Profile
-
Send Message
Posted Aug 13, 2012@greatman321
Ok I will wait for V3 to see what changes you will made
-
View User Profile
-
Send Message
Posted Aug 13, 2012@MrSerios
The database layout can't really be changed (And those settings will disapear on V3 so I recommend to not change it. The tables are still created but not used in your case).
You can do neat SQL queries to retrieve something iConomy like SELECT balance,worldName,Currency.name FROM Balance LEFT JOIN Currency ON Balance.currency_id = Currency.id WHERE username = "greatman" ORDER BY worldName.
That will create a query containing the following as columns about the user greatman on the economy system: - Balance (The actual balance) - currency Name - The world associated with that balance (Only usefull if you enable
About auto account creation, with V3 the account will only be created if it is access (/money by example).
-
View User Profile
-
Send Message
Posted Aug 13, 2012Hi @greatman321 I really want to migrate from iConomy to CraftConomy, but there is some things that worries me, for example, in config file we have this:
" # The table used for the accounts
AccountTable: 'Account'
BalanceTable: 'Balance'
# The table used for the bank
BankTable: 'Bank'
BankBalanceTable: 'BankBalance'
BankMemberTable: 'BankMember'
# The table used for currency
CurrencyTable: 'Currency'
CurrencyExchangeTable: 'CurrencyExchange' "
As I understand from the info above, each data is stored in different tables. So I have couple of questions:
1. It will be possible to make the plugin to read from 1 table, but different fields for player name and balance? My table with usernames and balances is structured almost like iConomy table and is used also by Forum CMS.
2. If I don't enable the Bank and different Currencies options in config and leave: CurrencyTable, CurrencyExchangeTable, Banktable, BankBalanceTable and BankMemberTable blank, it will your plugin still work?
3. Is it posible to disable "automatic account creation" option, since when the player connects to the server he already have account created by the forum CMS, where he must register first, to gain access to the server.
In my case, I have one DB table with different fields, created by forum CMS, that contain minecraft username, user balance and some other stuff which are related to the forum system. Is your plugin capable to read only data that it need and is stored in this table? Only username and balance data - nothing "fancy". I think it will be good option for all people that using some Forum or any other CMS integrated with their servers