Sign in to follow this  
Captain_Chaos

WorldPainter to Wurm Unlimited converter

Recommended Posts

Nice, thanks!

 

EDIT: The game will generate the cave layer if one isn't present, using the ore zone logic from Wurm Online, so that part isn't absolutely necessary.

 

Same for resources which is also generate if not present so Captain no need to break your head about them ;)

 

Big thanks for your hard work, It's a really cool tool you make and I think I'll have lots of few sleeping nights next week ;)

Share this post


Link to post
Share on other sites

The game will generate clay, tar, trees, grass, tundra, etc. if the resources.map file is missing?  Neat!  I need to experiment with this.

Share this post


Link to post
Share on other sites

But then you only use world painter for heightmaps?  Thought the purpose was for its better biome selections.


Share this post


Link to post
Share on other sites

The game will generate clay, tar, trees, grass, tundra, etc. if the resources.map file is missing?  Neat!  I need to experiment with this.

 

 

No, you still need to create all ressources. When you export to your server the .map, just need to export the top_layer, rock_layer and flag map, the other could be regenerate. I think that resource.map is for creatures spawn zone ...

Share this post


Link to post
Share on other sites

The game will generate clay, tar, trees, grass, tundra, etc. if the resources.map file is missing?  Neat!  I need to experiment with this.

 

That would kind of miss the point of using WorldPainter though...

Share this post


Link to post
Share on other sites

Hi Captain,

 

Seems that thare is trouble with last version of WorldPainter, I've just make the update and when use the converter this is what I've got :

 

[14:30:00] {INFO  } WurmUnlimitedExporter 1.0.4-SNAPSHOT starting
[14:30:00] {INFO  } Selected scaling mode: Wurm Unlimited Scaled (horizontal: 1:1, vertical: 1:4)
[14:30:00] {ERROR } Error while loading "EmdroW.1.world"; is it a WorldPainter world file?
org.pepsoft.worldpainter.UnloadableWorldException: InvalidClassException while loading world
        at org.pepsoft.worldpainter.WorldIO.load(WorldIO.java:109)
        at org.pepsoft.worldpainter.wurm.WurmUnlimitedExporter.main(WurmUnlimitedExporter.java:84)
Caused by: java.io.InvalidClassException: failed to read class descriptor
        at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
        at java.io.ObjectInputStream.readClassDesc(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.defaultReadObject(Unknown Source)
        at org.pepsoft.worldpainter.World2.readObject(World2.java:465)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)
        at java.io.ObjectInputStream.readObject(Unknown Source)
        at org.pepsoft.worldpainter.WorldIO.load(WorldIO.java:92)
        ... 1 common frames omitted
Caused by: java.lang.ClassNotFoundException: org.pepsoft.worldpainter.World2$BorderSettings
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at java.io.ObjectInputStream.resolveClass(Unknown Source)
        at org.pepsoft.util.WPCustomObjectInputStream.resolveClass(WPCustomObjectInputStream.java:34)
        at org.pepsoft.util.WPCustomObjectInputStream.readClassDescriptor(WPCustomObjectInputStream.java:41)
        ... 18 common frames omitted

 

Revert Back to 2.02 version resolve the trouble.

Edited by Elienn
  • Like 1

Share this post


Link to post
Share on other sites
21 hours ago, Elienn said:

Seems that thare is trouble with last version of WorldPainter, I've just make the update and when use the converter this is what I've got :

 

Thanks for the heads up! Yeah I forgot to update the converter; I'll do that this evening (UTC).

 

Nice to know it's still being used... :-) I wouldn't mind people posting some results? Some screenshots, links to servers or maps, that kind of thing?

Edited by Captain_Chaos

Share this post


Link to post
Share on other sites

Alright, the converter has been updated to work with worlds created with the latest version of WorldPainter (2.1.2). Redownload the jar file from the first post and replace it to use the new version.

Share this post


Link to post
Share on other sites

Yes it's work fine,

 

Thanks again, Hope I could soon show some picture of my nice island ;)

  • Like 1

Share this post


Link to post
Share on other sites

Hi everyone.  First off, this is one amazing tool!  Thank you for taking the time to create this and work through the specifics to make it better over time.  I've been playing around with it using a world map i created originally for Minecraft in World Painter a few years ago.  But i'm getting certain problems show up in Wurm Unlimited when i'm testing out the map. 

 

SCALED MODE

When i use Scaled Mode, it horizontally stretched my map correctly by 4x, but the 4x vertical stretching turned out like the two images below.   Why didn't it smooth the terrain out?

 

wurm_20160214_2047.jpg

 

wurm_20160214_2049_1.jpg

 

Blocky Minecraft squares

My understanding is that the world should have been smoothed out from the blocky Minecraft look, but this isn't happening.  Instead, it's as if its changed to a very low quality texture being applied to make it look like the textures from Minecraft instead of the textures from WU, and there is no smoothing being applied between the tiles.  This happens in all tests (minecraft, scaled, unscaled).  What am i doing wrong?


wurm_20160214_1524_2.jpg

 

wurm_20160214_1849.jpg

 

wurm_20160214_1849_2.jpg

 

Graphics zone around my character

Anything within a certain vicinity of my flying character is normally loaded into memory as the higher quality generation instead of a less quality representation of the world.  What is happening now is that the higher quality pop-in is looking like low-quality repeating textures, there is no smoothing or anything.  This happens in all tests (minecraft, scaled, unscaled).  How can i fix this so that it smoothes out the graphics, and its not so blocky?

 

wurm_20160215_1017.jpg

 

wurm_20160215_1023.jpg

 

Java Memory Errors

Regarding anyone that receives a Java heap memory error, i was able to bypass the problem by raising the amount of memory assigned to Java, either 3Gb or 4Gb.  3Gb listed below:

 

java -Xmx3000m -jar wurmunlimitedexporter.jar --wurmUnscaled "Thonia 8192x8192.world"

 

Thanks.

Edited by Zsolaith

Share this post


Link to post
Share on other sites
On 15-2-2016 at 5:49 PM, Zsolaith said:

SCALED MODE

When i use Scaled Mode, it horizontally stretched my map correctly by 4x, but the 4x vertical stretching turned out like the two images below.   Why didn't it smooth the terrain out?

Where did the WorldPainter world come from? Was it imported from a Minecraft map? Minecraft is blocky, WorldPainter can't change that. It doesn't automatically smooth the world. If you create the world in WorldPainter it will look better because WorldPainter has a higher internal resolution.

 

On 15-2-2016 at 5:49 PM, Zsolaith said:

Blocky Minecraft squares

My understanding is that the world should have been smoothed out from the blocky Minecraft look, but this isn't happening.  Instead, it's as if its changed to a very low quality texture being applied to make it look like the textures from Minecraft instead of the textures from WU, and there is no smoothing being applied between the tiles.  This happens in all tests (minecraft, scaled, unscaled).  What am i doing wrong?

That's just how Wurm Unlimited works, it has nothing to with WorldPainter. It is based on square tiles which can have exactly one ground type. Wurm Unlimited does in fact smooth between the tiles, but that can only do so much. It's the same on Wurm Unlimited's own maps, although it may be more noticeable with snow, which I understand does not occur in the default maps, because of the high contrast.

 

On 15-2-2016 at 5:49 PM, Zsolaith said:

Graphics zone around my character

Anything within a certain vicinity of my flying character is normally loaded into memory as the higher quality generation instead of a less quality representation of the world.  What is happening now is that the higher quality pop-in is looking like low-quality repeating textures, there is no smoothing or anything.  This happens in all tests (minecraft, scaled, unscaled).  How can i fix this so that it smoothes out the graphics, and its not so blocky?

Again, that is just how Wurm Unlimited works. Perhaps it's just more noticeable on small islands instead of Wurm's default large and featureless land masses. I don't know if it is possible to change that (perhaps you can tweak the distances at which it happens?), but there's nothing WorldPainter can do about it.

Share this post


Link to post
Share on other sites

Thanks for responding.  :)  I created this world from scratch in WorldPainter at 6500x6500.  To make it much bigger, I took my .world map and generated a heightmap from it.  I imported the heightmap at increased size by an amount to get it to 8192x8192.  I saved this enlargened world as a .world file.  I took this .world file and used the Unscaled option and the end result is the images above.

Edited by Zsolaith

Share this post


Link to post
Share on other sites
20 hours ago, Zsolaith said:

To make it much bigger, I took my .world map and generated a heightmap from it.  I imported the heightmap at increased size by an amount to get it to 8192x8192.

This is probably where it went wrong. When you export a world as a height map, you lose all of WorldPainter's internal precision, since a height map only stores 8-bit integer values. You'll probably note that if you convert that original world to a Wurm Unlimited map you don't get the vertical blockiness.

 

That precision is now gone, so I'm afraid the only way to get it back is to start over from the original 6500x6500 world, assuming you still have it. Unfortunately there is currently no way to scale it up while keeping the internal precision. What I could do is add an option to WorldPainter for exporting the world to a high precision, 16-bit height map so you can scale it without losing precision.

 

There is one thing you could try and that is to use the Smooth tool, which will bring back some of the smoothness, but of course will also destroy details and small features. Experiment with different intensities and durations of applying it to hopefully find a technique that will smooth the landscape enough without making it too straight.

Edited by Captain_Chaos

Share this post


Link to post
Share on other sites
On 2016-02-23 at 1:06 PM, Captain_Chaos said:

This is probably where it went wrong. When you export a world as a height map, you lose all of WorldPainter's internal precision, since a height map only stores 8-bit integer values. You'll probably note that if you convert that original world to a Wurm Unlimited map you don't get the vertical blockiness.

 

That precision is now gone, so I'm afraid the only way to get it back is to start over from the original 6500x6500 world, assuming you still have it. Unfortunately there is currently no way to scale it up while keeping the internal precision. What I could do is add an option to WorldPainter for exporting the world to a high precision, 16-bit height map so you can scale it without losing precision.

 

There is one thing you could try and that is to use the Smooth tool, which will bring back some of the smoothness, but of course will also destroy details and small features. Experiment with different intensities and durations of applying it to hopefully find a technique that will smooth the landscape enough without making it too straight.

 

Okay, i understand now what i've done wrong.  Thank you for your guidance on this.  I've tried Scaled mode with my original 6500x6500 map and there are no bumpy block-like hills anymore, so you were completely right.  It had to do with the lost internal precision from the 8-bit height map.  Is it possible to add the option you spoke of that would allow exporting worlds to a higher precision height maps?  I still require my world to be much larger than it is now.  I'm not sure how complicated that would be to do for you?  :)

 

Edited by Zsolaith

Share this post


Link to post
Share on other sites
On 27-2-2016 at 5:50 PM, Zsolaith said:

Is it possible to add the option you spoke of that would allow exporting worlds to a higher precision height maps?  I still require my world to be much larger than it is now.  I'm not sure how complicated that would be to do for you?  :)

It will be in the next release of WorldPainter. :)

Share this post


Link to post
Share on other sites
On 2016-02-29 at 8:26 AM, Captain_Chaos said:

It will be in the next release of WorldPainter. :)

 

 

Great news!!!  :D

Share this post


Link to post
Share on other sites
On 4-3-2016 at 2:10 AM, Zsolaith said:

Great news!!!  :D

I released a beta with this functionality in it. See the Minecraft forum thread for details.

Share this post


Link to post
Share on other sites

Captain Chaos: Truly a hero, he takes the time to support users of a game he doesn't play.

  • Like 1

Share this post


Link to post
Share on other sites

Can we get an update please? The converter keeps crashing when trying to export a .world file made using the latest WorldPainter program (version 2.2.6). Thanks!

Share this post


Link to post
Share on other sites
17 hours ago, Onsdag said:

Can we get an update please? The converter keeps crashing when trying to export a .world file made using the latest WorldPainter program (version 2.2.6). Thanks!

 

Ah is it that time of year again? ;-)

 

I'll look into it!

Share this post


Link to post
Share on other sites
On 11/3/2016 at 7:26 AM, Captain_Chaos said:

 

Ah is it that time of year again? ;-)

 

I'll look into it!

Thanks for looking into it.

 

If it helps any, I went back and systematically reinstalled each of the older versions of WorldPainter until I was able to export the map. Version 2.2.3 is the last version that works, and it seems the transition between version 2.2.3 and 2.2.4 is when things changed (coding algorithms, new blocks added?) significantly enough in WorldPainter to necessitate an update for the exporter.

Share this post


Link to post
Share on other sites
On 11/4/2016 at 5:16 PM, Onsdag said:

Thanks for looking into it.

 

Alright, I've updated the converter. If you redownload it it should now work with worlds created with the current version of WorldPainter.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this