It’s that time of year where I use Halloween as an excuse to share even creepier open source (or “open source” in some cases) games for you to enjoy – games made in just a few days by individuals or small teams for game jams, such as Ludum Dare and JS13K. This post has games made with Unreal Engine, Unity, Godot, Phaser, JavaScript, Haxe, and, well, you’ll just have to read on to see what else.

As a child in the UK in the 1980s, I was an avid reader of magazines such as Amstrad action and Disaster and their great sections on cheat codes and pokes. There was no other feeling like opening a game’s hex code and changing a value to become invulnerable. I’ve tried to revive that spirit with some quick little hacks you can do to give yourself infinite lives, freeze time, etc.

While they might not all be the AAA games you’re used to playing, I can assure you they’re fun, have a lot of unique and interesting mechanics, and the source code is easy enough to understand.

I hope you enjoy reading, playing and/or hacking!

Hack time in Charon Jr πŸš• ⚰️

Collect payments from the dead and escort them to the afterlife in this crazy taxi ride previously run by Charon Jr.’s father. Just keep your eyes on the clock!

Hack: Need more time? Change the value for initialTimeRemaining on line #6 from hud.ts and you can go that extra mile for your customers corpses:

- private readonly initialTimeRemaining = 100;
+ private readonly initialTimeRemaining = 1337;

Now, who doesn’t love to hack the weather?!?

Time to hack hackers.

Put a spring in your step in Nighty Night, Nosferatu πŸ§›πŸ»β€β™‚οΈ β˜€οΈ

Screenshot of Nighty Night, Nosefaratu.

That really disgusting being a vampire – hiding in the shadows and sleeping all day. Help Nosefaratu escape his inevitable doom by avoiding sunlight and progressing from level to level.

Hack: Make this creature of the night a little faster by changing the value for player.speed on line 135 of props.js:

- "player.speed": [150, 1, 1000], 
+ "player.speed": [300, 1, 3000],

I love it when game developers add cheat codes or aptly named debug/god mode settings. Looks like @sartak he was already thinking about us line 147 of props.js. I wonder what changing this value to true will do!

Become fireproof in Smack Demon βœ‹πŸ½ πŸ‘Ή

Screenshot of Smack Demon

Smack Demon is a turn-based strategy game that pits you against an arsonist demon.

Hack: This game will piss you off every time you take burn damage, so you’ll be thrilled to discover that you can make yourself fireproof by removing or commenting line 119 of player.cs:

- health--; 
+ // health--;

That’s pretty lit!

Editor’s note: Lee doesn’t actually talk like that in real life; he just seriously overdoes the puns in the post. It can be said that he is suspended.

Pwn zombies in Curse of Infinity πŸ§Ÿβ€β™€οΈ 🍊

Screenshot of Curse of Infinity

In Curse of Infinity, a new curse is placed on you every 10 seconds – hordes of zombies, killer oranges (!), drought and famine. Very fun and very voxelish.

Hack: Find one of the curses too challenging? Just remove the call to GameOver() in the corresponding curse in GameManager.cs or in the collision code of Enemy.cs. For example, the following change of line 43 of Enemy.cs will make these zombies less bitey:

- GameManager.Instance.GameOver(causesOfDeath.zombie);
+ // GameManager.Instance.GameOver(causesOfDeath.zombie);

Bring some light to the world in UNDERRUN πŸƒπŸ½β€β™‚οΈ πŸ•·

Screenshot of UNDERRUN.

UNDERRUN is a twin-stick shooter in 256 shades of brown. If you suffer from nyctophobia or arachnophobia, then this game is probably not for you!

Editor’s note: We’re pretty sure Lee is showing it’s him knows look for some “big words”. Nyctophobia and arachnophobia are the fear of the dark and spiders, respectively.

Hack: Lighten up the environment a bit by updating the intensity value of line 14 of entity-cpu.js:

- push_light(this.x + 4, 4, this.z + 12, 0.2, 0.4, 1.0, intensity);
+ push_light(this.x + 4, 4, this.z + 12, 0.2, 0.4, 1.0, intensity/10);

Cheat death in CHOCH πŸ•· πŸ‘©πŸΎβ€πŸ’»

Screenshot of Choch

If you didn’t get enough spiders in the game above, CHOCH gives us one more – a tiny web robot that searches for a missing web page. Just watch out for sophisticated firewalls and intrusion prevention systems – they’re the same ones we use at GitHub!

Editor’s note: we checked the last statement. We use different security methods.

Hack: If you look gulpfile.js lines 11 and 18 you will see a DEBUG variable created, by default truebut is set specifically for false in the production. Do you think the same as me? Just run this locally or remove/update line 18 and you will be fast and invulnerable.

- DEBUG = false;
+ DEBUG = true;

Adjust your scope in Night of the Spook πŸ¦‡ πŸ€

Screenshot of Night of the Spook

Bats. Rats. zombies. Skeletons. This gem has just about everything. Armed with your trusty Spookbuster, you must banish the hideous creatures. There’s just one catch: your Ghostbusters-style proton pack only fires every 10 seconds.

Hack: Is your purpose not exactly what it was? Give yourself an absurdly wide beam by changing the value for baseSize On line 27 of Beam.cs:

- private float baseDamagePerSecond = 2.5f, baseSize = 0.25f, baseDuration = 1f;
+ private float baseDamagePerSecond = 2.5f, baseSize = 5.25f, baseDuration = 1f;

There are a few other values ​​in there that tweaking can produce funny results.

Slow things down in Ghosts, ‘n Vamps ‘n Skulls πŸ‘» πŸ§›πŸ»β€β™€οΈ πŸ’€

Screenshot of Ghosts 'n Vamps 'n Skulls

Call your warriors to order and keep them in formation to take care of the incoming spirits.

Hack: Is the game moving too fast for you? Slow things down by changing the value for fps on line #16 of fxj.js:

- var fps = 60, 
+ var fps = 20, 

I put myself. in the shoes of Jekyll and Hide πŸ‘¨πŸΌβ€πŸ”¬ πŸ”ͺ

Screenshot of Jekyll and Hyde.



A language for creating games

If you’re looking for a Jekyll and Hyde game, then you’ve found it! There’s no hiding from the fact that you have a serious darker side as you search through 15 levels of labs for a cure.

Hack: A little too violent for you? Try changing the sprites a bit. Turn blood into slime, or say a mad scientist with a knife into a Scottish mean man with a pickaxe computer scientist. I’ve always wanted to be in a game!

A static sprite of Mr HideGreen plus sign@leereilly's GitHub avatarRed equal signAnimated GIF of Mr Hide merged with @leereilly's avatar

Open your favorite pixel art tools like Piskel, Aesprite, or the built-in GameMaker editor. It’s easier than you think.

Screenshot of Piskel.

Make yourself invulnerable in Death Rider πŸ’€ πŸ’¨

Death Rider screenshot.

Everyone loves a good shot. In Death Rider, you control a shooting flying skull with a healthy appetite for souls.

Hack: Looking to become invincible? Try commenting lines 37 – 46 of Skull.ts and those bats and blocks won’t bother you anymore!

-    if (layer == 2) {
-        emit("bonk")
-        this.death()
-        if ( {
-            await delay(2)
-            this.start(
-        } else {
-            emit("death")
-        }
-    }
+    // if (layer == 2) {
+    //     emit("bonk")
+    //     this.death()
+    //     if ( {
+    //         await delay(2)
+    //         this.start(
+    //     } else {
+    //         emit("death")
+    //     }
+    // }

Kick ass in Tenjutsu πŸ’€ πŸ€›πŸ»

Screenshot of Tenjutsu

Speaking of skulls, kick the skulls off the baddies that just took over your Tenjutsu dojo. JUDO CHOP! whct-pssh

I’m afraid there are no hacks for the next three games. I think the difficulty levels are spot on for these.

Editor’s Note: We’re pretty sure Lee just ran out of time and wanted to post this before Halloween.

Intomb πŸͺ¦ ⏳

Screenshot of Intomb

You are resurrected, but to escape your tomb, you must go back and forth between the astral plane and mortality.

Stone relics πŸ§™πŸ»β€β™€οΈ πŸ“œ

Screenshot of Relics of Stone

Escape the seemingly endless stone prison with the help of a not-so-evil witch and some ancient scrolls.

“Jam code” usually gets a bad rap because it tends to be written very quickly, sometimes isn’t the most efficient, or has bugs. Fortunately, delivery is more important than code quality in game jams – you can always rework later.

Working with these games was a real pleasure. Jam code or not, they were all well organized with proper function and variable names – unlike my early Perl and PHP code – making it easy to tweak the game here and there.

Editor’s note: Lee speaks from experience here. We’ve seen his early spaghetti code with $X, $Y, $Zetc. Just terrifying.

Did you have fun hacking ⛏ these Halloween themed games? Would you like to try your hand πŸ”ͺ at building your own? Game Offour monthly game starts tomorrow. Join now!

GitHub Game Off logo.

13 tiny, terrific, and terrifying games to hack, slay, and play this Halloween πŸ§›πŸ»β€β™€οΈ