Loading…
a327ex.com

This page documents how Phylactery was made. Phylactery is a game by a327ex, built in conversation with Claude, an AI by Anthropic, over twenty sessions between 27 September and 18 October 2026. Every session was recorded as a log, and all of them are linked below: what a327ex asked for, what the AI did, its reasoning, the tools it ran and the builds it delivered. The rest of the page summarizes those logs area by area (who had the ideas, who wrote the code, where the models, textures, sounds, fonts and store images came from, which AI systems were used and how much), with numbers counted by script from the logs and the game's repository. The game's ending is a secret, so it is not described on this page.

The logs

What a log is

Each log is one working session, from a327ex's first message to the last, laid out as the conversation it was. Here is the top of one, and a stretch further down:

The top of the log Phylactery 8 and a stretch of its transcript, numbered

  1. The session: its title, its number on this site, when it started, and the AI model and effort it ran on.
  2. Search inside the session.
  3. Show or hide each kind of entry: a327ex's messages, the AI's replies, its thinking, its tool calls (every command it ran, with what went in and what came out) and system notes. Tools and System start hidden.
  4. A summary of the whole session.
  5. Everything the session produced, in one place: code states (the game's code after each turn; the repository is private, so they don't open), replays and files.
  6. a327ex's messages, with the time he sent each one.
  7. The AI's turn: how long it worked, its thinking (each row opens), and what it said.
  8. Replays: recordings of the game, a327ex's own play and the AI's test runs, played back on the page.
  9. Builds and pages the AI delivered for him to judge, opened in place.

Every log

Log Date What happened
Phylactery 1 27 Sep The idea and the first look rounds: the cave, the light, the lich's skeleton, the snakes
Phylactery 2 27-28 Sep The lich becomes playable; movement, materials; the first attacks
Phylactery 3 28-29 Sep Ten rounds on the attacks: beam, lift and burst, gore, warped air, the thrown rock
Phylactery 4 29 Sep The six objects and the model viewer
Phylactery 5 29-30 Sep The ending sequence; the whole game ported from three.js to the Anchor engine
Phylactery 6 1 Oct Replays for the engine's 3D layer
Phylactery 7 2-3 Oct A walk through generated caves, built and set aside; an inventory
Phylactery 8 3 Oct Smaller replays; cave surfaces; interface looks and the font
Phylactery 9 3-5 Oct The game cut back to the one cave; the mask; icons
Phylactery 10 5-7 Oct Waves of snakes and group versions of every attack
Phylactery 11 8 Oct The ending sequence; the start; a performance fix
Phylactery 12 7 Oct Two visual bugs found from his recordings; the ending sequence
Phylactery 13 9-10 Oct The game hosted on a327ex.com (admin only); the first sound pass
Phylactery 14 10-13 Oct The sound tool; sound fixes; the website side
Phylactery 15 13-14 Oct The website side; more sound
Phylactery 16 14-15 Oct The last sound events; the lens reworked; web speed
Phylactery 17 15 Oct Renamed Phylactery; fast loading on the website; stutters
Phylactery 18 15-16 Oct The Steam release rehearsal; the ending sequence
Phylactery 19 15-16 Oct Web audio; the game made 25% faster
Phylactery 20 17-18 Oct Visual identity: the title font and the store art
Phylactery 21 19 Oct This page

Logs 11 and 12 are numbered in the order a327ex named them, not by date. Logs 18 and 19 ran at the same time.

1. The short version

  • The idea, the design and every decision are a327ex's. The game began with his message on 27 September; it is based on a dream from his own story It Follows. He set the look, the controls, the six powers, the six objects, the structure and the ending, chose among every option the AI offered, and accepted or rejected every round.
  • All of the game's code was written by an AI, Claude Opus 5.5 (Anthropic), in conversation with him. He typed no code for this game. The engine underneath it has a longer history (section 4).
  • Every 3D model, texture, animation, effect and icon in the game is built by that code. No image or 3D model in the game came from an image-generation model, an asset store, a scan or motion capture.
  • The sounds are recordings from sound libraries, commercial and free. No sound is AI-generated; there is no music and no voice. The AI made the first picks without being able to hear them; he then changed them by ear.
  • The store art is AI-painted (Google's Gemini image model) from renders of the game itself.
  • Nothing in the game uses AI while you play.
  • Phylactery is not released on Steam. It lives on a327ex.com. Its Steam pages were a rehearsal of the whole release process, done to learn it for future games; that is why this page mentions Steam.

2. "What percentage was made by AI?"

There is no single honest number; it depends on what you count. The measured ones:

Measure a327ex AI How it was counted
Lines of the game's code 0% ~100% (99.86% of game code lines trace to AI-made commits; the rest is a project template) git blame over the repository; none of his messages contains code
Words in the conversation 8.9% (13,174 words in 217 messages) 91.1% (134,090 words of replies) the logs; the AI's visible reasoning (about a million more words) not counted
Decisions about what the game is every direction and verdict (72 direction messages, 84 feedback messages) how to build things, and the options it proposed his 217 messages read and labelled one by one
Time about 22 hours between his messages (reading, playing, deciding) about 61 hours working on his requests of about 84 active hours over 22 days
Commits 0 typed 156 of 157 commits carry the AI as co-author (the other is the project template) git history

Put plainly: a327ex directed and judged; the AI implemented. He decided what the game is; the AI built it.

3. Who did what, by area

Area a327ex AI
Idea, story, ending the premise, the source story, the ending and its meaning, the name an interpretation when he asked for one
Design every rule and verdict: camera, controls, movement feel, the six powers, the objects, the structure (he tried and cut a walking section, a tunnel and rooms), balance option sets, proposals (two of the six attacks began as AI suggestions he reshaped), all implementation
Code none for this game; the engine's design lineage (section 4) all of the game's code, the tools, the engine changes, tests, builds, commits
3D models, textures, animation, effects the look, by verdict; one drawing (marks on a screenshot of the mask) all of it, as code
Interface the layout, the style and font choices, the words the drawing code, the pixel font, the icon tool, option sets
Sound ear-picked replacements and settings; the global sound rulings the first picks (blind), the 3D audio code, the in-game sound editor
Text all in-game text (six object names, THROW, X, the name) none
Store art picks among the candidates, the title rule staging in the game, the painting via Gemini, the layouts
Testing played the game (at least 255 recorded minutes) and reported bugs 693 headless test runs, numeric checks, benchmarks
Release work the decisions, sign-ins, the go-aheads packaging, uploads, the store-page forms, the website integration

4. Code and the engine

  • Who wrote the game's code. Claude Opus 5.5 (at extra-high effort) wrote all of it, in all twenty sessions, with no model change. 156 of 157 commits carry a "Co-Authored-By: Claude" line; the one without is the project template made by a setup tool. By git blame, 16,117 of the 16,140 current game-code lines (99.86%) come from AI-made commits; the other 23 are template lines. None of his messages contains code, every file change in the logs is an AI tool call, and to his knowledge he edited nothing by hand between sessions.
  • How much. The shipped game is about 18,500 lines of Lua (16,140 of game logic plus 2,407 of a small Lua re-implementation of the three.js renderer). The repository also holds the original browser version (10,741 lines of JavaScript, not shipped) and 6,173 lines of tools.
  • History. The game was first built in three.js (a browser 3D library), then, on 30 September, ported to a327ex's own engine, Anchor. The port was checked to behave identically, numerically to 15 digits, and by his side-by-side play ("Seems like it's 100% the same to me", Phylactery 5). Everything after that was built in Anchor only.
  • The engine is more complicated. a327ex wrote his engine himself over about ten years. Since early 2026 it has been rewritten and extended in sessions with AI, so today its code is almost entirely written by AI, but its design and ideas come from his earlier engine and from how the two of them changed it while using it over the year. The current version started on 7 July 2026 as a copy of the previous one; about 40% of its main C file is unchanged from that copy. Twelve engine changes were made for this game (a GPU layer, replay recording for 3D, web audio, loading and speed work) and make up about 16% of that file today. The engine's development is logged too; a separate document like this one, for the engine alone, is planned.
  • Third-party code. three.js r170 (its shader library is compiled into the game), Lua, SDL2, Box2D and Box3D, miniaudio and other open-source libraries inside the engine. See the licences section.

5. Visuals

  • In the game: all code. The lich's skeleton is sculpted in code (signed-distance fields, about 210,000 triangles); the snakes are tube meshes rebuilt every frame; the cave and rocks are generated shapes; the six objects (lens, gem, orbs, mask, hand, lodestone) are sculpted, ray-traced or shaded in code. Every texture is generated by code. All animation is procedural: springs, pendulums, physics; no motion capture, no keyframed clips.
  • Rendering. The look comes from the renderer of a327ex's earlier project ("Sun Court", also built with AI): 640x360, shadow maps, light shafts, baked bounce light, a pixel-art discipline.
  • Is any image in the game AI-generated? No file in the game is the output of an image-generation model. The inventory icons are cut-outs of renders of the game's own models; the interface font is a pixel font drawn in code; the title font is a blend of two open fonts.
  • Where image models touched the visuals, indirectly.
    • On day one an AI image tool ("Astra", a Codex-based agent) made 22 reference images (skeletons, snakes, caves). a327ex picked one skeleton, one snake and two caves as targets; the models were then built in code toward them. No pixel of those images is in the game.
    • The cave's colours were chosen by eye from the cover of It Follows on his website, itself an AI-made image that he directed and edited.
  • Other people's work, used as reference. Anime frames (Shin Sekai Yori, for the orbs and, through his avatar, the mask's shape), museum photographs (a Roman bronze votive hand's gesture), photographs of burned objects and of cave light, clips of other games' beam effects and of real light, and album covers and artworks for the store art. They are shown in the logs; none of them is in the game.
  • Fonts. The interface font, "FACETED FINE", is a pixel font drawn in code for the game. The title font, "Phylactery Serif", is a new blend of two open-licence (SIL OFL) fonts, 75% IM Fell English and 25% EB Garamond, made by an AI-written blending tool; the two fonts and the ratio were a327ex's choice.

6. The store art

  • AI-painted. Every store image comes from one painting ("A01") made by Google's Gemini 3 Pro Image model. Its inputs were a scene staged in the game itself and rendered large, an earlier painting of a game render, the It Follows cover as a style reference, and a render of the game's mask. About 6 of the 92 Gemini generations made that day are in the final painting's lineage; the rest were candidates he rejected.
  • What is not model output. The wider formats extend the painting with an AI-written tool that copies it pixel for pixel and fills the margins by rule; the titles are set in Phylactery Serif by code. The screenshots are captures of the game itself.
  • Disclosed in the AI section of the Steam content survey (on the rehearsal store page).

7. Sound

  • Recordings, not generated. The game uses 122 recordings from 9 libraries: 8 commercial packs he bought and 1 free library (soundeffect-lab, 9 files). Nothing is synthesized, nothing comes from an AI audio model, and there is no music and no voice. While playing, the sounds are only processed (a bit-crush, 3D positioning, cave reverb).
  • Who picked them. The AI made the first selection (49 of 71 sound events) from file names and measurements, because it cannot hear, and left 22 events empty and flagged for him. He then worked in the game's own sound editor: he changed the files of 21 events and the settings of 11 more, and 37 of the 122 files in use are his own picks from the libraries. About a quarter of the named sound moments are silent on purpose. The rules that every sound gets an 8-bit crush and that you hear from the lich's head are his.
  • The 3D audio code was forked from another of his games in progress, where an AI session wrote it.

8. Text and names

  • In-game text is only the six object names (Burned Mask, The Hand, Lodestone, Psyonian Orbs, Prismatic Gem, Attack Lens), a THROW button, an X and the name. All of it is his wording. There is no dialogue, tutorial or story text.
  • The name. "Phylactery" was his idea; the working title "Lich Survivors" (27 September) was his too.

9. The AI systems used

System Used for How much
Claude Opus 5.5 (Anthropic) everything in the conversation: discussion, proposals, all code, tools, tests, builds, store and website work all twenty sessions; 8,811 responses; 10.4 million output tokens
Claude Sonnet 5 / 5.5 (subagents) research: finding reference photos and clips, mapping code 17 runs
Astra (a Codex-based agent with an image tool) 22 look-reference images on day one 1 run
Google Gemini 3 Pro Image / Nano Banana 2.1 the store art 92 generations, one day
Google Gemini (video models) finding the right seconds in reference videos at least 22 calls
fal.ai tried for the store art 0 results (no balance)

No other AI product (ChatGPT, Midjourney, Stable Diffusion, ElevenLabs, Suno, Copilot, Cursor and so on) appears in the logs. a327ex pays a flat subscription; at pay-per-token prices the Claude usage would have cost about $1,600.

10. Process

  • Twenty sessions over 22 days (27 September to 18 October 2026), about 84 active hours (64 to 99 depending on how idle gaps are counted). 104 numbered rounds: the AI built something, he judged it.
  • His input: 217 messages, 13,174 words (median 37 words a message), 11 pasted images (game screenshots, one with his drawing on it). His messages are direction (33%), feedback on what he saw or played (39%), questions (9%) and process (19%).
  • Testing. The AI never ran the game in a visible window; it tested with hidden, scripted instances (693 runs), numeric checks, sweeps of the combat, benchmarks and an audio tap. a327ex played it himself (111 recordings, about 255 minutes, from 2 October; earlier play was in a browser build that records nothing) and found bugs the tests had not: flashing white squares (found by replaying his own recordings frame by frame), a Steam packaging fault, stutters on the website.
  • Mistakes the AI made, recorded in the logs: a website deploy that broke the site's loading for everyone (fixed the same session), a test that overwrote some of his sound picks, a command that wiped uncommitted work (recovered from automatic snapshots).

11. While you play

  • No AI at run time. The game contains no AI calls; nothing is generated while you play; randomness is an ordinary seeded random-number generator.
  • Network and data. The game on a327ex.com loads its files from the site and exchanges a short start/finish record with the site's own server. The desktop build used for the Steam rehearsal makes no network calls and saves nothing.

12. Licences

  • Sound libraries. Sidearm Studios' Ultimate SFX Bundle (2020 and HD Remaster), Gamemaster Audio's Pro Sound Collection, WOW Sound's RPG Magic Sound Effects Pack 3, RPG Magic SFX and Pixel Magic Sound Effects Pack, Imphenzia's Universal Sound FX, Audio_Alchemist's sound packs (Farm, Inventory, Blood, Cute Magic Spells), and soundeffect-lab (効果音ラボ, free). Their terms allow the sounds to be built into a game and none asks for a credit; all of them are credited in the game's notices anyway. None of the audio was given to an AI model: the AI chose by file names and by numbers a script measured.
  • Code. three.js (MIT), Lua (MIT), SDL2 (zlib), Box2D and Box3D (MIT), FreeType (FreeType License), miniaudio, stb and miniz (public domain), glad; the website build adds Emscripten and musl (MIT). Their notices ship with the game.
  • Fonts. IM Fell English (Igino Marini) and EB Garamond (The EB Garamond Project Authors), both under the SIL Open Font License 1.1; Phylactery Serif, the blend, is under the same licence.

Licences

13. Not established

  • The image model behind Astra's image tool, and the origin of the avatar image the mask was measured from.