Achievement to MySQL

Discussion in 'Archived: Plugin Requests' started by D.Joe, Mar 24, 2014.

  1. Offline

    D.Joe

    Hello, i need a plugin that can retrive player's minecraft achievement data, and upload it to MySQL.
    Is it possible?
    I do not want a plugin for custom achievements, i want a plugin that tells me what minecraft basic achievements has the player unlocked
     
  2. Offline

    timtower Administrator Administrator Moderator

    D.Joe Might be able to do this. What table structure do you want?
     
  3. Offline

    D.Joe

    timtower Nothing complicated. just player and achivement
    ID (unique key) , Username, AchName
    0, djoe, Time to mine!

    Also, since this is possible, do you think you can make the inventory to the sql? I have found a plugin, but it uploads me a BLOB.
    The inventory should be only what the player has in hand, and it should be like this
    ID(unique key), Username, Item1, Item2, Item3, Item4, Item5, Item6, Item7, Item8, Item9
    0, djoe, diamond_block@10, redstone_block@3, light_wool@1, air, air, air, air, air, air
     
  4. Offline

    timtower Administrator Administrator Moderator

    D.Joe I won't add inventory support. The achievements have something to check, the inventory doesn't.
     
  5. Offline

    D.Joe

    timtower aren't they both stored in the same place?
    If not, the achievements would suffice :)
     
  6. Offline

    timtower Administrator Administrator Moderator

    Maybe stored in the same place but I am not going to sniff in the player.dat files. I just call some functions every ... minutes to check / upload the new stats
     
  7. Offline

    D.Joe

    okay =D
     
  8. Offline

    timtower Administrator Administrator Moderator

  9. Offline

    JoeyDevs

  10. Offline

    timtower Administrator Administrator Moderator

    Distraction from normal life.
     
    Goblom likes this.
  11. Offline

    D.Joe

    timtower
    It adds world prefix to the players, can you remove that?
    ex:
    Code:
    [Survival][Owner]Joe96 : something in chat
    [world]Player : something in chat
     
  12. Offline

    malandrix_bunny

    Are you using multiverse-core
     
  13. Offline

    D.Joe

    Yes, i fixed that issue, but the plugin does not work.
    Code:
    [15:17:38] [pool-3-thread-36/WARN]: java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:434)
    [15:17:38] [pool-3-thread-36/WARN]:    at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1388)
    [15:17:38] [pool-3-thread-36/WARN]:    at nl.timdebrouwer.mysqlachievements.Runner.check(Runner.java:54)
    [15:17:38] [pool-3-thread-36/WARN]:    at nl.timdebrouwer.mysqlachievements.Runner.run(Runner.java:28)
    [15:17:38] [pool-3-thread-36/WARN]:    at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53)
    [15:17:38] [pool-3-thread-36/WARN]:    at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
    [15:17:38] [pool-3-thread-36/WARN]:    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    [15:17:38] [pool-3-thread-36/WARN]:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    [15:17:38] [pool-3-thread-36/WARN]:    at java.lang.Thread.run(Thread.java:722)
     
  14. Offline

    timtower Administrator Administrator Moderator

  15. Offline

    D.Joe

    timtower
    Code:
    [17:12:26] [pool-3-thread-30/WARN]: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
    [17:12:26] [pool-3-thread-30/WARN]:    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    [17:12:26] [pool-3-thread-30/WARN]:    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    [17:12:26] [pool-3-thread-30/WARN]:    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    [17:12:26] [pool-3-thread-30/WARN]:    at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.Util.getInstance(Util.java:382)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1662)
    [17:12:26] [pool-3-thread-30/WARN]:    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1581)
    [17:12:26] [pool-3-thread-30/WARN]:    at nl.timdebrouwer.mysqlachievements.Runner.check(Runner.java:54)
    [17:12:26] [pool-3-thread-30/WARN]:    at nl.timdebrouwer.mysqlachievements.Runner.run(Runner.java:28)
    [17:12:26] [pool-3-thread-30/WARN]:    at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53)
    [17:12:26] [pool-3-thread-30/WARN]:    at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
    [17:12:26] [pool-3-thread-30/WARN]:    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    [17:12:26] [pool-3-thread-30/WARN]:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    [17:12:26] [pool-3-thread-30/WARN]:    at java.lang.Thread.run(Thread.java:722)
    You did something wrong in the query =D

    It should be INSERT INTO table VALUES (0, 'player', 'achievement');
     
  16. Offline

    timtower Administrator Administrator Moderator

    D.Joe Will look into it.
    D.Joe You don't need to give an argument for auto increment.
    And I am using the quotes
     

Share This Page