세 줄 요약
- 51레벨로 출발한 기사 봇 15명이 게임 시간 10시간 동안 185번 죽고 경험치가 마이너스였다.
- 봇 사냥 기록으로 GPU가 레벨별 사냥터 점수를 매기게 하고, 같은 세대 안에서 절반한테만 그 점수를 줬다.
- 3세대, 9번 비교에서 9번 다 점수를 받은 쪽이 이겼다.
실험 노트
| 항목 | 내용 |
|---|---|
| 질문 | 봇 사냥 기록으로 매긴 사냥터 점수가, 봇이 스스로 고르는 것보다 나을까? |
| 가설 | 죽음을 손해로 계산한 점수표를 따르면 덜 죽고 경험치를 더 번다. |
| 환경 | 재현 환경(2.7 시절 기준), 6배속, 기사 봇 |
| 비교 | 같은 세대 안에서 반반: GPU 점수표 vs 원래 방식 |
| 지표 | 게임 시간 10시간 동안 번 경험치의 중간값, 사망 횟수 |
| 규모 | 세대당 45명 (45·48·51레벨 출발 각 15명), 3세대 |
첫 질문: 어디서 사냥해야 빨리 크나
0편에서 실험할 환경 넷을 소개했다. 이제 첫 실험이다. 첫 타자는 기사다. 칼질하고, 물약 빨고, 위험하면 텔 타고. 할 일이 제일 적어서 AI한테 처음 가르치기 딱이다.
첫 질문도 그 시절 제일 흔하던 고민으로 골랐다. 지금 내 레벨이랑 장비로 어디서 사냥해야 제일 빨리 크나.
친구가 “거기 좋더라” 하면 가 보고, 죽으면 접고, 아니면 눌러앉고. 다 감이었다. 이 감을 봇은 어떻게 배우고 있을까.
1. 실험 환경
무대는 0편에서 소개한 6배속 봇 세계다. 봇은 사람처럼 한 명씩 접속해서 걷고, 싸우고, 물약 떨어지면 마을에 다녀온다. 여기서 기사 봇을 진화 방식으로 키우고 있었다.
- 한 세대에 기사 45명. 사냥터 고르는 기준, 물약 빠는 타이밍, 도망 기준이 조금씩 다르다.
- 45·48·51레벨로 출발하는 조를 15명씩 나눈다.
- 게임 시간으로 10시간 사냥하고, 경험치를 많이 번 쪽의 기준을 물려받아 다음 세대를 만든다.
2. 관찰: 51레벨 조가 이상했다
어느 세대 결과를 보다가 눈을 의심했다.

| 출발 레벨 | 경험치 (중간값) | 사망 (15명 합계) |
|---|---|---|
| 45 | +1,476만 | 44 |
| 48 | +1,377만 | 38 |
| 51 | −797만 | 185 |
레벨이 제일 높은 조가 제일 못했다. 못한 정도가 아니라 경험치가 마이너스였다.
로그를 보니 패턴이 뻔했다. 51레벨이 되면 갈 수 있는 사냥터가 확 늘어난다. 봇들은 “레벨 됐으니 센 데 가자"는 기준을 갖고 있었고, 센 데 가서 누웠다. 한 번 죽으면 경험치가 깎여서 50레벨로 떨어진다. 그럼 또 올리고, 또 가고, 또 눕는다.
옛날에 다들 한 번쯤 해 봤을 거다. 레벨 올랐다고 신나서 윗 사냥터 갔다가 경험치 다 토하고 내려오는 거.
3. 가설: 죽음을 값으로 치면 된다
봇의 기준은 경험치만 봤다. 사람도 그렇다. “거기 시간당 얼마 나온대"는 잘 퍼지는데, 거기서 몇 번 누웠는지는 잘 안 퍼진다.
그래서 이렇게 생각했다. 사냥터를 고를 때 죽는 걸 손해로 계산해 넣으면, 51레벨 조도 덜 죽고 더 벌 거다.
4. 방법: GPU 사냥터 점수표
봇은 사냥하는 동안 “어느 레벨에, 어느 사냥터에서, 몇 분 동안, 경험치 얼마 벌고, 몇 번 죽었나"를 구간마다 남긴다. 그때까지 4천 구간쯤 쌓여 있었다. 이걸 GPU로 학습해서 레벨별 사냥터 점수표를 만들었다.
$$ \begin{aligned} \text{점수} &= \text{시간당 경험치} \\ &\quad - \text{시간당 사망} \times \text{사망 손해} \end{aligned} $$사망 손해는 한 번 죽을 때 깎이는 경험치에, 마을에서 다시 걸어오는 동안 못 번 경험치를 더한 값이다.
점수표를 뽑아 보니 51레벨에선 봇들이 가 본 사냥터 107곳 중 47곳이 0점이었다. 가면 손해인 곳이 절반 가까이였다. 그리고 51레벨한테 제일 좋은 곳으로 꼽힌 건 오히려 45~48레벨이 다니던 안전한 사냥터들이었다.
비교는 이렇게 했다.
- 각 조 15명 중 절반(7~8명)은 GPU 점수표대로 사냥터를 고른다.
- 나머지 절반은 원래 방식, 자기 기준대로 고른다.
- 어느 쪽이 8명이 될지는 세대마다 번갈아 정했다.
- 같은 세대, 같은 시간, 같은 환경이라 서로 다른 건 사냥터 고르는 방식뿐이다.
- 이걸 3세대 반복했다.
5. 결과

| 출발 레벨 | 1세대째 | 2세대째 | 3세대째 |
|---|---|---|---|
| 45 | 1,942만 vs 1,513만 | 1,886만 vs 1,453만 | 1,281만 vs 1,018만 |
| 48 | 1,937만 vs 1,721만 | 1,980만 vs 1,379만 | 1,380만 vs 1,288만 |
| 51 | 2,178만 vs 1,426만 | 1,924만 vs 883만 | 1,433만 vs 1,288만 |
(GPU 점수표 vs 원래 방식, 경험치 중간값)
- 9번 비교에서 9번 다 GPU 점수표 쪽이 이겼다.
- 차이가 제일 컸던 건 51레벨 조다. 2세대째엔 두 배 넘게 벌었다.
- 51레벨 조 1세대째 사망은 원래 방식 29번, GPU 점수표 쪽 6번이었다.
- 3세대째엔 차이가 줄었다.
6. 해석
가설대로 나왔다. 그리고 왜 통했는지 짚어 보면 두 가지다.
하나, 아는 것만 시켰다. 점수표는 봇들이 실제로 사냥해 본 곳만 놓고 순위를 매겼다. 기록이 있는 곳끼리 비교했으니 크게 틀릴 일이 없었다.
둘, 죽음을 값으로 쳤다. 51레벨 조가 제일 크게 좋아진 게 그 증거다. 원래 방식은 경험치 좋은 곳으로 몰려가 죽었고, 점수표는 그런 곳에 0점을 줬다.
7. 한계와 남은 질문
실험 노트니까 못 본 것도 적어 둔다.
- 표본이 작다. 한 쪽이 7~8명이다. 그래서 평균 대신 중간값으로 비교했고, 한 번이 아니라 9번 다 이겼다는 걸 근거로 삼았다.
- 3세대만 봤다. 3세대째에 차이가 줄었는데, 이유는 확인하지 못했다. 더 돌렸으면 차이가 없어졌을 수도 있다.
- 사망을 반반 나눠서 센 건 1세대째뿐이다. 2·3세대째는 조 전체 사망만 남아 있다.
- 경험치가 늘어난 이유를 나누지 못했다. 덜 죽어서인지, 사냥터 자체가 좋아서인지는 이 실험으로는 구분이 안 된다.
- 점수표는 가 본 사냥터만 안다. 이게 다음 편의 출발점이다.
8. 다음 실험
이렇게 잘 되니까 욕심이 생겼다. 봇이 가 본 곳 말고 안 가 본 곳까지 GPU가 계산해 주면, 1레벨부터 50레벨까지 최단 루트도 뽑을 수 있지 않을까?
② GPU가 찾아 준 명당 사냥터에 기사를 보냈더니 경험치가 마이너스였다
안 가 본 사냥터까지 계산하는 GPU 시뮬레이터를 만들고 1→50 루트를 물었다. AI는 2.7엔 없던 사막을 골랐다.
이 실험은 전부 AI(Claude)랑 대화하면서 하고 있다. 재현 환경, 봇, 학습 스크립트, 로그 분석까지 다. 이 글의 숫자도 진화 기록에서 그대로 뽑았다.

댓글