Jump to content
  • Advertisement
  • entries
  • comments
  • views

In=between levels bit

Sign in to follow this  


Just finished off the basic system for the in-between levels World Map.

You can walk around freely in all four directions but a single keypress will make Udo walk an entire square so he always stops at the middle of the square.

It uses the animations from the main game, but they look pretty cool. It's drawn in such a way that the block in front of Udo can overlap him slightly and the shadows use alpha blending and look pretty cool.

It's not Z-buffered or anything. Before I draw the map, I work out which map cell Udo's bottom right corner is in, then when I draw that map block, I draw Udo's shadow then Udo as well.

Obviously the stars represent levels, although I've not implemented this yet. When the world is loaded, it loads information about each level and stores it against the position of the star. When Udo walks onto a star, the name of the level alpha fades in at the bottom of the screen and fades out again when he walks off it. The path to the level file is stored with this information as well.

The water is constantly slowly scrolling underneath the island from right to left as well, which looks pretty cool. If I hacked some rivers through this island I reckon it would look pretty good.

I figure these bits will be passive like Mario's maps and just give you the opportunity to enter levels. Bits will be blocked off until you have completed certain levels and so on.

Although I must admit I've got some vague ideas in my head to put some sort of RPG adventure game elements into the World Map bits. Like perhaps other characters to talk to that send you off into the normal levels to look for certain items.

Spent all that time writing a font engine. Might as well use it.

[EDIT - Update]

When you stand on one of the stars, pressing space now takes you to the level specified in the level details file. When you have completed the level, the star and the name text go grey in the World Map.

The game saves your position, score and the completion state of all the levels whenever you complete a level, so when you exit the game and start again, you begin standing on the last level star you completed, with your score at the time.

You just get three lives at the start of each level now and the lives are not displayed in the World Map mode since it didn't make a lot of sense. If I ever manage to get checkpoints working along the levels, the lives system will make a bit more sense than it does at the moment. At the moment the only downside to losing all your lives is that you have to start the game again, then walk from the last level you completed to the level you are trying to beat.

The other thing I need to add is dynamic blocks on the World Map. I'll have to save the state of these along with everything else and come up with a flexible system for removing them at the appropriate times.
Sign in to follow this  


Recommended Comments

Looking great as usual, EC. I'm sure you've probably mentioned this somewhere, but what software are you using for your graphics creation?

Share this comment

Link to comment
Yep. Paint Shop Pro 7 for everything.

I've written a command line program that converts lists of bitmaps into my own sprite file format which supports alpha as well as multiple images in a single file.

The program can either generate solid alpha, generate zero alpha for any pixel coloured (255,0,255) or read a seperate red-black bitmap representing the per-pixel alpha values of the image.

Bit of a pain on those last ones having to maintain a seperate image for the alpha. I should probably look into using TGA with Paint Shop and convert those into sprite files really.

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!