Experimental AI Projects

EndlessMaze

A modern port of AMAZING—Jack Hauber’s maze generator from David H. Ahl’s BASIC Computer Games (1978). Same mazes seed for seed, then a graphical view, a teletype view, and a 3D walk.

Desktop · Unity · Quest

Keep the 1978 Maze. Change How You Stand in It.

The original asked for width and length, then printed a unique path on a teletype. EndlessMaze keeps that generator—SplitMix64 so a seed is the same maze on every machine—and wraps it in a WinForms app, a Unity first-person walkthrough, and a Quest 1 view of the current maze.

What Ships in the Core

Phase I is a .NET library and Windows desktop: AmazingCarver, wall geometry, session/cycle, a walker, and a MazeDocument JSON handoff. About 360 tests. You pick width and length, pin a seed, overlay the solution, or run endless mode that carves the next maze on a clock.

Two looks sit side by side: clean vector walls, and the original .:-I (or modern +--|) glyphs on green-bar paper. Animate mode digs cells in the 1978 visit order while the teletype types.

Walkthrough and headset

Unity 2022.3 LTS consumes the same core DLL. WinForms writes a temp maze document and launches a Windows player—first-person steps and turns on the carved floor. Quest 1 is the next seam: serve the maze on the LAN, sideload an APK, show what the headset sees. On-device generation on the Quest is deferred; the desktop remains the source.

Stack

.NET 10 · WinForms · xUnit · Unity 2022.3 LTS · Oculus XR Plugin 3.3.0 (Quest 1) · JSON maze handoff

Why It Belongs Here

This is a faithful port with a testable core, then a product surface that moves the same document into 3D and VR without rewriting the generator. It is the same pattern as the layout walker: one file, two (then three) ways to stand in it.