Author Topic: How to make a video game map. Basic Mapping Methodology.  (Read 34611 times)

0 Members and 1 Guest are viewing this topic.

AereVoS

  • Guest
How to make a video game map. Basic Mapping Methodology.
« on: May 31, 2016, 06:10:43 am »
Greetings to all the members of this wonderful community.

Although that I have been browsing this site for more than 2 years, I had never made a post in this forum.

My name is Yiorgos and I am from Greece. I am an academic researcher and my main research field is related to video game's landscape and digital representations.

My first degree was in geology and I can imagine some of the techniques that you use for mapping in videogames, but although that I searched the forums about videogame mapping and I couldnt find a complete guide for it.

I guess that you use print screen a lot, hardware emulators, some image/screenshot extractor programs, some image editing software like photoshop for the final editing of the map and some other programs that help you tile the images or classify them.

So...I was wondering if there is some other basic tools or a special methodology that you follow in order to create these beautiful pieces of digital "art".

I would love to learn more about your techniques and also help your cause by making some maps myself.

Thanks for your time.

Yiorgos

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
« Last Edit: June 08, 2016, 09:11:27 am by Trop »

Offline TerraEsperZ

  • Hero Member
  • *****
  • Posts: 2315
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #2 on: June 02, 2016, 05:59:02 am »
This question always stumps me. Not because I don't want to answer it, but because it feels like I could write an entire book just covering my own methods and techniques. And I'm far from the most talented or skilled mapper here.

So I'll try to give a short (and very unsatisfactory) answer for now. See, how you map a game depends entirely on the game in question (2D or 3D, tile or vector-based graphics, etc) and on what system it's running. The more simple the game's graphics and the older the system, the easier in general it is to map well.

...I'll have to get back to you with a more detailed answer because it feels like there are so many different things I'd like to talk about on the subject but don't have the time to right this moment :P...
« Last Edit: June 02, 2016, 08:13:27 am by TerraEsperZ »
Current project that are on hold because job burnout :
-Drill Dozer (GBA)
-Sonic 3D Blast (Genesis)
-Naya's Quest (PC)

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #3 on: June 03, 2016, 02:09:50 pm »
*phew* Terra's right.  I tried making a guide and there was just too much to write.  So I have an idea.  Yiorgos, let's make a map together.  I'll show you where to get the parts you'll need and you can follow along as I go through it.

If you're interested pick up these things:
http://zsnes.com/
http://www.romnation.net/srv/roms/53696/snes204/Donkey-Kong-Country-3-Dixie-Kongs-Double-Trouble.html

You may also need Photoshop or at least something that can do the things Photoshop can do.
« Last Edit: October 16, 2016, 06:57:07 am by Trop »

Offline Revned

  • Hero Member
  • *****
  • Posts: 1094
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #4 on: June 03, 2016, 06:22:57 pm »
I took a stab at this by creating a timelapse video of mapping Super Mario Bros 1-1. The video description includes additional details.

https://www.youtube.com/watch?v=PUWwYe9N33o

Hope this helps!

Offline feos

  • Jr. Member
  • **
  • Posts: 66
  • TASVideos.org

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #6 on: June 05, 2016, 10:18:09 am »
Those could work.  But for now I'm going to do simple screenshots.
Another important program:
http://pikensoft.com/programs-bgmapper.html

Once you've downloaded all the stuff on the links I posted create a folder called zsnes and move them all into it.  Start the Zsnes program, load Donkey Kong Country 3, and press F4 on the keyboard.  Then just play around in the level to get used to it if you've never played this game before.  Just press F4 again if you die.

Now that you've gotten the basics of everything let's get started.  The most important part of a video game map is the foreground so we'll map that first.  On the keyboard press 2, 3, 4, and 5.  That will make everything but the foreground disappear.  In Zsnes 1, 2, 3, 4, and 5 control the graphical levels of the game.  Play around with them to see how they work.  For this level 1 is foreground, 2 is transparency, 3 is background, 4 is not used, and 5 is sprites.

With only 1 on all you see is the foreground, so when you take a screenshot all you'll get is the foreground.  If you move forward taking screenshots you can overlay them to make a single image that shows more of the foreground then just one screenshot does, even though it leaves out some of what you wanted to capture.  And with that you have the beginnings of a map.  Also you can now see the two biggest problems with game mapping.  How to disassemble the game to only get the parts you want.  And how to get all the parts you want without missing any.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #7 on: June 05, 2016, 11:25:28 am »
So the first thing we have to do is check to see if anything is missing.  It looks like were at the start of the stage in the bottom left corner, but are we?  Hit escape to pause Zsnes and click the top middle bar called Cheat.  Under that click Add Code, then Load in the row of buttons.  The list of codes that pop up are more or less everything you need to map this particular game.  On the list of codes double click camera scrl left at the bottom and walk forward in the game.  You'll get stuck as the code prevents the camera from leaving the stage's left wall.

So we know where the left wall is how about the stage bottom.  Turn on the camera scrl down code and jump around to see if the camera moves lower.  In this instance the stage truly does begin at its bottom left corner.

Now the best way to map any video game level or stage is to remember that all game stages take place in a big box.  So all you have to do is scan that box back and fourth until you get everything.  You can scan in any direction you like but for this stage lets go top down, left right.  That means before we start we need to be in the top left corner.  Back in the cheat menu turn off all other codes and turn on invinc, animal activator, and squaks.  This will make you the games flying character, the parrot Squaks, and make you invincible since you don't need to worry about dying while trying to make a map.

Use the jump button to fly squaks to the top of the map, and once there turn on the camera scroll left and camera scroll up codes and press F2 to save.  Now you are at the top left of the stage and we can begin to scan it down and right.  On the Zsnes menu screen you see when you hit the esc button you'll find a misc button at the far right, click it.  On the misc menu under Quick keys there is a snapshot box.  This is what you are going to use to take your screenshots.  Pick a button on your keyboard and assign it to snapshot then go back ot the game.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #8 on: June 05, 2016, 01:59:40 pm »
Now that you're in position turn off layers 2, 3, 4, and 5 and press your snapshot button to take a screenshot.  Then go into the cheat menu and turn the scroll up off and the scroll down on.  As Squaks falls the screen will scroll down, and as it does you can take a new screenshot a certain intervals.  But now we have a new problem: how do you judge intervals and how do you keep track of screenshots that are almost identical.  The answer is landmarks. 

At the top of the level there are three little bushes on the screen.  As Squaks floats down the bottom bush rises to the top and another little bush appears.  This is a good time for your second screenshot.  As Squaks keeps falling another row of bushes appears so again time for a screenshot.  Finally Squaks reaches the first ledge which makes another good spot for an interval screenshot.

Now two of your screenshots are nearly identical #2 and #3.  How are you going to tell them apart when you start assembling them.  Simple, during assembly you are going to go back and count.  But for now lets move on.  As Squaks hits the ledge he stops and bounces and the screen stops scrolling because my codes are not perfect.  To get the scroll down code to kick in just move him to the right of the screen.  The camera will attempt to adjust itself, it will scroll up, then start doing what the code instructs it to do.  As is slowly scrolls down the level you can take your screenshots at whatever landmark intervals you like the best.  When I find an interval I like I like to press the in game pause button to avoid camera jitter.  The jitter is another side effect of my codes.

Keep doing this until the camera stops because it's at the bottom of the level.  For me it was about twenty screenshots from top to bottom.  Now press 5 on your keyboard because next we're going after sprites.  Sprites are all the little animated characters and objects in a game.  They are usually closer then the foreground so you don't need to worry about layer overlap.  Turn off the camera scroll down code and get ready on the in game pause because the camera is going to race back to your position fast.  When a sprite, like a banana, a monster, a barrel, or whatever appears on screen hit pause and take a screenshot.  Keep this up until Squaks is back on screen then fly to the top and and use the scroll up code to make sure you didn't miss anything.

Now that you have a stack of screenshots lets move on to assembly.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #9 on: June 05, 2016, 05:28:58 pm »
Once you have a bunch of screenshots putting them together is easy.  But first you'll need some kind of image editor program.  Anything from MS Paint to Photoshop will do.  Since all image editors have a different style of operation pick the one you like the best.  It may be a long process to experiment with different kinds but it's worth it.

Assembling your screenshots is usually called stitching because of how each screenshot acts as a piece to a whole to make a map.  All you have to do is line up one part of a screenshot that overlaps another and keep doing that until you've formed a larger image.  This is why landmarks are so important.  A bush, a crack in the rock, or some other static object appearing in two screenshots can be used to line them up into one.  If the same landmark appears twice while you are capturing screenshots then once your done just go back and count them to create a measurement.  For example between the top of the screen and the first ledge in this level there are four little bushes.  So even if you get confused as to where a screenshot in your stack was taken you can figure it out.

Sprites follow the same rule.  You can re-scan the area you just shot to re-find them, and use landmarks around them to pinpoint their exact location.  Some people like to use a standard set of sprites in their maps, for example always showing the little purple alligator in the same position wherever it appears on the map, but for this map I'm only going to record non moving sprites.  This is entirely a personal choice and every mapper uses a different standard when it comes to how much detail to add to their map, so it's up to you.

So with your image editor of choice stitch your current handful of screenshots together and you'll have your first strip of map.  Which also gives you the levels height.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #10 on: June 05, 2016, 08:01:13 pm »
Now you can build your first whole basic map.  Turn off camera scroll left and just fly Squaks to the right until only a strip of your previous position is visible.  Then scan down and up again capturing your screenshots.  Back at the top go right more until again you see only a strip of your previous position and do the down and up scan and screenshot.  Keep this up until you hit the far right wall of the level, at which point turn on camera scroll right so you don't miss anything and do one final down and up scan.  Next take your enormous pile of screenshots, should be about 200, and assemble them in your image editor and congratulations your foreground map is complete.

Next we'll work on making the level appear as it did in the game.
« Last Edit: October 16, 2016, 06:57:26 am by Trop »

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #11 on: June 06, 2016, 02:58:23 pm »
Reload your save with Squaks at the top left corner of the stage.  Turn off layers 1, 2, 4, and 5, and you see the stage background.  If you turn layer 5 back on and fly around with Squaks you'll see the background move just like the foreground does.  But if you turn all the layers back on and fly past one of the waterfalls you'll notice the background and foreground scroll at different speeds.  The fact that they don't automatically line up is the reason backgrounds need to be extracted, although in some games this is not a problem.  The waterfalls count as transparencies and while they do line up with the foreground they don't with the background.  Also transparencies usually put up the most difficulty when it comes to mapping due to the way the blend with whatever they overlap.

Backgrounds and transparencies can also have the annoying habit of mixing with each other.  Backgrounds can be on multiple layers and transparencies can change more then a backgrounds color.  Sometimes they do it to foregrounds too.  To put the backgrounds and transparency into our map first we need to get them out of the game.

The bgmapper tool I mentioned before, and it's front end, are especially useful here, but not essential:
http://pikensoft.com/programs-bgmapper.html
http://pikensoft.com/programs-upfront.html

I'll go over how to do this part with both screenshots and the BGMapper extraction tool.

Extraction with screenshots:
With Squaks back at the top left turn off all but the background layer and fly around.  Study the pot marks in the rock face until you can see the repeating pattern in them.  It looks like it's only about a single screen both left right and up down.  So just take four screenshots of nothing but the background, using the same landmark trick you did with the foreground, only with pot marks in the rock face, in a 2x2 grid.  Next line them up like you did the foreground shots and look for the edges of the repeating pattern in them.  Mark those edges with lines, cut away everything outside the lines, and the lines themselves, and now you have a tile that perfectly lines up with itself so you can duplicate it to make infinite background.

Extraction with BGMapper or other tool:
Make a new folder on your computer somewhere and call it Piken.  Into Piken put the BGMapper program an it's little helper UpFront.  Go into the Zsnes folder, find the Donkey Kong Country 3.zst file, and make a copy of it.  Put the copy into the Piken folder then double click UpFront.exe to start BGMapper through Up Front.  In Up Front's main window you should see the names of all the files in the Piken folder.  Select Donkey Kong Country 3.zst and click the big words BG Mapper under Up Front's main window.  Now you should be looking at a garbled version of the level we are mapping.  Play around with the number keys a little to see what everything does, don't worry you can't break anything from this screen.  When you're done experimenting press 1 and 2 on the keyboard to turn off the layers we don't want.  Next press 0, then 2, to take the largest size snapshot you can and press Esc twice to exit the program. There's a new file in the Piken folder: BGIMG000.bmp.  This bitmap file is the background we wanted.  It also tessellates perfectly with itself so it doesn't need to be modified in any way.

Next up transparencies.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #12 on: June 06, 2016, 06:26:19 pm »
Transparencies are like a horrible twisting monster version of background layers.  They have to be extracted and added separately and they always have their own unique problems.  Fortunately this particular level offers only one real issue as far as its transparencies go.  But first let's handle extraction.

If we take a closer look at these waterfalls we see we have a problem right off the bat, they stretch.  More often then not transparencies will have some kind of physical distortion accompanying their translucence.  Fog transparencies can waft back and fourth, water can ripple, reflections can bend toward the horizon.  This transparency is stretched from top to bottom to give it a falling water effect.  Very creative design but very difficult for a mapper to duplicate, not impossible, but let's remove it.  We don't want to be stuck on this map for years.

Extraction with screenshots:
So how can you accurately screenshot a distortion?  With.  Great.  Difficulty.  Fly Squaks to a nice spot that lets you view one of the waterfalls in its entirety and turn off all layers but the waterfall, then take a screenshot.  Open the screenshot in your image editor and zoom in on it.  If you look closely you'll see locations in which one pixel was stretched into several by the distortion, and you can cut the image apart along those lines.  As you can see it's extremely complicated, but you can undo the distortion by shaving all but one line of pixels off each row, then reassembling them.  Unfortunately you'll discover here that the top and bottom of the finished product don't line up, which means part of it is missing.  And that means repeating this process with more screenshots until you find that part.  Once you do you'll have your transparency.

Extraction with BGMapper or other tool:
Just as you did for the background, move a copy of your zst file to Piken and bring it up in BGMapper.  Press 1 on the keyboard, then 0 and 2 to take your giant capture.  And yes you had to leave the background in the image, it's a restriction of BGMapper that you can't get around, and it also means you'll have to modify the image BGMapper just created.  Get out of BGMapper and open your new BGIMG image.  Note there's no distortion, BGMapper always removes physical shape distortions.  What you need to do now is separate the waterfall from the background rock.  There are many ways to do this but we're going to take a shortcut.

I'm going to use Irfan View to do this.
http://www.irfanview.com/

It's a great program that's a way around the clutter of Photoshop.  But you can use whatever you like as this trick works in almost any image editor.  You are going to be making a cutout.  Move the waterfall image into the image editor and open the menu that allows you to edit contrast.  In Irfan View this is Shift+G.  Increase the contrast until the image is blown out into only a few colors.  Then clean it up just a little further until it's only two colors.  Now erase the colors of the waterfall and drop it over the original waterfall image and you've got it.  Also just like the background capture these will perfectly tessellate.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #13 on: June 07, 2016, 08:45:17 am »
Now that we have our background, and our transparency, we're ready to do some assembly.  You might think all we have to do is drop the background behind the foreground and drop the transparency on top of both of them but there's more to it then that.  First lets set up all three versions of the level, foreground, background, and transparency.

You already have the foreground mapped out so make a new blank image file with the same dimensions.  In this case it's 5230x2714.  Use your background image that you either screenshot mapped or ripped using BGMapper to tile up the image giving yourself a foreground sized background image.  

As for the waterfall transparencies once you've ripped tiles of both sizes with BGMapper measure out their height to 2714 just like the other two images.  I should have mentioned this before but transparencies can blend into whatever they sit over in many ways.  Some simply fade into the background, others use brightening or darkening to flash into the colors they cover.  Fortunately for us this level simply cuts their visibility in half.

Now lets combine layers.  Drop A COPY of the foreground, minus it's blue background filler, onto your background image to combine them into one.  Next you'll need a program like Photoshop, or any image editor that does layers.  Open the combined foreground background image in Photoshop and drop in your waterfalls.  If you go back into the game and look for a landmark to use to align the waterfalls you'll have a hard time finding one since the edge of the water moves a lot.  So this time just eyeball it.  Being able to tell when something is right just by looking at it can be an essential skill for video game mapping.  Once all your waterfalls are in place set their visibility to 50% and flatten the image.

We're almost done.  Throughout the level some of the ledges, bridges, and barrels stick out in front of the waterfalls.  This is why you kept a copy of the foreground.  Check back through the stage and when you find a ledge or whatever, that sits out from the water, use the original foreground to paste over.  Once you got them all CONGRATULATIONS you've made a video game map.  A high level difficulty map too, well done.

« Last Edit: October 16, 2016, 06:57:45 am by Trop »

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: How to make a video game map. Basic Mapping Methodology.
« Reply #14 on: June 07, 2016, 08:45:36 am »
Well that's the basics of video game screenshot mapping.  If I missed anything, or left something out or was to confusing, or you just want me to cover something else, just say so.  Happy mapping.

https://www.vgmaps.com/Atlas/SuperNES/DonkeyKongCountry3-DixieKong'sDoubleTrouble-K3-BarrelDropBounce.png
« Last Edit: June 08, 2016, 09:03:14 am by Trop »