This topic is now archived and is closed to further replies.

Dark Star

Making Mario Kart type games...what's invloved

Recommended Posts

Hi everyone, I am interested in making a game like F-Zero and Mario Kart, you know, a 2D racer which uses clever scaling techniques to look like it''s 3d just like F-Zero and had a few questions for you to help me on my journey 1) I need a good web-site for that kinda information. Where can I go to? 2) Does anyone have any idea how to represent a 2D 2x2 map of a level in perspective like in mario kart so that as you look at the road ahead it appears to be converging into the centre of the screen (I hope you know what I know, perspective view) 3) About artificial intelligence and making other racers follow the track. How would YOU go about coding the AI so that CPU racers appear to be racing and following the track but with a few behavioural differences, so they don''t always take the same path as each. 4) Scaling sprites so that they look like the are infront like in the distance like in Mario Kart of F-Zero when vehicles get smaller as they advance into the distance. 5) Designing the level in a 2D editor and then including racing track attributes like bumps and ramps, which make the car jump up abit. How will I give the illusion of a car bumping up on a ramp or bump. 6) How would you suggest I design a level editor so that it''s very easy to make good race tracks 7) If I use a 2x2 matrix to represent the track and level, then how to I get curved roads as the player turns if all level entities will be orthahonal (that''s the first time I am using that would and I am assuming it means that objects are 90 degrees to each other. Correct me if I am wrong please). F-Zero has curved roads which leads me to wonder how their levels are stored. 8) About spacing with all the race entities and collision detection. The track I create in the track editor may have each road segment or racer spaced by 1 block in the map, but when it comes to translating the spacing when it comes to rendering the screen and all racers. That''s about it.... I have never made a trick 3d type game like doom or Wolfenstien and I know the involve raycasting or ''tracing techniques and I am not too sure about them but my game specific ignores walls and trees and rocks I just wanna know how to translate a 3d map into perspective and make it look kinda 3d well the race track anyway. --CELEBRATE GOOD TIMES --------------------------------------------- I just want every to know that I have finished college and am totally happy that I am free !!!!! (Just like MYA Lol) and I am starting unoversity this September doing a Comnputer Science course in graphics and games I am so happy. I have got a whole holiday of 3 months to begin on this new game YEAAAAAAAAAAH !!!! WHO''S BAD ???!!!!!! ---------------------------------------------------------------------- Sorry enough of that... I sure asked a lot of questions but you don''t need to answer then all just as many as u can or u want to. If you have any helpful source code can I have it. If you know of any interesting sites with this kinda game production please can you tell me? Any help is good help !!! Thanks in (Gameboy) advance Dark Star UK

Share this post

Link to post
Share on other sites
Hey DarkStar

personally I''d suggest using DirectX8 3D instead of scaled 2D display. Mostly becoz the 3D can be made to look like a scaled 2D, and it is easier (you just say: "do stuff", and D3D does the rest). Plus you get instant hardware support.

1. ?

2. see 3D above

3. AI: I think I''d represent the race-track in a progression map, like so:


and the computer would just try to go from 1, to 2, to 3, etc...

4. Scaling is handled automatically in 3D

5. You should probably create a dedicated level-editor, where you drag-n-drop tiles, the editor then compiles various in-game maps from that data

6. Drag-n-drop tile-editor

7. Orthogonol is 90 degrees yes - and using a tile system you >could< create more complex tracks, say with 45 degrees and stuff.

8. I''d check the players (and computer karts) position on the 2D image of the track, based on the color at the position, you can determine if it is "on" the track, or "next" to it, etc, and handle the game appropriately. - Collision you should probably handle with "bounding spheres".

Good Luck
Henri aka A-Lore

Share this post

Link to post
Share on other sites
1. As LoreKeeper said, ?

2. Using a 3D API is obviously easier, but that is not in the style of Mario Kart, F-Zero or Wacky Wheels. I''m not sure how I''d do it in 2D.

3. Have you seen Supercars on the Amiga? It came out in about 1990. In a Work-In-Progress article in The One (an old Amiga magazine), it showed part of the AI. Each track was represented by a bitmap. Each colour in the bitmap had a different meaning. One colour was the outside of the track which you could never get to. On the track itself was strips of different colours. Each colour told the AI which way to turn the AI car so that it stayed on track.

4. The Blt method of DirectDraw can easily and quickly scale sprites.

5. You could use a bitmap similar to the one I mentioned in 3. A different colour could represent a jump.

6. If using a bitmap, then any paint program could be used as a level editor.

7. Depends on the size of your tiles. If the tiles are smaller than the road, then you can simulate a curved turn by placing the tiles in a curve.

8. Your entities will be positioned using a finer-grained coordinate system than your tiles use.

I''m not sure what college is over there, but congratulations on finishing it getting in to university. Here in Australia, we go from primary school (years 1-7) to secondary school (years 8-12) to university (if we want to).

Steve ''Sly'' Williams  Code Monkey  Krome Studios

Share this post

Link to post
Share on other sites
About the 2nd point, if you are interested in a software engine, you could look at the Volcano game source code. It includes a 100% free Delphi graphic API that supports heightfield and scaled sprites, plus some other goodies like fog,
animated landscape and several sky mapping methods. Since I''m the author of this engine, I could help you using
it in you project if you are interested. You can download it on Delphi Gamer.


Share this post

Link to post
Share on other sites