MCMap Live is a Minecraft mapper, like Cartograph for Mac OS X. It is a wrapper for mcmap, Zahl's fantastic and fast isometric Minecraft map renderer. What makes MCMap Live special is that it renders maps in pieces and lets you view them right away in an intuitive, minimalist interface. You can scroll and zoom all around your world and as quick as mcmap can render the chunks, you will see them. Instant gratification!
The other thing that makes MCMap Live special is that it's written in Objective-C just for Mac OS X, so unlike so many Windows-only tools, this one is Mac-only! Sorry users of other platforms, but I chose the APIs for this project because I wanted to learn them.
Download MCMap Live and run it. From the file menu you can select worlds from single-player minecraft on your system or any world folder, including server worlds. Drag or two-finger scroll the map to move around. Scroll/Pinch to zoom in and out (or use the a and z keys if you have no scroll wheel). Use the menus to change lighting, etc. Play around, I'm sure you'll figure it out!
Where can I get MCMap Live for Windows?
MCMap Live is Mac-only, sorry. Pup05's Minemapper is a Windows program similar to MCMap Live. Zahl's mcmap, the map renderer behind MCMap Live and Minemapper, is fully crossplatform and will run on Linux, Windows and Mac OS X.
How do I make MCMap Live zoom in and out?
If you have a mouse with a scroll wheel, scroll the wheel. If you have a Macbook, use the multitouch pinch gesture to zoom in and out. Alternatively press Cmd + and Cmd - to zoom in and out.
How do I make MCMap Live show player locations?
The show player location feature was never implemented. The menu item was removed in version 1.3.3.
How do I use MCMap Live? / Is there a tutorial?
I'm really surprised that this is such a common question. To use MCMap Live, download the program and run it. Select a world from the file menu. Look through all the menu options to see what you can do.
I will not be porting this to Windows. At some point in the future I'll open source it, and if someone wants to take that and make a port, I would not mind at all. But I doubt it will help much. The source is almost entirely interface code, which is basically unportable.
I chose to do things this way simply because I wanted to learn Objective C and Cocoa. I thought this would be a fun project in which to do so. If you want a port for your platform, I suggest you do the same! (only with, like, Qt or WPF).
The Meaning of Life, the Universe, and Everything.
First off, it works fine and I havent had a problem with it at all. It loads very quickly, and even scrolled very close it still loads rather fast. When I started I noted that a Rotations feature would be great to have ( and I know you already said that in your post ), but I do have a few things to state.
First I would rather have the scroll option to not be inverted. I can't stand to want to scroll in and rather it scrolls out. A final note would be on the saving of the images. Im using .bmp is the only format that needs to be used? If not then I would rather have it in .png, however it wont kill me if it stays as a .bmp. Also im not sure if you said this aswell, but if you would to just " Save Current Area ", then it would render the whole map rather then just what you are looking at. Am I correct on this?
Other then those you sir are wonderful for making a Mac native program :3. Btw iv always been interested in learning on to program applications on the Mac, so could you point me in the right direction on how to start learning? Thanks :biggrin.gif:.
Well, on a trackpad, pulling down with two fingers to zoom feels right to me! When I add preferences, that'll be one. Noted. I also want to implement 2D scrolling! I have to look up the API for that.
I export to bmp because that's what mcmap outputs. I can either render to scratch and use Cocoa to convert to png or wait for mcmap to support it directly (which would eliminate those black lines through water as well). Either way, it's on the list.
When you say "Save Current Area", it renders a diamond-shaped area containing at least what you're looking at and probably a bit more. On smaller maps, this might end up being the whole world because the extra room that gets rendered can be quite a bit. On huge maps you'll notice a very big difference between Save Current Area and Save World.
I started making this program by editing the sample projects that came with XCode. But it's unrealistic to expect you to be able to just look at them and go. Before I even started, I had 6 years of object-oriented programming under my belt, and a good handle on OpenGL. This is probably my 5th attempt to pick up cocoa. The last 4 times I just wasn't ready. My advice is to just start learning and programming, C++ on a console, Python, Java, whatever, and no matter what you do, it'll hone your generic "programming ability" until one day you have enough experience to look at an example project, sit down with the documentation and just go.
The Meaning of Life, the Universe, and Everything.
Appreciate the nice response back and the thoughts on for coding. I'll be sure to start working on learning soon when Winter breaks head over ( Im still schooled so ).
Ah alright, that makes abit more sense why the scroll is like that. I mean I can handle it inverted abit, but im more used to just scrolling normally. As for the Save Current Area feature, that also makes sense. I was using actually a somewhat small map, and so im guessing on SMP maps then, the feature would work alot better :/.
Still I love this and will be keeping an eye on it for future updates and stuff :biggrin.gif:.
Multitouch controls, flipped scroll wheel behavior for mice only
Greatly reduced RAM usage (half or less when zoomed out)
More responsive scroll and zoom
Flush cache option
Flush cache lets you dump all the textures in memory and scratch and rerender fully. If things get sluggish while zoomed out, that should fix it. It also lets you quickly rerender the view as you play, if you have both MCMap Live and Minecraft open.
Before adding any more features (except multitouch) I've been concentrating on getting it more stable and using less memory. I'm almost there. It already loads low-res textures when zoomed out but I need to get it to automatically dump the high-res textures from before that it doesn't need anymore. Manually flushing the cache does this but then you have to wait for a re-render and it's not something the user should have to do!
Just tested the latest version and it works fine on my 10.5.8. When I view in Night lighting I can see the lava through the layers of map, though. It's weird.
Also, multi-touch seems to work fine (very useful, in fact)
Because the images are stored without an alpha channel, so I have to mask them by taking everything that's pure black and say that's transparent. At night, sometimes the darker areas are dark enough to hit pure black and then...
The png feature in mcmap will fix both that and the black lines in the water.
Awesome job on this! As a fellow Objective-C programmer, feel free to ask me questions if you need tips here and there. :smile.gif:
I have a feature request for you, though I realize you might not get to it for a while: can you implement dropping labeled placemarks on the map? They'd probably just be 2D, of course, but it would be really amazing to be able to label all your bases and castles and mines and whatever else so you can more easily find your way around. The rendering would be pretty simple; the tricky part is storing them persistently -- obviously you wouldn't be able to write them into the map itself, and you probably don't want to pollute the save folder either. I figure you could hash the path to the save folder, generate a UUID that way, and store serialized dictionaries as plist files in your Application Support folder.
its a great tool ive wanted to get something like this for my mac and you delivered :biggrin.gif: works great. Just a suggestion if you are going to continue to update the features (if not dont worry) try and add stuff that cartographer has like viewing caves and stuff like that. other than that great job