opencubicchunks / cubicchunksconverter Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
How to use the command line options with --headless parameter?
java -jar cubicchunksconverter-1.75.0-SNAPSHOT-all.jar --headless ???
It's not implemented yet
In attempt to use converter on Greenfield v0.5.1 world I've got such output:
Exception in thread "Chunk and File counting thread" java.lang.IllegalArgumentException: Invalid name r.76.0.mcr
at cubicchunks.regionlib.impl.MinecraftChunkLocation.fromRelative(MinecraftChunkLocation.java:102)
at cubicchunks.converter.lib.AnvilToCubicChunksConverter.lambda$null$6(AnvilToCubicChunksConverter.java:539)
at cubicchunks.regionlib.region.provider.SimpleRegionProvider.forAllRegions(SimpleRegionProvider.java:106)
at cubicchunks.regionlib.region.provider.CachedRegionProvider.forAllRegions(CachedRegionProvider.java:119)
at cubicchunks.regionlib.SaveSection.forAllRegions(SaveSection.java:85)
at cubicchunks.converter.lib.AnvilToCubicChunksConverter.lambda$startCounting$7(AnvilToCubicChunksConverter.java:536)
at java.lang.Thread.run(Thread.java:745)```
The relocating as mentioned did not work.
Specifying the relocatingConfig.txt with 'move all by 0 16 0' when converting the second 'floor'.
But i found another way.
First i convert the second floor that goes from 256 to 512. Anvil -> Cubic Chunks Default option selected in the menu. Not using the 'move all by 0 16 0' or whatever.
Then i convert the created word to a new world with the Cubic Chunks -> Cubic Chunks (Relocating). Using the 'move all by 0 16 0' in relocatingConfig.txt. In the new create world (second) its moves 16 chunks up. (256 blocks). So, ok.
THEN i take the floor 0 region file, and convert it into the second created world.
THEN they are merged.
Maybe there are other ways, but like mentioned before just overwrites the whole 0-255 range, and doesn't moves anything 16 chunks (256 blocks) up..... I assume its only when option Cubic Chunks -> Cubic Chunks (Relocating) option is selected.
Anyway. Its working....
After converting my original mc 1.12.2 world to CubicChunks format, I found that all the infos of the blocks are lost. For example, the items in the chest are lost. The infos on the notice boards are lost as well.
We run a server and need to update to 1.18. Our current server runs on cubic chunks 1.12.2, and trying conversion to Anvil results in places being cut off at y=0
Is there a way for 1.17+ (where the minimum y level is -64) conversion to be possible?
Hello, my name is Gerard Wensink.
I have the following question.
When converting like a 1.12.2 world into cubic world format, i assume a block on height 0 in 1.12.2 is also on height 0 in cubic format.
Now i have a program adapted for Build The Earth 121, so positions/regions in the map are at BTE format.
You can convert latitude/longitude coordinates into BTE coordinates. My program then rotates and scales voxelized 3d objects into the according BTE region files coordinates.
Now even on a 1 to 1 scale, buildings can get much (also mountains of course) higher than 256 blocks. I only can create region files in the 1.12.2 vanilla format. When higher than 256 or lower than 1, i chop it off, i shrink it. The higher/lower, the more shrinking...
Now i want to convert whole cities, i have downloaded with a javascript tool 3d objects (octants) from Google 3d maps/satellite, and made a voxelizer in c/c++, and then the 3d objects (wavefront .obj/.mtl with textures) are converted directly in the BTE format coordinates. (https://buildtheearth.net/map), on the 1 to 1 scale, meaning 1 block is 1x1x1 meter.
For the height i place the whole structure as low as possible. Because the 3d data is on earth scale coordinates, meaning lots of numbers before and after the decimal point, i might have to fix the height to adapt the earths rounding....
But i place it as low as possible, to get the high buildings as large i can get, like 256 max.
Now, i want to make more floors, like one floor going from sea-level up to 256 meters, then another level like from 256 to 512, etc.
Then i want to convert the floor to cubic format. I can do that.
But then i want to place the second floor on top of it. Like giving an offset of 256, and then the second floor, also a 1.12.2 region files, to be placed on top of the first floor, in the already made cubic format first floor.
Or like selecting more than 1 world, and all the worlds, floors, gets into the cubic format in one run.
That way i can break up my voxelized 3d objects into floors, like separate worlds/region files, and then need to stack them on top of each other, while or after converting them.
This way i will have a Google 3d downloader for downloading whole cities/area's, a voxelizer that converts it into blocks on the right scale/position according to BTE projection,
AND
convert them into the cubic chunks with heights over 256, that can be played/used with the BTE minecraft 1.12.2 version.
In this BTE version there is code that downloads from open archives, like the placement of buildings, HEIGHT (...), waters, roads and train tracks. Maybe it would be a nice trick to get the height of the placed voxelize 3d objects on the perfect height.
That way a 'mold' can be made in 3d, from the Google 3d data, that can NOT be used because of the Terms Of Service (TOS), but then can be ADAPTED according to the builders of the 121 scale earth in minecraft. Now only surroundings of buildings are available.
So, is there a way to create an offset, and then merge two cubic worlds into one, stacking the worlds upon each other like floors of 256 height, or select more than one region file for every floor while converting into cubic format.
https://github.com/HakkaTjakka
https://www.facebook.com/Minecraft-Worldeditor-110607880303634/
https://www.youtube.com/channel/UCdmRlIxcrXmkC7puY4s9Jzg
I've talked to one of the BTE 121 managers, he referred to the TOS that they can/may not use the Google 3d data, but they have an open mind to the whole thing.
I've looked long for a downloader for the Google 3d objects and found it on: https://github.com/retroplasma/earth-reverse-engineering and adapted it for bulk downloading of octants size zoom level 17, on zoom level 21, which is the 1 less then highest zoomlevel, but the highest is much much more 3d data, but gives no visual effect when voxelizing. When voxelizing around 30 pixels from the used wavefront textures gets averaged into one minecraft block.
The voxelizers i found did not work. Nothing. So i made it myself and its in the minecraft world editor on github. Al the source for almost everything is in the repo, you only need a manual, and thats me for now... but its because its an experimental prototype machine. It works from the javascript Google 3d data downloader, through many stages that can be done with the c/c++ program, if you know howto. In the end i would like to make it one single program, where you can select an area on Google maps with lat/lon coords., then the program should deliver the voxelized result in BTE format.
Like the stacked 1.12.2 region files in vanilla format, that than can be converted into cubic chunks, and loaded with the minecraft BTE version, which uses cubic chunks. I've already converted a small part with the CubicChunksConverter, and it works in the BTE cubic minecraft version.
I just only can not get several layers/floors on top of each other. And i like to voxelize things like grand canyon, cities etc., that have heights above 256 blocks (meters..) high.
Can you help me on this? Maybe its just a small adaption to the existing source.
Like merging a second world upon the existing (converted) first one.
Then with an offset, like 256, 512, 768, 1024 etc., the next world is placed on top of the existing cubic world....
Thank you all for reading.
The BTE 121 team would be very great full for that.
Gerard Wensink
[email protected]
PS
The 3d wavefront .obj/.mtl/textures voxelizer in c/c++ is very fast, and capable of converting 3d objects in bulk.
It also can be used together with 3d objects and/or 3d software, and/or even algoritms that create wavefront objects on the fly, stores only 3d object data that is fed directly into the gpu and is stored in nbt format, threaded loading of many textures together, and could be used to generate whole worlds. I also create region files from scratch with code, meaning 512x256x512 blocks. A whole region file created out of 3d objects is voxelized within a second.... Only the saving into 1.12.2 format takes bit longer because of the source for that i found is not so fast....
This way world generators etc., could use 3d objects as source. Which might add a new dimension to the whole....
Especially when able to create worlds higher than 256 blocks....
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.