~ LazyJ's "U4EA" Journal ~ |
One of the many projects I was working on was to find my old builds that I wanted to keep and transfer them from my old worlds into U4EA. That involved saving the old build in the old world using WorldEdit and then load the build into a singlenode world for clean-up. There I would remove the debris that came along with the WorldEdit schem file and then update any "unknown node" blocks made from ancient versions of mods to the newer versions of the mods. Usually these were blocks from much older, smaller, less complicated versions of MoreBlocks that pre-dated the addition of the circular saw and wood tiles. When the old build was cleaned-up and updated, I would use WorldEdit again to save it and load it into U4EA. From there I would do landscaping to settle the old build into its new place in U4EA.
All worked well and good until some change in Minetest's engine royally messed-up the information about nodes that WorldEdit needed. When I tried to load the .we version of the build, Minetest would crash. When I tried to load the .mts version of the build, many nodes were randomly swapped for different nodes. Junglegrass was where water was supposed to be, chests instead of glass, spinning windmill blades where cobble used to be and other weird node swaps.
So that part of U4EA's development was shelved while I waited for the devs to get the mess between Minetest and WorldEdit sorted out.
If I couldn't bring my old builds into U4EA until the issues between Minetest's engine and WorldEdit were sorted out, I could at least scout around and make note of potential locations to settle those builds.
That's when the second spanner, more like a giant knife, got tossed into the works.
Up until this point, all of my exploring had been done in my scouting and mapping version of U4EA. In my build version of U4EA I had stayed on the same island for months. Since I was going to be settling my old builds in the build version of U4EA, I traveled away from the island into an area that had not been generated yet. As I entered the area, a 400 meter long, shear cliff formed. It was as if a giant knife had cut a section out of U4EA and smashed the ends together.
What followed was a long litany of shouted curses, swearing, and, if I were not already bald, there would have been a lot hair pulling.
I had seen large, shear cliffs and box canyons like this before in some of my older worlds and in LinuxGaming. I had hoped that, since Watershed is a mapgen mod far unlike the default mapgens, these aberrations would not occur in U4EA.
After I had calmed down a bit, I chatted with paramat, Watershed's creator and hmmm, Minetest's mapgen dev about what had happened in U4EA. I provided them with screenshots of U4EA and of another long-term world. Particularly of the same locations, with the same map seed, where the mapgen produced different results.
paramat and hmmm figured out that it was a problem in the way the engine handled mapgens... and it was something that could not be fixed.
The gist of what happens is, as the Minetest engine is updated and changed, the previous engine's interpretation of the map seed doesn't jibe with the new engine's interpretation. The old and new clash resulting in long, shear cliffs and box canyons and box cliffs (the inverse of a box canyon). This is more pronounced in older worlds as they have been through more engine updates than newer worlds. New worlds will suffer the same; it's just that they haven't been around as long. In a way, the shear cliffs, box canyons, and box cliffs are the wrinkles of old age in Minetest worlds that have been around for a long time.
pararmat had coded Watershed with a command that would rerun the mapgen in an area, effectively restoring the terrain to its original state. Because of a bug in the Minetest engine, Watershed's restoration command wasn't working. (Now that paramat has joined the team of Minetest developers, minetest_game has a similar command.)
I relayed that to paramat and he, along with hmmm, were able to get it to work again.
Excitedly, I ran the command hoping it would repair the damage to U4EA caused by the conflicting engine versions. The command worked, but...
I ran the command the full length of the shear. The command has a range of only 80 meters so I had to repeat the command in several sections. As I went along I could see large portions of the shear being repaired with large chunks of properly formed terrain. But the new Minetest engine was still interpreting things differently than the version of the engine that had previously created that terrain. The result was newly regenerated land mass filling in areas differently that looked normal before. If I had built in those areas, my builds would have been wiped out.
Shear cliffs, box canyons, and box cliffs were still going to happen as long as I kept updating the Minetest engine that governed U4EA. Watershed's "/regen" command would mitigate that but at the same time overrun the existing areas with a different terrain potentially destroying builds that are too close to the affected area.
None of this would be a problem if the Minetest engines' versions didn't slash and smash the mapgen between upgrades.
This was a big enough, long-term problem that felt I couldn't continue with U4EA until I figured out how to deal with these severities. So my entire U4EA project was shelved for a while. I was really, really frustrated at this point. U4EA was to be my personal heaven; the place I could escape to and forget about all the worries of life for a while.
I churned over different ideas and scenarios until I came up with workable solution; not perfect... just workable.
The outer regions of U4EA were being scarred by clashing Minetest engine versions; however, there was nothing left for the mapgen code to do in the inner regions of U4EA so they remained unaffected. That gave me the idea to generate a lot of terrain before hand, much more than I would ever need, so there was nothing left for the mapgen to do in the places I would be building in sometime later in the distant future.
At the time, U4EA was relatively small but had been badly scarred by the Minetest engine clashes. I decided to set that world aside and start a new one. When WorldEdit was working properly again, I could transfer my builds from the old, mauled world of U4EA into the new U4EA world.
For about two months I did not upgrade the Minetest engine for U4EA and spent several hours, each weekend, slowly flying around in ever widening, concentric circles, gradually generating the landmasses and bodies of water in the new U4EA world. I had tried the Explore mod but it left too many gaps and moved too quickly for all the plant and tree mods to fully develop in the areas. Watershed generates a very extreme landscape and by itself makes my computer work hard. With the addition of a lot of plant and tree mods, my computer was getting a real workout generating U4EA's terrain even when I was flying at slow speed and occasionally pausing to allow my computer to catch-up in the more dramatic areas.
Eventually, the issues between WorldEdit and Minetest's engine were resolved and by that time I had generated, roughly, 4000 x 4000 meters of U4EA. Later, I flushed-out more land to the north and south, expanding U4EA to 4000 x 6000 meters. Overall, six months had passed before things were sorted out enough for my U4EA project to continue.
It was now summer, in 2015, and Minetest and several of the big mods I use in U4EA and LinuxGaming had undergone a lot of big changes. U4EA and LinuxGaming share several of the same big mods that are heavily integrated and customized. Development of those particular mods in U4EA affects development of those same mods in LinuxGaming and vice versa.
HomeDecor was already a large mod but in 2015 it really exploded in size and complexity. In the past I had put a lot of time and effort into fixing HomeDecor's broken or missing recipes. Now several people were working on HomeDecor, absorbing smaller mods, radically changing the code several times, and throwing in even more stuff that didn't have recipes. I tried to keep up but several times the dramatic changes to HomeDecor scrapped many hours of my work.
I decided I would not tailor and upgrade HomeDecor for U4EA or LinuxGaming until HomeDecor had remained stabilized for a long time. Many more big things were about to be dumped on to my Minetest ToDo list; HomeDecor would have a lot more time to just sit and stew.
When paramat joined the Minetest dev team, he added his pine trees from Watershed to the default, minetest_game. Watershed also has acacia trees that were added to MoreTrees. Later, the acacia trees were added to minetest_game and support for them in MoreTrees had been dropped. MoreTrees' further changes overrode the new pine trees and the old jungle trees in minetest_game, changing some of their properties. All these tree and plank changes greatly affected two other mods used in U4EA and LinuxGaming. The most severely affected was the all the shapes made from pine and acacia trees and planks in MoreBlocks circular saw. Bonemeal uses code from minetest_game and MoreTrees to instantly grow the saplings into trees but now the pine, jungle, and acacia tree code has been swapped and mixed between minetest_game and MoreTrees.
The pile-up wreck of mod changes didn't stop there.
The growth library was stripped from PlantLife and made into its own, completely separate mod, "Biome Library". Flowers from PlantLife and shrubs from Gloopblocks were removed and absorbed into HomeDecor. Minetest_game acquired a smaller, less robust version of PlantLife's Mushroom mod and support for PlantLife's Mushroom mod was dropped. Snow biomes were added to minetest_game so Splizzard's Snow mod's mapgen functions will remain disabled in U4EA and LinuxGaming but the Snow mod has been updated and changed to adapt to the Minetest devs removal of weather related code in Minetest's engine and minetest_game. paramat has added dry grassland biomes and river systems to mapgens version 5 and 7 but not to mapgen v6, which LinuxGaming uses. Even though the grassland biomes and river systems don't exist in mapgen v6, the nodes used appear in the inventory. I'm not going to risk mixing mapgens in LinuxGaming just for the sake of large areas of yellow grass but I can think of several uses for the new nodes so I'm going to have to figure out some extra recipes to craft those new nodes without conflicting with existing recipes for other items and, hopefully, using items that already exist so I don't have to create a single-purpose recipe item.
Oy... a mountain of messes to work through.
And just when I thought things couldn't get anymore complicated and compounding, LinuxGaming's existance was suddenly put in jeopardy.
In late September, Orby sent an email to Miner_48er and I to tell us that he would be shutting down the server soon.
"Soon"... no definite date or time frame, just "soon".
I immediately sent an email to Orby, asking how much time Miner and I had left so we could better prioritize our preparations and try to make the transition as smooth as possible but Orby never got back to us with that.
Orby started the LinuxGaming.us server and had been paying for it for the past couple years. However, after the initial startup, Orby became less and less involved in the server. Miner and I would email questions, concerns, and status updates to Orby but he rarely responded. When he did respond, it was usually short, vague, and of little help. There were times when the VPS itself had crashed and Miner and I would send emails to Orby asking him to restart it and then all we could do was anxiously wait for a couple days, wondering if Orby had read our emails, until the VPS would come back online; usually with no acknowledgement or response from Orby.
Given this track record it was reasonable to assume that, eventually, Orby would stop funding LinuxGaming.us. After all, why would someone pay so much money for something they did not use and were no longer involved in?
Miner and I had discussed this a lot over the years, coming up with different ideas and plans, but neither of us was in a position to assume the financial responsibility of paying for LinuxGaming's existence.
Through the years, Miner_48er and I have stepped up and done what was necessary to protect Wazuland2 - now known as LinuxGaming. In the past, I had donated small sums when I could but this time I stepped up and paid $460, that I could not responsibly afford to spend, to rent a new VPS for LinuxGaming and save LinuxGaming from being shutdown permanently.
Miner and I had no idea how much time we had left before Orby shutdown LinuxGaming.us but we did have ideas of how we wanted to setup the new VPS. So that's what we set to work on while we waited for Orby to get back to us.
Still no word from Orby and when I got home from work on Friday, October 9th, 2015, I found that LinuxGaming.us had been taken offline sometime during the day.
Miner and I had in place what was necessary to open LinuxGaming2 to the public except for the very last nightly backup. I had a copy of the previous night's backup but it was 6.5gb in size (compressed!) and would take over 16 hours to upload to the new server (I have cable Internet - fast download, agonizingly slow trickle upload).
I sent an email to Orby requesting he start the server one last time so I could transfer the last backup from the old VPS to the new VPS. The connection between servers is much, much faster than mine so it would only take about 9 minutes to transfer the 6.5gb file.
Luckily Orby responded and restarted the old VPS so I could transfer the last backup. Orby must have paid for an extra 2 months because the old VPS continued to run until early December. The old VPS was online and the cron would run the backup routine but the Minetest server had been shutdown in October so all those backups were of the same, unchanged world.
The transition didn't go as smooth as Miner and I had planned but what plans we were able to carry through on were enough to ensure the continued existence of the Minetest world we have been looking after and protecting all these years.
In 2015, U4EA and LinuxGaming took some hard knocks but shear stubbornness won out. There is still a lot of work to be done and challenges to overcome, such it is with all worthwhile, long-term projects.
About Comments:
Be civil and show some class toward your fellow commenters.
Trolls will be ignored as will posts containing swear-words or alternate spellings of swear words.
No comments:
Post a Comment