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
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
수업 시간과 자투리 시간에 태블릿으로 바로 쓸 수 있는 웹 게임을 모아 둔 저장소입니다. GitHub Pages로 배포되어 있어서 파일을 올리면 잠시 뒤 아래 주소에서 바로 열립니다. • 대문(게임 목록): https://fifa3827-lgtm.github.io/classroom-games/ • 게임은 폴더 하나에 하나씩, 실행 파일은 항상 그 폴더의 index.html檢視完整 README ↗
수업 시간과 자투리 시간에 태블릿으로 바로 쓸 수 있는 웹 게임을 모아 둔 저장소입니다. GitHub Pages로 배포되어 있어서 파일을 올리면 잠시 뒤 아래 주소에서 바로 열립니다.
| 폴더 | 게임 | 대상 | 소요 시간 | 진행 방식 | 소리 | 마지막 수정 |
|---|---|---|---|---|---|---|
| timecapsule/ | 사라진 타임캡슐 (미스터리 방탈출) | 1~2학년 | 약 15분 | 개인 태블릿, 혼자서 | 배경음악·효과음 (끄기 가능) | 2026-09-09 |
| omok/ | 오목 대국 | 전 학년 | 5~10분 | 개인 태블릿, 컴퓨터와 대결 | 없음 | 2026-09-09 |
| puzzle25/ | 퍼즐 25 (5종 퍼즐 × 5단계) | 교직원, 고학년 | 한 판 3분, 전체 40분 내외 | 휴대폰·태블릿, 혼자서 | 효과음·팡파레 (끄기 가능) | 2026-09-09 |
| bookclinic/ | 책 추천 상담원 (실시간 도서 데이터 독서 상담) | 초등 1학년~성인 (학생·교직원·학부모) | 3분 | 휴대폰·태블릿·PC, 혼자서 (키 담긴 링크로 공유) | 배경음악 (기본 꺼짐) | 2026-09-10 |
| sky1945/ | 천공비행단 1945 (세로 스크롤 비행 슈팅, 기체 5종) | 전 학년, 교직원 | 한 판 5~10분 | 휴대폰·태블릿·PC, 혼자서 | 효과음·BGM (끄기 가능) | 2026-09-11 |
| balloon/ | 물풍선 대작전 (크레이지 아케이드식 물풍선 대결, 혼자 5스테이지 + 온라인 대결) | 전 학년, 교직원 | 한 판 2~5분 | 휴대폰·태블릿·PC, 혼자서 또는 방 코드로 최대 4명 온라인 대결 | 효과음·BGM (끄기 가능) | 2026-09-11 |
| hangul/ | 쵸코와 한글 (자음+모음을 붙여 글자를 만드는 한글 놀이) | 한글이 처음인 학생 (저학년·귀국 학생) | 한 활동 3분, 한 번에 10~15분 | 태블릿·휴대폰, 혼자서 | 녹음된 목소리 (클로바더빙, 파일 내장) | 2026-09-14 |
| samulnori/ | 우리 장단 (사물놀이 삼도농악가락 · 삼채 장단을 장구로 치는 리듬 놀이) | 전 학년 | 한 판 1~2분 | 태블릿·휴대폰·PC, 혼자서 | 합성 악기음 (첫 터치 후 켜짐) | 2026-09-15 |
| (별도 저장소) lumenfall | 루멘폴 (물감을 떨어뜨려 스테인드글라스 그림 창을 완성하는 논리 퍼즐, 그림 72가지 · 마을 지도 · 창턱 꾸미기) | 3학년~교직원 | 한 판 1~3분 | 휴대폰·태블릿 세로, 혼자서 (진행은 기기에 저장) | 배경음악·효과음 (끄기 가능) | 2026-09-23 |
| mango/ | 탐정 망고의 춤추는 대수사선 (단서를 모아 추리하는 미스터리, 사건 1·2) | 4~6학년, 교직원 | 사건 하나에 10~15분 | 휴대폰·태블릿 가로 화면, 혼자서 (중간에 꺼도 이어하기) | 배경음악·말소리·효과음 (각각 끄기 가능) | 2026-09-19 |
| mitgeurim/ | 밑그림 (연필 손그림 방의 사물을 움직여 한글 자음을 찾는 그림 퍼즐, 10판 · 고난도) | 5~6학년, 교직원 | 30~60분 | 휴대폰·태블릿·PC 가로 화면, 혼자서 (진행은 기기에 저장) | 합성 효과음 (첫 터치 후 켜짐) | 2026-09-27 |
| mitgeurim2/ | 밑그림 둘째 장 (사물의 모양과 그림자로 한 음절씩 찾는 그림 퍼즐, 11장 + 마지막 문장) | 5~6학년, 교직원 | 30~60분 | 휴대폰·태블릿·PC 가로 화면, 혼자서 (진행은 기기에 저장) | 합성 효과음 (첫 터치 후 켜짐) | 2026-09-27 |
| myungyun/ | 裵鄭 명윤랜드 (음악 박자에 맞춰 도는 대관람차에 같은 색 손님을 태우는 리듬 퍼즐, 무한 단계) | 전 학년, 교직원 | 한 판 3~10분 | 휴대폰 세로 우선 · 태블릿·PC, 혼자서 (최고 기록·이어하기 저장) | 배경음 8곡·효과음 (첫 터치 후 켜짐, 끄기 가능) | 2026-09-26 |
| neon-snake/ | 네온 스네이크 아레나 (뱀 서바이벌, 큰 화면 중계) | 전 학년, 교직원 | 한 판 90초 | 태블릿 최대 6대 온라인 대결 + 큰 화면 1대 중계, 혼자 연습(봇 5마리) | 없음 | 2026-09-26 |
| neon-dash/ | DASH! 전력질주! (학교 운동장에서 학생 캐릭터가 달리는 100m 경주, 큰 화면 중계) | 전 학년, 교직원 | 한 판 10~20초 | 태블릿 최대 6대 온라인 대결 + 큰 화면 1대 중계, 혼자 연습(봇 5명) | 없음 | 2026-09-26 |
| hogol/ | 호랑이골 이야기 1 · 금방울 원정대 (한국 요괴 판타지 벨트스크롤 액션 RPG, 캐릭터 3명 · 4장 · 난이도 3단계) | 초등학생~어른 | 전체 여러 시간 (4장, 자동 저장) | PC 키보드·마우스 (터치 없음), 혼자서 (자동 저장 · 저장 코드) | 배경음·효과음·목소리 (끄기 가능) | 2026-10-01 |
| jellypang/ | 말랑 젤리팡 (같은 젤리끼리 합쳐 키우는 단계형 퍼즐, 병 모양 8종 · 무한 단계) | 전 학년, 교직원 | 한 단계 2~5분 | 휴대폰·태블릿 세로 우선 · PC, 혼자서 (단계·별·발견한 젤리 저장) | 합성 효과음·오르골 배경음 (첫 터치 후 켜짐, 각각 끄기 가능) | 2026-10-02 |
| jjukjelly/ | 쭉쭉 젤리 (젤리를 늘여 그림 모양 틀을 채우는 퍼즐, 그림 20장 + ★ 단계) | 전 학년, 교직원 | 한 그림 1~3분 | 휴대폰·태블릿 세로 우선 · PC, 혼자서 (완성 그림·기록·힌트 저장) | 합성 효과음·오르골 배경음 (첫 터치 후 켜짐, 각각 끄기 가능) | 2026-10-02 |
| chess3d/ | 왕좌의 체스 (달빛 신전의 3D 체스판에서 보스 10명과 겨루는 체스, 보스를 꺾으면 말 세트·무대가 열리는 보물 창고) | 3학년~교직원 | 한 판 10~30분 | PC·태블릿 (휴대폰도 됨), 컴퓨터와 대결 (꺾은 보스·보물 저장) | 합성 효과음 (첫 터치 후 켜짐, 끄기 가능) | 2026-10-03 |
| keycap/ | 딸깍 공방 (같은 색 키캡을 잇는 퍼즐로 부품을 모아 손님 7명의 키보드를 조립, 7손님 × 10판 = 70판) | 전 학년, 교직원 | 한 판 1~3분, 전체 여러 시간 | 휴대폰·태블릿 세로 우선 · PC 마우스, 혼자서 (진행·별·부품 자동 저장) | 실제 키보드 녹음 소리·효과음 (첫 터치 후 켜짐, ⚙에서 크기 조절) | 2026-10-07 |
| gyojeongso/ | 그림 글자 교정소 (AI가 만든 인포그래픽의 틀린 글자를 고치고 제미나이·노트북LM 표식을 지우는 도구) | 교직원 | 그림 한 장 5~15분 | PC 마우스·키보드, 혼자서 (작업 자동 저장 · 이어 하기) | 없음 | 2026-10-09 |
게임은 별도 저장소(fifa3827-lgtm/lumenfall)에 있고, 주소는 https://fifa3827-lgtm.github.io/lumenfall/ 이다. 판은 단계마다 자동으로 만들어지므로 정답표는 없다. 같은 단계는 누구에게나 같은 판이 나온다.
방 그림에서 사물을 누르면 퍼즐 카드가 열린다. 카드 속 그림을 움직여 드러난 자음을 오른쪽 자음판(ㄱㄴㄷㄹㅁㅂㅅㅇㅈ)으로 넣는다. 아홉 판을 풀면 마지막 나무가 열린다.
| 판 | 방의 사물 | 푸는 법 | 함정 | 답 |
|---|---|---|---|---|
| 1 | 병 속 고양이 | 고양이 넷 중 셋을 알맞은 방향으로 병에 쌓으면 몸통이 글자 | 네 번째 고양이 | ㄹ |
| 2 | 그루터기 | 3×3 길 타일을 밀어 길을 잇는다 | 꺾인 들러리 조각 | ㄷ |
| 3 | 편지 두 장 | 점무늬 종이를 뒤집고 두 번 돌려 겹친다 | 그냥 겹치면 잡음 | ㅅ |
| 4 | 철사 옷걸이 | 전등이 켜진 낮에 철사를 돌려 벽 그림자를 읽는다 | 빛 쪽으로 뻗은 가지, 밤엔 그림자 없음 | ㅈ ㄱ |
| 5 | 창문 | 밤에만 깜빡이는 칸의 자리 = 자음판의 자리, 깜빡이는 차례대로 | 달은 늘 떠 있어 칸이 아님 | ㅇ ㅁ |
| 6 | 접힌 쪽지 | 세로로 접으면 양쪽 획이 포개진다 | 가로 접기 | ㅂ ㄴ |
| 7 | 거울 조각 | 두 줄에 거울을 알맞은 자리에 세워 반쪽 그림을 채운다 | 거울 너머의 낙서 | ㅅ ㅂ |
| 8 | 낙서 종이 | 흑연을 지우면 먹 글씨가 나온다. 먹 화살표(←)대로 오른쪽부터 읽는다 | 먼저 지워 둔 흰 글자 ㄱ ㄴ ㄷ | ㄹ ㅇ ㅁ |
| 9 | 별 종이 | 빛살 1·2·3… 차례로 별을 이으면 무리마다 자음, 왼쪽 무리부터 | 빛살 없는 들러리 별 | ㄴ ㄹ ㄷ |
| 10 | 다 자란 나무 | 전등을 켜면 열매 그림자가 벽에 진다. 그림자가 없는 열매 셋을 위에서부터 | 밤엔 그림자가 다 사라짐 | ㄱ ㄹ ㅈ (그림자) |
「밑그림」의 속편. 방 그림의 흐린 밑그림을 누르면 그림 한 장이 열린다. 사물을 세우고 돌리고 옮기면 사물의 실제 모양(또는 그 그림자)이 한 음절이 된다. 오른쪽 음절판에 초성 → 모음 → 받침(없으면 「받침 없음」) 순서로 넣는다. 열한 장을 다 풀면 마지막 장에서 글자를 원고지에 늘어놓아 한 문장을 만든다.
| 막 | 그림 | 푸는 법 | 함정 | 답 |
|---|---|---|---|---|
| 1 | 탁상 액자 | 엎어진 액자를 위로 끌어 세운다 | — | 모 |
| 1 | 세면대 | 수도꼭지를 끌어 세면대 쪽으로 돌린다 | 밖을 보면 물이 바닥에 튄다 | 그 |
| 1 | 풍선 | 눌러서 둥글어질 때까지 분다 | 너무 불면 터진다 | 을 |
| 2 | 책꽂이 | 선반 위·바닥의 북엔드를 눌러 돌려 바로 세운다 | 거꾸로(ㄱ)는 책을 못 받친다 | 는 |
| 2 | 책상 | 스테이플러를 닫고 의자를 책상 밑으로 밀어 넣는다 | — | 든 |
| 2 | 창밖 호수 | 창을 닫아 물을 잔잔하게 한다. 난간과 비친 난간이 ㄷ, 말뚝과 비친 말뚝·밧줄이 ㅏ | 바람이 불면 반영이 깨진다 | 다 |
| 3 | 매단 모빌 | 모빌을 끌어 돌린다 | — | 자 |
| 3 | 도르래 등불 | 등불을 끌어 올리고 내린다 | — | 등 |
| 3 | 손잡이 촛대 | 촛대를 끌어 옮긴다 | — | 림 |
| 3 | 촛불 둘 | 조각 받침을 옮기고, 오른쪽 촛불을 눌러 끈다 | 두 그림자가 겹친다 | 불 |
| 3 | 햇빛과 벽시계 | 시곗바늘을 끌어 저녁 다섯 시에 맞춘다 | — | 진 |
| 끝 | 원고지 | 2·4·2·3칸에 늘어놓는다 | 틀린 칸 수만 알려 준다 | 모든 그림자는 불을 등진다 |
읽을 사람(초등 1·2 / 3·4 / 5·6학년, 중·고등학생, 성인)을 고른 뒤 설문 또는 사연으로 세 권을 추천받는다. 고정 목록이 아니라 그때그때 서점·도서관 데이터를 받아 고른다.
#k=카카오키&d=정보나루키 를 읽어 브라우저(localStorage)에 저장하므로, 공유는 키가 담긴 링크로 한다. 키가 없으면 페이지 안 입력칸이 나온다. 키 유출 시 카카오 콘솔에서 새 키를 만들고 링크만 바꾸면 된다.bookclinic/bgm.mp3는 Suno로 만든 「서가의 오후」(2026-09-10); 파일이 없으면 페이지가 Web Audio로 직접 연주하는 앰비언트로 대체된다. 곡을 바꾸려면 같은 이름으로 덮어쓰면 된다.학교 100번째 생일 전날, 1996년 6학년 선배들이 남긴 편지를 따라 지도 조각 5개를 모으는 이야기.
| 단계 | 장소 | 문제 유형 | 정답 | 얻는 숫자 |
|---|---|---|---|---|
| 1 | 도서관 | 스티커 순서대로 책 제목 첫 글자 잇기 | 은행나무 | 1 |
| 2 | 음악실 | 피아노 멜로디 듣고 따라 치기 | 미 솔 라 솔 도 레 | 9 |
| 3 | 과학실 | 무게 비교 추리 (가장 가벼운 상자) | 초록 상자 | 9 |
| 4 | 급식실 | 그림 암호 해독 (🍌 = 🍎+🍞 = 6) | 7624 | 6 |
| 5 | 운동장 | 지도 길 안내 따라 파기 (동3 → 남2 → 서1) | 왼쪽에서 3번째, 위에서 3번째 칸 | — |
| 6 | 타임캡슐 | 모은 숫자로 자물쇠 열기 | 1996 | — |
다섯 가지 퍼즐이 번갈아 나오며 5바퀴(몸풀기·익히기·본격·도전·끝판) 동안 어려워진다. 앞 단계를 깨야 다음이 열린다. (2026-09-09: 「불 끄기」가 어렵다는 의견이 많아 「주차장 탈출」로 교체했다.)
| 순서 | 퍼즐 | 규칙 한 줄 | 단계별 크기 | 막혔을 때 |
|---|---|---|---|---|
| 1 | 주차장 탈출 | 빨간 차를 오른쪽 출구로. 차는 놓인 방향으로만 밀림 | 6×6 고정, 차 6대 → 11대 | 빨간 차 앞을 막은 차부터, 그 차를 막은 차를 먼저 치우기 |
| 2 | 파이프 잇기 | 칸을 눌러 90도 회전, 끊긴 곳 없이 하나로 | 3×3 → 7×7 | 끝이 막힌 관(점 하나)부터 맞추기 |
| 3 | 미로 | 왼쪽 위에서 오른쪽 아래 주황 칸까지 | 7×7 → 15×15 | 오른손 벽 따라가기 |
| 4 | 한 붓 그리기 | 점을 눌러 모든 선을 한 번씩만 | 5선 → 12선 | 홀수 선이 모인 점에서 출발 |
| 5 | 물 붓기 | 같은 색 위나 빈 병에만 부어 병마다 한 색 | 3색 → 6색(마지막은 5층) | 빈 병 두 개를 비워 두기 |
스트라이커즈 1945 방식의 세로 스크롤 비행 슈팅. 시작 화면에서 기체를 고르고(좌우 탭 · ← → · 숫자 1~5), 가운데를 탭하면 출격. 사격은 자동.
| 기체 | 주무장 | 폭탄 | 특징 |
|---|---|---|---|
| 참매 F-1 | 쌍발 직사포, 5단에서 확산+유도탄 | 대형 폭탄 — 전 화면 폭발 | 균형형, 처음 하는 사람에게 권장 |
| 창 P-2 | 고속 관통 철갑탄 (4단부터 관통) | 융단 폭격 — 위에서 아래로 폭탄이 쏟아짐 | 가장 빠름, 좁고 강함 |
| 부채 S-3 | 광각 산탄 3→11발 | 폭풍 방벽 — 6초 무적, 닿는 적 파괴 | 화면 넓게 커버, 화력 약함 |
| 솔개 K-4 | 유도 미사일 자동 조준 | 유도탄 폭우 — 16발 일제 발사 | 조준이 서툴러도 됨, 폭탄 4개 |
| 곰 B-5 | 중포 + 3단부터 광역 레이저 | 섬멸 광선 — 3초간 전방 관통 | 느림, 기체 1대 더 있음, 폭탄 2개 |
| 스테이지 | 이름 | 보스 | 특징 |
|---|---|---|---|
| 1 | 동해 상공 | 수상요새 「해룡」 | 기본 편대, 지상 포대 |
| 2 | 폭풍 전선 | 중폭격기 「흑뢰」 | 야간, 폭격기·에이스 등장 |
| 3 | 요새 상공 | 공중전함 「천공」 | 포대 4기, 밀도 상승 |
| 4 | 빙하 해협 | 쇄빙순양함 「백호」 | 부유 지뢰(파괴 시 8방향 파편), 급강하 헌터 |
| 5 | 화산 본토 | 화산포대 「염제」 | 전 적 종류 총력전 |
소중한 두 사람을 위해 만든 관람차 리듬 퍼즐. 버스 피버(Bus Fever)의 「같은 색 손님을 꽉 채워 출발시키는 쾌감」을 오마주했다. 배정(配定) = 손님을 알맞은 자리에 앉힌다는 뜻도 겹친다.
크레이지 아케이드 방식. 물풍선을 놓으면 2.4초 뒤 십자로 물줄기가 터지고, 상자를 부수면 아이템(🎈 풍선 개수 · 💧 물줄기 길이 · 👟 속도 · 💗 하트)이 나온다. 물줄기에 맞은 캐릭터는 물방울에 갇힌다.
| 모드 | 진행 | 규칙 |
|---|---|---|
| 혼자 하기 | 5스테이지, 하트 3개 | 스테이지의 적(느림보·추격이·풍선마·날쌘돌이)을 모두 물방울에 가두면 클리어. 남은 시간×5점 보너스. 아이템은 다음 스테이지로 유지 |
| 온라인 대결 | 3판 2선승, 최대 4명 | 「방 만들기」로 4글자 코드를 받고, 상대는 같은 페이지에서 코드 입력 → 참가. 마지막까지 남은 사람이 라운드 승리. 갇힌 상대를 건드리면 즉시 터뜨릴 수 있음. 라운드마다 아이템 초기화, 라운드 2분. 방해꾼 AI 0~2명 선택 |
한글을 처음 배우는 학생이 수업 자투리 시간에 혼자 할 수 있도록 만든 놀이. 자모를 하나씩 외우는 대신 자음 + 모음 = 글자라는 조립 규칙부터 익힌다. 화면의 글자·낱말은 모두 누르면 소리가 난다.
1단계 「글자 공방」 활동 5개. 채점하는 활동은 문제 6개씩.
| 활동 | 하는 일 | 채점 |
|---|---|---|
| 모음 여섯 | 소리를 듣고 모음 여섯 중 고르기 (ㅏ ㅓ ㅗ ㅜ ㅡ ㅣ) | ★ |
| 글자판 | 자음 줄 × 모음 칸 표에서 아무 칸이나 누르면 ㄴ+ㅗ=노 로 조립되며 소리가 난다 | 없음 |
| 글자 만들기 | 소리를 듣고 자음·모음 조각을 골라 글자를 조립 | ★ |
| 읽어 보기 | 글자·낱말을 보고 아이가 소리 내어 읽고, 녹음해서 본보기 소리와 이어 듣기 | 없음 |
| 낱말 채우기 | 그림을 보고 빠진 글자 한 칸 채우기 | ★ |
글자판이 중심 활동이다. 이웃한 칸(거/고, 그/구)을 번갈아 누르면 헷갈리는 소리를 바로 견줄 수 있어 따로 발음 코너를 두지 않았다. 「읽어 보기」를 채점하지 않는 이유는, 맞고 틀리고를 따지면 아이가 입을 닫기 때문이다.
글자판 범위 — 아이가 익숙해지는 만큼 선생님 모드에서 한 칸씩 넓힌다. 낱말도 열린 범위로 쓸 수 있는 것만 나온다.
| 범위 | 자음 | 모음 | 글자 수 |
|---|---|---|---|
| 1 | ㄱ ㄴ ㄷ ㅁ ㅅ | ㅏ ㅓ ㅗ ㅜ ㅣ | 25 |
| 2 | + ㅂ ㅈ ㅎ | + ㅡ | 48 |
| 3 | + ㄹ ㅇ ㅊ ㅋ ㅌ ㅍ | (그대로) | 84 |
| 4 | (그대로) | + ㅑ ㅕ ㅛ ㅠ ㅐ ㅔ | 168 |
hangul/audio/voice.mp3 한 파일에 들어 있고, data.js의 구간표를 보고 필요한 부분만 재생한다. 파일 방식이라 아이폰에서도 막히지 않고 어느 기기에서나 같은 목소리가 난다. 클로바더빙(웨일스페이스 학교 계정)으로 만들었다. 파일을 못 읽으면 기기 내장 기계 음성으로 대신 읽는다.hangul/소리확인.html을 열고 「줄마다 하나씩 듣기」를 누르면 가·나·다… 열넷이 차례로 나온다. 글자와 소리의 짝이 맞는지 1분이면 확인된다.1234, data.js의 teacherPin에서 변경). 글자판 범위, 학생 별칭, 시트 주소, 열린 단계, 영어 뜻 표시, 마이크 사용, 최근 기록 20건, 진도 초기화.hangul/README.md). 시트에는 실명 대신 별칭(cat01 등)만 들어간다.hangul/data.js만 고치면 된다. 낱말은 words, 글자판 범위는 sets, 활동은 lessons, 쵸코 대사는 choco. 낱말을 새로 넣으면 그 소리도 음성 파일에 있어야 한다.hangul/choco/ 폴더에 idle.png cheer.png happy.png retry.png 4장을 넣으면 그 그림으로 바뀐다. 학생이 직접 그린 쵸코로 바꿔 줄 수 있다.종이 학습지 — hangul/worksheets/에 인쇄용 PDF 두 가지가 있다. 1단계학습지.pdf(A4 9장)는 1범위 스물다섯 글자를 획 순서 안내선과 함께 쓰게 하고, 7장째는 아이가 색칠해 채우는 진도표다. 읽기확인표.pdf(A4 2장)는 아이가 지금 어디까지 읽는지 재는 표로, 시작하기 전에 한 번 재 두어야 나중에 늘었는지 알 수 있다.
사물놀이 삼도농악가락의 삼채(덩덕궁이) 한 장단을 장구로 직접 쳐 보는 리듬 놀이. 1단계 시험판이라 장구 한 악기, 삼채 한 장단만 들어 있다.
index.html 안 PATTERN 객체에 JSON으로 분리돼 있어 코드가 아니라 숫자만 고치면 된다(숫자 = 장단 안의 소박 자리, 0~11).INST 표의 함수만 파일 재생으로 바꾸면 된다.폴더 mango/ · 사건 1 「사라진 도토리묵」, 사건 2 「찢어진 축제 포스터」. 가로 화면 전용이라 세로로 들면 돌려 달라는 안내만 나온다.
주소는 하나다: https://fifa3827-lgtm.github.io/classroom-games/mango/
사건 고르기. 표지 아래 📁 사건 목록에서 고른다. 사건을 하나 풀면 다음 사건이 열리고, 푼 사건에는 ✓가 붙는다.
열쇠말 (선생님용). 진도는 그 기기의 브라우저에만 남는다. 공용 태블릿이라 아이가 매번 같은 기기를 쓰지 못하거나, 아이폰 사파리가 저장을 지운 경우(사파리를 쓴 날로 7일 동안 사이트를 안 열면 지운다) 목록이 초기화된다. 그럴 때 사건 목록에서 잠긴 사건을 누르고 열쇠말을 넣으면 어느 기기에서든 열린다. 띄어쓰기는 무시한다.
| 열 사건 | 열쇠말 |
|---|---|
| 사건 2 「찢어진 축제 포스터」 | 도토리묵 |
| 사건 3 「시계탑 종이 안 울린 아침」 | 압정 |
열쇠말을 모르는 아이도 **「그래도 열기」**로 들어갈 수 있다. 잠금은 순서를 권하는 것이지 막는 문이 아니다 — 저장이 날아가도 게임을 못 하게 되는 일은 없어야 한다.
저장이 지워지지 않게 하려면 홈 화면에 추가해서 여는 것이 가장 확실하다(사파리의 7일 규칙에서 빠진다). 아이폰은 공유 → 홈 화면에 추가, 안드로이드는 크롬 ⋮ → 홈 화면에 추가.
활동 구성: 의뢰 → 현장 조사 → 심문 → 추리 → 소거 → 지목. 하단 바의 네 탭(현장·심문·수첩·추리)으로 언제든 오갈 수 있다.
조작법: 현장에서는 확대경을 끌어 살펴보고, 이름표가 뜨면 「조사하기」를 눌러야 수첩에 기록된다(대기만 해서는 모이지 않는다). 심문에서는 수상한 말을 누른 뒤 단서를 들이댄다. 추리 탭에서는 단계마다 근거 단서와 그 단서가 증명하는 것을 함께 고르고, 다 채운 뒤 한 번에 제출한다.
사건 1의 논리 (지도 교사용)
| 단계 | 근거 단서 | 증명되는 것 |
|---|---|---|
| 1 | 부스러기 자국 | 통은 뒷문으로 나갔다 |
| 2 | 뒷문 밀대 (안에서만 열림) | 범인은 급식실 안에 있었다 |
| 3 | 창문 걸쇠 + 「앞문을 잠갔다」 증언 | 밖에서 들어온 사람은 없다 |
| 4 | 화단의 빈 통 (양쪽 손잡이) 또는 「통은 둘이 든다」 증언 | 범인은 둘 이상이다 |
| 5 | 「도우미 둘은 설거지실」 증언 | 그 시각 안에 있던 사람은 콩이와 콩순이뿐 |
소거: 도토는 갈색 꼬리(목격된 건 회색), 모리는 그 시각 안에 없었음, 양 아주머니는 혼자라 통을 못 듦, 「둘 중 한 명만」은 양쪽 손잡이 때문에 불가능. 정답은 콩이와 콩순이 둘 다.
막혔을 때 볼 것: 두 번 틀리면 어긋난 단계가 빨갛게 표시되고, 세 번째에는 이유까지 설명해 준다. 상단 💡 등불을 누르면 등불 하나를 써서 위치를 물어볼 수도 있다. 실패해도 진행이 막히지 않으므로 아이가 포기할 일은 없다. 다만 「본인이 그렇게 말했으니까」를 지울 이유로 고르는 실수가 흔한데, 이때가 증언과 증거의 차이를 짚어 주기 좋은 순간이다.
창턱 바깥의 붉은 흙 발자국은 이 사건과 무관한 「이상한 단서」다. 앞으로 이어질 이야기의 씨앗이므로 정답에 쓰이지 않는다. 사건 2 「찢어진 축제 포스터」의 논리 (지도 교사용)
사건 1과 묻는 것 자체가 다르다. 「누가 했나」가 아니라 **「정말 사건인가」**이고, 정답은 **「아무도 찢지 않았다 — 바람이 찢었다」**이다. 1단계는 조각 맞추기 퍼즐을 풀어야 찢긴 선의 모양이 드러나므로 퍼즐이 곧 단서다(장식이 아니다).
| 단계 | 근거 단서 | 증명되는 것 |
|---|---|---|
| 1 | 맞춘 포스터 (조각 퍼즐) | 손으로 찢긴 게 아니다 — 찢긴 선이 부채꼴로 퍼진다 |
| 2 | 압정 구멍 둘 | 위쪽만 고정돼 있었다 (옆 포스터들은 네 귀퉁이) |
| 3 | 한쪽으로 몰린 낙엽 + 흩어진 조각 | 한 방향으로 센 바람이 불었고 조각은 바람에 날렸다 |
| 4 | 발자국 없는 젖은 흙 | 간밤에 게시판 앞에 선 사람이 없다 |
| 5 | 맞춘 포스터 + 젖은 흙 | 아무도 찢지 않았다 |
소거: 도토는 젖은 흙에 발자국이 없어서, 콩이는 잘못 붙인 것과 찢은 것이 다른 일이라서, 모리는 오려진 자국이 칼로 곧은 데 비해 이 포스터는 찢겨 부채꼴이라서, 「누군가 한 사람」은 발자국·바람·고정 상태 어느 것으로도 설명되지 않아서 지워진다.
이 사건의 핵심은 두 가지다. 하나, 콩이가 스스로 「내가 그랬다」고 말하지만 자백은 증거가 아니다. 둘, 사건 1에서 콩이가 거짓말했다는 기억이 그대로 편견이 된다 — 「지난번에 그랬으니 이번에도」는 근거가 못 된다는 것을 아이가 직접 겪게 하는 사건이다.
옆 게시판의 「광장」 글자만 오려진 포스터가 사건 2의 「이상한 단서」다. 사건 1의 붉은 발자국이 광장 쪽에서 왔다는 것과 이어지는 씨앗이라 해결에는 쓰이지 않는다.
난이도 두 가지는 문제가 아니라 도움의 양이 다르다. 「처음이에요」는 심문에서 수상한 말에 밑줄이 그어지고, 틀리면 어느 단계가 왜 틀렸는지 바로 알려 주며, 60초 막혀 있으면 힌트가 뜬다. 「추리게임 해봤어요」는 밑줄이 없고 세 번째 실패에야 이유까지 간다. 단서 수·추리 단계·선택지·별점 기준은 같다.
배경음악. 수노로 만든 두 곡이 mango/audio/ 에 있다. 표지·인트로·해결 화면에는 「탐정 망고의 사무소」, 현장·심문·추리에는 선율이 거의 없는 「단서를 따라서」가 깔린다. 파일을 지우면 브라우저가 직접 합성하는 탐정 재즈로 돌아가므로 게임은 그대로 돈다.
이어하기. 하던 사건은 브라우저에 자동으로 저장된다. 화면을 끄거나 새로고침해도 첫 화면에 「하던 사건이 있어요」가 떠서 그 자리에서 이어갈 수 있고, 「처음부터 새로」를 누르면 지워진다. 저장은 그 기기의 그 브라우저에만 남으므로, 공용 태블릿에서 자리를 옮기거나 집에서 마저 하려면 첫 화면의 🔑 백업 코드를 받아 다른 기기에 붙여 넣으면 된다. 학교 태블릿을 여럿이 돌려 쓴다면 수업 끝에 「처음부터 새로」를 눌러 두는 편이 다음 학생에게 깔끔하다.
파일 구성 (사건을 더 만들 때). 처음에는 index.html 한 파일이었지만, 사건을 늘리기 좋게 나눠 두었다.
| 파일 | 하는 일 |
|---|---|
index.html | 화면 뼈대만. 사건 내용은 들어 있지 않다 |
css/style.css | 보이는 모양 |
js/game.js | 게임 진행 규칙 (사건이 바뀌어도 그대로) |
js/audio.js | 말소리·효과음·배경음악 (음원 파일 없이 직접 합성) |
js/save.js | 이어하기 저장과 백업 코드 |
data/case-01.json | 사건 1의 모든 내용 — 장면, 단서, 인물, 대사, 추리 단계, 정답 |
사건 2를 만들 때 고칠 파일은 data/case-02.json 하나뿐이고 코드는 건드리지 않는다. 다 쓴 뒤 lint.html을 브라우저로 열어 그 JSON을 넣으면 공정한 추리 규칙을 지켰는지 검사해 준다: 모든 결론이 단서 하나나 앞 결론에서 나오는지, 필요한 단서를 현장에서 다 모을 수 있는지, 범인이 아닌 사람이 각각 물리적인 이유로 지워지는지, 「이상한 단서」가 정답에 섞이지 않았는지.
인터넷이 안 되는 교실에서 쓰려면 python3 build-single.py를 돌리면 dist/mango-single.html 한 파일이 나온다. USB로 옮겨 열어도 그림·소리까지 그대로 작동한다.
폴더 neon-snake/, neon-dash/ · 11월 디지털 축제 부스용으로 만든 대결 게임 2종. 두 게임은 로비·방·중계 방식이 같다.
기기 역할. 모든 기기가 같은 주소를 열고, 로비 맨 위에서 역할만 고른다.
| 역할 | 하는 일 |
|---|---|
| 큰 화면 (노트북·TV) | 「중계 방 만들기」 → 방 코드와 QR이 크게 뜸. 방장이라 「시작」「한 판 더」를 여기서 누른다. 게임에는 참여하지 않고, 참가자 6자리도 차지하지 않는다 |
| 태블릿 | 이름·색을 고르고 큰 화면의 QR을 찍거나 방 코드를 넣어 입장. 큰 화면 없이 할 때만 「방 만들기 (중계 없이)」 |
큰 화면용 주소 뒤에 ?spec=1을 붙이면 처음부터 「큰 화면」이 선택된다.
| 게임 | 조작 | 규칙 |
|---|---|---|
| 네온 스네이크 아레나 | 태블릿: 화면 아무 데나 끌어서 방향, 왼쪽 아래 「부스트」 · 데스크탑: 마우스 쪽으로 머리가 따라감, 스페이스바 부스트 (부스트는 길이를 조금씩 소모) | 90초. 상대 몸통이나 벽에 머리를 박으면 탈락, 몸은 먹이로 흩어진다. 50초부터 경기장이 붉게 좁아진다. 끝까지 살아남은 뱀 → 길이 순 |
| DASH! 전력질주! (폴더 neon-dash) | 태블릿: 화면 아무 데나 두드리기 (손가락 여러 개 OK) · 데스크탑: 스페이스바 연타 (클릭도 됨) | 100m 먼저 골인. 끊지 않고 두드리면 콤보로 속도 ×1.5 → ×2 → ×2.5. 최고 속도 제한이 있어서 아무리 빨리 두드려도 10초쯤 걸린다(보통 15초 안팎). 30초 안에 못 들어오면 달린 거리 순 |
온라인 대결에는 게임 서버가 필요하다. 서버는 이 저장소 밖에 있는 Node 웹소켓 서버(festival-game-server)다. 게임 파일 위쪽의 SERVER_URL에 서버 주소(wss://…/ws)를 넣어야 GitHub Pages에서도 방 만들기·입장·중계가 켜진다. 주소가 비어 있으면 로비에 빨간 안내가 뜨고 혼자 연습만 된다. 서버 폴더의 public/에 게임을 넣어 서버 주소로 열면 설정 없이 그 서버에 자동으로 붙는다.
막혔을 때.
폴더 jellypang/ · 파일 하나(index.html)로 동작한다. 답이 정해진 퍼즐이 아니라 물리 놀이라서 정답 대신 구성과 막혔을 때 볼 것을 적는다.
구성. 단계마다 목표(예: 「몽이 × 3」)와 쓸 수 있는 젤리 수가 정해져 있다. 1~15단계는 목표를 직접 정해 두었고, 16단계부터 목표가 커지다가 23단계쯤부터 「보들(9단계) 만들기」로 유지된다. 병 모양은 8가지(둥근 컵·넓은 그릇·좁은 꽃병·깔때기·기둥 컵·기울어진 병·선반 병·모래시계 병). 5단계마다 🔥 어려운 판(젤리 수가 적다).
젤리 11단계와 점수. 콩콩 → 방울(6) → 몽이(12) → 말랑(20) → 통통(30) → 뭉게(42) → 포동(56) → 둥실(72) → 보들(90) → 왕젤리(110) → 무지개(132). 무지개 둘이 만나면 3000점. 성공하면 남은 젤리 1개당 30점, 별은 남은 젤리 비율로 35% 이상 ★3 · 15% 이상 ★2 · 그 밖 ★1.
조작. 병 위를 좌우로 끌고 손을 떼면 떨어진다(컴퓨터는 마우스로 자리를 고르고 클릭). 「톡톡」 흔들기는 단계마다 3번. 3단계부터 7번 합칠 때마다 무지개 사탕(닿은 젤리 한 단계 올림), 6단계부터 얼음 젤리(옆에서 합치기가 일어나야 녹음).
막혔을 때.
폴더 jjukjelly/ · 파일 하나(index.html)로 동작한다.
구성. 그림 20장(하트·버섯·고양이·사과·물고기·병아리·아이스크림·별·꽃·집·딸기·초승달·고래·무지개·토끼·로켓·케이크·우산·판다·선물 상자). 21단계부터는 같은 그림이 ★를 달고 다시 나오며 젤리가 더 길어진다. 퍼즐은 단계 번호로 정해지는 모양이라 항상 풀 수 있고, 답이 여러 개일 수 있다(빈칸 없이 채우고 모든 젤리가 숫자만큼 늘어나면 정답).
조작. 젤리를 누른 채 끌면 늘어난다. 젤리 옆 숫자는 더 늘어날 수 있는 칸 수. 늘어난 젤리를 다시 누르면 그 칸까지 줄어든다. 「처음부터」는 모든 젤리를 되돌린다.
막혔을 때.
폴더 chess3d/ · 파일 하나(index.html)로 동작한다. 3D 그래픽 라이브러리(Three.js)를 인터넷에서 불러오므로 인터넷이 연결되어 있어야 한다. 정답이 있는 게임이 아니라서 구성과 막혔을 때 볼 것을 적는다.
구성. 상대는 10단계: 견습 시종 → 마을 파수꾼 → 성문 경비병 → 젊은 기사 → 원탁의 기사 → 왕실 근위대장 → 전략가 주교 → 대원수 → 여왕의 책사 → 체스 황제. 처음부터 아무 단계나 고를 수 있다. 16단계는 일부러 실수를 섞어 두어서 체스를 막 배운 학생도 이길 수 있고, 7단계부터는 실수 없이 4수 이상을 내다본다. 10단계는 한 수에 최대 45초 생각한다. 단계가 오를수록 신전의 조명 색이 바뀐다(파랑 → 초록 → 노랑 → 주황 → 빨강 → 보라 → 금빛).
보스전과 보물. 대국을 시작하면 보스가 한마디 하며 등장한다(화면을 누르면 건너뜀). 체크메이트로 이기면 상대 킹이 쓰러지고 불꽃놀이가 터지며, 그 보스를 처음 꺾었을 때 보물이 하나 열린다. 1 크리스털 말 · 2 얼음 궁전 무대 · 3 옥 말 · 4 용암 동굴 무대 · 5 황금 군단 말 · 6 노을 정원 무대 · 7 불꽃과 얼음 말 · 8 별의 바다 무대 · 9 별빛 말 · 10 황제 말. 받은 말과 무대는 메뉴의 「보물 창고」에서 언제든 바꾼다. 지면 내 킹이 쓰러지고, 결과 창의 「무르고 이어 두기」로 바로 되돌릴 수 있다.
조작. 내 말을 누르면 갈 수 있는 칸에 초록 점(잡을 수 있는 말은 초록 고리)이 뜨고, 그 칸을 누르면 움직인다. 화면을 끌면 체스판이 돌아가고, 두 손가락(마우스는 휠)으로 확대·축소한다. 🎥는 앉은 시점 ↔ 위에서 내려다보는 시점, ↶는 내 수 하나 무르기(컴퓨터 수와 함께), ☰는 메뉴(대국 중이면 기권).
규칙. 캐슬링·앙파상·승급(퀸·룩·비숍·나이트 중 고름)을 모두 지원한다. 체크메이트·스테일메이트, 그리고 무승부 세 가지(50수 동안 잡기·폰 이동 없음, 같은 장면 3번, 양쪽 모두 메이트할 말 부족)를 판정한다.
막혔을 때.
폴더 keycap/ · index.html + js/ 7개 파일로 동작한다(js/sounddata.js 는 녹음한 키보드 소리, 출처는 sounds/출처.txt). 답이 하나로 정해진 퍼즐이 아니라서 구성과 막혔을 때 볼 것을 적는다.
구성. 손님 7명 × 10판 = 70판(1-1 ~ 7-10). 손님마다 🔥 어려운 판이 몇 개 섞여 있고, 10판은 👑 마지막 판. 앞 판을 깨야 다음 판이 열린다. 5판을 처음 깨면 부품 하나, 10판을 깨면 「키보드 완성」 창에서 스위치·키캡·몸체를 골라 손님에게 건넨다(♥는 손님 취향, 맞지 않아도 다음 손님이 열린다). 손님을 끝낸 뒤 그 손님 판에서 별 24개를 모으면 아티산 키캡을 받는다.
조작. 같은 색 키캡을 손가락(마우스)으로 끌어 잇는다. 대각선도 되고 한 칸 뒤로 가면 취소. 이동 수 안에 목표(색 개수·방해물)를 채우면 성공. 같은 색 6개 이상을 이은 줄을 그 줄의 키캡으로 다시 닫으면 「고리」로 그 색이 모두 터진다. 기능 키(space·⏎·⇧·⌫·Tab·Esc)는 어느 색 줄에나 끼울 수 있고, 쓰면 3턴 쉰다(Esc는 이동 +3, 한 판에 한 번).
막혔을 때.
폴더 gyojeongso/ · index.html 하나로 동작한다. 답이 있는 활동이 아니라 작업 도구라서 구성·조작·막혔을 때 볼 것을 적는다. 토큰이 드는 자동 찾기는 넣지 않았고, 모든 계산은 브라우저 안에서 한다.
구성. 그림을 올리면(고르기·끌어다 놓기·Ctrl+V) 편집 화면이 된다. 왼쪽은 그림, 오른쪽은 「고칠 곳」 패널. 네모마다 「글자 고치기」 또는 「지우기만」을 고른다. 고친 글자는 원래 글씨의 자리·높이·색에 자동으로 맞춰 쓴다(두 줄 글씨도 줄 위치를 따른다). 글꼴 10종, 크기 숫자 입력, 굵게·그림자·정렬, 그림에서 색 고르기.
조작.
원래이름_고침.png 이 다운로드 폴더에 저장된다.막혔을 때.