16-bit-ish Penguin platformer

WHAT IS IT?

It's a penguin platformer with dozens of levels and challenges that has you running through terrain, jumping over hazards, chaining a score together and belly sliding down hills through ice blocks. In addition to challenges and hand made maps, there is an infinite runner mode.

THREAD TABLE OF CONTENTS:

  1. Challenge Mode & Initial Screenshots: link
  2. 10 Micro Mode: link
  3. Hole in the Wall: link
  4. Environment Details: link
  5. Treadmill and Issues: link
  6. Fixes with Annoying Issues: link
  7. A lot of Facets: link
  8. Increasing the Feel: link
  9. New Challenges: link
  10. Tweaks from Testers: link
  11. Secret Walls: link
  12. Slide Update: link
  13. 3 Power Ups & New Font: link
  14. Goals & Game Over: link
  15. Tutorial Training Ground & Stats Screen link
  16. Albatrosses & Sliding Symphony link
  17. The Shop is Open for Business link
  18. Visual Enhancements link
  19. More Hazards & Hat Tricks link
  20. The Editor link
  21. The Start of Mundane Updates link
  22. Lots of Mundane Updates link
  23. The First Challenge Map link
  24. In Game Achievement System & MUY MAPS link
  25. Using Old Enemies in New Ways link
  26. Enhancing the Editor link
  27. More Hazards link
  28. More New Levels link
  29. 40 levels, 65+ challenges 35+ micros here
  30. Optimization here
  31. Map Shots here

Once upon a time two years ago I wanted to work with an artist friend. Back in January - February he started making art as a way to break his DOTA 2 habit. Between both of our other projects and lives we've been hobbling together a game. Its hardly hype, but its hardly a game:

* penguin visits vast, needlessly difficult wastelands hastily thrown together *



* penguin explores frozen caves *



* penguin climbs treacherous hills to slide down *



* its not a map, its a string of events *



* pick your penguin's particularly pretty attire *



* defeated penguin is dizzy in defeat! *



* penguin is ready for whatever this is to begin *



Thanks for taking a look at the penguin project.
  • What are your expectations with this game?
  • What would make you buy this game?
 
Last edited:
Oh boy, a penguin game! Finally, I've been waitin- Oh wait, nevermind, not quite a penguin game. Unliked.

Just kidding, this actually looks pretty...cool, pun not intended, but basically unavoidable. The art has a sort of Sonic3&K look to it, and...I don't know, I just really like how it looks, even with little to no gameplay information. It's a platformer starring a penguin with attitude. How am I supposed to NOT be charmed?
 
Oh boy, a penguin game! Finally, I've been waitin- Oh wait, nevermind, not quite a penguin game. Unliked.

Just kidding, this actually looks pretty...cool, pun not intended, but basically unavoidable. The art has a sort of Sonic3&K look to it, and...I don't know, I just really like how it looks, even with little to no gameplay information. It's a platformer starring a penguin with attitude. How am I supposed to NOT be charmed?
Not liked... penguin is sad, but fish will always make a penguin happy!

Now for much more non gameplay of brave penguin's struggle to catch fish that are mysteriously floating in the air.

* Penguin braves dangerous wildlife *



* icicles are seen before they drop from the sky *



* penguin and hot pepper break through ice blocks *



* settings are customization-able for comfort and control *



CHALLENGE MODE

While there is an endless runner mode to the game there are also several challenges being worked on and tweaked just to see if there's something fun outside the endless mode. These are simple challenges across various maps. Each challenge has three difficulties and keeps track of either your highest score or fastest time. In the future, specific challenges will require a player to have completed previous challenges to play them, but for testing purposes everything is unlocked

Its a good environment to test things and tweak them before they're either added to endless mode or turned into a challenge. There are 15 challenges so far and some use the same map over, but things will get tweaked and modified as this project progresses.
 
Last edited:

ReidDC

Member
Reminds me of a really awesome game from back in the day, Fire and Ice. Looks really really good man! Graphics are smoooooth. Want to see more!
 
Reminds me of a really awesome game from back in the day, Fire and Ice. Looks really really good man! Graphics are smoooooth. Want to see more!
Thanks! I am unfamiliar with Fire and Ice, I looked it up... this game? https://en.wikipedia.org/wiki/Fire_and_Ice_(video_game)

More screenshots of not game:

* penguin waves at you to thank you for your success *



* grade A+ gets shimmering rainbow letters *



10 MICRO MODE

What you see above isn't a map, its a string of 10 micro challenges which are 30 second challenges. You succeed or get defeated, but you keep moving on one after another. Then at the end you get a grade. The artist suggested it and so we gave it a try. Even though its a bit short, its still enjoyable getting dumped into random micro challenges that are still within the game's context of collect fish in a platforming environment. To give you an example of some of the micros:

  • Break X blocks with a chili pepper
  • Collect X fish while dodging falling icicles
  • Collect X fish to open an igloo door and get to ze igloo!
  • Get X points in an endless runner
  • Jump over X enemies in a non endless runner
  • Collect X fish that appear in a map
  • Survive 30 seconds by collecting clocks
 
Last edited:
* penguin continues perilous journey to collect fish with no game in sight *



Since this is a blog, I should probably talk about what was done. Those back walls can now have holes. For whatever reason GameMaker is modifying the color of the back walls and you can see where the 4 back wall pieces fit together. I'll have to fix that.

The turtle is walking / hovering its way up the slope. That's something I'm happy about, enemies can walk up and down slopes as of two months ago.

The icicles up above will fall when the player gets beneath them and they spray into ice when they hit the first object. At the moment, the tip of the icicle doesn't hurt the player, just the wider half.

The ceiling needs work to match what's above it. I should point out that the tiles are randomly generated. Well I suppose not random, but they're sheeted, 1, 2, 3, 4, 5, 6 rather than a random of 1 - 6. Then there are random stickers placed on top of the tiles for a bit more texture and variety.
 
Last edited:
* penguin treads through celestial ice crystal environment *



* penguin looking at new one way platform art *



* penguin looks in dismay at flawed environments *



THE ENVIRONMENT DETAILS

I've been working the past 3 days on the environment details again. More specifically including everything that the artist made... because there's a lot. As you can see I'm still plagued with the line issues despite having a bleed over line of one pixel. Apparently 1 pixel just isn't enough for my hardware. Also think of this, things might look perfect for your system, but have lots of lines on other people's systems.

Another issue you may have noticed from screenshots is the fact that the blues are different, despite being the exact same blue. The amount of problems I've run into with this project has been staggering.
 
Visually it’s great. I want to see that penguin waddle.
* penguin trains hard on treadmills that maintain his speed *



I spent the day making a treadmill art and then making the treadmill keep the same speed as the penguin running on it. That way the animation loops better... if you ignore the tortoises.

TREADMILL

So I might as well talk about the treadmills. They will move anything on them to the direction and speed they're going. For the moment the speed and direction is random, with specific treadmills that will go the speed the player is to demonstrate the run animation. Most of today's session time was spent making the art itself. While my friend has made all other art, I made the treadmill art.

ISSUES

You may notice there's been no animations for the game yet. That's because you can see all the errors. You see the lines between the back wall tiles. You see the tortoise animation has managed to capture another sprite in the tilesheet. So wow 2 issues in 1 simple animation. Despite knowing ways to fix both issues, they have failed to be fixed. I have threads for each issue.
 
Last edited:
This reminds me of sonic 3, on the ice cap level, looks great!
I've considered making the penguin pink due to the Sonic similarities. Plus, blue on blue.

* penguin marvels at ordinary blue wall *



FIXES WITH ANNOYING ISSUES

It took 2+ months to fix one issue that caused a cascade of other issues. For whatever reason, the root of the problem was the texture page stacking sprites too close to one another. It caused lots of sprites to have another sprite mixed in with it. It also caused a shift of the background textures resulting in a line glitch when there would not normally be a line glitch. The line glitch is common depending on the hardware, but the common solutions did not work until now due to the entire texture page getting shifted.

Since yesterday was Wall Wednesday (on Monday) I made edges to the walls more jagged and less uniform.

I also notice that wow, yesterday had around 100 builds.
 
Last edited:
* penguin now runs free through treacherous environment *



A video of it:


A LOT OF FACETS

The reason why its not a game yet is this is all a bit up in the air. There are a lot of elements or variety to it.

Each map has a type:
* runner that forces the penguin forward
* standard that gives the penguin full control and the screen scrolls left and right
* standard that only allows the screen to scroll forward

After discussing the types, there are three modes:
* endless runner with random terrain
* challenge mode with several objectives across different maps
* 10 micro mode which is a series of 10 randomly selected micro challenges that last 30 seconds.

Some things may not make it into the final game once we hammer out what makes the game fun and what doesn't.

What you're seeing today in the .gif and video is a runner map type with random terrain set in a challenge to see if the player can slide for X amount of seconds.
 
* penguin romps in snow *



* penguin slides down icy slopes *



INCREASING THE FEEL

Surprisingly good day yesterday. Penguin now throws snow when penguin runs. Snow flies when penguin lands. There are even new jump wooshes and landing puffs that were added after this video. The penguin squishes down and out when landing. The menu was modified to shift and slide around with selections. The success / defeat text now hops every second rather than remaining static.

A BETTER PATH

The game feels better since making the jump shorter to 4 tiles rather than 6. With the shorter jump, everything in the game has been modified to make it still playable. All 230 terrains in the endless mode have been modified for the new jump. The 14+ challenges were modified and beefed up to be more like challenges rather than a testing ground. A new micro was added, making a total of 5 when the game needs at least 10 since its "10 Micro Mode."

HUMOROUS BUG FIXES

While play testing and working on the game for 8+ hours yesterday, I found and fixed some humorous bugs. The first was in a challenge where the goal is to simply collect the fish and get to the igloo. After the five fish are collected, the igloo door opens, but then if the penguin was eaten by a seal, it still counted as a victory. It was amusing.

The other fun bug was how with timed challenges where you need to survive X amount of time, the penguin can fail in defeat, but then if you stick around the defeated screen long enough the timer continued counting down and would result in a victory. I was amused.

HAPPY ABOUT THE GAME

Its been 4 months working on this game. 2 months of the artist's time at first and 3 months of my time. Over the past 3 months of working on the game, its just felt flat on my part. The game looked good, it just didn't feel fun until this week. I am finally feeling better about it. Its getting enjoyable to play while still having a challenge. Taking the risk to modify a lot of things paid off.
 
Last edited:
It looks amazing, it looks like it was actually made about 25 years ago, I would definitely play this
Thanks Joe!

* penguin encourages tortoise on the treadmill, before doing some laps *



* penguin collects fish to spawn platforms in convoluted way to make a bridge across spikes *



* penguin participates in micro challenges only to get devoured by a seal *



* penguin challenged to collect fish while dodging falling icicles *



NEW CHALLENGES

Seen up above are a few new challenges and a treadmill scene proving enemies can run on treadmills. The "icicle dodge 2" was enhanced to include a clock spawn when you're supposed to survive for 30 seconds, but you have less time than you need to survive. So you're forced to collect clocks. The actual icicle dodge challenge is one of the first challenges.

In another wild collect X amount of fish before time expires, its a humble, single screen with 2 enemies roaming around. It seems simple enough, until you consider the random placement of fish can get quite tricky.

The second image is a system that spawns the next platform when collecting a fish. This is basic at the moment and needs enemies or something to enhance it.

There are more new challenges, but for each new challenge, there's a micro twist for the 10 micro mode that makes for quick 30 second challenges.

Other than these new challenges and micros, the 230 pieces of terrain for the endless runner continue to be smoothed over like a sheet of ice. Play testing over and over will help increase the feel and find the flaws to trim out any issues.
 
Last edited:
I'm concerned,
Its a penguin game or not?

Cool artwork. Love the way you do the floor
At the current moment its a bunch of stuff. An endless runner, a bunch of challenges, a bunch of random micro challenges tied together with a map. There will be a game, I just don't know what it should be. From the sound of it everyone saying it looks straight out of the 90s, so maybe a game with levels might be what people want.
 

Orak

Member
Your game looks nice! I'd like to try it when you have a demo available. It has its own identity and i like that!
A gameplay based on different challenges seems to be a good direction to take
It would be great with a fun story that tell the adventure
 
Your game looks nice! I'd like to try it when you have a demo available. It has its own identity and i like that!
A gameplay based on different challenges seems to be a good direction to take
It would be great with a fun story that tell the adventure
There really is no adventure at the moment. Just a penguin collecting fish for its babies.

It will probably have a demo early in its life rather than later. I'd say its about 50% done right now. Normally, I start having testers play my games at 95% of the way through the game's development. Which leads me to the news:

4 TESTERS PLAYED YESTERDAY

I took their feedback, three of them had good feedback, one bluntly told me "game is boring, functional and doesn't have any bugs." With the feedback I enhanced the game, such as :
  • Pushing jump and holding jump as you fall will let you jump again.
  • Seal hit boxes were too big, which is true.
  • Player turns faster on the ground and turns instantly in the air. There's a turn animation for the penguin and enemies. The enemies still turn slow.
  • When the player jumps and bumps into a ceiling, the player now hovers for a bit.
  • Made the spikes stand out more by putting a dark gradient behind them.
  • Run and jump buttons are now confirm and back buttons in the menu rather than just enter and escape. It was like this for controllers, but now its like this for keyboard.
  • Added a health meter.
* penguin demonstrates new ability to hover when hitting a ceiling *



* penguin marvels at dangerous spikes *



* penguin slows down to read instructions *

 
* penguin hurdles for points and fish on more basic terrain *



* penguin reaches secret walls *



SECRET WALLS

I had secret walls lying around for a while now, but how does one put secret walls into an infinite runner? Sure there are challenges that let you have full control and that would make more sense, but yesterday I spent coming up with clever ways to have secret walls in the funner. What you see above is just a test of a few of them. Due to the secret nature of secret walls that I'm blabbing about, they are rare in the endless mode. They have a 10 in 250 chance of appearing and can only appear 1 out of every 5 screens.

Which leads me to the next part and that's the fact I made the terrain assembler less random and more specific. The more challenging terrains will be after the player has gone 20+ screens. The first few screens are relegated to some simple terrains to get people used to how the game controls.

BASIC = CHALLENGING

While making challenges and various terrain pieces, the more basic a piece of land is, the more challenging it is for the player. Well placed gaps and enemies. Although the enemy placement need a bit of tweaking since enemy types are random. It feels better because its simpler and more intense, because there's just more challenge per screen when you don't have to account for player climbing or dropping from heights.

These 20 basic terrains have their own challenge and they appear in the first 8 screens of the endless mode. After that, they appear once every 5 screens of the endless mode. I tend to enjoy the endless runner challenges in the game more when there are 20 terrains rather than the overwhelming 250 of endless mode.

While we're discussing difficulty, now that there's a health meter as suggested by one of the testers, selecting a higher difficulty means less health. Three difficulties that lower your maximum health.
 
it's lookin like a game.
great progress!
love penguins.
would def play this game.
Thanks! I'm happy you would play it.

* penguin enjoys sliding through ice blocks *



SLIDE UPDATE

Yesterday, the slide was tweaked with extra facets added. The penguin can now do a slide whenever and wherever by pressing down and the slide goes forward. The slide will break through ice blocks, which was always its real value. Being able to slide at any time will also prevent the penguin from getting stuck and allow for more map variety when it comes to the use of ice blocks.

With the freedom to slide at any time, there's a caveat of the penguin can only slide for 1/4th of a second. Then the penguin returns to its feet. To extend the length of the slide, the penguin can jump or break an ice block. Jumping will keep the penguin in the sliding position and reset the timer when the penguin lands. Breaking a block will set the slide timer to a full second.

The 1/4th second is a timing thing. The ice blocks become obstacles and the player has to time things to shatter them or get hindered by them. No damage is done for bumping into the ice blocks as its just not that sort of a runner.

Since the player can use these methods to keep sliding, the actual slide length is now kept and the player is rewarded of a score of X * Y seconds. Five or more seconds and the score multiplier jumps from 10 to 100. Suddenly the slide is much more engaging, fun and entertaining.

If at any time the penguin gets stunned from bumping into a solid wall or enemy, the slide length and its points will not be counted. Bumping into a wall after maintaining a sixteen second slide is still fun and you always have the ability to push up, down or back to end the slide.

The player can glide when using the slide in the air so that adds control to maintain the slide.

Going back to the jumping, the artist suggested we add something called "jump buffering" that lets the player push and hold jump before the penguin lands, which causes the penguin to jump again. I mention it, because while at the time I didn't feel it was useful, it does certainly help with the jumping within 1/4th of a second to keep the slide going.

POINTS POP UP

Also the points pop up. That was added back in. It was taken out a month ago in favor of the points being added next to the score to keep the screen neater. Since its been gone a month, I know I missed it. The interactivity of having points pop up to know when and you've earned points feels better.
 
Last edited:
* penguin enjoys new power ups and ignores new HUD *



* new font and placement tweaks *



3 POWER UPS


As the game pushes forward, three power ups were added to the game to spice things up. There was always a chili pepper that lets the penguin hop on enemies and jump through ice blocks. In addition, there is a fish magnet and a double fish on fish. With the original power up system with only allowed for one ability at a time, but now they stack with their own timers. Each one lasts ten seconds or that's the start. I can imagine upgrades being available in the game's store. In the endless mode these power ups appear every 5 screens. Outside of endless mode they appear where they're set.

NEW FONT AND TEXT PLACEMENT

I knew the game needed a new font. I like the old font I had constructed, but it was difficult for players and even myself to read at certain points. Also the text placement would overlap at specific moments. Its all been fixed.

The big question now is... should the scores get added to immediately when they happen or when the "plus score indicator" goes away?

OTHER MINOR TWEAKS

The penguin's hit box was pretty wide. It was wide enough that the penguin could hover off the edge of a ledge. So now the hit box is smaller and because of this the slope detection was altered. Nothing no one but me would ever notice. In addition the seal hit boxes are less wide. Spike balls no longer kill instantly. A lot of the chili pepper system was modified to be more consistent. You can still stop a saw jump by pushing up if need be.
 
Last edited:
* introducing a new co star... the game over screen! which is different from the success and defeat *



* a new record *



* goal menu found in pause menu *



* coins for goals, the coins fly from the check box to the coins *



GOALS


Over the past two days, goals have been added into the game. What are they? I'm taking a page from the book of a lot of games by having 3 random goals that can be accomplished in any mode. Once one goal is accomplished the player is rewarded with coins and a new goal takes its place. The next time that goal appears at random it will be more difficult with a higher reward. Its a good way to keep people playing and reward the player for playing.

Coins do nothing at the moment, but I figure making a shop will be next. The coins will most likely be used to purchase upgrades for the power ups as well as unlockable penguins. At the moment there are only four penguins.

NEW GAME OVER SCREEN

With the new goals, I should mention there is a game over screen that counts all the points for that run. Score, distance, fish, hop overs and longest slide all combine to make a mega score. The further distance and high score are kept for the endless mode. The challenge mode keeps high scores and fastest times for each challenge. The game over is different from the success and defeat screens of the 10 micro mode and challenge mode since there are victory conditions.

A HIGH JUMP TO SOLVE SLOW TORTOISE CLIFF PROBLEMS

When the player stands still for a second, the penguin has an extra high jump. This is to solve the problem that the tortoises are slow, so if the player is halted beneath a slow moving amphibians on a platform next to the penguin. The player would never jump into the hazard, so they wait an exorbitant amount of time for the enemy to march on. With this high jump the penguin can now launch higher to get over the problem. This should also make the non runner levels interesting as it gives the penguin a higher jump.

EVEN BETTER THAN WHEN THE TESTERS STARTED PLAYING IT

Some of the comments from the original four testers included the words boring or needs to be more action. I thought by making the game less threatening for the first few screens, it would give the player a chance to enjoy the game more. Well I trashed that mindset a few days ago, threw the penguin into the hostile end of the tundra. Then changed the slide, added goals and made the terrain simpler so more hazards could be introduced. Its gotten a much better response from the testers to the point where the endless mode was the worst mode, but now its simply the best.
 
Last edited:


* penguin does well in the tutorial training ground *


TUTORIAL TRAINING GROUND


Since the game has grown into a game, its gotten bigger and the simple run and jump mechanics have gotten beefier. So in tern, to teach the new testers, there needs to be a tutorial training round. The majority of the weekend was spent making the tutorial. A twenty screen system with about 16 specific things the player needs to do. Since its a runner, if the player fails one of these specific things, the specific thing will loop over and over until the player gets it right. If the player dies, the player respawns with a three second countdown which is a new system. The old system for player respawn used to dump in the penguin from the sky.

The tutorial is simple enough, but the stumbling issues might be the slide and glide. Otherwise, everything else should be self explanatory. The stop hop needs a bit of explanation and example. Forcing the player to stop for a second lets them jump higher. This happens whether the game type is a runner, a forward only or standard map. Everything is explained and even though the penguin is on the move, it should still be safe enough to keep reading the explanation. For each specific thing the player is required to do, there's a buffer screen. If the player has to repeat the specific thing, there's another buffer screen.

Another reason for the tutorial is the testers always tried to stomp the tortoises. These amphibians are wearing spike backpacks, but I suppose the spikes could be more define. Anyway, the tutorial points out that wildlife is a hazard.

To get to the tutorial, its found in the "play game" section of the title screen along with the three other modes. To encourage players to play the tutorial, the challenge mode and 10 micro mode are disabled until the tutorial is complete. The tutorial counts as a challenge, but cannot be found in the challenges. Since the tutorial spoon feeds things, the goals are disabled.

STATS SCREEN

Before the tutorial training ground came the stats screen. A quick little screen that has plenty of statistics without going overboard. You'll find play time, highest score, furthest run, furthest slide, fish total, coin total, blocks broken and challenges completed. To make this screen more desirable to visit, all these scores blend together to make a mega score tally at the end. Thanks to the play time, I know that I played only the tutorial training ground for 3 hours this weekend and its only a minute long tutorial when you speed run it.

10 MICRO MODE TWEAKS

The testers like the 10 micro mode... and so do I. It was a good idea of the artist. So the 10 Micro Mode has been moved up on the "play game" menu to below endless mode and above challenge mode. A few of the challenges were tweaked, but mostly the helper text was modified to be a bit more comprehensible. The mode was done in a rush and then my attention moved on. With these simple little tweaks, it helps the player understand things. Oh and now there's a way to get back to the title screen once you're finished without having to "abandon 10 micro mode." That was notably confusing to players.

Beyond those three major things there were a lot of minor tweaks here and there.
 
Last edited:
this is so satisfying to watch :D good job on the ice breaking and coin animations
What does a 500 lbs polar bear do? It breaks the ice.

Thanks for the satisfying to watch comment. Happy to find someone that watched the video. After less positive feedback from a different forum, I modified things to put people in less of a panic since the penguin is always moving in the tutorial.

Commence update!

* penguin gets chain of points for sliding beneath low hovering albatrosses *



* penguin dodges objects thrown by flock of albatrosses *



THE ALBATROSS

This feathered creature has been in the game long before it was a game. The albatross has now been dumped into the game with several variations: the hover, the vertical, the clockwise and counter clockwise. Oh but wait, there's more. Now the game has invisible tracks and since albatross or any enemy can be attached to the track to follow its path, that gives the bird even more mobility. The track pieces only go in 8 directions at the moment, so movement isn't as smooth as the clockwise circle.

Since the albatross can hover, that makes it the perfect foe to have the ability to throw things. Only specific colored albatross will throw things, but that should make this the most dynamic enemy in the game.

One of the reasons why the albatrosses were never a focus before now was they tended to get the sprite overlap glitch happening. With it fixed, they're free to fly high in the sky!

SLIDING SYMPHONY

The whole idea for the penguin game was sliding. Now that sliding feels good to do rather than difficult to achieve the game is on a roll. With albatrosses back into the mix as a common enemy, why simply jump over them when you can slide directly beneath them? The penguin can now slide beneath enemies and get points for the hop over bonus. The penguin is also smart enough to only stand up when its safe. So this overrides the 1/4th second slide rule.

To make it feel better, when you maintain a slide, the enemy bonus gets bigger when you hop over or slide under enemies. So if you're sliding for 30+ seconds, the score keeps going up. The audio pitch indicating enemy points also goes up until 1,000 points, then the pitch no longer increases. The points popup changes color for the increment. The points popup color also has a bit of variety now so its no longer exactly the color. This is helpful for multiple point pop ups.

Other than that, the points for breaking blocks goes up as long as you maintain the slide.
 
Last edited:
* visit the shop for penguins and upgrades *



THE SHOP IS OPEN FOR BUSINESS

Well, the shop is here, forcing players to purchase things. To play as penguins? Time to purchase. To have power ups? Time to purchase. The power ups can also be upgraded to level five. The higher the level, the longer the power up lasts. With the shop up and the ability to purchase things, the shop has been integrated to various places. Get a game over and the game will know you can afford something so it lets you know to check the shop. Selecting a penguin and want to purchase a penguin? You can do that from the selection screen.

Purchasing something showers the coins away from the coin indicator. Its been tweaked a lot and it might be tweaked even more as the top tier items need a lot of coins. The more coins you're spending, the faster they are lost. Hopefully seeing the coins alone will be worth the purchase.

MORE COINS!

With the shop using more coins, it was time to make other ways to give the player coins. The original method was accomplishing simple goals such as slide X amount of time, reach X distance, jump over X enemies and so on would get you 10 coins times the goal's level.

Now a game over / victory / defeat screen can give bonus coins to the player. At the moment, its used to reward the player with 100 bonus coins for finishing the tutorial, but in time it will be used elsewhere.

The player starts out with 100 coins, just to do something with in the shop. That may get changed as time goes on. Perhaps to 50 coins since the power-ups have a base price of 100 coins.

There are there are coins in the endless mode. Every 5th power up is a coin. Power-ups show up every 5 screens. As an incentive for the "double fish on fish" power-up, it will give the player double coins on contact with a coin. The big catch is the power-ups last for 10 seconds with an additional second per upgrade level, so it will be rare.

MEGA SCORE MODIFICATIONS

With the shop open for business, the stats screen has been modified to show how many items (penguins, power ups and upgrades) have been purchased. This results in a score multiplier for the mega score to make it worth the player's time to spend coins which are worth 10 points each for an item that now multiplies the total mega score to even bigger numbers. This makes it a better trade for the lost score of coins compared to what you gain in the mega score for having items. This new item replaces the blocks broken as that can be infinite since there are challenges to break blocks.

After this, its probably time to tweak a few things, fix some visual issues and then move on from the endless mode back to the challenges and 10 micro modes.
 
Last edited:
* penguin slide glides over seals while admiring new back walls *



* penguin glides through the air to notice no line issues with the ice pillars *



* penguin explores hastily thrown together icy igloos *



VISUAL ENHANCEMENTS

The past day or so has been about obliterating those pesky lines and visual issues caused with some hardware. While line issues were resolved with the back wall panels, there were several other line issues with slopes and the back ice crystals. The slope lines never showed as well as the issues with larger tiles such as the ice pillars and wall panels.

In addition to fixing long term issues, there is a greater variety of back walls when out in the open. This should give the game more texture when out in the open.

Trying to use all the tiles in the tileset Dante made back in February, there is now a greater variety of blocks in the game. Now I know how to better use them as terrain rather than placing them here and there. The screenshot shown above needs some work, but you get the gist of the blocks. There is still a lot more art to add.

MY OWN FEEDBACK

I'm probably bias, but this feels like an enjoyable and solid endless runner to the point it can probably go without the challenge mode and 10 micro mode. The weakest part of the game is now the strongest. The goals, power-ups and store help the game a lot. A lot of testers felt 10 micro mode is the strongest since its the most dynamic.

Beefing up the challenges and micros should be next now that the issues have all been worked out. Perhaps static runner levels will be good as well since most people feel the game needs some sort of adventure, campaign or story mode due to the fact that "endless runner" is a tough sell. Its easy enough to make levels with all the mechanics that are in the game. The backlash would be that its not enough to make a game to compete with grander games that have more enemies, more bosses and more environments.
 
Last edited:
* penguin wonders if jumping through flaming hoops will be worth it *



* penguin looks at mechanical snowmen and wonders to jump over or slide under *



MORE HAZARDS AND HAT TRICKS

Dante had more time to wrap up some art which included new enemies. Well hazards, its tough to consider static objects as enemies. Sure they can be attached to a track or something to move or even go vertical or horizontal, but at the moment, they're static hazards. The flaming hoop is difficult to get through. So difficult it will probably be relegated to the ground. The player gets points for going through, but also jumping over or sliding under like with typical enemies.

Meanwhile, the mechanical snowman, the player is forced to either slide under or jump over from a higher ledge. Jumping over knocks the hat off and the hat can be juggled for points. The hat physics will probably be modified and changed.

* penguin plays hat trick hop scotch for points *



* clever mechanical snowman hides behind this tree in a glitch *



* penguin looks at frozen food *



FROZEN FOOD

Sure the entire game is in a tundra, but now fish and power-ups can be found frozen in ice. Breaking the ice blocks immediately gives the penguin what's inside. This is to keep the game moving since the runner maps are tough to stop and collect something.

While the blocks can have set items within, there are also random items which has a 50% chance of being fish and the rest being divided among the other power-ups. There is new art for a few of the power-ups to replace my placeholder art.

If you're wondering why the penguin is more blue than usual, that's the charge jump activated.
 
THE EDITOR

I made it an entire week without a blog. That's because I made an editor for the game. It should be easy enough for Dante and I both to make maps and challenges. While a keyboard and mouse are highly recommended, there is full controller support for the editor.

While wrapping up the game by the end of May has probably gone out the window, this will result in more efficient map and creation while having more people making maps. We're still debating whether or not this should be included in game, because it opens up a whole new bag of worms and logistical issues.

Here is a video:


Here are some features that are typically in map editors:

Undo + Redo



Selection + Move + Clone



Move + Hide + Show the Object Picker Palette



Multiple layers + Different Objects to place for each layer



Editor Menu with map options



Load Files (not pictured) + Save As with name entry



This is my third or fourth side-scrolling level editor and while it only took a week, its by far the best. My OctorSpace editor is still better, but yet completely and utterly different, because this uses micro .png files for maps. Previous side-scrolling level editors were good, but had flaws. Such as only being able to edit levels rather than making new ones from scratch. There was also a burden from lots of tiles and objects, while this new editor is simple colors.

You'll also notice this marks the three-thousandth build for this game.
 
Last edited:
THE START OF MUNDANE UPDATES

Its been a bit of a dull half week. I've been smoothing out unseen and unnoticed issues while Dante is making more art. I spent some time on an enemy roll call as part of the credits even if there's no end to the game. The credits still exist, but this is just something more elaborate. Its also about time in the game's development to start making the "how to play" manual. There's an editor manual for the editor already that is 15 short pages long. I imagine the "how to play" manual will be larger, even if this appears to be a simple endless runner with a lot of extra frills.

MAP EDITOR IMPORT / EXPORT

The game's map editor has always saved and loaded files, but saves its maps into 4 files. Having 4 files seems a bit excessive to send someone else. So with the exporter, every bit of data gets packed away into a single file. Chances are this may become the method to save and load the files in general. Having text only maps is quicker to load the data, even if the data itself is larger than the .png map files that the map save will generate.

MORE COINS

In addition to completing goals for coins and finding a rare coin in the game, there are now bonus coins based on score. For each 1,000 points of final score, the game gives you 1 bonus coin. The goal reward coins have also been tweaked to be double the coins for every five levels. So by level 5 its 2x, level 10 is 3x, level 15 is 4x and so on. This is to counteract the fact that by level ten of a goal, the goals get daunting and the price of upgrades keep raising. This way eases the burden to those who are trying to get the maximum amount of upgrades even if upgrades are more of a subtle reward.

The stats screen now has a place for the highest score hold achieved. Score hold being points accumulated within a second of one another or sliding. This replaces coins on the stats screen and the mega score calculation.

I should point out that 100 bonus coins are given for completing the training and its been that way since the training course was made.
 
Last edited:
LOTS OF MUNDANE UPDATES

Its been another week, so its time to update everyone on the mundane stuff that's been going on. Lots of tweaks to enhance the experience. For starters, there are a few more settings from my previous games. Things like disable controller and configure controls (key rebinding).

CHALLENGE OBJECTIVE REMINDERS

When starting a challenge or micro challenge, both the objective and best record are displayed. The best record is either a score or time depending on the challenge. The victory or defeat screens also show your score or time and the best record for the challenge. These reminders also appear in the pause screen since there's not much happening on the right side of the pause screen. Completing a challenge takes you back to the challenge in the challenge mode menu rather than taking you to the first challenge of that mode's menu.





COIN COST SHOP TWEAKS

Since I've played the game literally hours each day, I've noticed the high cost of top tier upgrades. Even after tweaking the amount of coins given for goal completion and giving bonus coins for final scores after each run, the upgrade cost still felt high. It became quite a lot of effort to get to 2,500 coins... let alone 5,000 coins for the upgrade over it and then knowing there are 3 power-ups to upgrade. It becomes a daunting task even if the upgrades are never mandatory. Now the top tier is 2,500 coins. I'm aiming to let good players unlock everything at around the 3 hour mark. Since I've gone through the game so many times, I've tweaked some of the goals to be easier at higher levels.

A FEW NEW THINGS

In the game, there are a few new collectables. The ice cream and cake. The ice cream replenishes a heart of health and the cake gives the character full health. We all know penguins have three hearts, but the higher the difficulty, the less hearts. Having a method to regain health will benefit challenge maps.

Other than that, there are now outline fish and invisible fish. When these outlined and invisible fish are touched, they spawn a fish. This will be used more for the non runner levels as there's no way to turn around with the runner levels. There are also arrows to touch that will spawn fish in the direction of the arrows. Last, but not least there are secret squares that when touched will indicate that you've found a secret. This is helpful for the walk through walls in the game. Better yet, you get bonus points for touching the secret square.

HOW TO PLAY / GAME MANUAL

There is now a 2,000 word manual in the game that's about 40 topics long since the game resolution is so small. This is on top of the map editor manual. Since the game manual was made outside of the game, it was a daunting task to copy / paste everything into the game in a way that would be usable to the game. So instead, I took the lazy way out, by making an external manual.txt that gets loaded into the game and parsed. This makes things much easier to just copy / paste the manual into a .txt file, save it and done.

Now I need to dissect the map editor manual to put it into a map_editor_manual.txt file.





THANKS

Thanks for making it this far. In a previous blog here, I mentioned evaluating the game at the end of May to see where it was, because I was hoping to be done at the end of May. Well here we are... the end of May. I think June will be the final month of this project and focus on making the challenge maps and micros. The endless mode and training feel great to play, but now its time to make maps as we wait for the music.

The game still has no name.
 
THE FIRST CHALLENGE MAP

The game has had maybe 20 challenges for testing and experimentation * edit * (70 maps). Yesterday, I started using the editor to make the first challenge map. This will replace the original challenge map which had hundreds of fish and dozens of clocks. It could be completed in 7 seconds while this new map takes around 30+ seconds depending on the difficulty.

Due to the map options, the game can get 2 challenges out of this single map. With the first challenge using this map, the objective is to collect 50, 100 or 150 fish depending on the selected difficulty. The screen only goes forward, but the player has freedom of movement. This would look and play like a typical platformer level.

The second challenge shuffles each of the 10 screens of the map and shuffles the fish while turning the game type into a runner. Its a new way to play, its a new challenge and it makes an ordinary level into something different. When I say shuffling the fish, there are 2 types of fish. A or B. Depending on the map setting, the game will enable A fish to show, B fish to show, both A and B to show or none to show.

Here is the first map along with tweaks to the map options to get a second challenge out of it:


TWEAKS TO THE MAP MAKER

Using the map maker lead me to enhance the map maker. Now the user can use the selection tool to fill it with the current selected object. This should only make things more efficient for things that use a lot of the same object like the ground.

I put more focus into the game pad aspect of the map maker. The directional pad is now used to change the selected object from the object picker palette. The in-game map maker manual has been updated to reflect these changes. Like the in-game how to play manual, the map maker manual is now an external file that gets pulled into the game when necessary. Thus making it far easier for me to update and maintain synchronicity online and in the game.

The editor has more filler objects in the object picker palette. By filler I mean 4 ice stones, 4 mini ice stones, random ice stones, snow covered ice stones and so on. I call them ice stones as they're unbreakable, unlike the ice blocks which are transparent and can be broken. The ice stones and filler was tedious stuff to add, so I waited. To my knowledge this makes everything from the original map system can now be used in the map maker.

Other than that, the game now has a method that lets me take the created maps and turn them into official challenges far easier than before. The map maker lets me make challenges far easier when I can flip a few switches and save it. The game even generates descriptions and sets the maximum amount of screens.

Then I drag and drop the map files into an official folder. Its still a few steps, but far less steps than before which had me updating challenges by code, and copy / pasting map .pngs into the master map .png set.

Everything is streamlining.
 
Last edited:
* penguin looks at hideous contraption *



IN GAME ACHIEVEMENT SYSTEM

There are a few notable things with this update, but I'll start with achievements. The previous few games had their own in game achievement system and this one is no different. The system was tweaked from the previous games to pull in an external file full of the achievement names, descriptions, images, and codes for Steam and Google Play Services. Having an external file makes it easier to make and update achievements. It also sets the stage when the game goes to whatever platform its going to. I can copy / paste things from the external file into Steam or Google Play Services (name just rolls off the tongue).

My previous game Digging for Burgers pulled in an external XML file with Google Play Services achievement information, but that had to be updated and exported from the Android Play console. The Google Play Services generates a code for each achievement, rather than letting the developer assign their own code.

Back to the penguin game, when an achievement is earned a little drop down box appears for 3 seconds. The achievement popups wait for the previous one to disappear. This is a system back from Foxland, which oddly enough is now a year old this month. Most achievements are unlocked at a game over or in the menu. So far there are 35 achievements and 25 of them are generic and standardized. Like the unlocks, I'm aiming to have all achievements achieved within 2 or 3 hours.

With the in game achievements and other menu additions, it was time to streamline some of the extra menu items. Lots of things were scattered about. Things like reset data, credits and stats were in a few places. Now there is a special 'extras' section that will contain credits, stats, achievements, reset data, reset achievements and reset challenges. The three resets come in handy for testing purposes.

In Game Achievement Menu



MUY MAPS


The game now has 6 maps made with the map maker and a few new elements to keep things fresh from map to map. These six new maps replace the old placeholders used to test things. The maps look better than the test maps made with micro .png files. It takes about 40 - 80 minutes to make a map with the editor depending on the length of the level. This includes test playing. For the hour spent making maps, a lot of the challenges on an easy difficulty amount to 20 - 40 seconds of gameplay for me. This is of course the person playing them constantly. They feel smooth to play when I'm done with them and I hope they feel as smooth when I go back to play them in a week.

The following videos are a few map making sessions for 4 of the levels. I recommend against watching them as they are 40 - 80 minutes long. You may just want to skip through:





CHALLENGE & MICRO OVERHAUL

With new maps, I've started pruning the old challenges and micros. The game went from 65 test challenges to 25 challenges with 15 micros. These 25 challenges make use of the same maps, but with different objectives, game types and shuffling the screens of the maps. Its fun to find different combinations of things to compliment each of the new maps so they can be used a few times.

While the challenges for testing purposes have been pruned, they are still kept for me and Dante for testing purposes. This resulted in the need for challenge keywords to filter out the test challenges and the real challenges for players. This has always existed and always been an issue. The challenges are mentioned and counted in a few places. Even with scripts it was tough to get consistent numbers in various places. Its now been smoothed out to give consistent results, while calling up accurate data. That was another issue with the filters, inaccurate data was being pulled up from hidden test challenges.



THANKS FOR READING

As always, I thank everyone for making it this far. This forum makes my tablet crash out of its browser.
 
USING OLD ENEMIES IN NEW WAYS

Its been a few more days working on the mechanics and the editor. In this blog, I'll write about using old enemies in new and different ways for the sake of diversity.

FORWARD ALBATOSSERS

The Albatoss's have always thrown at the player. Well, that's not always fun or simple to dodge, so instead the Albatoss style Albatross now have a blue version that throws eggs forward in whatever direction they're facing. This gives them new purpose and an easier version. Speaking of an easier version... the chosen difficulty now affects the projectile speed and the the rate at which they're thrown. Its only a slight increase for the more challenging difficulties. The red albatross now travels in a circular motion whether clockwise or counter-clockwise.



LOTS OF WAYS TO USE STANDARD SPIKE BALLS

Standard spike balls have always been a simple hazard. They float in the air and they do nothing unless attached to a track. Now there are a variety of spike balls. Clockwise circle makes 10 appear and travel in a good sized circle. Counter-clockwise spawns 10 and makes them fly in a tighter circle as there's no real difference between clockwise and counter-clockwise if the circles are closed. Then there are the C formation spike balls that lets the player get to the center of them and exit out. Spike balls can also move using a new method that will be discussed in a later blog.



TORTOISES OF ALL COLOR

The tortoises are the slow, basic enemy of the game. Now there are four colors. Green shells go slow and pace back and forth along a platform. Blue shells will now go faster. Yellow shells will travel slow, but follow the player. I would say chase, but when the tortoise moves slow and the player can be gone in a second, there's not much of a chase. Last is the purple shell that moves slow, but falls off platforms rather than pacing. Rather than strain your bandwidth with animations, I'm sure you know what these look like.

SPIKE TRAPS & SPIKE STRIPS

Spike traps are set to go off when the player stands on them too long. Even when they shoot up, the player still has a split second chance to escape undamaged. As for spike strips, they're on a global timer that triggers them every X seconds. These both should offer some diversity and excitement to standard death spikes and death pits.

 
ENHANCING THE EDITOR

The game is up to 12 new maps made with the editor. There are around 40 challenges for the final game and 20+ micros. After each new map, I enhance the editor to include what I felt it was missing. Things like flood fill, visualizations rather than squares, arrow guides and a category palette. With these new editor enhancements, the map maker manual has bloated to 1,200 words. Everything is still easy enough to use a controller for the editor, but of course a keyboard and mouse is recommended.

CATEGORY PICKER

With more than 100 objects to chose from for the center layer alone, it was time to make a category picker. The category picker has a few categories and buttons. Solids, objects, misc, hazards, collectables and favorites. It also has buttons to test play, call the menu, erase and flood fill. Clicking on a category calls up the category. The favorites consist of anything you've used during that mapping session.

FLOOD FILLER

A few maps ago, the editor sure needed a flood fill system. It might be my fourth or fifth in-game editor, but this is my first flood fill. It was easy enough to make, but the catch was making it fast enough to be usable across 20 screens. The 20 screens across a map are a mere 540 pixels wide and 15 pixels high at the most. Its easy to just hold F and click the area to flood fill any area. The filler will only fill the maximum screens that you've already used, so if you're using only 1 screen, it won't fill all 20, unless you're using all 20.

The flood fill also works within the confines of a selected area. The irony of needing this so bad for one map and yet I have yet to use it in practical mapping yet.

ARROW GUIDES

In addition to the track system, there are now arrow guides that will let map makers set the starting direction of enemies. The arrow guides will also affect enemy and platform path. So if an enemy hits a left arrow it goes left. If a hovering enemy or platform touches an up or diagonal arrow it will go that direction. There is also a stop guide as well. Having the stop and arrow guides in general helped clean up a lot of redundant enemies. Like albatross's that go vertical, go horizontal and stay still.

EXPERIMENTAL VISUALIZATION MODE

To keep the editor moving as fast and smooth as possible, its just a series of colored squares on a grid. However, that looks dull, plus it gets confusing having so many colors so similar to one another. The visualization mode makes many things visual. Not everything, maybe 10 - 20 percent. This was a burden on the system, so it only refreshes a few times per second rather than 60 per second.
 
MORE HAZARDS!

That long span of no blog had me adding more hazards into the game. Something new for each level even if challenges reuse the same levels. The past few new hazards will probably be the end to the new objects for the game. It should be wrapping up in the next two or so weeks.

I have also been working on compressing the .gifs differently to get longer .gifs at less file size than before. They are of course smaller, which helps a lot.

SAWBLADE SAM

Saw blades are typical of the infinite runner genre and while there are plenty of enemies, the saw blade is here as a bigger enemy. It can be stationary, roll forward, move on a track, circle clockwise or counter-clockwise. Its bigger, so its more dangerous that most hazards.

* penguin moves cautiously through pesky traps *



BROK THE BOUNCER

Bouncing blocks are here and dull as you can imagine. They bounce. There are high bouncers and low bouncers. Thanks to the arrow guides they can be stationary, bounce forward and be attached to tracks. These are not in a level yet other than the testing environment. Their bounces are more airy to give the player a chance to go beneath.

* Brok the Bouncer blocks the way by bouncing *

 
Last edited:
MORE NEW LEVELS

The game is crawling up to more than 20 maps, 50+ challenges and 25 micros. For every difficult or challenging map, I follow it up with an easy map for the early part of the game. With each new map, something new is added to make for more dynamic levels.

THE MOTIVATOR

At the moment, the motivator is a series of four instant defeat saw blades that follow the player. There are objects that can turn them on, off or toggle them between the two. The motivator drags behind the player with the screen, so the player can never truly outrun it. If the player is too slow, the motivator will pull forward and get the player. At some point, I always wanted to have the polar bear chase behind the player, but the polar bear is too short and a wall of saw blades is more intimidating.



NEW OBJECTIVES

Depending on your Internet speed, you probably saw the penguin jump through hoops. There are two new objectives and one of which is indeed jump through X amount of hoops. This objective is used sparingly as its one of the more challenging things to do in general. The rings are tight, so you need to slide and glide your way through.

The other new objective gives the player more time to get to the igloo exit at the end of the level. The editor allows for 10 increments of an objective. The previous, small "under time" objective allows for increments of 10 seconds while the "under time macro" has increments of 30 seconds. This makes longer levels with igloo exits possible.

NEW WAYS OF USING OLD PLATFORMS

Before this, the platforms would hover in the air, stay in place or move on a track. Even with the track, this seemed limiting. So now, the arrow guides can control the platforms. An arrow guide beneath the platform will move it the direction of the arrow. If there is no arrow guide or track beneath to induce immediate movement, the platform stays in place as it once did. The catch now is when the player lands on one, it falls almost immediately. Once it falls off screen it respawns in a few seconds. This offers more diversity than there was before.



CIRCULAR PLATFORMS

The enemies can travel in clockwise and counter-clockwise directions and now the platforms can as well. This is something I've had in past games, but there is a new system for it that can keep enemies and players on top of them. There are pendulum platforms that swing beneath going back and forth to take the player from one place to another.

ACTIVATORS AND DEACTIVATORS

Its a good time to mention activators and deactivators. Everything in the game starts activated with the exception of pressure plate platforms that only activate when the player weighs down the pressure plate. With these activators and deactivators, they allow things to start in a deactivated state, so the player can use a pressure plate platform to start them. This solves a lot of redundancy issues of having so many similar platforms for the sake of the pressure plate system. Deactivated enemies do nothing until they are about to appear on screen. Its been helpful to avoid letting enemies get too far.

SOLID PLATFORMS

The previous platforms allowed the player to jump on them and let them move. This was well and good, but the testers wanted more. Solid platforms that could push the player and enemies. Solid platforms that become more of a danger to everything around them. They are something to scrape things off to the side or crush things beneath.



PLATFORM SPAWNERS

I failed to mention the game has platform spawners now. These spawners generate typical platforms. Better than that, they generate platforms as if they've been spawning them long before the player arrived. There is a lot of diversity with the spawners and the arrow guides, because the spawners make the platforms, while the guides control the direction they travel. It results in a lot of diversity.

ENEMY SPAWNERS

With platform spawners in the game as of a week or two ago, there needed to be more enemy diversity. Rather than having enemies travel on tracks or going back and forth via arrow guides, it was time to drop them in. Enemy spawners do the same thing as platform spawners, but with a bit more diversity since there are so many enemies and ways to use enemies.



WELL, THAT'S IT FOR NOW

Everything is still working in the editor and its been a great help to test, add and experiment with over the past month. I felt the editor would not be as quick as mapping with .png files, but I've been wrong. Now that I can get a lot more time from a different .gif compressor, I will go back and retroactively make new .gifs to replace old .gifs.

Thanks for reading.
 
The game has crawled up to 30 maps made with the editor alone and maybe 10 more previous to the editor. These almost 40 levels are used for 65+ challenges and 35 micros. The more challenging maps were a bit too rigid to be used to make micros, so I made new versions of the maps that could be used for micros while keeping the original maps in tact for the challenges. Its more diversity.

I've thrown in a few more maps that could be considered mini games while still maintaining the platformer element of the game. Since this is the later stage of making levels, a few of the neglected and rare objects have been put in to keep making levels feel special despite their horizontal limitations.

HOLLOW / SOLID BLOCKS

Like a lot of platformers, the penguin game now has hollow and solid blocks with different ways to transform them. There is a method to turn them on, turn them off, toggle them and set them on a timer to toggle them. The timer can be turned off with an object. These can all be triggered when the player runs past them. Pressure plates can also toggle them and have been able to do so for a week or so. Now the pressure plates can reset after five seconds to restore the hollow and solid blocks to their previous state. The stone blocks come in both mini and big sizes.

Here are demonstrations:





I'm surprised I managed to maintain the 1 new level per day for an entire month. Complete with something new and fresh for each level.

Making daily and diverse levels has helped a lot finding issues. Lots of the mechanics seem fine when made, but its only in practical use that other issues can be discovered. The in game mechanics should be all down now and I'm cutting off any further ideas to get the game done before another 6+ months go by. Sure there are other ideas, but its time to wrap it up in the next month or so.
 
Last edited:
OPTIMIZATION

More than a week went by, and all that time has been spent on optimization. My workstation runs the game at 60 fps with no drop in frames when the terrain texture is generated. However, I have three other computers that I need to get the game at 60 fps so I can be happy.

THE LAPTOP

This was the easiest, it had been stuck at 50 fps despite having real frames of 200 - 600. A month or so ago, I was able to get it to get up to 60 fps. However, with the terrain texture generation, it would drop to 53 fps for a split second. Even at a split second it felt noticeable, especially in a game that has a lot of speed. So I dug into the code and changed the time it takes to generate terrain. Due to the game's endless nature, it keeps placing screens and their objects, but due to the game generating the texture at random and the background objects at random, this caused the drop in frames.

First up was making the system load the next screen over 15 frames rather than a single frame. It was easy enough to do, and I had set up a system to do it in the past, but there were issues. The game keeps 2 screens on record, the screen that you're on and the screen that you're going into. Once you pass one screen, it is dumped and a new one is generated. Having a screen load over 15 frames resulted in missing textures for a split second, so now the game has three screens loaded at once with the new one loading in further away.

There was another issue with the three screen method and that's the tutorial, because it needs two screens always. The tutorial loops when you fail. If the tutorial tells you to jump two pits and you fail, it keeps looping. If there's a third screen, then you'd have to play through an entire screen before you happen upon the two pits again. With two screens and the second one loading in over 15 frames, it now loads in over 3 frames and this seems reasonable, because nothing complex is being loaded into the tutorial.

With the major issues smoothed out, the enemies and platforms are activated once the next screen is loaded completely. Shadow solids and disappearing / reappearing blocks were also set to be activated once the screen is loaded. Otherwise there were a lot of issues with some blocks disappearing while others were reappearing. Tracks needed to be loaded in a single frame before the screen was loaded, because they detect other tracks next to them.

After the laptop maintained 60 fps through the worst circumstances, it was time to move to the older PCs.

THE 5 YEAR OLD PC

Its only 5 years old, but wow there were problems with running the game. At first, the game crashed, due to the vertex buffer being too small. To get around this, I ensured each draw_point(), draw_rectangle() and draw_line() was replaced with 1 x 1 pixel sprites. It turned out to be much faster in general.

After that was fixed, the game took a long time to turn the .png map files to data. In previous games, I had something to do it automatically, so I did it again for this game. If there is no .map file, the game will take the .png files and make a .map file out of them. If the game's version is different from the .map file, it will generate a new .map file from the .png. This turns the wait of a few seconds on my PC and an exceedingly long wait on the 5 year old PC into the span of less than a second. It was only a one time load anyway and now its a one time conversion.

I had to make a bunch of new debugging options and put them into the console commands. There were already a handful of options, but now there are dozens more. This PC managed to run the game at 45 fps and even worse, during the menu and game over screens it dropped to 30 fps. Its all the text scripts and the backgrounds.

Excessive use of string_lower() creates quite a burden, so I removed a lot of string_lower() in favor of menu_lowercase arrays. That helped, but the big backgrounds were still a burden and there was little I could do. Another issue was the older PC has a 4:3 ratio monitor and the game was fully stretched to cover 100% of the screen. I made a toggle for wide screen or stretch in the settings. With the wide screen enabled, the game gets 60 fps easy, even in the menu and the game over. While I know people love to have things cover 100% of the screen, it seemed silly to allow people to use it since it creates a burden on the system.

More effort was put into getting the game to run at 60 fps with stretched full screen mode. The sprite fonts were remade to look taller, rather than stacking the text via code to look taller. With the game's HUD, text and fonts are used a lot during gameplay. While that helped, there was still a giant dip in frame rate when the game generated a new terrain texture. Instead of scrapping the generated terrain texture and going with a prefabricated one, I went with a risk to keep the texture as a surface rather than a sprite. There's a side effect though, going full screen to windowed mode destroys all surfaces, but I already had the system to turn shaders into sprites, so if the player goes windowed to full or back, the game will save the surface as a sprite and destroy the surface to keep using the sprite.

I should also mention the few shaders the game had used for testing purposes were garbled with this PC, despite its nVidia card. Like all my games, I cut the shaders out. Instead, I added some of my own scan line systems, which avoid shaders.

THE 10 YEAR OLD PC

This thing crashes if any shaders at all are used ever. Upon starting the game, it crashed without an error message. Turns out I was trying to use a surface that was too big for the hardware. I knew a 7,000+ wide sprite turning into a surface would be an issue, but I was lucky enough to have it work on 3 computers. After 5 - 8 hours, I remade a system to take that wide sprite, break it into pieces to fit a 1,000 x 100 surface like a grid rather than an array. I did this last, at first I disabled it, just to see if the game worked beyond that and sure enough, it worked beyond that at a blazing slow 8 fps.

After playing around with a lot of methods, I included a low quality detail mode which turns those 8 fps into 20 fps. These frames per second were in full screen. When the game was reduced to 1x size scaling it was at 60 fps, then at 1.5x it was 45 fps, at 2x it was 30 fps and so on. The game has always had V-sync, but disabling it didn't seem to help like it did the other computers.

What did help was taking the 2,000 x 2,000 texture sheets and setting them down to 1,000 x 1,000. A few things had to be halved to fit in the smaller dimension and I cut a bunch of unused sprites out of the game so they all fit better. Now it runs 60 fps at 2x the size, but in all honesty, I want to play it full screen at 60 fps on my 10 year old PC. At this point is when I remade the 7,000+ wide sprite to be on the 1,000 x 100 surface so the game can run as intended without anything being disabled.

The interesting twist with this older PC is the fact that the larger the size of the game window, the higher the real fps, but the lower the fps. I assume its a hardware thing.
 
MAP SHOTS

I made something to take screenshots of the entire map.





As you can tell its a little blue. The game has a setting to darken the background so its not as blue on blue, but anytime I use that for the entire map shot, the alpha tends to generate squares like a grid. Since the map shots are so blue on blue, I added something to change the background color to bring out night or dusk. It needs a bit of work to make it feel more like night, but here it is:



One of the interesting things with the map shots is depending on the level and the mode, the game can shuffle the screens and levels can loop infinitely. If they loop to infinity, such as in endless mode, the map shot will stop after 20 screens.

Take note that the maps loop since this game has different objectives beyond "get to the end."

The editor has made things a lot easier to test. Chances are the editor will be unavailable in the final version of the game. It would push development time further back and it seems unreasonable that the game will be released before August. Maybe the end of August?
 
A

Ankokushin

Guest
Dude, congratulations on your effort! What really impresses me is how much variety you managed to create in a scenery that is just...ice. You made all manner of ice and snow blocks, crystals, caves, aurora australis... it is really nice.
 
I had some new people test the game after someone had a lot of interest in one of the videos. He found a rare crash, so after 10 weeks of letting the project sit, I blew the dust off and spent a day fixing that rare crash and a few other rare issues that I found. The game is almost done and I'm uncertain what I want to do with it.
 
The game looks great! Highly polished with tons of content.

The game is almost done and I'm uncertain what I want to do with it.
Ummm...release it into the wild? I know it can be lot of work to properly get it out there, but the graphics are really eye-catching, might catch on with the retro crowd.

Is there any music/sound track? I didn't notice any in the videos I watched.
 
There is an original soundtrack, but it's always the last thing to happen in my games. At some point I spent money on sound effects. While they were an upgrade to what was there, I just didn't like them. I thought they'd grow on me, but nope.

I spent the past few days on and off searching for the rare crashes that were inconsistent to find while handing the game out to some new testers. The new testers told me what the old testers told me and that's the game is too hard with a keyboard. The runner mode isn't that hard with only a keyboard, especially since the keys are rebindable, but the game is more than a simple runner.

To encourage people to use a controller, the artist made this:

 
Top