Sign in to follow this  
FinnRogers

How to approach a retro "Tunnel scroller"

Recommended Posts

I am looking to design a game very similar to the PC game "[url="http://teknopants.com/games/uberleben/"]Uberleben[/url]".

It is a retro top down tunnel scrolling game where you avoid objects as you descend along the tunnel.

As a total noob to games programming, I am unsure what the best approach is with regards to designing the tunnel and the pseudo-3 dimensional illusion.

I can see from the screenshot that the tunnel is made up of a few different tiles/borders which repeat in a loop. In order to create the illusion of movement, I am guessing that you start with making the tiles/borders appear in the centre of the screen quite small with some sort of alpha effect on them to make them appear lighter and then in subsequent frames the tiles/borders get progressively larger, staying central to the screen as the alpha decreases (making them darker). Once the first tile/border is so large that it is no longer visible (i.e the edges have disappears beyond the screen edge) then it is looped back to it's initial position. With 10 or more of these tiles spaced appropriately and the rate at which they get bigger managed properly, the effect should achieve what I want, and I then just need to incorporate some game logic to handle collisions and add some object tiles.

Is this the best/most efficient approach?

To design levels I would just need to create lists of numbers with the numbers representing a specific tile/border/object. The game loop would then just go through the list sequentially, making the tiles appear in the order defined in the list. Alternatively it could be randomized for random level creation. Does this all sound okay?

Any tips or pointers would be much appreciated. Also, as this will be specifically done in Java for Android phones, with movement accelerometer controlled, any advice specifically on that would be much appreciated.

Share this post


Link to post
Share on other sites
To me it looks like one image that is being scaled from small to large and then flipped in one frame and inverted in another and flipped + inverted in the another, giving the illusion of 4 frames when there is really only 1. Those old school games had to be very small. Adding 1 or 2 more images where you do that same control randomly flipping and inverting or both for a given tile and scaling it will give the appearance of many more tiles to the untrained eye. You might need to keep track of a fake depth for objects as well.

Not sure of any functions on the android as I do not program for one, being that I do not own one :), concept sounds about right cept for maybe the maps which can bloat quite large unless you randomize it. Which will give each player a different experience every time.

Share this post


Link to post
Share on other sites
Aha! That's brilliant, I hadn't thought of that! I also need to keep it small as I'm also dealing with limited memory and graphics performance. This is one of the reasons I'm going for a retro game (I also happen to enjoy retro games as I believe many of them have much more playability than modern games).

With regards to the maps, it's a toss up between random and fixed (or both). I'd quite like to have some defined levels to allow a leader board, time trials, achievements, etc... I think I will try and see how it copes with it, using the random level approach as a backup solution.

Many thanks for your advice :)

Share this post


Link to post
Share on other sites
NP, I used to reprogram retro games all the time. There was defiantly short cuts being used in the old days that people don't really notice until they either look hard enough or are told about it.

Share this post


Link to post
Share on other sites
Some would argue that you had to be more skilled as a programmer in the past as you were forced to find those sort of shortcuts to get the most out the limited hardware available. It's certainly proving to be a useful skill when it comes to programming for mobile phones which are also limited compared to modern computers.

Share this post


Link to post
Share on other sites
Yes, I have build a test path finding A* on a mobile device, it is quite quick on the netbook that I use, roughly .3 seconds to execute a 100x100 search grid with a hefty avoidance, however on a mobile phone it takes near 6 seconds. Phones are getting more powerful where the IPhone CPU is getting up there.

When programming on a mobile device you have to always worry about that Out of Memory error that the compiler throws, gah so limited. Had to rethink a lot of programming techniques by focusing on speed a lot more, you really learn how to optimize code.

Share this post


Link to post
Share on other sites

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

Sign in to follow this