adding meta files

This commit is contained in:
2026-07-08 13:11:15 -06:00
parent 0a91c0c65c
commit 76d617bb7d
3 changed files with 761 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
# Old Man Glitch Decoder
A single-file, dependency-free recreation of **Old Man Name Generator 2**, a
Pokémon Red/Blue/Yellow tool originally hosted on Glitch City Laboratories
and long since offline (recovered from an Internet Archive Wayback Machine
capture). Type a 7-character trainer name and see what the in-game "Old Man
glitch" would actually encounter with it.
## What it does
In Gen 1, walking away from the Old Man in Viridian City right after he
"shows you how to catch a Pokémon" can trigger a glitch encounter built from
raw bytes of your trainer's name:
- Positions **3, 5, and 7** of the name are each read as a Pokémon species
byte.
- Positions **2, 4, and 6** are each read as that encounter's level byte.
- Position **1** is never read — it has no effect on the outcome.
The species comes from Gen 1's internal character/index table: every
nameable character (AZ, az, digits, and a handful of symbols) has a raw
byte value from 128255, and that same byte doubles as a species ID. The
"level" isn't computed at all — it's printed as the identical raw byte
value, which is why these encounters always show absurd levels (128255)
instead of the normal 1100.
## Usage
Open `index.html` directly in a browser. There's no build step, no server,
and no external requests — the page is fully self-contained.
## Files
| Path | Purpose |
|---|---|
| `index.html` | The app. CSS and JS are inlined directly into the page (see [Inlining](#why-inlined) below), so this one file is all you need to run or share it. |
| `app.css` / `app.js` | Human-readable, unminified source of the styles/script that are inlined into `index.html`. Edit these, then re-minify and re-inline into `index.html` when publishing a change. |
| `data/charmap.json` | The full character → Gen 1 byte value → species lookup table, generated from the source spreadsheet. Source of truth for `app.js`'s inlined data. |
| `data/charmap.min.json` | Minified copy of the same table. |
| `CHANGELOG.md` | Release history. |
| `LICENSE` | GPLv3. |
### Why inlined?
`index.html` bundles its CSS and JS inline rather than loading `app.css`
and `app.js` as separate requests. For a page this small, that trades
per-file browser caching for fewer round trips — worth it on a slow
connection for a single-visit tool like this one, at the cost of editing
convenience (hence keeping the unminified sources alongside it).
## Data source / credits
- Character-to-species mapping derived from the internal Gen 1 index table
(`Decimal` / `R/B/Y Pokémon` / `R/B/Y Letter` columns).
- Logic reverse-engineered from the archived "Old Man Name Generator 2"
page, originally by Abwayax and the Glitch City Laboratories team.
## License
GPLv3 — see [LICENSE](LICENSE).