출처
- 원문: https://discuss.pytorch.kr/t/world-of-claudecraft-mmo/11241
- 작성자: 9bow
- 원문 게시 시각: 2026-07-15 23:30:09 UTC
- raw: raw source:
web-2026-07-16-pytorchkr-topic-11241-world-of-claudecraft-mmo
개요
World of ClaudeCraft는 브라우저에서 플레이하는 클래식 스타일 MMO와 AI 에이전트용 Gymnasium 강화학습 환경을 함께 제공하는 오픈소스 프로젝트입니다. src/sim/의 결정론적 게임 코어 하나가 오프라인 브라우저 월드, PostgreSQL 기반 권위 서버, 헤드리스 강화학습 환경에서 공통으로 실행됩니다. 고정 틱과 시드 기반 난수 생성기를 사용하므로 같은 시드로 에피소드를 재현할 수 있으며, 온라인 전투·전리품·퀘스트 판정은 서버가 담당합니다. Python 바인딩은 NDJSON 환경 서버를 감싸 reset·step·close 방식으로 게임 코어를 다룰 수 있게 합니다.
핵심 포인트
- 설계 원칙은 “하나의 시뮬레이션, 세 호스트”이며, 세 실행 환경의 동작 일치를 테스트로 검증합니다.
- 시뮬레이션은 초당 20틱(
DT = 1/20)의 고정 틱으로 진행되고,src/sim/은 DOM·브라우저·Three.js에 의존하지 않습니다. - 강화학습 환경은
headless/env_server.ts가Sim을 감싸고,python/바인딩이 이를 서브프로세스로 실행하는 구조입니다. - 행동 공간은 이동·타겟 지정·공격·능력 사용·상호작용·먹기·마시기를 포함하는
Discrete공간이며, 관찰 공간은 플레이어·능력·타겟·주변 몬스터·상호작용 대상·퀘스트 진행을 담는Box공간입니다. - 보상은 경험치, 가한 피해와 받은 피해, 처치, 사망, 퀘스트 진행, 레벨업 등의 틱별 변화량을 가중합해 계산하며, 기본
step하나가 시뮬레이션 5틱을 진행합니다. - 게임 콘텐츠는 9개 직업, 직업별 3개 특성 트리, 1~20레벨 구간의 3개 오픈월드 존, 약 80개 퀘스트, 던전·월드 보스·PvP 아레나 등을 포함한다고 소개됩니다.
- 저장소는 MIT 라이선스로 공개되어 있으며, 브라우저 개발 서버는
npm install과npm run dev, 지속 캐릭터를 포함한 서버 호스팅은 Docker Compose와 PostgreSQL로 실행할 수 있습니다.
왜 중요한지
게임을 별도로 복제한 시뮬레이터가 아니라 브라우저·온라인 서버·헤드리스 환경이 같은 코어를 사용하므로, 환경과 서비스 사이의 동작 차이를 줄이는 설계 사례로 볼 수 있습니다. 시드와 고정 틱을 이용한 결정론은 강화학습 에피소드의 재현과 디버깅에 유리합니다. 다만 게시글은 프로젝트 구조와 사용법을 소개하는 자료이며, 특정 에이전트의 학습 성능이나 벤치마크 결과를 제시하지는 않습니다.
후속으로 볼 링크 / 키워드
- 프로젝트 플레이: https://worldofclaudecraft.com/
- GitHub 저장소: https://github.com/levy-street/world-of-claudecraft
- Gymnasium: https://gymnasium.farama.org/
- 강화학습 환경 코드: https://github.com/levy-street/world-of-claudecraft/tree/main/headless
- Python 바인딩과 예제: https://github.com/levy-street/world-of-claudecraft/tree/main/python
- 관련 위키: ai-agents, moc-ai-agents
- 키워드: 결정론적 시뮬레이션, authoritative server, Gymnasium, NDJSON,
reset/step/close, 고정 틱, 에이전트 강화학습, 웹 MMO
원문 보존 위치
원문 전체는 raw source: web-2026-07-16-pytorchkr-topic-11241-world-of-claudecraft-mmo에 저장되어 있습니다.