.kkrieger - The FPS Game in 96KB (Full Gameplay)

Daniel Hands · 528K views · 2009 · 7:16

Open on YouTube

Demoscene & retrocomputingGame programming & enginesComputer graphics & renderingdemo

Why Hacker News recommends it

HN points to it as the standard example of procedural content generation and extreme size optimization in games.

What it is

Full gameplay of .kkrieger, a first-person shooter by Farbrausch that fits into a 96KB executable by generating its textures, models and sounds procedurally.

Recommended by 3 HN commenters across 4 different months, 2013 to 2026.

What Hacker News said

Strong rec fxtentacle · 2020-11 · on “Metaprogramming for Madmen (2012)”

Before you read the story, I suggest that you look at the result in awe: [this video] That whole game is 96k. Meaning it's roughly 0.07% of the size of an empty Electron app.

Recommends makmanalp · 2014-03 · on “Show HN: My Isometric Voxel Engine 6 Months Later”

Wow, great work, this reminds me of a lot of demoscene stuff where, when faced with space limitations, programmers aggressively used procedural generation combined with prerendering and caching. The most iconic example I can think of is .kkrieger, the 96kb first person shooter that has (relatively) amazing graphics: [LINK] Video here: [this video] There might be valuable lessons to be had in that domain that might save you some time.

Recommends makmanalp · 2014-05 · on “Metaprogramming for madmen”

This is an amazing insight into how demos are written. Farbrausch stuff has always been inspirational to me. It's very interesting is the sort of extreme version of the idea that data model and code are inherently tied: Especially in functional programming circles it's a maxim that you design your data models first, specifically for your task, and then the rest of the code is pretty much pattern-matching around that. This takes that coupling and makes it even tighter, to serve a higher purpose. I almost feel like given enough time, this could be a JIT: an executable that adaptively strips code and self-minifies over time as you run it. :) Also check out: - kkrieger (windows only 96kb 3D FPS,

Recommends sclangdon · 2016-06 · on “Source code for 4kb demoscene production “Elevated” released”

Although they generally didn't compete in the 4kb genre, Farbrausch open-sourced many of their demos and demo-making tools a few years ago [1]. fr-041: Debris [2], and kkrieger [3] (the 96kb FPS) are particularly worth checking out for the uninitiated. [1] [LINK] [2] [LINK] [3] [this video]

Cites estebank · 2013-03 · on “Simple Minecraft Clone in 580 lines of Python”

I still remember how I was blown away when seeing .kkrieger[1][2] for the first time, introducing me to the potential of procedural assets in games. [1] [LINK] [2] [this video]

Cites Jach · 2014-07 · on “Procedural Content Generation in Games”

My favorite example is the FPS .kkrieger ( [this video] ) which is entirely contained in a 96 KB EXE. Recently I learned the source for that (and other projects) was released a couple years ago, even if in a pretty messy state: [LINK] Skimming around I found this snippet at the end of chapter six. Are the authors even aware of .kkrieger? As we can see, all existing work on generating graphical game has targeted games in the style of classic arcade games and home console games from the early 80’s, or simple arcade games. There is still considerable work to be done here, and nobody has yet constructed a system that could generate novel graphical games of high quality, comparable to the novel high-q

Cites onion2k · 2020-10 · on “Top games from the JS13K 2020 competition”

A group of devs from the demo scene legends Farbrausch made a 3D FPS game in 96KB years ago that was seriously impressive. 3D games with procedural textures and shaders can compress very well indeed. [LINK] (gameplay video [this video] )

Cites Guest19023892 · 2022-01 · on “Nvidia tool generates full 3D models from a single still image”

Are you referring to procedurally generated content? [LINK] .kkrieger got a lot of attention for using this method and only being 96KB. [this video]