3

My question is somewhat similar to ( Create a world that would reset ) with a few differences that justify asking a separate question.

I have a server map, where there is a central spawn building(map, rules, spawn point, etc) which is protected (labeled 1 on map). Surrounding that area is a continuation of that seed, which is imported, and different from the world seed beyond that (labeled 2 on map). Beyond that, there is an abrupt change from the imported section, to the world's normal seed, which is a mesa biome (labeled 3 on map). The Server Spawn, and surrounding areas

Section 1 is protected from building and mining. I would like for section 2 to be able to be mined and built in, but to reset once every week or so, in order to allow new players to mine and set up temporary bases, before setting out into the mesa biome (section 3) where pvp is enabled.

The main issue, is that the server only has 1gb of ram, and copying and pasting large sets of schematics may crash the server. Also, simply resetting the land to the default seed would replace the hills and forest of the starter area with mesa biome, meaning that repopulating the chunks from the seed wouldn't be possible.

I could increase the server ram from 1gb to a maximum of 4gb, but I would prefer to keep it as is. The current version of minecraft is 1.10, but I could downgrade it as low as 1.7 if required for mod or plugin compatibility. Plugins, command blocks, and mods are valid options, provided that players can log on with the standard minecraft client.

The question: Which of these options (or others I've not thought of) would be the least server intensive, and easiest to set up?

Extra question: If using a method involving schematics, how many regions should I divide section 2 into? 4, 8, 32?

Options so far:

  1. Citizens plugin with Builder Npc I could set a builder citizen npc to a section of land, and have them rebuild it from schematics over time.

  2. Use Command blocks to import Sections of land as schematics.

  3. Use world guard or core protect to rollback these areas on a regular basis.

  • 1
    If you have the seed for the forest area, you could: 1. Turn off server, delete forest chunks, change seed to forest seed. 2. Turn on server, re-generate the deleted chunks. 3. Restart again to change back to mesa seed, and allow player back on. World guard would probably be the least intensive of the options you have there though, if 2 restarts would be too interruptive. – SirBenet Aug 1 '16 at 19:53
  • The forest seed is from a different version than the mesa seed, so I don't think that would work. – Jonathan Aug 1 '16 at 21:33
  • If possible i'd like to fully automate the reset process. – Jonathan Aug 1 '16 at 21:39
  • 1
    You could use /clone, and create a copy of the mining area somewhere else, then, every week, copy the cloned land into the mining area. However, this may crash the server, and you may need to use multiple clone commands, as 1 can't handle a large area. I'd suggest downloading a plugins for this (I can't recommend any though). – Daniel G Aug 3 '16 at 14:59
  • I've accepted an answer, but new answers and other suggestions would be greatly appreciated, as there may be more than one way to do this, each with unique advantages and disadvantages. – Jonathan Aug 13 '16 at 17:37
1
+50

Determine the exact chunks loaded by the second area. The chunk numbers show up on the debugging screen by pressing F3. These chunks correspond to MCA files in the region folder of your save. Copy the MCA files in a permanent location, and, once a week, copy over the current files with your backup, temporarily shutting down the server. A batch file can be used to automate this process, if you'd like.

The MCA files hold groups of 32x32 chunks, for a total block area of 512 x 512. For instance, r.0.0.mca holds chunks 0-32 in both x and z directions (and all of y), and so goes from (0,0) to (511,511).

  • 1
    ok. If you need help let me know. For determining the chunks or the batch file. – khanzarate Aug 9 '16 at 2:53
  • I'm not quite clear on how MCA files work, are they like segments of a map file? – Jonathan Aug 9 '16 at 4:55
  • I found the reigons folder with the MCA files, but there's only 8 files,and they do not corespond with the chunk information given in F3 mode. Suggestions? – Jonathan Aug 9 '16 at 6:36
  • Oh, and here's an image link showing the files in question, gyazo.com/0e8b880083bbab307e4b16ab4e9ec89a – Jonathan Aug 9 '16 at 6:36
  • 1
    ... Or 4 of those to have the central area big 32*32 chunks, so ~1000 blocks square. It needs to fit it just right with coordinates, but overriding 4 files will be the least server-intensive thing (and can be automated by some file script), but still Op has to be aware on the thing that I mentioned in that another question - people have to be teleported out , otherwise they can be stuck. – Antoine Hejlík Aug 9 '16 at 12:30
1

Another solution : More maps

You can also try to use some Multiverse/Multiworld mod/plugin, allowing you to have more than one map. Then each of those maps will have their own seed (so you can then use seed-based tools to replenish the map, too) and you will be good to go with different maps.

Then the thing is to backup one of those maps (the one with spawn/start area) and backup/rollback it frequently as you need, and use other map to let them fight. Some of those plugins also can give you chance to let players have separate inventories, separate chat and most important - separate permissions, if you use PermissionsEX or similar (per world permissions). All of those can be really handy, also they can separate pvp/nopvp, etc.

All you need is to build at least small "spawn" pod on pvp map, and connect maps with portals (multiverse plugin offers /mv tp to travel worlds, so you can use it in Command blocks or so). Then do file rollback with map you want to have refreshed (be sure no players will get stuck - best to teleport all of them on spawn map to spawn after login or similar - there are answers for that mechanism around on Arqade I think)

However this solution works with the situation that you still are just preparing the server and you can still change your setup. Also I don't know how much updated those plugins are, there is more of them and at least 1.8 versions are around for sure.


Note: You CAN use mods (Forge server) with version 1.8+, allowing Non-Forge clients (pure vanilla ones) to connect the server (Forge 1.7 and lesser required Forge clients even there were no mods on server), as long as the server has only "server-side" mods (so ones that do not add new blocks/items/mobs/guis etc). However running mods AND plugins on 1.8+ is still kinda messy, only Sponge project exists and it is not so smooth (plugin runs on Spigot that runs on Sponge that runs on Forge xD )

  • Like @dly your answer adresses the Reason for the question, but would require so many changes, that it's not really addressing the actual question. For a completly new map, this may be an option, but it would not allow for the existing map to be used in the way described in the question. – Jonathan Aug 13 '16 at 17:48
  • 1
    @Jonathan Well I know it can work best with new setup and I stated it, but it is most effective and widely used thing, so it can be considered. For already used map it would need to create multiverse maps and then copy the central map (and its seed) into one and keep the outer map on second map, then the central are regenerate by outer seed, but well....Miencraft maps have limited life and when you do next wipe, you can consider it. :) – Antoine Hejlík Aug 14 '16 at 7:18
  • It's an old map, and I lost the seed for the inner part, so it ended up being easier to just make a new one from scratch. In any case, thanks for the suggestions, i've got more options now, even if my original plan isn't going to work. – Jonathan Aug 14 '16 at 20:41
1

Don't use rollbacks. The purpose of rollbacks is to undo griefing and such, so it will also take away farmed items. Also regular players will remember locations of diamonds, ores, etc. and get them over and over again, if you keep the same seed.


Here is how we do it:

  1. Create another map with Multiverse (like already mentioned in another answer) using /multiverse create
  2. Make a small spawn on that map and link it with your spawn area with Multiverse Portals
  3. copy/paste the spawn area to a safe location or schematic
  4. whenever you need to renew the map ..
    1. Delete the map folder of the farming map
    2. Create a new map with /multiverse create
    3. Paste the spawn area back in from your backup / schematic
    4. Re-link the portals
  5. Profit

This way you don't have to copy/paste/regen a huge territory, which causes lag or takes a lot of time. Creating a new map is pretty much instant. It will have to regenerate its chunks as well, but unless you're going in with 20 people at once while it's generating the chunks it should still be more efficient.

Another big plus is a completely intact main world. Your guests will most likely love to see something cool instead of 100s of holes and mining shafts when they join your server.

...and you don't have to reset it every week, because there is a complete map of space to farm on.

  • This idea would accomplish the same goal as the question asks for but isn't really answering the question so much as proposing an alternate solution than the one I was looking for. – Jonathan Aug 13 '16 at 17:40
  • 1
    @Jonathan I wouldn't do it the way you're looking for for the reasons mentioned. That's why I suggested a different way. – dly Aug 13 '16 at 18:11
  • I get that, and i'm not saying that your way isn't a valid option. It is, in fact it may be a better way than what I was looking for. I'm just explaining my reason for picking another answer over yours for the bounty reward. – Jonathan Aug 13 '16 at 20:58
  • 1
    @Jonathan feel free to :) its your bounty and you choose what answer suits you best – dly Aug 13 '16 at 23:25
0

You can try to use MCEdit in order to manually remove the chunks from the mining area and regenerate them. Be careful, the deleted chunks may regenerate as the original seed's chunks, instead of regenerating the imported chunks back. Important notice: MCEdit supports Minecraft versions up to 1.9, so you will need to downgrade your server a little...
Or you can try to delete those .mca files, as @khanzarate said, except the "r.0.0.mca", which stores the tiles from 511 on the Z coordinate to -511 Z and from 511 X to -511 X.
Expand / Shrink the central building to occupy those tiles. Delete the files from "r.0.1.mca" / "r.1.0.mca" to "r.2.2.mca" or to "r.3.3.mca". You can use an app to delete them once a week, for automatization.

  • The mcedit option would involve downloading the entire map from the server, manually making changes, and then reuploading the whole thing. This process would take too long, and cannot be automated. @khanzarate's answer is more detailed in it's explanation of MCA files. – Jonathan Aug 13 '16 at 17:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.