์ธ๋กํ ๋ชจ๋ฐ์ผ ์์ผ์ด๋ "๋ฅ ํผํ๊ธฐ" ๊ฒ์ ๐น๏ธ
์ข์ฐ๋ก๋ง ์์ง์ฌ ์์์ ์์์ง๋ ๋ฅ์ ํผํ๋ฉฐ ์ต๋ํ ์ค๋ ์ด์๋จ์ผ์ธ์. ์คํ ์ด์ง๊ฐ ์ค๋ฅผ์๋ก ๋ฏธ์น ๋์ด๋ ยท ํ์์ ยท 3๋จ ๋ณด์ค ยท ์ฝ์ธ ์์ ๊น์ง.
๐ฎ โถ ๋ธ๋ผ์ฐ์ ์์ ๋ฐ๋ก ํ๋ ์ดํ๊ธฐ (๋ผ์ด๋ธ ๋ฐ๋ชจ)
โป GitHub Pages ์์ ํธ์คํ โ ์ธ์ ๋ ์ ์ ๊ฐ๋ฅํฉ๋๋ค.
โถ ์ง๊ธ ํ๋ ์ด ยท ์ฃผ์ ๊ธฐ๋ฅ ยท ์คํฌ๋ฆฐ์ท ยท ์คํ ๋ฐฉ๋ฒ ยท ์ฝํ ์ธ ยท ๋ผ์ด์ ์ค
ํ ์์ผ๋ก ์ฆ๊ธฐ๋ ์ธ๋กํ ์์ผ์ด๋ ํํผ ๊ฒ์์ ๋๋ค. ์กฐ์์ ์ข์ฐ ์ด๋๋ฟ, ๊ท์น์ ๋จ์ํ์ง๋ง ์๊ฐ์ด ์ง๋ ์๋ก ์๋ยท๊ฐ์ยทํจํด์ด ํญ๋ฐ์ ์ผ๋ก ๋์ด๋ฉ๋๋ค. ํํผ๋ก ์ฝ์ธ์ ๋ชจ์ ์บ๋ฆญํฐยท๋ฐฐ๊ฒฝ์ ํด๊ธํ๊ณ , ํ์์ ์ผ๋ก ์๊ธฐ๋ฅผ ๋๊ธฐ๋ฉฐ, 3๋จ๊ณ ๋ณ๊ธฐ ๋ณด์ค์ ๋์ ํ์ธ์.
โโโโโโโโโโ PLAY โโโโโโโโโโ ํผ๊ฒฉ โโโโโโโโโโโโ ์ด์ดํ๊ธฐ/์ฌ์์
โ Home โ โโโโโโโโถ โ Game โ โโโโโโโถ โ GameOver โ โโโโโโโโโโโโโโโโ
โโโโโโโโโโ โโโโโโโโโโ โโโโโโโโโโโโ โ
โ โฒ ์์ /๋ญํน/์ค์ โฒ ์คํ
์ด์ง ์ ํยท๋ณด์คยทํญ์ฐ โ
โผ โ โโโโโโโโโโโโโโโโโ ์ด์ดํ๊ธฐ(ํํธ/์ฝ์ธ) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Shop ยท Ranking ยท Settings โ (์ฝ์ธ์ผ๋ก ์บ๋ฆญํฐ/๋ฐฐ๊ฒฝ ํด๊ธ)
โโโโโโโโโโโโโโโโโโโโโโโโโโ
| ๊ธฐ๋ฅ | ์ค๋ช |
|---|---|
| ๐น๏ธ ํ ์ ์กฐ์ | ๋ง์ฐ์ค ๋๋๊ทธ / ํฐ์น๋ก ์ข์ฐ ์ด๋๋ง โ ํ๋จ 15% ์์ญ์์ ํ๋ ์ด |
| ๐ช๏ธ ์๊ฐ ๊ธฐ๋ฐ ๋์ด๋ | ๋ํ ์๋ยท์คํฐ ๊ฐ๊ฒฉยท๋์ ๊ฐ์๊ฐ ์๊ฐ์ ๋ฐ๋ผ ์์น |
| ๐บ๏ธ 8 ์คํ ์ด์ง + ๋ฐฐ๊ฒฝ ์ ํ | ๋์โ๊ณต์โํ๊ตโ์งํ์ฒ โ์ฐ์ฃผโ์ฌ๋งโ๋นํโ์ฉ์ |
| ๐ฉ 8์ข ๋ฅ | ๊ธฐ๋ณธยทํฐยท์์ยทํ์ ยทํฉ๊ธ(+500)ยท์(๋๊ฐ์ )ยท๋ (๋ฐ๋ฅ์๋ฅ)ยท๊ฐ์ง(ํ์ดํฌ) |
| ๐น 3๋จ ๋ณด์ค | ์ฝํ โ ์ค๊ฐ โ ๊ฐ๋ ฅ ๋ณ๊ธฐ ๋ณด์ค๊ฐ ์์ฐจ ๋ฑ์ฅ, ํํผ ์์กด์ผ๋ก ์ฒ์น |
| ๐ ํ์์ 5์ข | ์ฐ์ฐ(๋ฌด์ )ยท์ฌ๋ฆฌํผ(์๋)ยท์์(์ฝ์ธ)ยท์๊ณ(์ฌ๋ก์ฐ)ยท๋ฒ๊ฐ(์ ๋ฉธ) |
| ๐ช ์ฝ์ธ & ์์ | ํํผ/๋ณด์ค๋ก ์ฝ์ธ ํ๋ โ ์บ๋ฆญํฐ 8์ข ยท๋ฐฐ๊ฒฝ 8์ข ํด๊ธ |
| ๐ฅ ์ฝค๋ณด & Near Miss | ์ฐ์ ํํผ ์ฝค๋ณด ๋ฐฐ์, ์์ฌ์์ฌ ํํผ ๋ณด๋์ค |
| โค๏ธ ์ด์ดํ๊ธฐ | ๋ฌด๋ฃ 1ํ + ์ฝ์ธ์ผ๋ก ๋ถํ(๋ฌด์ 2์ด) |
| โ๏ธ ํญ์ฐ ์ด๋ฒคํธ | ์ฃผ๊ธฐ์ ๊ฒฝ๊ณ ํ ํญ์ฐ, ์์กด ์ ๋ณด๋์ค |
| ๐ ์ฌ์ด๋ & ์ ์ฅ | SFX + ์์๊ฑฐ ํ ๊ธ, ์ฝ์ธ/์คํจ/์ต๊ณ ์ localStorage ์ ์ฅ |
| ์ ๋ ฅ | ๋์ |
|---|---|
| ๋ง์ฐ์ค ๋๋๊ทธ / ํฐ์น | ์บ๋ฆญํฐ ์ข์ฐ ์ด๋ |
| ํ๋ฉด ํญ | ์์ ยท ์ฌ์์ ยท ์ด์ดํ๊ธฐ |
โธ ๋ฒํผ / P ยท ESC |
์ผ์์ ์ง |
๐ฑ ๋ชจ๋ฐ์ผ์์๋ ๋ ์๊ฐ๋ฝ ๋์ ์ ๋ ฅ์ ์ง์ํด, ์ด๋ ์ค์๋ ์ผ์์ ์ง ๋ฒํผ์ ๋๋ฅผ ์ ์์ต๋๋ค.
๋ธ๋ผ์ฐ์ ์์ ๋ฐ๋ก ํ๋ ์ด ๐ https://coreline-ai.github.io/mini-web-game/
GitHub Pages ์์ ํธ์คํ ยท PC/๋ชจ๋ฐ์ผ ๋ธ๋ผ์ฐ์ ์์ ๋ฐ๋ก ์คํ๋ฉ๋๋ค.
๊ฐ์ผ ๋์์ ํฌ๋ฆฌ์ค ์ฝ์ด๋ฅผ ์งํค๋ ์ธ๋กํ ์์กด ์ํ ๊ฒ์์ ๋๋ค.
๊ธฐ์กด ๊ฒ์๊ณผ ๊ฐ์ GitHub Pages ์ฌ์ดํธ์ ํ์ ๊ฒฝ๋ก์์ ์คํ๋ฉ๋๋ค.
npm ci # package-lock.json ๊ธฐ์ค ์์กด์ฑ ์ค์น
npm run dev # ๊ฐ๋ฐ ์๋ฒ (http://localhost:5180, ํซ๋ฆฌ๋ก๋)
npm test # GameOver ์ ์ฅ ํ๊ท Playwright smoke
npm run build # dist/ ํ๋ก๋์
๋น๋
npm run preview # ๋น๋ ๊ฒฐ๊ณผ ๋ฏธ๋ฆฌ๋ณด๊ธฐVite ๊ฐ๋ฐ ์๋ฒ ํฌํธ๋ ๋ค๋ฅธ ํ๋ก์ ํธ์ ์ถฉ๋ํ์ง ์๋๋ก 5180์ผ๋ก ๊ณ ์ ๋์ด ์์ต๋๋ค. (
vite.config.js) ์ด ์ ์ฅ์์ ๊ณต์ ๋ก์ปฌ/CI ํจํค์ง ๋งค๋์ ๋ npm์ ๋๋ค.package-lock.json๊ณผ GitHub Actions์npm ci๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฒ์ฆํฉ๋๋ค.
game-dd/
โโโ index.html # ์บ๋ฒ์ค ์ง์
์
โโโ vite.config.js # publicDir: assets, port 5180
โโโ src/
โ โโโ main.js # Phaser.Game ์์ฑ + ์ฌ ๋ฑ๋ก
โ โโโ config/gameConfig.js # โญ ๋ชจ๋ ๋ฐธ๋ฐ์ค/์์
์์ (๋์ด๋ยท์ฝ์ธยท๋ณด์คยท์คํ
์ด์ง)
โ โโโ scenes/ # Boot ยท Home ยท Shop ยท Ranking ยท Settings ยท Game ยท Pause ยท GameOver
โ โโโ entities/Player.js # ์ ํ ์บ๋ฆญํฐ, ์ข์ฐ ์ด๋, ์ํ ํํธ๋ฐ์ค
โ โโโ systems/ # ๊ฒ์ ๋ก์ง ๋ชจ๋
โ โ โโโ PoopSpawner.js # ๋ฅ ์ค๋ธ์ ํธ ํ + ์ข
๋ฅ๋ณ ์คํฐ
โ โ โโโ Difficulty.js # ์๊ฐ ๊ธฐ๋ฐ ๋์ด๋ ๊ณก์
โ โ โโโ StageManager.js # ์คํ
์ด์ง ์ ํ + ๊ฐ์ค์น ์คํฐ
โ โ โโโ ComboManager.js # ์ฝค๋ณด/๋ฐฐ์
โ โ โโโ CoinManager.js # ์ฝ์ธ ๋๋กญยท์์ยท์์ง
โ โ โโโ PowerupManager.js # ํ์์
5์ข
โ โ โโโ Boss.js # 3๋จ ๋ณด์ค
โ โ โโโ ScoreManager.js # ์ ์(์์กด+ํํผ+๋์ด๋ฏธ์ค)
โ โ โโโ Effects.js # ์ผํ์ฑ ์ดํํธ
โ โ โโโ SaveData.js # localStorage ์ ์ฅ(์ฝ์ธยท์คํจยท๋ญํน)
โ โโโ ui/ # UiKit, ViewportBackdrop
โโโ assets/ # ์ด๋ฏธ์ง(imagegen PNG) + ์ค๋์ค(ogg)
โโโ docs/ # ๊ธฐํยท๊ตฌํ๊ณํยท์๋๋ฆฌ์ค ๋ฌธ์ + ์คํฌ๋ฆฐ์ท
| ์์ญ | ์ฌ์ฉ ๊ธฐ์ |
|---|---|
| ์์ง | Phaser 3 (Arcade Physics, overlap ์ถฉ๋) |
| ๋น๋ | Vite (publicDir: assets) |
| ์ธ์ด | JavaScript (ESM) |
| ๋ ๋ | ๋
ผ๋ฆฌ ํด์๋ 1080ร1920, Scale.FIT + CENTER_BOTH |
| ์ฑ๋ฅ | ๋ํ๋ฌผ ์ค๋ธ์ ํธ ํ๋ง, ์คํ๋ผ์ดํธ์ํธ ์ ๋๋ฉ์ด์ |
| ์ ์ฅ | localStorage (์ฝ์ธยท๋ณด์ ์คํจยท์ ํยท์ต๊ณ ์ ยท๋ญํนยท์์๊ฑฐ) |
| ๊ฒ์ฆ | Playwright ํค๋๋ฆฌ์ค ์๋ํ ํ ์คํธ |
๋ชจ๋ ์์น๋ src/config/gameConfig.js ํ ๊ณณ์์ ์กฐ์ ํฉ๋๋ค.
| ์คํ ์ด์ง | ์ง์ | ๋ฐฐ๊ฒฝ | ์ ๊ท ์์ |
|---|---|---|---|
| 1 | 0s | ๋์ | ๊ธฐ๋ณธ ๋ฅ |
| 2 | 25s | ๊ณต์ | ํฐ ๋ฅ |
| 3 | 50s | ํ๊ต | ์์ ๋ฅ |
| 4 | 80s | ์งํ์ฒ | ํ์ ๋ฅ |
| 5 | 112s | ์ฐ์ฃผ | ํฉ๊ธ ๋ฅ (+500) |
| 6 | 146s | ์ฌ๋ง | ์ ๋ฅ (๋๊ฐ์ ) |
| 7 | 182s | ๋นํ | ๋ ๋ฅ (๋ฐ๋ฅ ์๋ฅ) |
| 8 | 220s | ์ฉ์ | ๊ฐ์ง ๋ฅ (ํ์ดํฌ) |
| ๋ณด์ค | ๋ฑ์ฅ | ํน์ง |
|---|---|---|
| ๐ ์ฝํ ๋ณด์ค | 50s | ๋จ๋ฐ โ ๊ดํญํ ์ 3๋ฐ ๋ถ์ฑ๊ผด |
| ๐ด ์ค๊ฐ ๋ณด์ค | 120s | 2๋ฐ ์์ โ ๊ดํญํ ์ 5๋ฐ ๋ถ์ฑ๊ผด |
| ๐ฃ ๊ฐ๋ ฅ ๋ณด์ค | 195s | ํฌ๊ณ ๋น ๋ฆ, 3๋ฐ ์์ โ ๊ดํญํ ์ 6๋ฐ ๋ถ์ฑ๊ผด (์ต์๊ธ) |
๋ณด์ค๋ ์ง์ ๊ณต๊ฒฉ์ด ์๋๋ผ ๋ฐ์ฌ์ฒด๋ฅผ ํผํ๋ฉฐ ๋ฒํฐ๋ฉด HP๊ฐ ์๋ ๊ฐ์ํด ์ฒ์น๋ฉ๋๋ค. ์ฒ์น ์ ์ ์ยท์ฝ์ธ ๋ณด์ ํ ๋ค์ ๋ณด์ค/์๋ค๋ฆฌ์ค๋ก.
| ํ์์ | ํจ๊ณผ | ์์ | ๊ฐ๊ฒฉ(์ฝ์ธ) | |
|---|---|---|---|---|
| โ๏ธ ์ฐ์ฐ | 10์ด ๋ฌด์ | ์บ๋ฆญํฐ(์ต์ ) | 60 | |
| ๐ ์ฌ๋ฆฌํผ | ์ด๋ ๊ฐ์ | ์บ๋ฆญํฐ(์ค/๊ณ ๊ธ) | 200 / 400 | |
| ๐งฒ ์์ | ์ฝ์ธ ํก์ | ๋ฐฐ๊ฒฝ(์ต์ ) | 60 | |
| โฐ ์๊ณ | 5์ด ์ฌ๋ก์ฐ | ๋ฐฐ๊ฒฝ(์ค/๊ณ ๊ธ) | 220 / 400 | |
| โก ๋ฒ๊ฐ | ํ๋ฉด ์ ๋ฉธ |
์ด ๊ฒ์์ ํ์ด๋ธ๋ฆฌ๋ ๋ผ์ด๋ธ์ต์ค ๊ตฌ์กฐ๋ก ํ์ฅํ ์ ์๋๋ก ์ค๊ณ ๋ฐฉํฅ์ด ์ ๋ฆฌ๋์ด ์์ต๋๋ค:
๋ก์ปฌ(์คํ๋ผ์ธ) ์คํ ยท ์์ /์๋๋ฆฌ์ค์ ์ธํฐ๋ท(OTA) ์ ๋ฐ์ดํธ ยท ๋ฐฑ์๋ ์ฐ๋/๊ณต์ง ์์
| ๋จ๊ณ | ํ์ฅ ๋ฐฉํฅ | ๊ฒฐ๊ณผ |
|---|---|---|
| 0 | PWAํ (์๋น์ค์์ปคยท๋งค๋ํ์คํธ) | ์ค์นํ ยท ์คํ๋ผ์ธ ์คํ (์๋ฒ ๋ถํ์) |
| 1 | ์ฝํ
์ธ ์๊ฒฉ manifest + ContentManager |
์คํ ์ด์ง/๋ณด์ค/์์ OTA ์ ๋ฐ์ดํธ(์ฌ์ค์น ์์ด) |
| 2 | ์ ์ ๊ณต์ง/๋ฆฌ๋ชจํธ ์ค์ | ์ธ๊ฒ์ ๊ณต์ง ยท ๊ธด๊ธ ๋ฐธ๋ฐ์ค ์กฐ์ |
| 3 | ๋ฐฑ์๋ API(๋ญํนยท์ธ์ด๋ธยทํธ์) | ์๋ฒ ์ ๋ณด๊ตํ ยท ๋ผ์ด๋ธ ์ด๋ฒคํธ |
| 4 | Capacitor / Tauri ํจํค์ง | ์คํ ์ด ยท ๋ฐ์คํฌํฑ ์ค์นํ |
โ ๏ธ ๊ณ ์ง: ์ ํ์ฅ ๊ธฐ๋ฅ์ ํ์ฌ ๋ฆฌํฌ์ ์์ง ๊ตฌํ๋์ด ์์ง ์์ "์ ์/๋ก๋๋งต" ์ ๋๋ค. ์ค์ ๊ตฌํยท์ด์์ ์ด ํ๋ก์ ํธ๋ฅผ ์ด์ด๋ฐ๋ ๊ฐ๋ฐ์(์ฌ์ฉ์)์ ๋ชซ์ด๋ฉฐ, ๊ฐ ๋จ๊ณ๋ ๋ ๋ฆฝ์ ์ผ๋ก ์ฑํํ ์ ์์ต๋๋ค. ์ํคํ ์ฒยท์ฐ๋ ์ง์ ยท์คํค๋งยท์ฒดํฌ๋ฆฌ์คํธ ๋ฑ ์์ธ ๋ด์ฉ์ ์๋ ๊ฐ๋ฐ ๊ฐ์ด๋๋ฅผ ์ฐธ๊ณ ํ์ธ์.
๐ก ์น ์๋ฒ ์์ด ๋ก์ปฌ ์คํ/๋ฐฐํฌ ๋ฐฉ์ ๋น๊ต๋ ํฌํจ๋์ด ์์ต๋๋ค โ ๋จ์ผ HTML ์ํ์ผ ยท Tauri/Electron ๋ฐ์คํฌํฑ ์ฑ ยท Capacitor ๋ชจ๋ฐ์ผ ์ฑ ยท PWA ยท ์ํด๋ฆญ ๋ก์ปฌ ์๋ฒ.
๐ ํ์ฅ & ๋ผ์ด๋ธ์ต์ค ๊ฐ๋ฐ ๊ฐ์ด๋ โ docs/DEV-GUIDE.md
| ๋ฌธ์ | ๋ด์ฉ |
|---|---|
| docs/DEV-GUIDE.md | ํ์ฅ & ๋ผ์ด๋ธ์ต์ค ๊ฐ๋ฐ ๊ฐ์ด๋(์คํ๋ผ์ธยทOTAยท๋ฐฑ์๋) |
| docs/scenario-full.md | ์ ์ฒด ๊ฒ์ ์๋๋ฆฌ์ค ยท ์์ ํ์ฉ ๋งต |
| docs/design-spec-supplement.md | ์์ธ ๊ธฐํ ๋ณด๊ฐ(ํ์ ยท๊ฒฝ์ ยท๋ฐธ๋ฐ์ค ์์น) |
| docs/impl-plan-mvp.md | MVP ๊ตฌํ ๊ณํ์ |
| skills/game-factory/SKILL.md | Codex/Claude์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ Game Factory ์คํฌ |
| dev_game/docs/llm-game-studio-pipeline.md | ์์ด๋์ด โ ๊ธฐํ โ ๊ธฐ์ ์ค๊ณ โ ์ปค์คํ ๊ตฌํ โ QA ํ์ดํ๋ผ์ธ |
| dev_game/docs/production-demo-quality-contract.md | ๊ณ ํ์ง 1์ฐจ ํ๋ก๋์ ๊ธ ๋ฐ๋ชจ ๊ฐ์ ๊ณ์ฝ ยท ์์ /๋ฐฐ๊ฒฝ/UI QA ๊ฒ์ดํธ |
| dev_game/docs/reference-analysis-4-games.md | Crossy Road ยท Jetpack Joyride ยท Survivor.io ยท Super Hexagon ๋ณ๋ ฌ ๋ถ์ |
| dev_game/docs/game-production-template.md | ๊ฒ์ ์ ์ โ ์๋๋ฆฌ์ค โ ์์ โ ๊ตฌํ โ ํ ์คํธ โ ๋ฐฐํฌ ํ์ค ํ๋ก์ธ์ค |
| dev_game/docs/game-archetype-recipes.md | archetype์ ์ ํ์ด ์๋ ์ฐธ๊ณ ํจํด์ผ๋ก ์ฌ์ฉํ๋ ์ ์ ๋ ์ํผ |
| dev_game/docs/common-game-systems-checklist.md | ๋ก๋ฉ ํ๋ฉด ยท ๊ณตํต ์ฌ ยท ์ ์ฅ ยท ์ค๋์ค ยท QA Foundation ์ฒดํฌ๋ฆฌ์คํธ |
Copyright ยฉ 2026 Coreline-ai. All rights reserved.
This is proprietary software and is not released under an open-source license. No rights are granted by default.
Without prior written permission from Coreline-ai, you may not copy, modify, distribute, host, deploy, sell, or use this project (or its assets) for any purpose beyond playing the official live demo.
| Item | Details |
|---|---|
| ๐ฉ Licensing & inquiries | Contact Coreline-ai |
| ๐ Full terms | See LICENSE.md |
| โถ Play (evaluation) | https://coreline-ai.github.io/mini-web-game/ |
| ๐งฉ Third-party libraries | Phaser 3, Vite โ under their own (MIT) licenses |
ํ๊ตญ์ด ์๋ด: ๋ณธ ํ๋ก์ ํธ๋ ์คํ์์ค๊ฐ ์๋๋ฉฐ, ๋ชจ๋ ๊ถ๋ฆฌ๋ Coreline-ai์ ์์ต๋๋ค. ์ฌ์ฉยท๋ณต์ ยท์์ ยท๋ฐฐํฌยท์์ ์ ์ด์ฉ์ Coreline-ai ๋ฌธ์ ํ ์๋ฉด ํ๊ฐ๊ฐ ํ์ํฉ๋๋ค. ์ ์ฒด ์กฐํญ์ LICENSE.md ์ฐธ๊ณ .
Made with ๐ฎ + ๐ฉ ยท Powered by Phaser 3



