왜 제목이 ‘...for narrative games’인지 궁금증 생김 어젯밤 텍스트 기반 어드벤처 게임 아이디어가 떠오름 이 도구의 아이디어는 텍스트와 대화를 이용하여 간단한 어드벤처 게임을 선언적으로 만들 수 있게 해주는 점이라고 생각 공식 소개 문서에서: 당연히 텍스트 어드벤처 엔진이라고 생각함 프랑스어 버전 사이트에서만 ‘narrative’ 예시가 두 개 더 제공됨 The Magic Mushroom 게임 굉장함 이 구성 방식이 정말 마음에 듦 아기자기한 툴 느낌 game.prompt(“Dude, you ran out of eggs!|Would you like to buy|an 80 pack of eggs?”, “Yes”, “No”); 코드 예시 공유 await game.openDialog(“Dude, you ran out of eggs!|Would you like to buy|an 80 pack of eggs?”) 달걀이 한 개였는데 어떻게 마흔 개가 됨? 의문 제기 진정 영감을 주는 프로젝트라는 평가 이건 대단함 멋진 아이디어라는 생각 좋은 아이디어 누군가를 좋아해서 함께 시간을 보내고 싶은 마음이나, 관심을 표시하는 행동이 ‘심프’로 불릴 일은 아님 puzzlescript와 비슷하다는 인상 정말 멋진 툴이라는 감상 이 라이브러리와 상관은 없지만 playground에 적용된 canvas video recorder 작동 방식에 관심 관련 코드 공개 최근 프로젝트에서 canvas video recorder를 살펴봤고, 이 기능이 내장되어 있다는 점이 놀라움Hacker News 의견
라이브러리 공식 페이지에는 ‘narrative’ 게임에 대한 언급이 없는 점 포착
‘narrative game’의 의미에 혼란 있음
샘플 게임들이 내가 생각하는 ‘narrative game’ 정의에 맞지 않음
구글 검색상 나오는 ‘narrative game’과 샘플 게임들의 연결성이 부족함
만약 ‘narrative game’의 보편적 정의가 존재한다면, 이 라이브러리가 다른 게임 엔진과 비교해서 ‘narrative game’ 제작에 특별히 지원하는 기능이 무엇인지 의문 제기
어른이 되어 세금도 내고, 출근도 하고, 집안 청소도 하는 식의 일상적 미션을 수행하는 컨셉
이런 일들을 덜 하면 인생이 힘들어지고, 더 하면 더 쉬워지는 구조
최종 목표는 빚 없이 생을 마감하는 것
Pico-8 같은 일반적인 게임 엔진처럼 메카닉을 중심으로 만드는 용도와는 다름
맵 만들기, 맵 간 이동, NPC, 대화 및 텍스트 트리거 생성이 쉬움
비프로그래머 대상 엔진(RPGMaker 등)도 비슷한데, 거기서도 대부분 유저는 맵과 트리거 위주, 별도의 복잡한 메카닉 없이 텍스트와 대화가 중심인 게임을 만듦
이 도구도 이런 ‘내러티브’ 게임 제작이 쉬운 점을 강조한다고 봄
‘Odyc.js는 픽셀, 사운드, 텍스트, 그리고 약간의 로직을 결합해 내러티브 게임을 만들 수 있게 설계된 작고 가벼운 자바스크립트 라이브러리’ 설명
턴 방식 구조와 메시지, 프롬프트, 대화 위주 포커스 때문에 ‘내러티브’ 또는 텍스트 기반 게임에 어울릴 것 같아 해당 용어를 사용함
하지만 더 좋은 라벨 아이디어가 있다면 기꺼이 바꿀 의향 있음
링크
다수의 자바스크립트 게임 엔진을 만들며 다양한 실험을 했는데, 이건 ‘2시간 안에 키즈용으로 빠르게 완성해야 할 때’와 ‘심도 있게 구조 파악을 하고 싶을 때’ 사이 절묘한 지점 제공
몇 개 게임을 빠르게 만들어 저대역폭 환경에서 아이들 산만하게 해줄 용도로 기대
구체적으로 아이들(요즘 시대의 pygame 같은 느낌) 학습용으로 좋다고 생각
Scratch 등은 5살에게 맞춰 설계해 프로그래밍 내용이 과도하게 쉬움
이 툴은 10살 전후 학생에게 딱 적합
간단한 문자열 조작, 몇 가지 문법 트릭을 배우고, 기본 사이드 스크롤러와 NPC까지만 구현 가능
이후 준비되면 제어 흐름 익히는 경험도 가능
이걸 배워서 아이들 대상 수업 개설이나 놀이터 투자 고려하면 실질적으로 판매도 가능
다른 관점에서는 이 툴로 기초적인 프로시저럴 게임 에셋 생성도 실험할 만함
game.prompt( “Yes”, “No”) 코드 활용 예시
오픈소스임을 확인했으나 라이선스가 누락되어 개발자가 포크 및 수정, 배포 범위를 알기 어렵다는 점 지적
모국어로 번역한 포크도 공개하고 싶은데(크레딧 남길 의향), 괜찮은지 문의
자국은 5% 미만만 영어 사용
모국어가 무엇인지 궁금
좌우 정렬 언어는 번역 적용이 간단하다고 설명
언제든지 포크, PR, 또는 접근해서 접근성 개선에 참여 가능하니 환영
딱 12시간 전에 꼭 필요했던 것
공교롭게도 내가 어젯밤 처음으로 1인 전용 3레벨 짜리 내러티브 연애 게임용 에셋을 만들다 잠듦
게임 개발은 처음
아침에 HN에서 내러티브 게임용 JS 라이브러리가 1위까지 올라온 것을 목격
FTR 내 게임은 심프 게임이고, 쭉 만나온 상대에게 공식 커플 제안용으로 쓰는 중
비슷한 경험: 최근엔 2005년 MSN 채팅 인터페이스를 HTML로 다 재현해누군가에게 추억 선사
정말 따뜻한 경험
더 도와줄 수 있었으면 하는 마음
정말 이 툴이 딱 맞는 사례라고 생각
잘 되길 희망
매우 따뜻하고 배려있는 제안이라 생각
직접 구현해보고 싶음
medium.com 튜토리얼 참고