HTML5 and JavaScript Game Development Competition in just 13 kB

What is js13kGames?

Js13kGames is a JavaScript coding competition for HTML5 Game Developers. The fun part of the compo is the file size limit set to 13 kilobytes. The competition started at 13:00 CEST, 13th August and ended at 13:00 CEST, 13th September 2020. Theme for this year was 404.

Read GitHub's tips and tricks article, check the Resources for tools,
read the Blog, and subscribe to the Newsletter - good luck and have fun!



The competition is organized by Andrzej Mazur from Enclave Games.

Check out the winners!

Web Monetization category
WebXR category

Partners

eBay Tech Berlin Grant for the Web Quantum Game with Photons 2
GameSnacks Spartez
Facebook Gaming Game Distribution
Coil Mozilla GitHub

Supporters

AdinPlay
Poki CrazyGames


Share the love for HTML5 games and support the js13kGames competition!
See the Contact section for more details on how to get in touch.

Experts

Dann Sullivan

Dann Sullivan

Dann is the Editor of Pocket Gamer, Managing Editor for 148Apps and AppSpy, as well as the founder & Editor in Chief of Big Boss Battle (B3). He believes that curation and feedback can create a better, more fluid industry.

@FBFDann | bigbossbattle.com

Tom Greenaway

Tom Greenaway

Tom Greenaway is the gaming lead for Chrome and Web Developer Relations at Google. He's also a multi-award winning game designer having created Duet for Android and iOS which was downloaded nearly 20 million times worldwide.

@tcmg | duetgame.com

Josh Marinacci

Josh Marinacci

For over 20 years Josh Marinacci has worked as developer advocate, UX designer, researcher, engineer, and Twitch streamer. He has worked at such storied companies as Palm, HP, Nokia, Sun, and Mozilla. Formerly of Mozilla Mixed Reality team, currently looking for new XR related employment. Josh believes in the power of technology thoughtfully applied, and the need for better human computer interfaces.

@joshmarinacci | joshondesign.com

Pablo Farías Navarro

Pablo Farías Navarro

Certified game developer and Founder of ZENVA - the world's leading platform to learn game making, VR, data science and full-stack programming. Since 2012, Pablo has been developing professional-grade courses that have helped over 500,000 learn to code and make games.

@ZenvaTweets | zenva.com

Joep van Duinen

Joep van Duinen

Joep leads the creator team at Poki, the number #1 platform for play on web. Poki' on a mission to create the ultimate online playground: a place where kids of all ages and game developers come together to play and create. Reaching more than 30M monthly active users worldwide Poki is market leader on web.

They help a growing 300+ game developer community - including Kiloo (Subway Surfers), Hipster Whale (Crossy Road) and Colin Lane (Dunkers) to achieve success on web. Here's more information about how creators can get their html5 games featured on Poki.

@joepvduinen | poki.com

Spartez Team

Spartez Team

Maciej Szpyra, Paweł Skierczyński and Victor Debone. Developers during the day, gamers during the night. At Spartez, our personal passion for games is big enough that we bring a team to the jury. We are ready to play the games coming from 2020 developers 🕹🕹🕹

linkedin.com/company/spartez | instagram.com/thisisspartez

Ahmed Khalifa

Ahmed Khalifa

A game-AI researcher that is interested in automated game design and procedural content generation and a game designer ⁄ developer since 2005 creating more than 40 games on various platforms.

@amidos2006 | akhalifa.com

Nathan Lie

Nathan Lie

Nathan is a Software Engineer at Coil who considers himself a gamer first and an engineer second. He's been working with and on applications using Web Monetization for the past year, and is eager to see the intersections between Web Monetization and game design this year!

@feraltc | coil.com

Noël Meudec

Noël Meudec

Partner Engineer at Facebook since 2017, working mainly on the Instant Games platform. I am a movie and video game addict, secretly dreaming of becoming a movie director. I joined and co-organized quite a few game jams (Global Game Jam in Singapore in 2018, 2019 and 2020, etc.). I am always excited to see how talented developers manage to make gems from constraints.

facebook.com/instantgames

Fernando Serrano Garcia

Fernando Serrano Garcia

Worked on improving the WebXR content ecosystem at Mozilla Mixed Reality. Computer graphics and game development enthusiast, former demoscener focused on small size procedural intros.

@fernandojsg | fernandojsg.com

Yuriy Dybskiy

Yuriy Dybskiy

Yuriy is a founder of Puma Browser – mobile browser focused on seamless payments and data privacy. Previously worked at Lyft, Facebook, Meteor, Cloudant and a few startups as Developer Advocate ⁄ Engineer. Grew up in 🇺🇦🇯🇵🇨🇦. Lives in SF now, enjoys tennis, moto rides, park walks and games.

@html5cat | pumabrowser.com

Piotr Migdał

Piotr Migdal

Founder of Quantum Flytrap - a quantum lab right in your browser. A deep learning specialist with a Ph.D. in quantum physics (from ICFO, Castelldefels). Piotr works on AI for content design and physics engine optimization in ECC Games, and develops Quantum Game with Photons - an open-source in-browser game with real quantum mechanics. He has a passion for interactive data visualizations, explorable explanations. Piotr blogs about data science, programming, quantum physics, games, and... dating.

@pmigdal | p.migdal.pl

Anselm Hook

Anselm Hook

Anselm Hook does early stage product R&D. Work includes CTO of TokenIQ.io, R&D at 6d.io, R&D at Mozilla and Xerox Parc. He is currently building a web payments startup.

@anselm | hook.org

Michelle Mannering

Michelle Mannering

Michelle is a Content Producer in the realms of innovation and technology. Known as the “Hackathon Queen” 👑 you'll often find her on stage MC’ing or speaking on a range of topics from artificial intelligence, to business, community engagement, the future of work, and esports. With a background in both science and arts, Michelle has a passion for gaming and combines this with her experience in a range of industries. Michelle brings a unique insight into gaming and is a gaming journalist and Twitch Streamer too!

@MishManners | mishmanners.com

Winners (Overall)

CHOCH

3rd place CHOCH by kostik1337 & lampysprites

404kph

15th place 404kph by jaburns

    51-60. You've Bot Mail, In To Net Cafe, Shooty Alien Game, Lost Vision, 404 MISSION, Controls NOT FOUND, The Waffle, La Once, Magik - 404, The Unseen Network
    61-70. Bio-Server, NILO, Coler, 404 Box, Four, oh Four..., robots.txt, Try to be Not Found, Realm 404, P4ck3t, Forgetful God
    71-80. the internet is broken (again), Find the Papers, Clone not found, Shooooooot!!, Asteroid 404, Not Found, Cardice, Employee Not Found, The Machine, Soul Not Found
    81-90. 404 Repetitions, Universe Not Found, Planet 404, Music Memory, Signal Decay, 40Fighter, Status Code, Sniff your Game, HTTP Runner, Loot Not Found
    91-100. Feathers Not Found, Coding Golf - Broken Links, Raccoon Transport 404, Finding Paige, Players not found, 404 Princess, track 404, Dewdrop Farm, V-13K, 404 SECONDS
    101-110. House Not Found, ZigClimb Reborn, Jam Champs: 404 Princess Not Found, Kill.exe Not Found, Find All Pages, Planet 404 that is yet to be found, Adopt-a-Fire, BOXBOXBOXBOXBOX, Vote by Mail: Funding Not Found, Digicrush
    111-120. Planet Not Found, sam's js13k game, 404 laundry not found, Go Go Programming Dystopia, Four or FOUR, 404 Exit Not Found, POPULATION: 404, HTTP-HERO, The Colorful Journey, Hotel 404
    121-130. electron life simulator, Lost Pages, Exit Not Found, Galactic Communications inc., The Book of Pages Not Found, MegaFauna Not Found!, A0A, Car block 404, For O'Foughr, Lost In Space. Endless Destruction.
    131-140. Browser 404, Knights Quest, Can't find the page, !Found, Delete!, Beats Not Found, Going Home, The last Link, Lost and alone finding stuff, killing (laafsk), 404
    141-150. Dive and Pick, Inter Planetary Internet, BombRoll, Req N' Res, They will NOT FOUND me, ET Escape, Never Found, Asteroids, Information Super Highway 404, Request & Response
    151-160. M.Y.H.E.R.O., Can You Fix My Server?, Flour Oh! Flour, Red Billion, Friend of the Fallen, CosmoColonies, Black Jack 404, Tangletruck, 404!! Lost treasure, Gears Not Found
    161-170. Found bomb ?, Doors, Raiders of the Lost Page, Find the theme, ::FRIENDS NOT FOUND::, Teapot Not Found Poker, FX404Seconds, Frog Jumper, Boat racing 404, WinWin
    171-180. Logic Shooter, Space Shooter, League of Heroes, ROR, Time of enjoy, Robot Mission 404, Bolos The Dog, FileNotFound, Planetary — an starship fight game, mastermind
    181-190. Olympic Hide & Seek Retrospective: Atlanta 1996, Find an Exit, Packet Jumpr, Stolen Happiness, Tetris 404, 404! MissingPage, Asteroids404, 404 soccer, Bard's Fantasy, 404 Orbiting Asteroids
    191-200. MVLM, Code-Farm, 404ms, Arkanoid 404, Setlerio, Lost in Funland, Emoji Memory, 404: Search For The Missing Pages, Village Not Found - 404 to 200, 404 FlappingBird

Winners - Mobile

Winners - Web Monetization

Winners - WebXR

Exit

1st place Exit by James

ROAR

5th place ROAR by Staś Małolepszy (piesku.com)

Winners - Server

Super Special

Super Special is an appreciation of a given entry that was original,
unique and stood up from the others - handpicked by Andrzej Mazur.

  • 1. OS13k by KilledByAPixel
  • 2. ROAR by Stas Malolepszy (piesku.com)

OS13k is being awarded for the concept of managing trophies from other games,
ROAR for doing a WebXR entry in 13kb without any libraries.

Prizes

js13kGames 2020 t-shirt

115 × js13k 2020 t-shirt

One hundred js13kGames 2020 t-shirts (plus fifteen in the WebXR category) shipped worldwide for free.

Nintendo Switch

1 × Nintendo Switch

One Nintendo Switch gaming console, as part of the Web Monetization category.

Coil

Coil membership

Coil membership plans for six months each for every participant, as part of the Web Monetization category.

Playcanvas

10 × PlayCanvas account

Ten PlayCanvas Personal plans offering a cloud-hosted, collaborative platform for building games, for 12 months each.

GitHub

13 × GitHub account

Thirteen paid GitHub Pro plans - advanced tools for your private repositories for 12 months each.

Construct 3

3 × Construct 3 license

Three Personal licenses of Construct 3 game engine created by Scirra for 12 months each.

SitePoint Premium

5 × SitePoint Premium subscription

Five SitePoint Premium subscriptions for 12 months each.

Proto.io

1 × Proto.io account

One Proto.io account with Startup plan for 12 months.

devtodev

devtodev services

One $500 devtodev services credit, and free usage of the platform to all participants for 3 months each.

Zenva Academy

4 × Zenva Academy account

Four coupons for the access to the entire catalog of courses on Zenva Academy.

NodeBB

5 × NodeBB hosting

Five Hamlet hosting plans for 12 months each from the NodeBB team.

WebStorm

9 × WebStorm license

Nine personal licenses for WebStorm JavaScript IDE created by JetBrains.

Kendo UI

5 × Kendo UI license

Five licenses of Kendo UI for ASP.NET (MVC & Core), PHP and JSP with priority support from Telerik for 12 months each.

Aseprite

5 × Aseprite license

Five Aseprite animated sprite editor and pixel art tool licenses by David Capello.

GameDistribution

GameDistribution promo

Exclusive coverage of your game on GameDistribution, including exclusive-homepage promo spots.

Categories

There are five different categories, you can submit your game to any of them - it's up to you.
There are special pages for Web Monetization and WebXR categories if you want to know more.

Desktop category

Desktop

Full power of the hardware.

Mobile category

Mobile

Handheld touch devices.

Server category

Server

Node.js multiplayer.


WebXR category

WebXR

Virtual reality.

Web Monetization category

Web Monetization

Earn money.

Places

The first three categories (Desktop, Mobile, and Server) are voted by participants themselves separately,
while WebXR and Web Monetization results will be judged by the experts.

Desktop category (overall)

Top 100 games

  • 1st place: DevToDev, CodePen, SpriteStack, Kendo UI, Aseprite, WOWSound, Danger Crew, GitHub + Questocat, CSS Battle, js13kGames t-shirt + pen
  • 2nd-3rd places: CodePen, SpriteStack, Kendo UI, Aseprite, WOWSound, Danger Crew, GitHub + Questocat, CSS Battle, js13kGames t-shirt + pen
  • 4th-5th places: SpriteStack, Kendo UI, Aseprite, WOWSound, Danger Crew, GitHub + Questocat, CSS Battle, js13kGames t-shirt + pen
  • 6th-13th places: Danger Crew, GitHub + Questocat, js13kGames t-shirt + pen
  • 14th-100th places: js13kGames t-shirt + pen

Mobile category

Top 20 games

  • 1st place: GameDistribution, Construct 3, WebStorm, SitePoint, Phaser Editor, Build Arcade Games
  • 2nd-3rd places: Construct 3, WebStorm, SitePoint, Phaser Editor, Build Arcade Games
  • 4th place: WebStorm, SitePoint, Phaser Editor, Build Arcade Games
  • 5th place: SitePoint, Phaser Editor, Build Arcade Games
  • 6th-13th places: Phaser Editor, Build Arcade Games
  • 14th-20th places: Build Arcade Games

Server category

Top 5 games

  • 1st-4th places: NodeBB, Zenva Academy, CryPixels
  • 5th place: NodeBB, CryPixels

Web Monetization category

Top 15 games

  • 1st place: Nintendo Switch, Proto.io, Making Money with HTML5, Pyxel Edit, Coil membership
  • 2nd-5th places: Making Money with HTML5, Pyxel Edit, Coil membership
  • 6th-15th places: Pyxel Edit, Coil membership
  • 16th-all places: Coil membership

WebXR category

Top 15 games

  • 1st place: Magic Leap, WebStorm, PlayCanvas, js13k t-shirt + pen
  • 2nd-5th places: WebStorm, PlayCanvas, js13k t-shirt + pen
  • 6th-10th places: PlayCanvas, js13k t-shirt + pen
  • 11th-15th places: js13k t-shirt + pen

Rules

Package size below 13 kB

All your code and game assets should be smaller than or equal to 13 kilobytes (that's exactly 13,312 bytes, because of 13 x 1024) when zipped. Your .zip package should contain index.html file in the top level folder structure (not a subfolder) and when unzipped should work in the browser. Don't overcomplicate building the zip package, it should unpack on any platform without problems. You can use tools that minify JavaScript source code.

Two sources - readable and compressed

The competition is focusing on the package size, but learning from others is also very important. Please provide two sources of your game - first one should be minified and zipped to fit in the 13 kB limit (sent via the form) and the second one should be in a readable form with descriptive variable names and comments (hosted on GitHub).

No external libraries or services

You can't use any libraries, images or data files hosted on server or services that provide any type of data - for example Google Fonts are not permitted (although you are allowed to ask users to live-load a web font to support some characters or emoji on devices that can't display them properly, but you have to make sure your game will work without them). Analytics and other stat-collecting scripts are also not allowed. All the game assets should fit in the package size limit (the A-Frame, Babylon.js, and Three.js frameworks are not counted towards the size limit, but you can use them only in the WebXR category). If you manage to shrink your favorite library below 13 kilobytes including the code itself, then you can use whatever you want, just remember about the 13 kB limit.

Main theme

Main theme for the competition is announced on August 13th. It's highly advised to follow it in your game, because the judges will pay attention to that, but you can freely interpret the theme and implement it however you feel would be the best.

Deadline - 13th September 2020

The competition starts at 13:00 CEST, 13th August 2020 and ends at 13:00 CEST, 13th September 2020. No submissions will be accepted after the end of the competition, although there may be exceptions to that.

Licensing

You have to have the rights for every asset used in your game. Remember that the submitted games will be published and made available for everybody to see. On the other hand, you have the right to report any game publisher that will link to (or iframe) your entry on their portal without your permission.

New content only

Do not submit any old games or demos - you have a whole month to work on something new and fresh, this should be more than enough. Also, submitting Breakout or Flappy Bird clones taken out of a tutorial make no sense at all - try creating something at least a little bit more original. You can, however, use any available libraries and resources that are not yours, but you have the right to use them.

Errors and browser support

Your game must work and be playable in at least two browsers: latest Firefox and Chrome, but the more supported browsers, the better. There should be no errors - you can lose some points if your game is showing any errors in the console. If we cannot play your game, it won't be accepted.

Teams

It doesn't matter if you're working alone or with your friends, just remember that the number of prizes is fixed, so you'll have to share your trophies with your teammates.

Sending submissions

There's a special form to submit your game. Please remember that you have to provide two sources (see the Rule #2 for details) - a link to a public repository on Github and a zipped package. Participants are allowed to submit more than one game in the competition, though sending the same game as independent submissions targeting different platforms (for example separate builds for desktop and mobile) is forbidden.

Accepting submissions

Submissions will be checked manually and published after positive verification. This may take up to a couple of days, so be patient if your game is not yet online. I claim the right to reject any submission without giving a reason, although I hope I don't have to. I also have the right to update the rules of the competition at any time.

Time frames for voting, giving feedback, and announcing winners

The voting among the participants will last for three weeks between September 14th and October 4th, winners will be announced on October 5th. Experts will give the games constructive feedback (one per game) during the same three week period - their comments will also be published on October 5th.

Save data ⁄ persistent memory

Remember to add prefix to your variables and create a namespace for your game when you save data to localStorage as all the games on the server share the same memory when played in the browser. Also, be sure to NOT use localStorage.clear() as it will wipe out all the data of all the other games. Manipulate the data you are sure is yours.

Code of conduct

All participants and judges at js13kGames are required to agree with the following code of conduct. Organizers will enforce this code throughout the online event. We are expecting cooperation from all participants to help ensuring a safe environment for everybody.

Js13kGames is dedicated to providing a harassment-free competition experience for everyone, regardless of gender, sexual orientation, disability, physical appearance, body size, race, or religion. We do not tolerate harassment of competition participants in any form. Competition participants violating these rules may be sanctioned or expelled from the competition at the discretion of the competition organizers. TL;DR: Be excellent to each other. For more details see Berlin Code of Conduct.

Privacy policy

By entering your email address and sending a game through the submit form you agree to receive email communication about important events of the competition like announcing the winners or sending out the digital prizes, but also curated content from the partners about their tools, services, or job offers. I will never share your email with anyone though.

By submitting, you also grant the competition organizers the right to re-use the uploaded materials for advertisement of the competition in any form.

Frequently Asked Questions

Why exactly 13 kB?
Well... why not? :)
What's in it for you? Are you getting paid?
Nope, it's just my own idea and it's made for pure fun. I'd love to get a sponsorship though as I spent my own private money on the first edition to cover making t-shirts, shipping of the prizes worldwide, etc.
What does the "zipped" term exactly mean?
Sent package should be zipped with your usual system archiver, the only allowed extension is .zip. Let's keep it simple - it's a competition for coders and this should be your main focus, the code itself. Thanks to the zipped archive you will easily send your game and we will easily check the file size.
Can I use Flash?
No, you can code your game using only the open web technologies like JavaScript, HTML and CSS.
Can I use WebGL?
Yes, though it might be hard to fit it into 13 kilobytes if you plan on doing an FPS game.
Can I use CoffeeScript or TypeScript?
Yes, you can use it, but you can't submit it. Only JavaScript code will be accepted, so remember to have your compiled code within the 13 kB limit. This is to ensure that the submitted entries are an actual HTML page with scripts, not a binary.
Can I use WebAssembly and ⁄ or Rust?
Yes, after all those are web technologies, and can work well with JavaScript games if used properly.
Can I use compression through the self-extracting PNGs?
You can use it, but remember that the zip is as good, or even better in terms of compression than PNGs, so there's no point in doing so.
Do I have to register somewhere?
No, you just need to submit your game through a form when it's ready.
How many games can I submit?
As many as you want, there are no limitations.
More questions?
Send them in via email or social media or post them in the dedicated topic at the HTML5GameDevs forums.

Contact

If You have any questions or propositions please feel free to contact us via e-mail: contact@js13kgames.com.
The other options include visiting our profiles on Twitter or Facebook,
or joining our Slack channel and sending us the private message.