Take the 2-minute tour ×
Arqade is a question and answer site for passionate videogamers on all platforms. It's 100% free, no registration required.

Is it possible to somehow get the map from an SMP server as a mere player? I did some large Redstone circuitry, and I would like to copy it into my SSP map.

If not, can I extract the loaded chunks from memory?

share|improve this question
1  
I both like the idea that you could get this, and am strongly opposed to it. One thing common on SMP servers is that you have to hide your possessions. If someone could download the maps, then could use mapping tools to locate the position of all chests. –  Zoredache Mar 13 '11 at 23:08
5  
If you have admin rights on said server, just dowload the map data, and put it in your SP map folder. No rights, no way to download the map. –  Lysarion Mar 14 '11 at 9:09
    
@Zoredache: That is indeed something to wonder about. @Lysarion: That sounds like a so easy answer that there must be a way ;) –  fjdumont Mar 14 '11 at 17:29
3  
Possible Duplicate: gaming.stackexchange.com/questions/18190/getting-smp-maps –  Ullallulloo May 6 '11 at 15:45
3  
Alternatively, if you just want the world and not the cumulative effects of building, you can ask your friend for the world's seed. –  SevenSidedDie May 6 '11 at 22:26

7 Answers 7

up vote 7 down vote accepted

You can use World Downloader.

Press Esc in-game and press L to start downloading. It will download everything you see — about 160 blocks away from you, from bedrock to the sky limit. To stop the download, press L again.

Then, just look in your single-player maps.

share|improve this answer
    
Thanks for posting an update in this ancient question! –  fjdumont Jan 23 '12 at 7:34

You can't copy part, only your whole server. Also, it needs to be your server. Otherwise, not possible.

First, locate your .minecraft folder. Assuming you have Windows (because I do), open up Windows Explorer. Click on the bar at the top with your location and type in "%appdata%" (without quotes). Then, click .minecraft. Last, click the saves folder.

Then, make a new window and locate the folder you have your server in. Select your world's folder. Bring both Windows Explorer windows to the front and drag your world folder from the server folder to the saves folder. Rename it anything you want.

Done! Now, you should be able to find your server in your SSP! This works vice versa. You just have to name the world "world".

share|improve this answer
    
This is incorrect. It is very possible to copy part of a world, especially with a third party tool like MCEdit. –  MBraedley May 28 at 0:12
    
Also, the question clearly says SMP. Thanks, anyways! –  fjdumont May 28 at 7:03

It's theoretically possible. Your client will download part of the map before rendering it, so the data is actually transmitted through network and stored in memory, and is accessible by either packet capturing or client modding. Either way is straightforward to implement, and I implemented the latter one with MCP before for a certain complex labyrinth map.

However, such tools for retrieving server map can be easily used for hacking and unfair gameplay. So don't expect any legitimately published ones.

Edit: I came across an implementation called WorldDownloader which may be good for your need. You can try it out.

share|improve this answer
    
The question is specifically about "server save files". This doesn't accomplish that. Furthermore, this would have significant holes that would prevent reconstructing the save files: e.g., chest contents would be missing since container inventories are not transmitted to the client until a container is opened. +1 for cleverness, -1 for not answering the question, net 0. –  SevenSidedDie May 10 '11 at 17:19
    
@SevenSidedDie It's just the same data in different formats. File stored on hard disks is one, network packet on wire or hash table in memory are the other, and they have no informational difference. For the concern about chests, you need to learn about how chests are stored in chunks. –  xfs May 11 '11 at 12:44
    
Chest data is stored exclusively server-side now. Besides, the asker asked if the files can be grabbed—the distinction being between a useful format and raw data useful only to a programmer. The OP doesn't sound like a programmer. –  SevenSidedDie May 11 '11 at 20:43
    
@SevenSidedDie I've yet to do experiments so I can be wrong, but as far as I can infer the inventory synchronization method from the protocol, ... well, to put it simple, don't you see all the content when you open a chest? If you can see it with your GUI, why can't you extract it from memory or capture it from network? And I thought the conversion between formats is a non-issue or trivial issue, so I didn't mention it. –  xfs May 12 '11 at 4:41
    
Of course. Now do that for 1000+ chests across a 100Mb SMP world, many hidden by other players, many in dungeons as-yet undiscovered… Unless you personally visit and open every chest, sniffing can't recreate the server files anymore. I mean, this is still really clever stuff and it's awesome, but it doesn't answer the OP's question about accessing the server's actual, existing files. –  SevenSidedDie May 12 '11 at 17:24

As ursa_arcadius suggested, assuming you do not have direct access to the server itself (op/admin privileges in-game don't count), you could ask the server admin to send you the map file. If they don't want to send you the whole map, but are willing to devote the time to it, they could take a copy of the map, use MCedit or a similar tool to export just your redstone circuit, and send you that export (which you could in turn import into your single player map). See MCedit and how to use it for more info :)

If you do have direct access to the server itself, of course, you could just shut down the server for a few seconds (make sure no one is logged in!) and copy the map data directly from the server into your own MC world folder, and start the server back up.

share|improve this answer
    
no need to stop the server, I guess? –  Lohoris May 11 '11 at 11:06
1  
@Lo'oris: Any time you're accessing the world data, I would recommend stopping the server to eliminate any chance of conflict (and subsequent corruption). I figured the server admin would know to do so, but then again we all know what assuming does :D –  Doktor J May 11 '11 at 14:58
    
makes sense, thanks :) –  Lohoris May 11 '11 at 15:00
1  
The server flushes to disk in predictable intervals. No need to stop the server; just don't copy files during a save. Besides, at worst the copy is no good and another has to be made; there's no danger of corrupting the server's version of the files just by reading them. –  SevenSidedDie May 11 '11 at 22:40
    
Use the /save-off command in Minecraft to stop the server from saving (you must be op!). You can use /save-all then /save-off to force a save and disable all saving. On Linux (possibly OS X too) you can then run the sync command in a terminal (NOT MINECRAFT) to force a flush to disk. Once that completes, you can be sure you have the latest files on disk. This can all be done online; just use /save-on after you're done copying the files. –  Broam Apr 24 '12 at 15:36

There isn't unfortunately, the only way to do this is through accessing the machine locally, or having some sort of remote access to the folder. See my previous answer below for instructions on how to do this:

  • You need to first locate the directory that the minecraft_server.jar is stored in.

  • Once you have this, there will be a folder inside here that contains the save data. The default is world, but it may that there are lots of folders and it is hard to find - if so, you can check the level-name property inside the server-properties file, which will give you the correct folder name to look for.

  • This also works the other way around, but you will need to rename the folder / level-name property to ensure that the correct world is referenced.

See also:

share|improve this answer
5  
I wouldn't say "unfortunately". A server which gave away data such as that would be a pretty bad server! –  Lohoris May 7 '11 at 8:24

As far as I can tell, this isn't possible. You'll need to get your friend to zip up his save file and send it to you via other means.

share|improve this answer

You could ask the server admins. Many times they will zip the map and send it to you if you ask nicely and explain the purpose.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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