question about game map

Started by
4 comments, last by Norman Barrows 10 years, 8 months ago

hi,

I have been looking around on the Internet but haven't found anything.

So here is my question:

This is the map of an old game, Airborne Assault.

s241_04_screenshot.jpg

I would like to write a prototype with a map in this style (gridless, 2d top down) and a unit i can move around,

but I don't know how to get started. For example what datastructure do I need for the map?

If someone could link a tutorial or give me some advice that would be really helpful.

Advertisement

You draw an image representing the map scaled and positioned correctly.

How much programming experience do you have? (have you made game related stuff before, can you for example deal with rendering the map and entities at the correct position if you have a movable camera?)

What features do you need from the map? Is it a static image or editable at runtime? Do you need to recognize things on the map(railroads, buildings, areas) or can you just represent everything as a point? Is the map too big to be handled as a single image you draw on the screen?

o3o

I'm not sure if you are familiar with a game canvas but it is something you will need to know about when you are making your game from scratch.

The map can be created using a 2D array or an arraylist of images. Each grass tile is a block. Think of your map like an array that holds a lot of images which are the tiles in your game.

Have a nice pencil and paper and draw 5x5 grid and you will see what I mean.

Thanks for the replies,

I recently wrote a Frogger game with Java and slick2d.

I intend to use C++ with Allegro this time.

I want to make a map without tiles that has height information and terrain types.

Water, Bridges and Roads are ideas for later.

I thought I could use arrays to store the coordinates of forests and so on (or structures),

but won't that be too difficult for the calculation of movement costs and so on?

I mean the game would have to iterate through all terrain 'objects' (as well as the height lines) for

every calculation.

Waterlimon:

What do you mean with 'editable at runtime' ?

By editable at runtime i mean if you need to make changes to the terrain in game. Like a terrain editor.

If you don't, you can just draw the terrain and explicitly tell where things are (like mark heights manually)

Performance won't be a problem even if you store the data freely (not in grid) unless its a real time game with tons of units moving about.

You can always put the data in a grid or other structure to speed things up under the hood with some loss of accuracy.

For the height lines, if you use a heightmap, you can generate the height lines from that for visuals and do actual calculations with the heightmap for example.

o3o

in this particular case, the map appears to be one big bitmap made in a paint program, not tile based.

odds are there is an underlying 2d array map (not displayed) that units use to determine what terrain they're on.

or it may be a bitmap and run at pixel resolution.

either way, the idea is the same. you have a 2d array of bytes or whatever, indicating wood, grass, water, wall, etc. this is how you tell what terrain and obstacles are where. the map on the screen is a pretty picture that matches the underlying "game map". the resolution at which units move may give you a clue as to the resolution of the underlying game map used.

the grey grid lines are just drawn over the pretty picture as extra chrome. the net result is a beautiful battle map on the screen that matches the simpler underlying 2d array map actually used by the game logic.

for this approach you'll be looking at some quality time with your favorite paint program.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

This topic is closed to new replies.

Advertisement