Ankündigung Changelog 2015-04-25: New multiplayer features and important changes

  • Changelog 2015-04-25: New multiplayer features and important changes

    Hi folks,

    Here is a small but important update. Unfortunately it does not introduce ores yet, we're still working on it ;)
    This update is mainly about multiplayer, since especially larger servers had some severe issues in the past. This update should fix all major problems and improve performance, especially concerning chunk loading.
    Basically this also affects singleplayer.

    Apart from that, this update finally introduces optional password protection for your multiplayer server, also the server output is now written into a log file (this might be interesting for Windows servers).

    See the full changelog below. Stay tuned! :)

    __________________________________________
    Changelog:
    • [New] Added password protection for multiplayer servers (set 'server_password' in your server.properties file)
    • [New] Multiplayer servers can now disable the "makeadmin" command (set 'settings_makeadmincommand_enabled' to false)
    • [New] Serverlog is now written to a file (subfolder "Logs") if enabled (set 'settings_create_serverlog' to false to disable it)
    • [Change] Improved performance for SQLite and MySQL (especially for multiplayer servers)
    • [Change] You receive localized messages now when getting kicked from the server (not by admin)
    • [Change] Slightly improved animal sync (avoiding flying animals in certain situations, still needs a lot of work)
    • [Change] Player id in multiplayer now begins with 1 instead of 0
    • [Bugfix] Fixed problem with animals (animals not moving sometimes)
    • [Bugfix] Fixed some connection issues
    • [Bugfix] Removed old duplicate entries in chest table
    • [Bugfix] Fixed bug with ingame time in multiplayer
    • [Bugfix] Fixed erroneous chunk loading on large worlds

    __________________________________________
    Bugfix 2015-04-26:
    • [Bugfix] Fixed a problem when converting a world with empty tables (e.g. empty chests table)
    • [Bugfix] Fixed a problem causing the conversion to abort when there are invalid items in any player inventory

    __________________________________________
    Bugfix 2015-04-28:
    • [New] New command 'cleanup [type]' to delete all items, chopped trees or corpses in the world
    • [New] Admins are now tagged as "[Admin]" in playerlist (multiplayer)
    • [Change] MarkingStatus object (Lua) for callback function of 'player:disableMarkingSelector' is now false when no start or endposition is defined
    • [Bugfix] Fixed inventory issues in multiplayer when using MySQL
    • [Bugfix] Fixed issue which prevented you to remove construction elements in rare cases
    • [Bugfix] Fixed server logging to file
    • [Bugfix] Fixed issues with growing plants
    • [Bugfix] Fixed issue causing items not to despawn in some situations
    • [Bugfix] Callbackfunction (Lua) for 'player:enableMarkingSelector' does work now

    __________________________________________
    Bugfix 2015-05-02:
    • [Bugfix] Fixed issues with database access ("database is locked")
    • [Bugfix] Fixed problems with clients not disconnecting correctly (multiplayer)
    • [Bugfix] Fixed problem causing the client to crash in rare cases

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von red51 ()

  • Tested a script in singleplayer and got this at a 10 secs interval or so

    Quellcode

    1. ​java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such column: LastAccess)
    2. at org.sqlite.DB.newSQLException(DB.java:383)
    3. at org.sqlite.DB.newSQLException(DB.java:387)
    4. at org.sqlite.DB.throwex(DB.java:374)
    5. at org.sqlite.NativeDB.prepare(Native Method)
    6. at org.sqlite.DB.prepare(DB.java:123)
    7. at org.sqlite.PrepStmt.<init>(PrepStmt.java:42)
    8. at org.sqlite.Conn.prepareStatement(Conn.java:404)
    9. at org.sqlite.Conn.prepareStatement(Conn.java:399)
    10. at org.sqlite.Conn.prepareStatement(Conn.java:383)
    11. at d.a.a(SourceFile:108)
    12. at ap.c.c(SourceFile:248)
    13. at as.d.b(SourceFile:47)
    14. at ao.b.b(SourceFile:212)
    15. at ax.a.b(SourceFile:118)
    16. at server.b.h(SourceFile:1156)
    17. at server.b.b(SourceFile:468)
    18. at server.b.run(SourceFile:1224)
    19. at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    20. at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
    21. at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
    22. at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
    23. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    24. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    25. at java.lang.Thread.run(Thread.java:745)
    26. -> Remove spawn collision helper
    Alles anzeigen


    The code should check that such column doe exist and ALTER the table accordingly...
  • LordFoobar schrieb:

    The code should check that such column doe exist and ALTER the table accordingly...

    If this column does not exist, the world hasn't been converted to the new version (the database structure has been completely changed with this update).
    Usually the world converts when loading it for the first time, unless it's a very old world version. What happened when you loaded the world for the first time after the update?
  • It was fine before today's update... as far as I know, and the world has been created about 3 weeks ago. (about two updates back) I have two test worlds that I randomly choose to test scripts. If I'm the only one to report this, then I'll just delete it and create a new test world :) Just thought I'd share this.


    UPDATE : same thing with the other world, same error. The other world has been created when update 0.5.6.4 was released (the bear and moose update).

    UPDATE 2 : I have noticed a brief yellow rectangle while loading the world, but did not notice any particular output, sorry.
  • red51 schrieb:

    3 Weeks is okay, as long as it's not a few months old there should be no problem^^
    What happened when loading the world for the first time after today's update? There should have been a small yellow indicator about conversion in the loading screen? Or did you perhaps cancel the loading process?


    I have seen the yellow rectangle for the second world, but did not have time to see what it was, it was there a fraction of a second, and I didn't think of copying the debug output :( I haven't noticed that the first time (for the first world).
  • LordFoobar schrieb:

    I have seen the yellow rectangle for the second world, but did not have time to see what it was, it was there a fraction of a second, and I didn't think of copying the debug output I haven't noticed that the first time (for the first world).

    That's fine, if the loading procedure did not stuck there should be no problem... Do you mind to send us your current world via email (support[at]jiw-games.net) perhaps? Then we can see if something went wrong ^^
  • @LordFoobar: Thanks for sending us the world! There was indeed a problem with the conversion: When a particular table (e.g. chests) was empty, it hasn't been converted. You can fix the problem by deleting all tables that are empty, then they will be recreated when loading the world. If the worlds are not too important, you can simply create a new world ^^
    We also uploaded a new version, Steam should automatically download it. If you're using the Standalone you need to delete any file (since this update has no new version number), e.g. server.jar in the data subfolder.
    Thanks for helping us to find this issue :)
  • red51 schrieb:

    @LordFoobar: Thanks for sending us the world! There was indeed a problem with the conversion: When a particular table (e.g. chests) was empty, it hasn't been converted. You can fix the problem by deleting all tables that are empty, then they will be recreated when loading the world. If the worlds are not too important, you can simply create a new world ^^
    We also uploaded a new version, Steam should automatically download it. If you're using the Standalone you need to delete any file (since this update has no new version number), e.g. server.jar in the data subfolder.
    Thanks for helping us to find this issue :)


    No problem! Happy to help you guys! These world weren't important, so I'll just create new ones.

    Cheers!