Smebb

Members
  • Content Count

    42
  • Joined

  • Last visited

Posts posted by Smebb


  1. Is there a way to change this without modifying the server.jar? Like is there a config option in any of the files or something? We can't find the setting for it anywhere and we'd prefer not to modify the server files in any way.

    from com.wurmonline.server.statistics.ChallengeSummary.class
    
    private static final String rootdir = "/var/www/challenge/";

    We'd like to have the challenge stats not saved to that location as the web server is not located there, or is this feature meant only for administrators? Any help or input from Code Club AB would be appreciated. If this is not the place for this discussion I understand but I didn't think it related to modding as it's something already in the game.


  2. Added the meditation path and level insertion (after much testing!!!) and concluded it works as intended. We have had no problems as of yet, we could level up on the paths and receive questions, and show up on the local leaders list and use abilities as normal.

    Marked the project as released and given access to the files for the tool. We hope someone can integrate this in to one of the admin tools or create a portable or offline version in Java or something. :)


  3. The only way I've been able to achieve this is to disable the Home Server setting in the server settings and make sure I make villages Kingdom Spawns. This forces players to choose a Kingom when they first enter the server though, which is not what I wanted. If anyone knows or finds a way to make a portal change a players kingdom then teleport them to the Kingdom home village, please let me know. It'd be greatly appreciated. :)


  4. Currently 2 servers with 1 more in development/testing. Interactive maps, cluster info and a tutorial on how to install the maps for our servers in to your client can be found with this link. We've been running VWT Home since 23rd of October 2015.
     
    VWT Home - 2048x2048, landing server, 8000 creatures (30% hostile), altars
    Violent_Isles.jpg
     
    VWT South - 4096x4096, 16000 creatures - will be increased once population rises (25% hostile), has a couple of no-PvP zones, altars

    Violent_Isles_South.jpg

     

    All new players have the option of 3 kingdoms to join: Freedom Isles (Freedom), Dragonsteel Militia (Mol Rehan based PMK) or Tenebrous Exiles (HotS based PMK) all with their associated newbie villages which have most newbie resources close by.
    We're currently looking for more active players to join Tenebrous Exiles and Dragonsteel Militia so as to balance the three kingdoms. There is even a spot for an active player to become the King/Queen of Dragonsteel Militia as we already have a King for Tenebrous Exiles.
    Game mechanic settings:
    • PvP - yes
    • Skillgain - 1x
    • Characteristics start at 20
    • Fighting starts at 5
    • All other skills start at 1
    • Combat rating - 1x
    • Action timers - 1.4x (subject to change)
    • Upkeep is enabled
    • Free deeds are disabled
    • Minimum mining actions - 40
    • Breeding modifier - 1x
    • Field growth - 8 hours
    • Tree spread - 1x

    More active players are also needed to become priests and meditation leaders. We're hosting events every month (with prizes or loot) which are decided by polls so the players get to choose what we do that month.

    Silver (and gold) coins can be made available along with skill dumps from your Wurm Online character should people find playing on our servers enjoyable and wish to donate to the running costs of the servers.

    If you didn't check out the cluster info link above: to connect to the servers search for "VWT Home" in the server list.

     

    The Violent Isles waits for you...

     


  5. Quick fix: Updated it to fix the titles.


     


    It was inserting the skill ID in to the database instead of the actual title ID. It wasn't breaking anything that we noticed but the titles weren't working either. Sorry about that!


     


    We've also made it so there is a comment in the SQL to tell you when it was generated for which character name. Also changed the filename of the download to Update_PlayerName_.sql as requested by those downloading multiple SQL files and having "UpdateSkills.sql", "UpdateSkills(1).sql","UpdateSkills(2).sql" etc in their Downloads directory for different characters.  :P If anyone wants the date/time added to the file name I can do that too or add an option for it.



  6. Is there a way to set up a mission or something that when you use a portal (or examine a statue or whatever) will popup a dialog with information about the kingdom with a confirmation button that then sets you to a PMK (or FI, JK, MR or HotS for that matter) and teleports you to the kingdom capital? I know how to make a mission that teleports someone when examine a statue... but the guards annihilate whoever uses it because default kingdom is Fredom Isles.


     


    I'd like to also have an item or Portal that leads people to a clustered server should they just want to play PvE but it isn't essential right now. (linked server is already setup and working)


     


    I'm using the Creative database with a custom map. I thought it'd be much more fun starting a server from scratch but having KvK enabled. If I have to go in to the database to tinker with stuff that's fine. It'd be nice to have a hint at what data I'm looking for though.


     


    If anyone can help it'd be greatly appreciated!



  7. If you mean verify the SQL query is being executed then yes you can:

     

    • Shut down the server. (If you're using an external host then also download the map folder so you have it locally).
    • Open DB Browser. Click "Open Database" at the top, then navigate to the wurmplayers.db file and click Open
    • To check the SQL query works:
      • Click the "Execute SQL" tab at the top and paste in the SQL code generated by the tool.
      • At the bottom of the DB Browser window (2 sections under where you pasted the SQL queries) there is an error box that will halt the queries and report any errors.
      • Once it has finished and displays the last query it executed - click "Write Changes" at the top of the window.
    • If you wish to make sure changes have been made and you understand how Structured Query databases work then you can navigate to the "Browse Data" tab and in the drop down choose PLAYERS and look for your player name.
    • If you enabled the extended options and updated your Faith, Deity, money, sleep bonus or anything like that - you should see them changed in the table. If you didn't enable extended options then simply paste this code in to the "Execute SQL" box:
      SELECT * FROM `SKILLS` WHERE `OWNER` = (SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'YOURNAME');

      Just change YOURNAME to your player name.

    • If the skills are displaying correctly then they should be updated when you start up the server again.
    • When you start the server make sure that the "Select database to use" matches the directory of the database you just updated. If you're using an external host - make sure the database is in the correct directory when you upload it. (Some hosts only support you to use one directory and you can't change it)

    I hope this helps.


  8. Sorry, I'm SQL ignorant. What's the command to get the "UpdateSkills.sql" file into the "wurmplayers.db"? Could you add a quick blurb in the first post detailing how to do that? Other than that, the actual generation of the file looks great. 

     

    Thanks!

     

    I've tried:

    .open wurmplayers.db

    .read UpdateSkills.sql

    in the sqlite3 shell, but starting up the server again and checking the skills doesn't show anything's changed.

     

    When you do the SQL queries make sure your server isn't running. I don't know why but I've not had any luck executing the queries while the server was running. If you're using the SQLite3.exe in the map directory you're using and you have placed the UpdateSkills.sql file along side the SQLite3.exe, then yes those commands should work. There should be a short pause when you execute .read then the sqlite> prompt should display again.

     

    We're having no problems using the provided SQLite3.exe program, using PHP nor injecting and writing changes via DB Browser for SQLite.


  9. I just want to make sure I understand... this is a tool to take your Wurm Online character and import it's skills into an Unlimited character?

     

    Yes this imports skills from a skills dump done on Wurm Online. No this does not to create a character. You must have first logged a character in to the server/map so it is recognised in the database before you can use this. If you understand SQLlite or know what to do with the SQL code - you need to run this on wurmplayers.db.

     

    I have also updated the tool to add affinity, reset skills, max all skills, and added extended options (GM Status, Faith, Favor, Alignment, which Deity they serve, which Kingdom they belong to, set bank balance in Irons, Priest status, how much sleep bonus they have, and Karma).

     

    Feedback is appreciated! 


  10. Also, there may be a slight issue with the script. More like with my skill dump, but I don't see why I should be the only one.

     

    It appears that my last skill dump, skills.20140728.0748.txt, has this:

     

          Beverages: 10.771588 10.771588 0

          Butchering: 31.264412 31.264412 0

       Fighting: 73.43082 11.409132 0

          Shield bashing: 1.2157669 1.2157669 0

          Taunting: 2.5652437 2.5652437 0

          Normal fighting: 55.522255 55.522255 0

          Defensive fighting: 7.5168114 7.5168114 0

     

    The previous one, skills.20140720.1428.txt, is OK:

     

          Beverages: 10.771588 10.771588 0

          Butchering: 31.264412 31.264412 0

       Fighting: 73.43082 73.43082 0

          Shield bashing: 1.2157669 1.2157669 0

          Taunting: 2.5652437 2.5652437 0

          Normal fighting: 55.522255 55.522255 0

          Defensive fighting: 7.5168114 7.5168114 0

     

    I don't know why the game decided to bug my final skill dump, it was probably feeling something, anyway, the tool ended up generating a:

     

    INSERT INTO `SKILLS` [...] ),1023,11.409132,10,0);

     

    It is correct in assuming that the second row is usually the highest, but now my WU toon is d0med. Maybe there is a point in making it so it uses the max of the two columns?

    Working on it - my wife had the same issue with her skill dump. We were puzzled why her highest was lower than her current skill too.  :huh: Glad to see she wasn't the only one who had this happen. It occurs in two of her four skill dumps she has taken over the years infact..

     

    Time to grind some more rust off this ole brainbox!

     

    EDIT: Fixed that now. It will always store the uppermost of the highest vs current. My wife will be happy to get her 65 tailoring back. ^_^

     

     

    The SQL I provided will keep the highest skill in case of a dupe, which is slightly different than erasing everything. There is no reason for this on a totally new toon, but if someone raised something that isn't in the skill dump before using the import tool and wants to keep it, this is the way to do it. Up to you.

     

    The reason why I decided to delete all current skills in the database is in the case someone has set themselves to GM and raised their skills, but want to retain/revert to the skills their character had in Wurm Online. Once I feel the tools are a bit more refined I'll release the source so people can make their own custom tools.

     

    EDIT 2: I see what you're saying now (I've had 2 cups of coffee). I had a DELETE query commented out in my PHP. That's why you're getting dupes. Sorry about that! Should be fixed now. I've also fixed it so any skills at exactly 1.000000 or below is not inserted. Obviously the player hadn't used or discovered the skill yet.

     

    Thanks for the feedback guys much appreciated!


  11. There is a reset player skills checkbox on the SQL generation form that outputs SQL queries like this:



    DELETE FROM `SKILLS` WHERE `OWNER` = (SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb');
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES (1,1,1,1.00,1.00,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),1023,10.0000000,10,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),2,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),100,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),101,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),3,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),106,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),105,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),1,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),102,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),103,20.0000000,20,0);
    INSERT INTO `SKILLS` (`ID`,`OWNER`,`NUMBER`,`VALUE`,`MINVALUE`,`LASTUSED`) VALUES ((SELECT max(ID) FROM SKILLS)+1,(SELECT `WURMID` FROM `PLAYERS` WHERE 1=1 AND `NAME` = 'Smebb'),104,20.0000000,20,0);
    DELETE FROM `SKILLS` WHERE `ID` = 1 AND `OWNER` = 1;

    All this series of queries does is delete skills from the player with the name provided (Smebb in this case), inserts a dummy record with the owner id of 1 (the SKILLS table doesn't autoincrement, and the primary key (ID) is set to NOT NULL so there has to be a record in the table before the other queries can be executed), puts in the base characteristics and fighting skill (20 and 10 respectively) then removes the dummy record.


     


    EDIT: I've formatted the SQL generation page a bit better so the ugliness doesn't hide the clear player skill data check box. :Phttp://www.vwtfoundation.co.uk/Wurm/wurmImport.php



  12. As I mentioned in a previous topic me and Slinky were working on a Wurm skills dump to SQL tool. While working on getting the dump to SQL we had to find an easy way to parse the data and put it in to an easy form for making SQL queries... so we made a skills2CSV converter. Since then the tool(s) have evolved and they do a bit more than just convert the raw skill dump to an SQL file.

     

    The online toolhttp://vwtfoundation.co.uk/wurmimport/
    Forum post about our Wurm Database Spreadsheethttp://forum.wurmonline.com/index.php?/topic/132940-wurm-skills-spreadsheet/

    Download the Tool

    To download the tool for further development or testing locally we have now decided to release the tool: http://www.vwtfoundation.co.uk/Wurm/WUChar.zip temporary URL https://www.dropbox.com/s/a2yiv4l988agdrz/WUChar.zip?dl=0

    Neither of us are pros at PHP/Javascript/SQLite so please excuse the quality of scripting. Most of it is commented so you should be able to understand what is doing what from where, etc. If you have any advice or input it would be greatly appreciated.

    The tool is provided as is and neither me nor Slinky will take any responsibility for you using the files. To use the tool simply upload to a PHP 5 enabled web site/server and extract the WUChar.zip contents. You can name the WUChar directory to anything you like. All the rest is pretty self explanatory for people who understand PHP.

     

    It would be nice if someone could improve the security and/or convert this to Java so a portable version is available. If you know Java and understand PHP/Javascript/HTML forms and fancy having a crack at making a Java application out of this tool - please do!

    PLEASE NOTE: Do NOT use the SQL queries on a live server yet. If you do - you do so at your own discretion. There are warnings on the tools but I thought I'd just warn you beforehand. It's still a work in progress but I need people to test it. So far we've had no problem importing our own skills and adding attributes on to our test server and the skills work/update/degrade when you die just fine.

     

    To import the SQL file created:

    • Shut down the server to avoid conflicts.
    • If you are hosting the server yourself (or single player) then navigate to "DirectoryForWurmOrServer\<Mapname>\sqlite"

                   e.g.         C:\Program Files (x86)\Steam\steamapps\common\Wurm Unlimited\WurmServerLauncher\Adventure\sqlite
       
    • Copy the UpdateSkills.sql file created with these tools in to this directory.
    • Within this directory is an application called sqlite3.exe. Just double click this application and a command prompt-like window will open with sqlite> displayed.
    • Type in the following, pressing return after each line: 
    •    .open wurmplayers.db   .read Update_Yourplayername_.sql 
    • The application will seem unresponsive for a second or two, then return back to the sqlite> prompt. Type the following then press Return:
         .exit

      (Thanks to epel for making this point)

    • It should now have now completed the SQL queries and you should now be able to start the server or game again

     
    DONE:

    • Insert affinities
    • Insert Faith, Favor, Alignment, Karma and Priest/Follower status along with deity
    • Add to inventory SQL queries (someone is going to have to help with item IDs /rarity/material/etc) - The inventories are kept in a different database, however should you develop a tool that connects to the wurmitems.db file, item ids can be found here on the item_data sheet.
    • Set other character attributes
      Added so far:
      • Kingdom
      • GM status
      • Bank balance
      • Priest/Follower and Deity status
      • Sleep bonus
      • Karma
    • Grant titles Only grants titles that are given by skills. Gives titles based on gender (which you must specify). Does not add Epic titles.
    • Meditation path. Tested this with changing the server system time, adding time to the server time, and it gives questions dependant on level correctly for all paths, lets you advance properly, special abilities all work, server leaders show up for the paths, everything works as far as we can see... :) We would like some feedback on this as we've never been really high level on the paths before.

     

    We made it so that it generates the SQL file with an "update_", "max_" or "reset_" prefix so you can tell at a glance what the SQL file will do. Just in case you generated a few files.

     

     

    Credit for the inspiration and starting code for the CSV generator (first part of the tool) goes to http://wurmkit.com/

  13. Hi, does anyone know about where the skill ID (the ID column, not the NUMBER) value comes from in the SKILLS table of the wurmplayers.db? It can not be null when you're creating a new record and it isn't automatically incremented if using an SQLite INSERT query. Is it a timestamp of how long the server has been up or something? If anyone could help me figure out how the ID is generated it would help me (and other tool creators/modders) immensely.


     


    Cheers,


     


    Smebb



  14. Hey there!


     


    Me and Slinky are working on an SQL file generator for server administrators to import skills that people may have had on Wurm Online, or if they want a certain skill set. Could be used for server admins to make custom "loadouts" for certain players or whatever... Anyway...


     


    Some modders or tool makers might find this spreadsheet I made useful:


     


    https://docs.google.com/spreadsheets/d/1XxCk2JVCTj3bblYuaHRZQT2garVo8y3SjcrIZoWBohc/edit?usp=sharing


     


    It's a list of all the skills and their associated "Number" in the database in order of the skill dump.


     


    Once we've fully tested the skill SQL generator (which will eventually read a Wurm skills dump file and automatically output the SQL file) and tweaked it a bit, I'll post it up here along with the PHP source so people can convert it to Java, Python, C or whatever your poison is.


     


    I hope the spreadsheet helps some people!



  15. (real life situations)

    ... you look at your lawn and think to yourself "That has to be picked clean, I'll try later."

    ... you look at your neighbours sloped lawn and wonder if it's less than 8 dirts. Then you wonder why they don't have wemp or cotton planted on it.

    ... you look at a cow and wonder if it has been milked today or not.

    ... you look at the willow trees in the park and try to work out how many long bows and fishing rods you'd get from it.

    ... you use a knife on a pumpkin and wonder why it doesn't grow horns.

    ... you go to a car boot fair/garage sale and try to barter with woad and bits of untreated cotton.

    ... you can't find a tar tile to fill the sweet lantern up you got at the car boot fair/garage sale.