Skip to content

Releases: mafuzyk/kernel-panic

KERNEL PANIC 4.0.0 — Offline

Choose a tag to compare

@mafuzyk mafuzyk released this 19 Oct 18:58

KERNEL PANIC 4.0.0

Released 2026-10-19.

The system crashed. You didn't.

Release scope

  • Offline arcade Endless, Story and local Weekly play.
  • First-class controller navigation and a touch-native Mobile interface.
  • Large-text and accessibility options, localized player copy and safer Mobile layouts.
  • Deterministic replay/Watch checks, save migration/recovery and separate Player/Contributor builds.
  • Optional Linux Discord Rich Presence, off by default.

The accepted 4.0 soundtrack delivery retains 38 authored WAV stems. Hybrid Ogg/WAV conversion and advanced phrase/synchronization polish are deferred to 4.1; no completed conversion or seam qualification is claimed.

Official public rankings, server-backed submissions, downloadable ghosts, the canonical online update/manifest pipeline and Chaos are not part of this offline 4.0 release. Halloween content is not included in Player packages.

Legacy optional desktop clients remain: an update-version check (off by default, no binary download or replacement) and a user-configured board endpoint (off by default, no official server configured). Explicit board submission sends the selected name and recorded run to that endpoint; plain HTTP endpoints are not confidential. These optional clients are not an official 4.0 ranked service or automatic updater.

Platforms

  • Linux x86_64: portable tarball, AppImage and Debian package. Native artifact and automated runtime checks passed.
  • Android arm64: signed Player APK, Android 8.0/API 26 or newer, touch-device evidence. Android controllers are not verified.
  • Windows x86_64: release build under the Experimental / Best Effort support tier. A standalone .exe, a documentation ZIP and an optional per-user setup wizard are provided. Wine evidence is not native Windows validation, Windows Rich Presence transport is unavailable, and the setup is unsigned so SmartScreen may warn.

All Player binaries are release exports, not debug builds. Contributor packages are development builds and cannot submit competitive runs.

Verification and limitations

The exact offline source candidate passed 111 closure gates, including 9614 Desktop assertions with zero failures, eight explicit skips and no script errors or shutdown leaks. The physical Android Player update from 3.2 to 4.0 preserved the original installation identity and every original progression field; the owner confirmed touch gameplay, pause/resume, death/restart, navigation and audio. A bounded runtime log capture observed no script error or fatal exception.

The old Contributor harness reported one freed-instance script error in its enemy-death idempotency test; that is retained in the evidence and is absent from Player builds. Earlier diagnostic runs had intermittent UI failures/native crashes whose cause was not established; the final exact-tree run passed. The final run warned that a connected gamepad could interfere with synthetic input.

Windows real-machine testing and Android controller testing were not performed. No universal readability, performance or Android-version guarantee is claimed. Save data lives outside the executable/install directory; replacing a binary keeps it. Do not uninstall or clear application data to resolve a signing mismatch. The optional setup is unsigned.

Source and licensing

Source tag: v4.0.0. Kernel Panic 4.x is source-available under PolyForm Strict 1.0.0 with the additional permissions supplied alongside it. Historical 3.x MIT grants remain separate. See the included license files and third-party notices; source-available does not mean unrestricted redistribution of modified builds.

KERNEL PANIC 3.2.0 — Mobile, Accessibility and Quality of Life

Choose a tag to compare

@mafuzyk mafuzyk released this 17 Sep 16:46

Mobile gets its own interface. 3.1 was built PC-first, and it showed: the phone ran a shrunken desktop menu, with options that did nothing and controls too small to hit. This release is the repair — plus the accessibility pass that measurement turned into something bigger than planned.

The phone stops borrowing the PC's interface

  • Every option declares which platform it serves. Aim mode, haptics and touch size no longer sit in a PC menu doing nothing — effective_aim_mode() is only ever read by the touch controls, so those rows were decoration on a desktop. Keybinds no longer take a whole section on a phone. CONTROLS became the controls section of each platform.
  • Left-handed touch. BUTTON SIDE mirrors the entire layout: the move zone, the action buttons, the safe-area cutout they have to avoid, the patch dock that gets out of their way, and the onboarding labels that used to insist the left thumb moved when it no longer did.
  • BUTTON OPACITY fades the on-screen controls without shrinking what responds to your thumb.
  • Settings became a list you can read. Two columns — label left, value right — with a rule under each row, instead of a stack of loose sentences.
  • The touch controls are drawn, not pixels. Dash, boost and pause were the last raster icons in the game, stuck there because the icon library never learned to draw overclock or pause. They scale with the button size now.

Accessibility

  • FLASH: OFF / LOW / FULL. Nothing controlled light before. The full-screen white, the palette inversion mid-dodge, the damage distortion and the CRT flicker all answer to one setting. What informs you — the damage pulse, the low-integrity vignette — is never dimmed: trading information for comfort is not a fix.
  • Colour assist that assists. The old one made things worse. Measured against simulated protanopia, deuteranopia and tritanopia, its two palette swaps degraded 29 pair-and-deficiency combinations: with assist on, BULWARK and OOM_KILLER sat 0.009 apart in deuteranopia — effectively the same colour, for the people who turn it on. It is now a marker on all 23 entries instead of a recolour, because fourteen enemies do not fit on the axis a dichromat has left.
  • TEXT SIZE: NORMAL / LARGE / LARGER, across the whole interface.

Quality of life

  • Adjust without leaving the run. Aim, touch size, button side, opacity, shake and flash are reachable from the pause screen. Changing any of them used to mean abandoning the run.
  • In-game update check on desktop. It is a button, and checking on launch ships off — the game still contacts nothing on its own. It never replaces a running binary, and where a package manager owns the install it says so instead.

Fixed

  • Touch targets were half of what you saw. The action blocks measured 67px tall and responded in 35: the padding lived on the panel, and a panel shrinks its children — including the invisible button that receives the touch. Every screen was affected.
  • Two palette defects that hit everyone, not just colour-blind players. UPDATE_LOOP sat 0.004 from BULWARK under protanopia and 0.059 in plain RGB — two near-identical blues that share the Windows act. CRON sat 0.016 from a memory mote in deuteranopia: the enemy looked like the thing you collect.
  • The bestiary painted seven entries the same colour — GOD and all six processes added in 3.1 fell through to the default.
  • The top dead zone ignored the display cutout, so on a notched phone it disagreed with the pause button it exists to protect.
  • A key chip rendered as a hexagon: the corner cut was capped at half the shorter side, which on a 28px chip is 14.

Notes

  • Android is signed with the same key since 3.0.0, so this installs straight over 3.1.0 — no uninstall, no lost save.
  • Settings hidden on one platform are still saved: the game transfers progress between phone and PC, and lock-on aim configured on a phone survives a round trip through a desktop install.
  • Check what you downloaded. SHA256SUMS.txt covers every file here. The APK's signing certificate should read 9fd554575a253ba9a98fec403e45a72a8deb0b066ff70e505a60d6393fb45e31.

Autotest: 2746 pass, 0 fail, and the same suite passes from inside the shipped Linux binary.

KERNEL PANIC v3.1.0 — Expansion + Compatibility

Choose a tag to compare

@mafuzyk mafuzyk released this 17 Sep 00:21

Expansion + Compatibility. A fourth story act, a weekly that changes every week, a leaderboard that refuses to take your word for it — and three new ways to install the game on Linux.

3.0.0 sat in pre-release because four defects were still in it. They are fixed, and this is a full release.


Compatibility — it installs almost anywhere now

Before this, the game was a loose binary unless you were on Arch.

  • AppImage — any distribution. Download, chmod +x, run. Nothing installed, nothing left behind. 32 MB. On machines without FUSE, run it with --appimage-extract-and-run.
  • Void Linux — xbps, built from source. Void ships Godot 4.7.2 and its export templates at exactly the version this project uses, so the package compiles the game rather than wrapping a prebuilt binary, and it runs the game's own test suite as its check phase. There is also a script that produces an installable .xbps on the spot from a release binary.
  • Nix / NixOS — a real flake. nix run github:mafuzyk/kernel-panic plays it; nix build exports it from source with godot_4_7; nix develop hands you the engine and the export templates with nothing installed on the host.
  • Arch / Artix keep the two AUR packages, kernel-panic-bin and kernel-panic-git, both now at 3.1.0.

The dependency lists in all three are read out of the binary, not guessed. A Godot export links only glibc and reaches X11, EGL, ALSA, PulseAudio, dbus, fontconfig, libdecor and udev through dlopen — invisible to ldd, to xbps's automatic scan and to autoPatchelf. Each format declares them the way that format needs.

Expansion

A fourth act: macOS

/System, /Applications, /Library/Updates and kernel_task. BEACHBALL plants a spinning wheel that costs you time instead of health. GENIUS is a lancer that blinks to a better angle when you dodge too early. The act boss, KERNEL_TASK, flips the colour of the entire field mid-dodge while it prints its stack at you.

Story mode has something to chase

It used to be a list of waves — enter, kill, leave.

  • A voice. The process you are purging answers three times per stage, in both languages, with an arc across the four acts.
  • A target. Every stage publishes a time, announces its contract on the intro card — no damage, inside the time — and grades the clear S / A / B. Never a gate: a B still unlocks the next stage, and a lazier replay never downgrades a rank you already earned.
  • A build. Each stage issues its own, hand-picked and always the same. That is the opposite of endless on purpose: there the build is rolled and the roll is the game; here it is the premise.
  • A rule. Each stage imposes one of five field hazards: pools that bloom on their own, rings of orbs closing from the edge, a field that shrinks every wave, no integrity given back, or a cast that speeds up as the stage runs.
  • A reward. Clearing an act unlocks a field tint for the endless modes.

Three processes that change the rules, not the numbers

  • ZOMBIE dies into a <defunct> husk and comes back at half integrity unless a second shot reaps it in time.
  • CRON never attacks. It schedules, on a visible clock, and the cycle will not end while it lives.
  • SWAP drags you and the loose motes toward itself. Dash is the only thing that ignores the well.

Waves attack in turns

There is a ceiling on how many enemies commit to an attack at once, rising with the cycle and the difficulty; whoever misses the window keeps repositioning instead. Lancers and spewers lead their target now, by an amount that starts at zero and stops where dodging is still possible. And enemies no longer all orbit you on the same side — when you are pinned against a wall they converge on the side that cuts the escape.

Weekly changes every week

The week rolls two traits and its own enemy roster from the week number, announced in the menu before you enter. SWIFT, ARMORED, SWARM, ELITE, CRAMPED, NO DASH, GLASS, OVERDRIVE, FRUGAL, VOLATILE.

An optional weekly leaderboard

Self-hosted, and it does not trust anyone. You send the run's input — the commands, five bytes per physics step — and the server re-simulates the match with the game itself to find out the score. A submission claiming a score the simulation disagrees with is refused, and so is one with a tampered input buffer.

It ships switched off, with no server configured. Submitting sends your whole run and your name off your machine, so nothing is sent automatically and a run only travels when you press the button. With nothing configured the game is unchanged, and a board that is unreachable says so in one line. See server/leaderboard/README.md.

Fixed

The four that kept 3.0.0 in pre-release:

  • rm -rf / ends the run instead of freezing it. Typed in the pause terminal, it left the tree paused with the pause panel back on top of the ending.
  • Switching language stops resurrecting the old menu — and finishes the job. Closing settings brought back the old chrome and labels, and half the shell stayed in the previous language.
  • The Win11 stage stopped burning the eyes. Its field was blowing out to pure white at the centre. It is dark glass now, and every stage theme is measured so it cannot happen again.
  • The combat HUD takes the colour of the arena, and anything walking under a module shows through as a silhouette instead of disappearing.

And more found along the way:

  • The run clock ran on your frame rate. Story ranks are graded on that clock and the speedrun timer displays it, so both depended on your monitor.
  • Spawn timers ran on rendered frames, so how many physics steps fit inside a spawn telegraph depended on the machine.
  • On touch, dash and overclock skipped the point where a command is resolved — on a phone they would never have been recorded.
  • The six new enemies could not be logged in the bestiary, so clearing the whole macOS act left every new entry locked.

Notes

  • Android is signed with the same key as 3.0.0, so 3.1.0 installs straight over it and your progress carries forward — no uninstall, no lost save.
  • KERNEL PANIC stores progress locally and makes no network request on its own. The leaderboard is the only thing that ever sends anything, and it is off by default.
  • Check what you downloaded. SHA256SUMS.txt covers every file here — sha256sum --ignore-missing -c SHA256SUMS.txt. The APK's signing certificate should read 9fd554575a253ba9a98fec403e45a72a8deb0b066ff70e505a60d6393fb45e31 under apksigner verify --print-certs.

Autotest: 2492 pass, 0 fail, and the same suite passes against the shipped Linux binary, through the AppImage, inside the Nix sandbox, and from the .pck the AUR source package builds.

v3.0.0 (pre-release)

v3.0.0 (pre-release) Pre-release
Pre-release

Choose a tag to compare

@mafuzyk mafuzyk released this 13 Sep 10:08

Pre-release for tester validation. Do NOT treat as final until tester gates pass.

Artifacts (frozen tree):

  • Linux x86_64: kernel-panic (PCK embedded)
  • Windows x86_64: kernel-panic.exe (PCK embedded)
  • Android arm64: signed with the NEW 3.0 key (original 2.5.0 key lost).
    2.5.0 users must uninstall + reinstall; migrate progress via
    Settings, save transfer export/import.

Tester checklist and gate report are in the repo under docs/superpowers/reports/.

KERNEL PANIC v2.5.0

Choose a tag to compare

@mafuzyk mafuzyk released this 29 Aug 18:08

The tactical UI and story content release. Every screen in the game got rebuilt under one visual system, and the game grew three story acts. The arena is the same — the shell around it is new.

New Stuff

  • UNIX Act 1 story mode with fixed-stage routes: /boot, /var/log, /net, /mem, /quarantine and /kernel.
  • Windows story act with three eras: C:\98, C:\XP and Win11, including new threats — UPDATE_LOOP, BLOATWARE, and destructible POPUP orbs.
  • TempleOS bonus act: TempleOS::BOOT and TempleOS::GOD in a compact rainbow arena with a holy CRT treatment.
  • Story progression across the acts: stage intros, fixed stage waves, individual stage records, and ROOTLET unlock progression.
  • Pause terminal diagnostics. The pause terminal now answers help, top, man, dmesg and sudo heal — plus the intentional rm -rf /, which does exactly what you think it does.
  • Desktop debug console: F1 opens it, F2 skips a cycle, F3 forces the ROOT split state, F4 clears combatants — and it exposes enemy and boss spawn controls for testing setups.
  • Speedrun kit. Speedrun HUD diagnostics, deterministic run information, achievement toasts, event-log reporting, and a death recap showing what killed you.
  • Portable save transfer. Export and import your records, story progress, bestiary entries, programs and achievements between devices.

Fixes

  • Escape pause handling restored, and escape navigation hardened across menus, including menu footer alignment.
  • The rebuilt pause panel keeps destructive actions (restart/abandon) clearly separated and confirmed, distinct from overclock input.
  • Pause and terminal layouts rebuilt responsively, tactical UI controls polished, and stateful surfaces verified.

Art & Sound

  • The full Tactical Kernel UI system, on every surface: main menu, settings, program selection, story selection, bestiary, combat HUD, patch cards, boss encounter HUD, pause, game over, and the diagnostic terminal. Deep navy-black surfaces, thin angular circuit frames, Orbitron headings with Share Tech Mono labels, and a semantic color code — cyan is structural, magenta means threat, lime means recovery, amber means warning.
  • Combat HUD framed. Integrity and core state upper-left, cycle and encounter title centered, score/combo plus a collapsible four-line event log upper-right, dash state lower-left, patch chips lower-right, boss health centered at the bottom. The arena center stays visually quiet.
  • Patch selection redesigned: cards state rarity, current level, mechanical effect, and important synergy/conflict; keyboard, pointer and touch share the same visible selection state.
  • Program selection as three comparison cards — KERNEL the balanced default, DAEMON the two-dash close-range snowball, ROOTLET the armored shield process.
  • Story selection as three act tabs (UNIX, Windows, TempleOS) with connected stage routes, stage detail panels (story copy, threats, wave count, klog, and a code-drawn arena preview), and explicit locked progression.
  • The terminal is a workstation now: wide layout with command history, command index, system status, and a persistent prompt.
  • Code-drawn semantic icons across the UI, plus refined neon chrome, score area, and settings sections.

Under the Hood

  • AUR packages: kernel-panic-bin and kernel-panic-git metadata updated for 2.5.0, and the packages made reproducible.
  • Tooling documented for the diagnostics/speedrun kit updates.
  • The automated harness now verifies stateful tactical UI surfaces.
  • The README updated with current 2.5.0 instructions and new fullscreen menu/gameplay screenshots.
  • Distribution: Linux x86_64 and Windows x86_64 release binaries embed the project data in one executable; the Android release APK is signed with the project's release key.

Downloads

  • Linux x86_64: kernel-panic — self-contained release binary.
  • Windows x86_64: kernel-panic.exe — self-contained release binary.
  • Android: KERNEL-PANIC-v2.5.0-release.apk — release-signed, arm64.

Full source changes are in the repository history between v2.4.7 and v2.5.0.

KERNEL PANIC v2.4.7

Choose a tag to compare

@mafuzyk mafuzyk released this 28 Aug 21:00

A one-bugfix hotfix for the DAEMON program, re-exported everywhere.

Fixes

  • DAEMON's dash loop is capped. The program now has two consecutive dash charges, then restores one charge per cooldown — before this fix the aggressive momentum loop could run away with itself.
  • The Linux and Windows desktop exports are refreshed as self-contained all-in-one binaries, and the signed Android release/debug APKs are updated.

Downloads

  • Linux: kernel-panic (release) or kernel-panic-debug.
  • Windows: kernel-panic.exe (release) or kernel-panic-debug.exe.
  • Android: KERNEL-PANIC-v2.4.7-release.apk or KERNEL-PANIC-v2.4.7-debug.apk.

KERNEL PANIC v2.4.5

Choose a tag to compare

@mafuzyk mafuzyk released this 28 Aug 20:50

Small packaging release with one big quality-of-life change for desktop players.

Under the Hood

  • Linux and Windows desktop builds are now self-contained: the project data (PCK) is embedded directly in the executable. One file per build — no more keeping a .pck sidecar next to the binary.
  • Version bumped to 2.4.5 across all exports.

Downloads

  • kernel-panic / kernel-panic-debug — self-contained Linux x86_64 binaries.
  • kernel-panic.exe / kernel-panic-debug.exe — self-contained Windows x86_64 executables.
  • KERNEL-PANIC-v2.4.5-release.apk / KERNEL-PANIC-v2.4.5-debug.apk — Android APKs.

The desktop builds are all-in-one now. Debug builds are intended for development/testing.

KERNEL PANIC v2.4.0

Choose a tag to compare

@mafuzyk mafuzyk released this 28 Aug 20:23

The AI, onboarding and desktop QOL update. Enemies learned roles, bosses got fairer, the bestiary got smarter — and Windows builds exist now.

New Stuff

  • Enemies think in roles now. Melee packs (DRONE, LANCER, SPLITTER, BULWARK) approach with lateral bias and early separation, so groups stop stacking into one blob. Ranged enemies (SPEWER, ranged bosses) hold a distance band, retreat when you breach it, strafe between telegraphs, and brake in place while telegraphing so the warning stays readable. TROJAN places corruption zones across your likely routes instead of chasing your centerline. OOM_KILLER no longer gets trapped inside enemy clusters, FIREWALL anchors outside your immediate space, and RECURSOR stalks from an offset instead of beelining at you.
  • SPEWER uses cover: with a BULWARK roughly between it and you, it biases its position behind or beside the BULWARK.
  • Elites got personality. Swift elites steer harder and re-enter attack state faster; volatile elites pulse visibly before their six-orb death burst, so the hazard is legible before contact.
  • Tactical teleports. RECURSOR and boss teleports score destinations against your aim and movement, preferring flanking sides or your blind spot — never on top of you, with a safe fallback when you have no heading.
  • The first ROOT split is one encounter now. The split triggers once at half HP, fragments fight like Lancers with a reduced ROOT burst, and the whole thing counts as a single boss: one card, one heal, one RECOVER, one unlock — issued after the second fragment dies. The HUD shows the fight as one combined ROOT.exe // FORKED block with MINI-A / MINI-B bars.
  • Boss variants got bestiary entries. ROOT.exe, SEGFAULT, BLUE SCREEN and PAGE FAULT each have their own record with threat and counterplay. All bestiary entries also unlock on first sight now, not first kill.
  • Color assist mode. A persisted, colorblind-friendly high-contrast palette plus code-drawn S/B markers for the ambiguous pair SPLITTER/BULWARK (markers supplement the silhouettes; no gameplay changes). SPLITTER and BULWARK also got clearly separated hues in the standard palette.
  • Patch tooltips. Hover (desktop) or hold (touch) a HUD patch chip to see its full title, level, description and SYNERGY/TRADEOFF notes — like the HEAVY vs SPLITSHOT fire-rate tradeoff. Unknown combos honestly report "no direct interaction".
  • Desktop key remapping. Rebind movement, dash, overclock, pause, abandon, mute, restart and confirm in settings, with duplicate rejection, Escape to cancel and a RESET KEYBINDS button.
  • Program selection panel. A proper panel explaining each playable program's stats, mechanics and tradeoffs — and your active patches are explained in-game too.
  • First-run hints. Short, non-blocking, once-only: MOVE // WASD OR TOUCH, DASH // SPACE / SHIFT, SIDESTEP THE LINE, SHOOT THE ORBS DOWN, KILL IT AWAY FROM YOU.

Fixes

  • SEGFAULT corruption shots actually reach you now and resolve at your position or the midpoint — no more shots fizzling mid-air.
  • Boss cleanup is atomic; duplicate boss RECOVER drops and the double victory heal are deduplicated — at most one guaranteed RECOVER per boss fight and exactly one victory heal.
  • The ROOT boss charge actually applies its velocity (charges move now) and can no longer reschedule itself every frame.
  • Abandoning a paused run requires confirmation: E no longer abandons your run. Abandon lives on its own Q key and asks twice — PRESS Q AGAIN // ABANDON PROCESS.
  • The HUD dash readout reflects your real cooldown and charges (Quick Dash scaling, DAEMON's two charges).
  • Wayland is properly detected as a desktop display (helper covers Windows/macOS/X11/Wayland/embedded), fixing cursor and input handling there.
  • RECURSOR's teleport no longer errors at runtime, OOM_KILLER steals the mote it actually targeted, and the FIREWALL wall visibly rotates while respecting the global orb cap.
  • Touch fire and timing propagation fixed; the touch-size setting now also scales the movement stick, with identical normalized input.
  • Responsive combat UI: pause, game over, intro and patch panels follow the real viewport instead of assuming 1280x720, HUD bottom positions track viewport height, and everything fits narrow windows; the program selector stays responsive on touch.
  • Boss and enemy behaviors (PAGE FAULT shield rebuild, SEGFAULT wind-up, RECURSOR zones, FIREWALL wall ownership) are covered by regression tests and behave consistently.

Balance & Feel

  • Late waves speed up on a leash: a bounded cadence factor tightens enemy attack cooldowns from wave 6 onward, with a floor — telegraphs stay readable, and damage, HP and movement speed are untouched.
  • The simultaneous-enemy ceiling now ramps early and flattens at 10 (late waves used to reach 16) — fights stay tactical instead of turning into a swarm.
  • Elite SPLITTERs no longer multiply: their two child drones are explicitly non-elite, so one elite roll can't chain into an elite pack.
  • Patch offer cadence tuned and the boss-clear flow smoothed.
  • Lock-on is selectable in every mode again. The Weekly restriction is gone — it's an accessibility feature, and your saved preference is never touched.

Art & Sound

  • Music rework. The soundtrack is now three longer synchronized stems — 16 bars at 116 BPM (~33s per loop, four distinct sections each): an always-on menu/arena bed, a combat layer with syncopated arpeggios, and a darker boss layer. Same three-intensity crossfade system, much less obvious repetition.
  • Boot sequence overlay on launch, skippable with any input.
  • Bestiary cards are man pages now, with a THREAT value and a BUGS line ("segfaults reproduce. two of them.").
  • Stack traces on elite and boss kills — flavor text floats up, like segfault at 0xdeadbeef.
  • Terminal reticle on desktop with spread feedback that widens as you fire.

Under the Hood

  • Windows x86_64 exports exist now (release and debug), alongside the portable Linux builds and Android ETC2/ASTC texture import.
  • The automated harness gained deterministic probes for cadence bounds, steering profiles, teleports, the split encounter, keybind conflicts and tooltip hit-testing, plus fixed cleanup/timing so tests no longer leak nodes.
  • The README documents game installation and how to build from source on Linux.

Downloads

  • KERNEL-PANIC-v2.4.0-release.apk — production-signed Android APK.
  • KERNEL-PANIC-v2.4.0-debug.apk — debug APK for device testing.
  • kernel-panic / kernel-panic-debug + matching .pck — Linux x86_64 builds.
  • kernel-panic.exe / kernel-panic-debug.exe + matching .pck — Windows x86_64 builds.

Keep each executable beside the matching .pck with the same base name. Desktop debug builds are for development/testing.

KERNEL PANIC v2.3.0

Choose a tag to compare

@mafuzyk mafuzyk released this 26 Aug 16:51

The first big gameplay update: playable programs, two new enemies, a full boss rework, a recovery system, and one long list of bugs squashed. Same neon arena — meaner and fairer.

New Stuff

  • Playable programs. Pick your process in the menu: KERNEL is the balanced default; DAEMON (unlocks at cycle 5) trades range for a hot close-range fire rate, refunds dash on kills and carries two dash charges; ROOTLET (unlocks after beating a boss without taking damage) is slow, fires heavy shots, and swaps Overclock for a shield. Scores and saves record which program you ran.
  • Two new enemies. RECURSOR teleports in short jumps and leaves corruption pools where it was — pools mark the past, keep moving. FIREWALL anchors down and builds a rotating wall of orbs that disappears when it dies. Both have bestiary entries with counterplay tips.
  • Boss rework. New HP formula (120 + 42 per boss index) — tougher fights that are no longer damage sponges. ROOT.exe splits into two mini-ROOTs instead of dying at lethal damage; SEGFAULT gains a Lancer-style targeting line and a phase-two charge; BLUE SCREEN fires a Spewer-style orb fan; PAGE FAULT rebuilds its shield once at half HP with an obvious warning and two extra Pages.
  • RECOVER pickup. A green +1 HP pickup that the mote magnet will not pull in — you have to move. Drops from 8% of normal kills and 25% of elite kills, guaranteed at 50% boss HP (once per boss) and on boss death. Entirely absent from One-HP.
  • Two new RECOVER patches. RECYCLER adds +6% RECOVER chance per level; DATA LEECH makes elites always drop RECOVER.
  • New SCRAP DIET patch. Overflow motes (collected while the Overclock meter is full or active) bank toward a heal: 25 motes for +1 HP, 20 at level 2, with a HUD chip showing your progress. Also excluded from One-HP offers.
  • Heal telemetry. The game-over screen now summarizes your heals by source, like HEALS +4 (RECOVER x2, SCRAP x1, CYCLE x1).
  • HUD shows the build version, pause and game over show your program name, and bestiary entries gained counterplay tips.
  • Touch: the aim stick base is now anchored — it no longer slides under your finger mid-drag. Lock-on stays out of Weekly for now (temporarily reverts to stick/drag without erasing your saved preference).

Fixes

  • Saving settings no longer wipes your records and stats — the config is loaded before writing.
  • Wave 1 announcements now reach the HUD: spawner signals connect before the first wave starts.
  • VAMPIC could heal twice at combo x4 because of a duplicate combo_milestone signal — fixed.
  • Weekly Run is now fully deterministic: every gameplay-affecting random roll (spawn order, drops, mote positions) goes through the seeded RNG.
  • Touch dash goes through the same central dash logic as keyboard, so Quick Dash, Magnetic Dash and Phase Dash patches work from touch too.
  • Bullet spread is computed once — the visible bullet rotation and its actual trajectory can no longer disagree.
  • The high score reset clears the real Classic record (best_classic), and Touch Size cycles through all options instead of getting stuck on BIG.
  • The boss summon cap counts living summons, so summoning no longer permanently shuts off mid-fight, and the boss phase flash decays by delta instead of frame rate.
  • Mouse camera lean is disabled on touch, and adaptive quality now restores your tier when performance recovers instead of only degrading.
  • The menu version is driven by project settings — no more stale version strings.
  • Mote glow restored; mobile bestiary and menu UI stabilized.

Balance & Feel

  • VAMPIC now has a 10-second internal cooldown between heals, and its patch chip dims/blinks in the HUD while on cooldown — a no-heal never feels silent or random.

Art & Sound

  • The app uses the release launcher icon.

Under the Hood

  • MoteField rewrite: all memory motes render through a single MultiMesh — one draw call for the whole field instead of one node per mote. The main source of lag on mid-range phones is gone, and kill bursts are allocation-free.

Downloads

  • KERNEL-PANIC-v2.3.0.apk — production-signed Android APK.
  • KERNEL-PANIC-v2.3.0-debug.apk — debug APK for device testing.
  • kernel-panic + kernel-panic.pck — portable Linux x86_64 build; keep both files in the same directory.

KERNEL PANIC v2.2.0

Choose a tag to compare

@mafuzyk mafuzyk released this 25 Aug 19:04

First public release of KERNEL PANIC.

A fast neon arena shooter about keeping one stubborn process alive while corrupted daemons close in. Clear cycles, collect memory motes, charge Overclock, pick Kernel Patches, and fight a ROOT process every fifth cycle. No accounts, no ads, no energy system. Open it, hit PURGE, and try to survive longer than last time.

New Stuff

  • Three run modes: Classic is the full escalating run; Weekly Run uses a shared deterministic seed, so everyone faces the same run; One-HP gives you one mistake and no excuses.
  • Eight corrupted processes to learn: DRONE, LANCER, SPEWER, SPLITTER (splits on death), BULWARK (armored), TROJAN (leaves corruption pools), OOM_KILLER (steals your motes and runs) and PAGE — plus four cyclic boss encounters, one every fifth cycle: ROOT.exe, SEGFAULT, BLUE SCREEN and PAGE FAULT.
  • 17 Kernel Patches offered between waves — ricochet, heavy rounds, chain driver, system restore, the legendary Vampic Protocol and more — so every run builds differently.
  • Overclock meter: bank motes, trigger it for a burst of extra firepower.
  • Built-in bestiary documenting every corrupted process.
  • Touch controls: left side moves, right side aims and fires, with on-screen dash, overclock, pause and settings. Desktop: WASD + mouse, Shift dash, E overclock, Esc pause, M mute.

Fixes

  • The desktop mute key (M) reliably mutes the game.

Art & Sound

  • The neon look is drawn in code: the grid, ships, enemies, projectiles, hit effects, UI and boss telegraphs all come from GDScript systems instead of a sprite library.
  • Three music stems plus sound effects — 17 generated audio files in total, all synthesized locally and imported as plain WAV assets.

Under the Hood

  • Godot 4.7.2, mobile-first landscape design, arm64-v8a Android build.
  • Ships with an automated gameplay harness covering core combat, upgrades, bosses, touch controls and run flow (AUTOTEST_ALL_PASS).

Built on an Android phone with Godot and Termux. No root, no ADB, only stubbornness, dreams, and hope.

Downloads

  • KERNEL-PANIC.apk — signed release APK for arm64 Android devices. The game requests no network access and stores progress locally.