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.