Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
뱀과 사다리 전통 인도 게임을 인생 하나로, 각 칸에 판차탄트라·우파니샤드 이야기가 실린 버전, 영어·힌디어 제공
The old Indian game of snakes and ladders, played as one life, with a story from the Panchatantra or the Upanishads on every square. In English and Hindi.
게임HTML · JavaScriptGitHub @bhaskarspace온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Moksha Patam: the old Indian game of snakes and ladders, in the browser
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗The old Indian game of snakes and ladders, played as one life, in English and Hindi, in a single HTML file. Every square tells part of a story from the Panchatantra or the Upanishads, in the order a life would meet them.
Play: https://codebpr.com/moksha-patam/ (add ?lang=hi to open in Hindi)
| Squares | Stage | Stories from |
|---|---|---|
| 1–20 | Childhood | Panchatantra fables |
| 21–40 | Brahmacharya (student) | Taittiriya, Chandogya, Katha, Mundaka; Aruni from the Mahabharata |
| 41–60 | Grihastha (householder) | Brihadaranyaka, Isha, Taittiriya, Mahabharata |
| 61–80 | Vanaprastha (forest-dweller) | Brihadaranyaka, Kena, Chandogya |
| 81–100 | Sannyasa (renunciate) | Mundaka, Mandukya, the four Mahavakyas |
| 101–110 | Divine realms, with Moksha at 105 partway along them | Bhagavad Gita 9.21 on the fall past 110 |
Nothing on squares 1–5. A newborn can't climb by virtue or fall by vice.
Childhood vices are small slips (chatter, fibbing, laziness) with short falls. Adult enemies like anger, craving and greed only appear in the householder years. Ahankara (ego) waits at 99 and is the longest fall of all.
Ladders are biggest in the middle of life (truth, resolve, giving, duty) and short near the end. No ladder reaches heaven, so the divine row is reached on foot.
Moksha is an exit, not a summit. It sits at 105, partway along the divine row, as Vaikuṇṭha sat a few steps before the end of the old boards. Landing exactly on it is liberation. Passing it carries you into the higher heavens (Lakshmi, Saraswati, Brahma, Vishnu, Shiva), which are still the wheel.
Heaven runs out. Nothing above Moksha turns back. A player who passes 105 walks the heavens, 106 to 110, and the throw that would carry them past 110 is the fall: the merit is spent and the life ends there: kṣīṇe puṇye martya-lokaṃ viśanti, when merit is spent you return to the world of mortals (Gītā 9.21), and every world up to Brahma's returns (8.16). Most of the surviving rules texts send the overreacher back to the world in the same way. Shiva's card at 110 shows the fall after his own.
No exact roll, and a way back down. A roll that would pass 110 walks up to it and back down by the remainder, so no roll is ever wasted. It is also how you reach the exit again once you have overshot it: from 110 a 5 comes back down onto Moksha, and so does a 6 from 109.
Fall, then the remedy: five snakes drop you one square before the ladder of the virtue that heals them:
The tail's card says the ladder is one step above.
14 snakes to 11 ladders, on purpose. The documented historical boards are balanced or ladder-heavy: the Jaina board 15 ladders to 9 snakes, the Vaiṣṇava board 10 to 10, the Mughal board 17 to 13 (docs/BOARDCRAFT.md). The popular claim that snakes outnumbered ladders two to one is folklore. This board is more punishing than any of them as a deliberate thesis, that the good path is the harder one, not as a restoration.
| Ladder | Virtue | Story |
|---|---|---|
| 6→15 | Maitri · Friendship | Crow, mouse, tortoise and deer (Panchatantra) |
| 12→24 | Buddhi · Wit | The lion and the clever hare (Panchatantra) |
| 23→37 | Guru-bhakti | Aruni holds back the flood (Mahabharata) |
| 28→45 | Satya · Truth | Satyakama Jabala (Chandogya 4.4) |
| 34→53 | Shraddha · Resolve | Nachiketa at Death's door (Katha) |
| 44→63 | Dana · Giving | "Datta" from the thunder (Brihadaranyaka 5.2) |
| 51→67 | Daya · Compassion | "Dayadhvam" from the thunder (Brihadaranyaka 5.2) |
| 57→75 | Dharma · Duty | King Janaka |
| 65→83 | Vairagya · Detachment | Maitreyi's question (Brihadaranyaka 2.4) |
| 72→89 | Tapas · Austerity | Bhrigu and Varuna (Taittiriya 3) |
| 85→94 | Viveka · Discernment | Two birds on one tree (Mundaka 3.1.1) |
| Snake | Vice | Story |
|---|---|---|
| 14→8 | Vachalata · Chatter | The tortoise and the geese |
| 19→11 | Asatya · Fibbing | The blue jackal |
| 29→17 | Alasya · Laziness | Subhashita |
| 39→22 | Vidya-mada · Pride of learning | The lion-makers |
| 47→31 | Kama · Craving | Yayati |
| 55→43 | Lobha · Greed | The greedy jackal and the bowstring |
| 59→50 | Krodha · Anger | The brahmin and the mongoose |
| 62→46 | Moha · Attachment | Dhritarashtra |
| 69→52 | Matsarya · Envy | Duryodhana at Indraprastha |
| 77→58 | Mada · Pride | The gods and the Yaksha (Kena 3) |
| 88→71 | Dambha · Hypocrisy | The cat who played ascetic |
| 93→64 | Asakti · Clinging | Jada Bharata and the fawn (Bhagavata 5.8) |
| 99→61 | Ahankara · Ego | Virochana and the reflection (Chandogya 8.8) |
| past 110 | Kshina-punya · Merit spent | The fall, which ends the life: when merit is spent, back down into the world (Gita 9.21) |
A 20,000-game simulation (npm run sim) puts a single life at a median of 28 turns, with one game in twenty taking 49 or more and none over 100. About half of lives reach Moksha (47.6%); nearly all the rest pass it and fall from the heavens (49.2%), and a few run out of years (3.2%). The distribution has a long tail, so the sim reports the median and the 95th percentile rather than the mean.
#sq/36 opens square 36.#codex/nyaya.To play locally, open index.html. Add ?seed=N to replay the same dice (the current seed is shown under Players & rules). ?depth=scholar sets the reading depth. Add ?debug to get console helpers: mp.jump(n), mp.roll(v), mp.seed() / mp.seed(n), mp.open(n), mp.entry(id), mp.close(), mp.setLang("hi"), mp.age() (the lens the board is aged through), mp.audio(), mp.quality("low"), mp.sheet() (the card's state: its sheet height, whether it is opened further, whether it was rolled from) and mp.rollFromCard(v).
index.html is built, so don't edit it by hand. The sources are:
src/: the game as ES modules (engine/ holds the rules, render/ the drawing, and rng.js the only randomness)content/*.json: the squares and stories (squares.json), the school lines and scholar notes for each square (readings.json), the Codex (codex.json), the UI strings (strings.json), and the names a lead line can carry (names.json, for the lint)assets/sprites.svg: one Basohli symbol per square and a seal per school, inlined by the build (delete it and the board shows emoji)src/sw.js, manifest.webmanifest, icons/: the installable app (node tools/icons.mjs redraws the icons)src/styles.css and src/index.html: the page shellnpm install
npm run build # inline src/ and content/ into index.html (refuses any Math.random outside rng.js)
npm test # rules, RNG and content tests (the build also refuses content missing Hindi or pointing nowhere)
npm run lint # the content lint alone: Hindi, two voices per square, a name in every lead, the sprite palette
npm run smoke # every phase's behaviour in a real browser, including offline, install, the emoji fallback and the drone
npm run perf # frame times of a walk, a climb and a swallow on a throttled phone-sized page (reports, never fails)
npm run sim # 20,000 headless lives; `node tools/sim.mjs 20000 2` for two-player races
npm run golden # replays seeds through the pre-split game, the build and the sim, and checks the logs match
Commit the rebuilt index.html with your changes. GitHub Pages serves it straight from main. See REDESIGN.md for the phased plan.
?quality=low to force it).