슉슉 순간이동하는 알 | 디지몬 육성기 개발일지 1화

SMCo STUDIODEVLOG
DAY 02 · 2026.08.12

디지몬 육성기 개발일지 · 1화

슉슉 순간이동하는 알

부화 연출과 이동을 넣었다. 그런데 알이 걷는 게 아니라 화면을 순간이동하기 시작했다.

0화에서 만든 건 "눌리는 버튼 3개 달린 배경화면"이었다. 디지몬이 화면에 있지도 않았다. 오늘은 그 껍데기 안에 진짜 살아 움직이는 걸 넣는 날이다 — 부화, 이동, 스탯. 결과부터 말하면 셋 다 들어가긴 했는데, 그 과정에서 알이 잠깐 동안 순간이동 능력을 얻었다.

01오늘 할 일

세 가지를 목표로 잡았다.

  1. 알 상태에서 화면에 실제로 떠 있게 하기 (지금까지는 아무것도 없었다)
  2. PLAYAREA 안에서 좌우로, 그리고 위아래로도 자유롭게 움직이게 하기
  3. 배고픔·힘·무게 같은 스탯을 실제 값으로 만들고 화면에 반영되게 하기
Shell.png 액정 안에 알이 떠 있는 모습, 실제 게임 인게임 캡처
오늘의 출발점. 실제로 게임을 돌려서 찍은 화면이다 — 알만 덩그러니 화면 가운데 떠 있다. 아직 아무것도 움직이지 않는다.

02오늘의 삽질

이동을 이렇게 시켰다. "1분 지나면 알이 좌로 2도트(0.5초), 우로 4도트(0.5초)…" — 동작마다 걸리는 시간을 0.5초로 맞춰서 준 것이다. 그런데 막상 돌려보니 거리는 다른데 시간은 같으니까 속도가 매번 제멋대로였고, 한 도트씩 걷는 게 아니라 그냥 다음 자리로 슉 하고 나타났다. 설상가상으로 그때는 화면 경계를 잡아주는 것도 없어서, 알이 위아래로도 마음대로 튀어 다녔다 — PLAYAREA를 아예 벗어나서 떠다니는 것도 봤다.

실제로 보낸 요청 그대로

"애니메이션이 한번에 슉슉 순간이동하는 느낌이야. 1도트씩 움직여야 해. 좌/우로 움직일 때 1도트당 0.2초의 속도로 움직이게 바꿔줘."

"몇 초 동안 움직여라"가 아니라 "1도트당 몇 초로 움직여라"로 바꿔서 말한 게 핵심이었다. 그리고 움직일 수 있는 범위 자체를 PLAYAREA 사각형으로 고정해서, 그 밖으로는 애초에 못 나가게 막았다. 이후로 이동 관련 요청은 전부 "도트당 속도"로만 줬다 — 이 프로젝트에서 가장 먼저 배운 교훈 중 하나다.

03잘된 것

이동 버그만 빼면 나머지는 순조로웠다.

  • 알이 60초 뒤 부화하는 타이머가 첫 시도에 정확히 돌았다
  • Idle 애니메이션을 "초 / 프레임 / 스프라이트 번호 / 이동 도트수 / 방향" 5열 표로 통째로 줬는데 120프레임짜리가 그대로 들어갔다
  • 배고픔·힘·무게가 실제 값으로 바뀌면서 화면 위쪽 아이콘 상태도 같이 갱신됐다
부화한 쁘띠몬이 액정 화면 가운데 서 있는 모습, 실제 게임 인게임 캡처
60초가 지나고 알이 깨서 쁘띠몬이 나왔다. 이것도 합성이 아니라 실제로 게임을 끝까지 돌려서 얻은 화면이다.

04실물기 비교 테스트

오늘도 아직 실물기 사진을 꺼내서 도트 단위로 맞춰볼 단계는 아니었다. 지금은 "부자연스러워 보이지 않는지"를 눈으로 확인하는 정도였다 — 걷는 게 뚝뚝 끊기지 않는지, PLAYAREA 안에서만 얌전히 도는지. 도트 하나하나를 실물기와 대조하는 진짜 검증은 며칠 뒤, XAI 연출을 만들 때 가서야 시작된다 (그리고 그때는 도트매트릭스 배경이 0.3도트 밀려 있는 걸 잡느라 30분을 쓴다).

05다음에 할 것

스탯이 화면에 뜨긴 했지만 아직 갈 길이 멀다. 다음은 진화 트리를 다루는 에디터 차례인데, 미리 스포일러를 하나 남기면 — 여기서 게임 로직이 아니라 에디터 내부 API를 붙잡고 1시간 넘게 헤매게 된다. "connections_layer is missing" 에러만 붙잡고 십수 번을 되묻는 진풍경이 예정되어 있다.

i정보 코너

여기부터는 순수 기술 정보만 모아뒀습니다. 굳이 안 읽으셔도 위 내용 이해에는 지장 없습니다.

ENGINEGodot 4.7 (Mobile 렌더링)
오늘 만든 노드MovementManager, StatManager, AnimationManager, DigiCore (상태 저장소)
이동 방식 변경"동작당 고정 시간" → "1도트당 0.2초" — 거리가 달라도 속도가 일정해짐
이동 범위PLAYAREA 사각형으로 클램프 (오늘 이전엔 경계 없이 화면 밖까지 나감)
Idle 애니메이션초 / 프레임 / 스프라이트 번호 / 이동 도트수 / 방향 — 5열 표 120프레임 통째로 반영
부화 타이머60초 (실제 기기와 동일한 wall-clock 기준)
재현 목표"비슷한 게임"이 아니라 실물기(Digital Monster X, XB 버전) 사양 그대로
#디지몬#Godot#ClaudeCode#인디게임개발#개발일지

← 이전 화: 0화 · "Node2D는 뭐야?"
다음 화 → 2화 · 1시간 동안 같은 에러만 봤다

SMCo STUDIO — 코딩 모르는 사람이 AI랑 게임엔진만으로 게임을 만드는 기록 DAY 02 / ???
이 화만 요약해서 인스타그램에도 올려뒀습니다.
인스타그램에서 보기 →
SMCo STUDIODEVLOG
DAY 02 · 2026.08.12

Digimon Raising Sim Devlog · Episode 1

The Egg That Learned to Teleport

I added a hatch animation and movement today. Instead of walking, the egg started teleporting around the screen.

Episode 0 ended with "a background image with three clickable buttons." No Digimon on screen at all. Today was about putting something alive inside that shell — hatching, movement, stats. Spoiler: all three landed, but along the way the egg briefly picked up teleportation as a side effect.

01Today's goals

Three things, in order.

  1. Get the egg actually rendering on screen (there was nothing there before)
  2. Let it move freely inside PLAYAREA — left/right, and up/down too
  3. Turn hunger/strength/weight into real values that actually show on screen
An egg sitting inside the LCD screen inside Shell.png, real in-game capture
Where today started. This is a real capture from actually running the game — just an egg sitting dead center. Nothing moves yet.

02Today's mess

I specified movement like this: "after 1 minute, the egg moves 2 dots left (0.5s), 4 dots right (0.5s)…" — every motion got the same 0.5-second duration. Once it actually ran, different distances with the same duration meant wildly different speeds, and instead of stepping dot by dot, the egg just snapped straight to the next spot. To make it worse, there was no boundary clamp yet, so it could jump up and down freely too — I watched it float clean outside PLAYAREA more than once.

the actual request, verbatim (translated)

"The animation feels like it's teleporting all at once. It needs to move one dot at a time. Change the left/right movement to a speed of 0.2 seconds per dot."

The fix was switching from "move for X seconds" to "move at X seconds per dot" — that was the key. On top of that, I locked the movable area to the PLAYAREA rectangle itself, so it simply couldn't leave. Every movement request from then on was specified as dots-per-second, full stop — one of the earliest hard lessons of this whole project.

03What went well

Aside from the movement bug, everything else landed cleanly.

  • The 60-second hatch timer fired exactly on schedule, first try
  • The idle animation went in as a single 5-column table — seconds / frame / sprite number / movement dots / facing — and a full 120-frame table dropped in intact
  • Hunger/strength/weight started reflecting real values, and the icon row at the top updated right along with them
A freshly hatched Puttimon standing in the middle of the LCD screen, real in-game capture
60 seconds later, the egg cracked open and Puttimon came out. Also not a composite — this is a real screen from letting the game actually run to that point.

04Comparing against the real device

Still too early for dot-by-dot comparison against real device photos. Today's "verification" was just eyeballing whether it looked unnatural — no jerky steps, staying obediently inside PLAYAREA. Actual dot-level comparison against the real hardware doesn't start for a few more days, when the XAI sequence gets built (and that's when 30 minutes get burned tracking down a dot-matrix background that's drifted 0.3 dots off).

05What's next

Stats are on screen now, but there's a long way to go. Next up is the evolution tree editor — and here's a spoiler: this is where more than an hour gets lost, not on game logic but on wrestling with the editor's internal API. A parade of "still nothing shows up," chasing down a single "connections_layer is missing" error more than a dozen times, is already scheduled.

iInfo corner

Pure technical detail from here down. Skipping it won't hurt your understanding of the above.

ENGINEGodot 4.7 (Mobile rendering)
Nodes added todayMovementManager, StatManager, AnimationManager, DigiCore (state store)
Movement fix"fixed time per motion" → "0.2s per dot" — speed now stays constant regardless of distance
Movement boundsClamped to the PLAYAREA rect (before today, no boundary at all — it could leave the screen)
Idle animationseconds / frame / sprite number / movement dots / facing — a 5-column, 120-frame table dropped in whole
Hatch timer60 seconds (same wall-clock basis as the real device)
Fidelity targetNot "a similar game" — the exact rules of the real device (Digital Monster X, XB version)
#Digimon#Godot#ClaudeCode#IndieGameDev#DevLog
SMCo STUDIO — a record of making a game with AI and a game engine, knowing no code DAY 02 / ???

댓글

이 블로그의 인기 게시물

DXRP v0.2 — 두 기기를 한 화면에, 서로 싸우게

DXRP v0.1 안드로이드 APK 공개

DXRP v0.1 — 액정 육성 게임, PC에서 무료로