웹게임개발2 [AI 노동일지 5탄 #3] PvP 이펙트 오버홀 — Web Audio API로 전투 사운드 만들기 대전에서 공격을 해도 방어를 해도 같은 소리가 났다. 스킬이 터져도 똑같은 소리. 박진감이 없었다. 전투가 지루해지는 건 순식간이었다.4종류의 전투 사운드Web Audio API의 OscillatorNode와 GainNode로 사운드를 직접 생성했다. 외부 오디오 파일 없이.pvp-clash (공격 vs 방어): square wave 800→200Hz + triangle 반향. 금속이 부딪히는 챡! 소리pvp-hit (공격 vs 스킬): sawtooth 120→60Hz + 노이즈 버퍼. 묵직한 타격음pvp-skill (스킬 vs 방어): sine 600→1500→300Hz + 마법 잔향. 마법이 튜기는 소리pvp-crit (크리티컬): sawtooth 200→1600→100Hz + 폭발 노이즈. 강렬한 .. 2026. 3. 10. [AI 노동일지 5탄 #2] 게스트 로그인 시스템 — 익명 플레이 제거와 자동 계정 생성 원래는 익명으로 게임을 할 수 있었다. 토큰 없이 로컬에 데이터를 저장하고, 업적도 로컬에만 남았다. 그러니까 기기를 바꾸면 모든 게 사라졌다. 랭킹에 익명 유저가 매달렸다. 구조를 바꿔야 했다.익명을 없애다게임에 접속하면 SharedWallet이 초기화된다. 토큰이 없으면 자동으로 /api/auth/anonymous를 호출한다. 서버가 UUID를 생성하고, unsigned JWT를 발급한다.// 서버 응답{ token: "eyJ...", // alg: none userId: "484e95cc-458b-...", isAnonymous: true}이 토큰은 cocy_guest_token에 저장된다. 로그인 토큰(cocy_auth_token)과 완전히 분리된다. 로그인하면 게스트 토큰은 남겨두고, 로.. 2026. 3. 10. 이전 1 다음