Railcraft

Railcraft

34M Downloads

[1.10.2] Datafix for migrated maps

liach opened this issue ยท 13 comments

commented

Some players or servers may want to migrate from 1.7.10 to 1.10.2 directly. If railcraft could provide data fixes for old tracks, carts, machines, and items, then it would relief those users of railcraft.

This might be handled after a public beta because this is less important than other tasks like machine fixes.

commented

As far as I know, such migration typically require "dummy" blocks, which I didn't even want to try and support this time. As for deleted stuff, it was mostly merging track kits together. Directional Detectors and One-Way Gated tracks. All the TrackKit representing High Speed, Reinforced, and Wooden Tracks are gone too. Replaced with their own blocks. All the machine blocks are going to split up and rearranged too.

I decided long ago that for this specific update, it was more important to just get stuff working properly than to muck around with legacy support (which isn't an easy problem). As such I've been doing massive sweeping and breaking changes to just about everything. I suppose it's probably possible, but I haven't even bothered keeping track of things like NBT data changes this time around.

If you want to poke at the problem, go for it. I personally don't have the time to spend on it myself. Especially since I don't know of many other mods that actually support migrating worlds to 1.8+.

commented

could another solution be to change the missing tracks to vanilla tracks in the migration? alot of special tracks will be lost but atleast there will be a track you can send a cart over to replace it or to get to other places to replace them yourself

commented

@AEnterprise No that hurts a lot

commented

yes it would hurt alot, but if it realy is a 'can't fix' situation i'd prefer this over all track vanishing completely

commented

In mcp there are some mappings with vanilla datafix system. We could check out how they fix such problems.

commented

Remapping one block name to another is simple. Its much more difficult to map the data those blocks contain. Metadata and tile data. The best way to do that is to leave a skeleton version of the old block in place whose only purpose is to replace itself with the new version. I've done this in the past. With tracks in fact back when every variant was it's own block before I moved to the system used in 1.7.

commented

Or could it just be done by implementing vanilla datafix structure?

commented

Never heard of it.

commented

Oh... a NBT processor. That seems like even more work than just restoring the old block code and pointing it at the new. Can that even migrate between blocks? Well however you want to do it.

commented

Although I suck in rendering, I believe that data migration in nbts in some tiles are possible. Those old tile entities in most tracks can just be deserted.

commented

I don't know enough about Anvil to comment.

commented

Yeah....this isn't happening. Blocks have been split up, everything has been renamed, several things have been outright deleted. Things that used to have tile entities no longer do...

It's just not really possible.

commented

May we migrate old track types to the new ones when forge calls event, carts have not changed much. What had been deleted though? We might just remove those stuff deleted in railcraft 10 when loading world from an old version I guess.