explaingit

coolythecoder/wbwwb

Analysis updated 2026-05-18

0C++Audience · developerComplexity · 4/5LicenseSetup · moderate

TLDR

A native C++ desktop port of the browser game We Become What We Behold, rebuilt with raylib or Vulkan instead of a browser wrapper, including a full settings screen and multi-language support.

Mindmap

mindmap
  root((wbwwb-native))
    What it does
      Native game port
      raylib and Vulkan backends
      No Electron or browser
    Tech stack
      C++
      CMake
      raylib
      Vulkan
    Use cases
      Standalone desktop build
      Multi language game
      Dual renderer study
    Audience
      Game developers
      C++ students

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build and run a lightweight native version of We Become What We Behold without a browser or Electron.

USE CASE 2

Study how to structure a shared game engine core that supports both a raylib and a Vulkan rendering backend.

USE CASE 3

Package a self-contained Windows or Linux executable of the game with its assets bundled in.

What is it built with?

C++CMakeraylibVulkan

How does it compare?

coolythecoder/wbwwbachanana/mavsdkalange/llama.cpp
Stars00
LanguageC++C++C++
Last pushed2024-05-20
MaintenanceDormant
Setup difficultymoderatemoderatemoderate
Complexity4/54/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires CMake and a C++ toolchain, Vulkan backend needs a compatible GPU and drivers on Windows.

Original game code and art are public domain under CC0, bundled third-party libraries keep their own MIT and Creative Commons licenses.

In plain English

This repository is a native C++ port of We Become What We Behold, a short browser game about news cycles and how sensational stories spiral out of control, originally made by Nicky Case. The original game runs in a browser, this project rebuilds it as a standalone desktop executable using raylib and OpenGL by default, with a separate Vulkan backend option for Windows. It does not rely on Electron, a bundled Chromium browser, or a JavaScript engine, so the packaged app is much lighter than a typical browser-wrapped game. The project is built with CMake, which downloads the pinned dependencies and compiles an executable that loads the same art and audio files already included in the repository. Builds are supported on Windows, including a separate 32-bit build path for older systems, and on Linux, with both Release and Debug configurations available. A convenience batch script is included for the 32-bit Windows build, and the project can also be packaged into a self-contained output folder with the executable and its assets together. The native build reimplements the full game experience: the intro quote screen, the core photo and television gameplay loop, the escalating panic sequence, the credits, and a post-credits scene, along with audio playback and animated art. It adds a native settings screen covering audio, display, and visual options such as resolution, VSync, scanline and CRT-style filters, brightness and contrast, and a frame rate counter, all saved to a local settings file. The interface text is translated into English, German, Brazilian Portuguese, and Turkish, with a template file provided for fan translators to add more languages. All of the original game's own code and art are released into the public domain under a Creative Commons Zero license, so anyone can remix or reuse them freely. The project does credit the third-party pieces it depends on, including the PIXI.js and Howler.js libraries used in the original web version under MIT licenses, and a long list of individually credited sound effects sourced from Freesound under various Creative Commons terms.

Copy-paste prompts

Prompt 1
Walk me through building the raylib version of this project with CMake on Linux.
Prompt 2
Explain how this project switches between the raylib and Vulkan render backends using WBWWB_RENDER_BACKEND.
Prompt 3
Show me how the native settings screen saves display and visual options to wbwwb_settings.json.
Prompt 4
How would I add a new fan translation using the translations/template.json file in this project?

Frequently asked questions

What is wbwwb?

A native C++ desktop port of the browser game We Become What We Behold, rebuilt with raylib or Vulkan instead of a browser wrapper, including a full settings screen and multi-language support.

What language is wbwwb written in?

Mainly C++. The stack also includes C++, CMake, raylib.

What license does wbwwb use?

Original game code and art are public domain under CC0, bundled third-party libraries keep their own MIT and Creative Commons licenses.

How hard is wbwwb to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is wbwwb for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.