• Stars
    star
    267
  • Rank 153,621 (Top 4 %)
  • Language
    JavaScript
  • License
    GNU General Publi...
  • Created over 3 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A roguelike platformer with destructible environments in 13KB of JavaScript

Space Huggers - A JS13k Game by Frank Force

The empire is spreading like a plague across the galaxy and building outposts on remote planets. You are an elite rebel soldier tasked with wiping out those bases. Explore strange planets using your tools of destruction and eliminate the invaders! You have only 10 clones left, 3 more will be replenished after each mission. Good luck, have fun, and give space a hug for me.

This game is only for learning purposes and not intended to be redistributed!

PLAY SPACE HUGGERS!

OFFICIAL JS13K BUILD

VIDEO DEMO

How To Play

  • Use WASD or D-Pad - Move, jump, and climb
  • Z or Left click - Shoot - Most things will break, some will burn
  • X or Middle click - Roll - brief invulnerability, does damage, gives a boost, puts out fire
  • C or Right click - Grenade - 3 per life, use wisely
  • You can also use a Xbox or SNES style controller, connect up to 4 for co-op play!
  • Kill all enemies to complete the level
  • A radar along the bottom of the screen shows nearby enemies
  • You start with 10 lives and get 3 more for completing each level
  • For an optimal play experience please use Chrome in full screen mode
  • There is no end, but for a challenge, try beating the first 5 levels

Gameplay Tips

  • Roll to put out fire!
  • Rolling also does melee damage to enemies
  • Keep your distance from the specialists (white), they roll and flip often!
  • You can hold down jump to climb up walls
  • Jump flip to get more vertical height (roll immediately after jumping)
  • To reach really high places try a grenade jump!
  • You can press R to restart the game

Game Features

  • Run and gun / roguelike hybrid gameplay
  • 2-4 player jump in local co-op mode
  • Procedural level generation of great variety and complexity
  • Levels are fully destructible with persistence
  • Fire propagation and explosion system
  • 5 enemy types with a larger variant
  • 7 different crate/barrel/rock types
  • 17 sprite textures using a 12 color palette
  • Checkpoints can be captured for players to respawn there
  • Multi layer procedurally generated parallax background
  • Starfield simulation with moving stars, planets, and suns
  • Particle systems for rain, snow, blood, explosions, weapons, water and more
  • Native resolution rendering up to 1920x1200
  • 11 different sound effects with ZzFX
  • Up to 4 player co-op with 4 gamepads!

Engine Features

  • Custom game engine written during the compo is separate from game code
  • Super fast rendering system for up to 50,000 objects at 60 fps
  • Physics engine for axis aligned bounding box rigid body dynamics
  • Tile based rendering and collision system
  • Particle effects system
  • Input processing system for keyboard, mouse, gamepads, and touch
  • Math library with Vector2, Color and Timer utility classes
  • Audio with ZzFX has ability to attenuate sounds by distance
  • Debug visualization system not in JS13K build. (press ~ to enter debug mode)

Enemy Types

  • Recruit (Green) - A bit shorter, more hesitant, takes only 1 hit
  • Soldier (Blue) - Average height and ability, takes 2 hits
  • Captain (Red) - Can climb walls and jumps more often, takes 3 hits
  • Specialist (White) - Jumps and rolls often, they are ninjas, takes 4 hits
  • Demolitions Expert (Purple) - Throws grenades and can't catch fire, takes 5 hits
  • Small chance of a heavy weapons variation that has double health and fires full auto

Object Types

  • Plastic Crate (Brown) - Burns easily and breaks when fully burnt
  • Metal Crate & Barrel (Gray) - Is hard to destroy, can't burn
  • Water Barrel (Blue) - Puts out fires and pushes away objects
  • Explosive Crate & Barrel (Green) - Burns and explodes after a few seconds
  • High Explosive Barrel (Red) - Explodes quickly and much larger than normal explosives
  • Rock (Color Varies) - Heavy and very hard to destroy, can't burn, can crush enemies
  • Lava Rock (Glowing Red & Orange) - Anything that touches it is lit on fire

Tools Used

How to build the 13k Zip

  • Run engine\build\setupBuild.bat to install the necessary tools via npm
  • You will need: google-closure-compiler, uglify, roadroller, imagemin-cli, and advzip
  • Run engine\build\build.bat, to build app.zip which is the final result
  • It will also create a file called index.min.html you can use for testing
  • The zip size may vary by 20 bytes or so due to randomness of roadroller

More Repositories

1

LittleJS

LittleJS is a fast HTML5 game engine with many features and no dependencies. 🚂 Choo-Choo!
JavaScript
3,261
star
2

JSONCrush

Compress JSON into URL friendly strings
JavaScript
1,570
star
3

ZzFX

A Tiny JavaScript Sound FX System
JavaScript
574
star
4

OS13k

A Tiny OS and Mini Game Engine
JavaScript
523
star
5

HueJumper2k

2 Kilobyte 3D racing game in JavaScript
JavaScript
325
star
6

BounceBack

Boomerang Zelda Homage for JS13k
JavaScript
228
star
7

1Keys

A 1 Kilobyte JavaScript Piano
JavaScript
145
star
8

ZzSprite

Pixel Art Sprite Generator
JavaScript
137
star
9

ZzArt

Abstract Art Evolved
JavaScript
109
star
10

Dual-Axis-Illusion

Best Illusion of The Year 2019 - First Place Winner
JavaScript
102
star
11

TinyCode

Some of my best size coding releases
JavaScript
81
star
12

TinySki

Business card size skiing game in C++
C++
49
star
13

Drive13K

DR1V3N WILD - Arcade style 3D driving game in only 13 kilobytes
JavaScript
47
star
14

generative

Generative Art by Frank Force
HTML
20
star
15

NoteCraft

Cellular Automata Music Game
JavaScript
20
star
16

EggTimeRewind

An procedural shooter in the style of an old Nokia phone
JavaScript
18
star
17

FrankEngine

Game Engine and Level Editor
C++
13
star
18

newgrounds

A Small JavaScript Wrapper for Newgrounds API 3.0
JavaScript
10
star
19

Buddhabrot

A JavaScript Buddhabrot Renderer
JavaScript
9
star
20

VidScreen

VidScreen Emulator and Live Editor
HTML
5
star
21

EggTimeRewind13k

Egg Cracking 13k Lo-Fi Sci-Fi Shooter With Time Travel
JavaScript
5
star
22

LudumDare44

SPENDOTRON: 2019 - Twin stick shooter for Ludum Dare 44
JavaScript
3
star
23

KilledByAPixel.github.io

1
star