1시간 동안 같은 에러만 봤다 | 디지몬 육성기 개발일지 2화

SMCo STUDIODEVLOG
DAY 03 · 2026.08.13

AI도 처음 만져보는 화면 앞에서는 사람처럼 헤맨다는 걸 확인한 날

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

1시간 동안 같은 에러만 봤다

진화 트리를 그림으로 편집하는 에디터를 만들어 달라고 했다. 게임 로직이 아니라 도구 그 자체에서 발이 묶였다.

1화에서 알이 부화하고 걷고 배가 고파지는 것까지는 순조로웠다. 오늘 목표는 그 다음 단계 — 종족이 어떤 조건으로 어떤 종족으로 진화하는지를 그림으로 그려 넣을 수 있는 에디터였다. 유니티 프로토타입 때 쓰던 커스텀 에디터를 Godot 애드온으로 다시 만들어 달라고 했는데, 여기서 오늘 하루의 대부분을 썼다. 스포일러: 게임은 한 줄도 안 건드렸는데 제일 오래 걸렸다.

어제와 똑같은 화면에서 서 있는 쁘띠몬, 실제 게임 인게임 캡처
오늘의 쁘띠몬. 어제 찍은 사진 그대로다 — 오늘 일어난 일은 전부 게임 화면 바깥, 에디터 안에서 벌어졌다.

01오늘 할 일

목표는 하나였다. GraphEdit 기반으로 종족 노드를 화면에 늘어놓고, 포트를 드래그해서 진화 경로를 잇고, 옆 패널에서 그 종족의 HP·파워 같은 값을 편집할 수 있는 에디터. "종족 30개, 진화 경로 122개를 손으로 하나씩 텍스트 필드에 입력하는 건 못 한다"는 게 출발점이었다.

02오늘의 삽질

애드온을 만들어 달라고 했더니 화면에 아무것도 안 나왔다. 그때부터 이런 대화가 반복됐다.

실제 대화 로그, 시간 그대로

12:30 "아무것도 안 나오는데 뭐가 잘못된 거지?"
12:33 "여전히 에러 16개. 다 connections_layer is missing"
12:35 "아직도 에러가 나. 화면에 포트도 출력되지 않고"
12:38 "안돼...계속 에러가 난다"
12:49 "에러는 안 뜨는데 여전히 화면에 출력되는 건 없어"
12:51 "여전히 변한 게 없어"
12:53 "응 아직도 안 나와"
12:57 "지금 나왔어. 문제는 1. 화면이 너무 작아 2. 또 다른 에러가 발생함"

27분 동안 같은 에러 메시지 하나(connections_layer is missing)를 붙잡고 열 번 넘게 되물었다. 게임 로직을 짤 때와는 확실히 다른 속도였다 — Godot 에디터 내부 API(GraphEdit, 플러그인 생명주기)는 겪어본 사람이 옆에서 알려주는 것과 문서만 보고 짚어가는 것의 차이가 컸다. 설상가상으로 겨우 화면이 뜬 뒤에도, 애드온을 한 번 고칠 때마다 안에 입력해 둔 HP·몸무게 값이 전부 초기화됐다. 세 번쯤 다시 입력하고 나서야 "이건 도구가 아니라 습관을 바꿔야 하는 문제"라는 걸 깨달았다.

03잘된 것

막혔을 때 "고쳐줘"를 반복하는 대신 구조를 물어본 게 그나마 실마리였다.

실제로 보낸 요청 그대로

"진화트리는 어떤 노드를 활성화하고 새로고침해야 하는 거야? 아니면 별개로 켜지는 애드온이야?"

그리고 데이터가 계속 날아가는 문제는 이렇게 뒤집어 요청했다.

실제로 보낸 요청 그대로

"애드온을 수정할 때 안에 있는 설정들이 자꾸 바뀌어서 계속 새로 넣기 힘든데, 엑셀 파일 형식으로 기입할 수 있게 해주고, 애드온이 수정되어 설정이 모두 삭제되어도 엑셀 파일을 참조해서 자동으로 다시 기입할 수 있게 해줘."

이게 오늘 제일 잘한 요청이었다. 30종 × 122개 진화 연결이 엑셀 한 장에 통째로 들어갔고, 이후로는 애드온을 아무리 고쳐서 설정이 날아가도 import 명령 한 번이면 전부 복구됐다. 에디터도 결국 제대로 떴다 — 종족 노드들이 화면에 늘어서고, 포트를 드래그하면 선으로 진화 경로가 이어지는 그림이 됐다.

완성된 진화 트리 에디터, 종족 노드들이 선으로 연결된 GraphEdit 화면
결국 이렇게 됐다. 27분짜리 에러 사투 끝에 뜬 화면 — 노드마다 선으로 진화 경로가 이어진다.
30종 122개 진화 조건이 들어간 엑셀 파일
애드온이 몇 번을 초기화돼도 이 파일 하나만 있으면 살아났다. 도구를 고치기 전에 데이터부터 빼두는 습관, 오늘 제일 크게 배운 것.

04실물기 비교 테스트

오늘도 실물기 사진을 꺼내 도트 단위로 맞춰보는 단계는 아니었다. 오늘 만든 건 화면에 안 보이는 데이터 구조라서, 비교할 대상 자체가 아직 없다. 도트 단위 대조는 며칠 뒤 XAI 연출부터 본격적으로 시작된다.

05다음에 할 것

에디터도 됐고 엑셀 백업도 됐으니 이제 진화가 잘 될 줄 알았다. 그런데 조건을 다 맞춰 넣고 돌려봤더니, 설정한 경로가 아니라 완전히 다른 종족으로 진화했다 — 디버그 창으로 조건 값을 정확히 맞춰놓고 넘겼는데도 그랬다. 설정 화면이 멀쩡해 보이는 것과 그 값이 실제로 판정에 쓰이는 것은 별개 문제였다. 다음 화는 그 범인을 찾는 이야기다.

i정보 코너

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

ENGINEGodot 4.7 (Mobile 렌더링)
오늘 만든 것진화 트리 에디터 애드온 (GraphEdit 기반, 종족 노드 + 진화 경로 드래그 연결)
막힌 에러connections_layer is missing — 플러그인 생명주기/내부 API 문제, 27분·10회+ 왕복
데이터 유실 대응엑셀 왕복 도구 도입 — 30종 × 122개 진화 조건을 시트 하나로, import 한 번에 복구
교훈"고쳐줘" 반복보다 "구조가 어떻게 되는지" 질문 쪽이 더 빨리 뚫렸다
재현 목표"비슷한 게임"이 아니라 실물기(Digital Monster X, XB 버전) 사양 그대로
#디지몬#Godot#ClaudeCode#인디게임개발#개발일지

← 이전 화: 1화 · 슉슉 순간이동하는 알
다음 화 → 3화 · 범인은 확인용 버튼 안에 있었다

SMCo STUDIO — 코딩 모르는 사람이 AI랑 게임엔진만으로 게임을 만드는 기록 DAY 03 / ???
이 화만 요약해서 인스타그램에도 올려뒀습니다. 결말(다음 화에서 뭐가 잘못됐는지)은 여기 블로그에만 있어요.
인스타그램에서 보기 →
SMCo STUDIODEVLOG
DAY 03 · 2026.08.13

The day I confirmed that even AI gets lost in front of a screen it's never touched before, just like a person does

Digimon Raising Sim Devlog · Episode 2

I Watched the Same Error for an Hour

I asked for a visual editor to wire up the evolution tree. Instead of getting stuck on game logic, I got stuck on the tool itself.

Episode 1 went smoothly — the egg hatched, walked around, got hungry. Today's goal was the next layer: an editor where you could actually draw which species evolves into which, under what conditions. I asked for the old Unity-prototype custom editor to be rebuilt as a Godot add-on, and that ate most of the day. Spoiler: I didn't touch a single line of actual game logic today, and it still took the longest.

Puttimon standing in the same screen as yesterday, real in-game capture
Today's Puttimon. Same photo as yesterday's, actually — everything that happened today took place off-screen, inside the editor.

01Today's goal

Just one thing: a GraphEdit-based editor where species nodes sit on screen, you drag ports to connect evolution paths, and a side panel lets you edit each species' HP, power, and so on. The starting premise was simple — "there is no way I'm hand-typing 30 species and 122 evolution paths into text fields one at a time."

02Today's mess

I asked for the add-on and nothing showed up on screen. From there, this exchange repeated itself.

the actual conversation log, timestamps and all

12:30 "Nothing's showing up, what's wrong?"
12:33 "Still 16 errors. All of them connections_layer is missing"
12:35 "Still erroring out. And no ports rendering either"
12:38 "It's not working... still erroring"
12:49 "No errors now, but still nothing renders"
12:51 "Still nothing changed"
12:53 "Yeah, still nothing"
12:57 "It showed up. Now the problems are: 1. the window is too small, 2. a different error appeared"

27 minutes chasing a single error message (connections_layer is missing), asking about it more than ten times. Noticeably slower than writing game logic — Godot's editor-internal API (GraphEdit, plugin lifecycle) is the kind of thing where having someone who's hit it before explain it beats reading the docs and poking around alone. To make it worse, once the screen finally rendered, every time the add-on got patched, the HP and weight values I'd typed into it got wiped clean. It took re-entering them about three times before I realized this wasn't a tooling problem — it was a habit I needed to change.

03What went well

Instead of repeating "fix it" when stuck, asking about the structure was what actually broke the deadlock.

the actual request, verbatim (translated)

"For the evolution tree, which node do I need to enable and refresh? Or is it a separate add-on that turns on by itself?"

And for the data-loss problem, I flipped the request around entirely.

the actual request, verbatim (translated)

"Every time I edit the add-on, the settings inside it keep resetting and it's exhausting to re-enter them. Can you make it so I can fill them in as an Excel file instead, and even if editing the add-on wipes all the settings, it automatically re-populates itself from that Excel file?"

This was the best request of the whole day. All 30 species × 122 evolution links landed on a single Excel sheet, and from then on, no matter how badly editing the add-on wiped the settings, one import command brought everything back. The editor itself eventually rendered properly too — species nodes laid out on screen, evolution paths drawn as lines when you drag between ports.

The finished evolution tree editor, species nodes connected by lines in a GraphEdit view
This is where it landed. The screen that showed up at the end of a 27-minute error fight — every node linked to its evolution path by a line.
An Excel file holding 30 species and 122 evolution conditions
No matter how many times the add-on reset itself, this one file always brought it back. The biggest lesson of the day: pull your data out before you touch the tool, not after.

04Comparing against the real device

Still not at the dot-level comparison stage today. What got built today is a data structure that doesn't render on screen at all, so there's nothing yet to hold up against a photo. Real dot-by-dot comparison starts in earnest a few days from now, once the XAI sequence gets built.

05What's next

Editor: done. Excel backup: done. I figured evolution would just work now. I set every condition exactly right and ran it — and it evolved into a completely different species than the one configured, even with the debug panel showing the exact right condition values going in. A settings screen that looks correct and a value that's actually being read by the evaluation logic turned out to be two separate problems. Next episode is about hunting down that gap.

iInfo corner

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

ENGINEGodot 4.7 (Mobile rendering)
Built todayEvolution tree editor add-on (GraphEdit-based, species nodes + drag-to-connect evolution paths)
Blocking errorconnections_layer is missing — plugin lifecycle / internal API issue, 27 min, 10+ round trips
Data-loss fixExcel round-trip tool — 30 species × 122 evolution conditions on one sheet, restored with a single import
LessonAsking "how does this fit together" broke the deadlock faster than repeating "fix it"
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 03 / ???

댓글

이 블로그의 인기 게시물

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

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

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