Tuesday, July 19, 2016

Jungledyret Hugo PC Game

If I were to choose one project that I am particularly proud of, it would be the Jungledyret Hugo (aka. Jungle Jack) PC platform game based on the animated movie of the same name. Considering the budget and the circumstances of the production, it was nothing less than a momentous achievement.

Screendump from level 1 of the Jungle Jack (Jungledyret Hugo) game, 1995.

I had been working for a while with a group of young self-taught computer programmers and graphic artists on various smaller games and advertizing programs. I shared my experience in animation and visual design, and they in turn taught me programming and other computer skills.

Box, booklet and CD-ROM of the Jungledyret game, 1995.
When, in the spring of 1995, we were hired to do a CD-ROM game as a kind of merchan-dizing for the animated Hugo features (the second one was in production at the time), we immediately knew that we wanted to do a classic 2D side-scrolling platform game. As the game director/art director of the project I was heavily inspired by Disney's newly released Lion King game, which featured high-quality (almost) full classical animation, much resembling the animated Disney feature. So I couldn't resist the temptation to follow Disney's lead and make a similar product for Hugo.

(If you don't really care about how this game was made and just want to see some action, click here!)

The project was launched on the 1st of April 1995 and finished on schedule on November 1st of the same year. The program itself, from concept to the finished product, was done by seven people working around the clock for all seven month. In addition we had a few people taking care of music, sound effects and external production tasks like CD-ROM cover design, instruction booklet etc.

That's quite an accomplishment, considering that both the scope and the visual quality of the game are equivalent to that of the Lion King game, yet done with a fraction of the resources (the game had a production budget of DKK 1.2m, less than USD 200.000).

Screendump from level 2.
Screendump from level 3.

Though most of the young team (aged 19 to 24) had little proffesional experience, every member was highly skilled in this particular kind of craft. Part of the crew had ties to some of the stars from the demoscene, who had recently sold their first computer game, "Sub-Terrania" to Sega (and later went on to produce the world-famous game "Hit Man" and found the Danish game company IO Interactive). So these guys knew all the tricks needed to make a smooth running game for a relatively slow 486 PC with only 4 or 8 Mb of RAM and a regular VGA graphics card, which was the standard at the time.

The programmers, Brian Bramsted, Felix Bryde Nielsen and Ruvan Fernando, wrote the roughly 100.000 lines of code, mainly in Standard C, but with low level routines optimized in assembler (machine code). Whereas most games at the time (including the Lion King) had a screen resolution of 320 x 200 pixels, Hugo's graphics were based on a 320 x 240 pixels, 256 color "tweak mode" with a multi-layer parallax scroller (for simulating depth in the backgrounds), utilizing the hardware features of the VGA card, thus giving 40 additional lines of resolution as well as extra speed.

Screendump from level 4.
Screendump from level 5.

The program also features a variety of other VGA-specific hardware supported effects, such as modifying the video card's palette in order to change Hugo's colors as he moves between differently lighted environments, and the use of "color cycles"
enabling cyclable animation
(like water effects, fickering TV etc.) to be animated without actually writing any data to the video card, again optimizing for speed and saving memory.

Another extremely nerdy (and equally useless) visual effect is the picture of Hugo's face shown as the game starts up, but while it is still in text mode. Incidentally, that code was done by yours truly.

All the game's graphics, including characters and backgrounds, were initially drawn by hand. The colors and finish were then added pixel by pixel using very basic 8-bit paint programs such as Deluxe Paint or Deluxe Paint Animation (PC) and Brilliance (Amiga).

I would plan the gameplay, mostly together with graphic artist Karsten Lund, by simply drawing the background of each level with pencil on a several meters long stretch of paper, while designing the path for Hugo's progress, including all the obstacles he would face.

The handdrawn background was scanned and downgraded to the game's resolution of 320 x 240 pixels per screen and then colored by graphic artists Jesper Colding-Jørgensen and Thomas Colding-Jørgensen. The then only 19 years old twin brothers did a truly outstanding job on the backgrounds, not only in terms of the beautiful coloring, but also in making sure that the huge bitmap graphics could be contained within the limited memory of the target device. This was achieved by fragmentizing a background into 8 by 8 pixel tiles, which were heavily reused throughout each bitmap, thus enabling us to have backgrounds many times larger than what would otherwise be possible.

Screendump from level 6 (5B).
Screendump from level 7 (5C).

Every level in the game, plus the end-of-game-sequence, has its own musical theme. Two of these, the Jungle and Skateboard themes (level 1 and 4 respectively), are new arrangements (for 8-bit FM sound) of existing songs from the film, the rest are original compositions made exclusively for this game by composer Johannes Bjerregaard. Again we were lucky to have an artist who was both a brilliant composer and an expert on this particular kind of crude, but charming electronic music.

The sound effects were done in Lars Borch Nielsen's small recording studio, which was situated in the same building in Copenhagen where we had our offices. Due to lack of time and ressources, many of the sounds are simply me making silly noises into a microphone. The samples were then compressed to smithereens in order to fit into the limited memory of the soundcard. They are not of the highest quality, but seem to work reasonably well in the heat of the action.

Here's a sample of the music from the outro.
Johannes' wonderful composition for the two friends' final farewell made the otherwise rather cynical programmers spontaneously hug each other.

Hugo and Rita waving goodbye to the sound of Johannes Bjerregaard's wonderful
music in the game's outro.

The game was produced for Per Holst Film, Denmark, and released on CD-ROM in a Danish-Swedish-Norwegian-Finnish version, with some video sequences from the original feature between the game levels, played directly from the CD-ROM. The program would automatically detect if the target PC had a minimum of 8 Mb of RAM, and if not, a limited version would be installed instead, with a bunch of mainly cosmetic details removed from the graphics in order to bring the memory usage below 4 Mb. A diskette edition was released as well (on five 1.44 Mb floppy disks), containing the reduced 4 Mb version.

Below is a video that I recorded recently while playing through the entire game (the 8 Mb version, but without the movie sequences).

One of the mistakes we made - for which I assume full responsibility - is that the game was a bit too hard for the target audience. For this reason I suspect that few 7-year-olds ever made it past the first level, which is really a pity considering how much beautiful content this game has.

It is probably also the reason it took me about a week to make a decent take for this video. And even that was only achieved by cheating; from level 4 (Skateboard) on, I had to use a secret key code multiple times to secure myself some extra lives. And still, I had to give up on defeating Izabella at the end, instead using a cheat in order to show you the end sequence with Hugo sailing away on the banana boat while waving goodbye to Rita to the sound of Johannes' all-time classic composition.

The five game levels (or actually seven - level 5 is split into three parts) are loosely based on the corresponding sequences from the movie.

Level 1: Hugo in the Jungle
Level 2: Hugo Escapes from the Boat
Level 3: Hugo in the City/House
Level 4: Hugo and Rita on the Skateboard
Level 5 (5A): Hugo and Rita Meet the Cats
Level 6 (5B): Hugo and Rita Escaping through the Sewer
Level 7 (5C): Hugo in the Harbor/Face off with Izabella Scorpio
Outro: Hugo and Rita Say Goodbye

The video below is the first in a playlist, so you can skip through the levels of the game one video at a time.

The game wasn't released outside Scandinavia, and never became a commercial success. As I recall, it had to sell only 40.000 copies to break even, given its relatively low production cost. But even that was unattainable, apparently due to insufficient marketing and distribution. I actually heard stories of people going to the toy shops, after having read raving reviews of the game, but didn't find it on the shelves. It managed to sell around 20.000 copies, virtually without any marketing, but it obviously wasn't enough to persuade the investors that this kind of venture could be profitable, and our dreams of making another, even better, game were shattered. Still, I dare say that we made the most beautiful and ambitious computer game Denmark had ever seen at the time.

Today the game is considered "abandonware," and a cracked version of the 4Mb edition, with menus translated into English, can be downloaded for free from the website Abandonia. A Danish version can be obtained on this new blog, which is dedicated to preserving classic Danish DOS games. The game requires DOSbox to run under modern operating systems, and I must say that the emulator does the job quite well.

A few tips, if you want to give it a go: Inside the game you can get extra lives by pressing F1. There's also a combination to skip to the next level by pressing Caps Lock + F12 + Insert simultaneously.

Danish newspaper article about the Hugo game (Politiken, 14 December 1995).

Being essentially an interactive cartoon, the game contains a considerable amount of animation. The sketches below are the original plans for Hugo's main capabilities, divided into active and passive functions. Unlike in an animated movie, where the action is a long, continous stream of animation, in a game, all the functions are animated as individual segments, which are combined in realtime by the code according to the player's actions as the game unfolds.

The active functions are controlled by the player and include walking, running, jumping, leaping, ducking, grabbing, climbing up and down, and brachiation (swinging by the arms on a horizontal liana). Hugo's planned crawling function (see first sketch below) was scrapped, but other special features were added, such as jumping from a hanging position or turning on a skateboard in level 4.

The passive functions (sketches 3 and 4 below) are Hugo's reactions to external events, that is, either collisions with other moving objects (sprites) or contact with various "trigger points" strategically placed on the backgrounds. Examples are: getting hit on the head by a coconut (after which he scratches his head), stumbling over something (after which he gets back up to stand), getting his toe bit by a bug (and whining about it), eating fruits and other food (including cans of Coca-Cola), falling and landing smack on the ground, sliding on slippery surfaces, swinging on lianas, getting off balance on the edge of a platform, running straight into a wall, and fainting due to lack of energy.

In addition Hugo has quite a few special case functions, such as falling into a net at the end of level 1, stumbling on the skateboard in level 4, and getting caught by a little girl in level 3 or a cat in level 5.

The game's animation comprises around a thousand drawings in total, Hugo's alone exceeding 400 poses. The animation for Rita the fox is also quite extensive, with the secondary characters making up the rest: Hugo's two monkey friends, Zik and Zak, a hippopotamus, a snake, beetles, parrots, seagulls, jumping fish, robots, cats, rats, a little girl, and of course the main villain, Isabella Scorpio.

In addition to the characters, there's a lot of animated objects like falling fruit, sweets, cake, orange juice, coke bottles, swinging lianas, ropes, hooks, tree trunks, a barrel, a truck, a book, a plastic frog on a spring, a ladder and a skateboard, as well as some special effects like leaves, water splashes, electrical charges and dust.

I did the lion's share of the animation, mostly at night when I wasn't busy with other tasks like directing, planning the gameplay and acting as line producer for the entire production. Danish animator Martin Madsen did some additional work for the Hugo character. We both had experience animating on the first feature just a few years earlier, which helped keep the style close to that of the movie.

These are the original rough animation drawings for the following segments for Hugo: Stand, walk, stumble, run, leap, grab horizontal liana, brachiation and swing on/off a liana.

Below the rough poses you will find a video with most of the animation segments included in the planning sketches above.

This is a video with most of Hugo's main animation put together.

Rough animation for the Jungledyret Hugo game, 1995. Animation by Dan Harder and Martin Madsen.

When a segment of rough animation was done, the drawings were scanned and scaled down to match the low resolution of the screen. Each pose was then meticulously colored pixel by pixel - a process known as pixelation. Because the pixels were so big on the screen, every single one had to be considered carefully in order to get the optimal effect.

The image below shows Hugo's primary function - the "stand" animation segment - which consists of just one frame. As you can see, each of Hugo's teeth are made up of a single pixel. I pixelated this first pose myself as a guide for the graphic artists. The rest of the painstaking pixelation work was done mainly by my good friend Karsten Lund, with the Colding-Jørgensen twins also pitching in.

In addition to the pixelated character, each bitmap also included some information for positioning the pose correctly when the program is executed.

The pink line under Hugo's feet specifies the width of his "standing base," and the pink pixel to the left its vertical position. This is matched up with similar indicators on the backgrounds in order to determine whether or not the character is resting on a given surface in the game (or "platform," the technical term, hence the expression "platform game").

The two white pixels define a position through which the pose will be linked to other segments of Hugo's animation.

This video shows the exact same animation as the rough version above, as it looked after it had been pixelated. It has been enlarged from its original 320 x 200 pixels format in order to better simulate the screen resolution of the time.

Pixelated animation for the Jungledyret Hugo game, 1995. Animation by Dan Harder and Martin Madsen.
Pixelation by Karsten Lund and Jesper and Thomas Colding-Jørgensen.


  1. Sad to hear of how poor the sales are to this (or the people that couldn't even get it from the shops). Nice though to learn of a fan-translated version of the game for us Anglophone blokes who do have an interesting the movies this came from (sort of has a cult following here in the states).

  2. Wonderful and thorough article,
    Nice to re-visit the whole era once again, and yes, I must agree, this is a production to be proud of.
    - haarder times, but fun times - :-)

    Best, Jesper

  3. I've loved this movie from my childhood for the longest time, especially the character design and the beauty of the animation. It is such a pleasure to see the behind the scenes of the animating process, and to see all your different projects. Im an aspiring animator myself, and the see the drive and joy in your projects is a huge inspiration to me.
    With best regards, a big fan from Finland!

  4. Somebody linked me to your blog, and I couldn't be happier. Hugo 1 & 2 are on my "noteworthy underrated non-english movies" list (3 has meh story, to be honest). Did not know there was a game until recently, and now I can read about a thing I never played (...yet)

    P.S. Apparently, yesterday was the 20th anniversary of the first movie's premiere? What better time to re-release the films with a professional english sub. Come on, someone in charge, make it happen!