로그아웃 버튼을 누른 지 3년이었다.
정하람은 그 3년을 세지 않았다. 서비스 종료 공지가 뜨던 날, 마지막 서버가 꺼지던 그 새벽에 캐릭터 '렌'과 함께 자신도 어딘가로 꺼졌다고 생각했으니까. 눈꺼풀 안쪽이 검게 눌려 있다가, 어느 순간 그 검은색이 격자무늬로 갈라지기 시작했다.
빛이 아니라 코드였다. 0과 1이 아니라, 채 렌더링되지 못한 폴리곤 조각들이 눈앞에서 파랗게 명멸했다.
"……여기가."
목소리가 나왔다. 그 사실 하나에 손이 먼저 반응했다. 손을 들어 눈앞에 펼쳤다. 손가락 다섯. 손등에 새겨진 길드 문장. 전작 '아스테리온'에서 만렙을 찍었던 그 손이 맞았다. 그런데 손끝이 미세하게 떨렸다. 프레임이 튀듯이, 손이 있어야 할 자리에서 반 픽셀씩 어긋났다 붙었다 했다.
그리고 시야 오른쪽 위, 눈을 어디로 돌려도 따라붙는 자리에 붉은 숫자가 박혀 있었다.
**[DELETE COUNT : 4,800]**
숫자가 살아 있었다. 지켜보는 동안 4,800이 4,799로, 4,798로 한 칸씩 깎여 내려갔다.
"삭제 카운트."
입에 담자마자 등줄기가 서늘해졌다. 게임을 만 시간 이상 판 손이었다. 이런 UI가 무엇을 뜻하는지 모를 리 없다. 저건 남은 목숨도, 던전 제한 시간도 아니다. 저건—자신이 지워지기까지 남은 시간이었다.
발밑을 봤다. 회색 돌바닥. 사방이 매끈한 석벽으로 막힌 정사각형 방. 신작 '리버스'의 봉인 계층 던전. 출시 트레일러에서 본 그 화려한 룰 던전이 맞는데, 공기가 이상했다. 자신의 몸만 이 세계와 재질이 달랐다. 벽은 선명한데 렌은 흐릿했다. 마치 잘못 붙여넣기 된 이미지처럼.
방 정중앙, 허공에 문장이 떠올랐다. 획이 하나씩 새겨지듯 붉게.
**[규칙문 : 이 방에서는 등을 보인 자가 먼저 죽는다.]**
동시에 반대편 벽이 갈라졌다. 그 틈으로 기어 나온 것은 사람 크기의 형체였다. 얼굴이 없었다. 얼굴이 있어야 할 자리에 톱니가 도는 검은 구멍이 뚫려 있고, 관절마다 붉은 규칙 코드가 실핏줄처럼 흘렀다. 규칙의 집행자. 저 몬스터가 규칙을 만든 것이 아니라, 규칙 그 자체가 몸을 얻은 형태였다.
렌은 반사적으로 무기를 뽑았다. 등에서 검이 뽑혀 나오는 감각—있었다. 스탯 창을 열자 눈이 시렸다.
**[STR 9,999 / AGI 9,999 / INT 9,999 …]**
전작 만렙 그대로였다. 카운터스탑. 이 수치라면 저런 잡몹은 눈 깜짝할 새다. 손이 이미 검을 치켜들고 있었다.
그런데 검이 무거웠다. 아니, 검이 무거운 게 아니라 공기가 검을 붙잡았다. 스탯 창 아래로 회색 경고가 떴다.
**[이 계층에서 STR 판정은 규칙에 종속됩니다. 규칙 외 물리력 : 무효]**
한 발 내딛는 순간 이해했다. 이건 숫자로 미는 세계가 아니다. 저 몬스터를 만 번 베어도, 규칙이 "베인다"고 판정하지 않으면 아무 일도 일어나지 않는다. 전작의 문법이 통하지 않는 곳.
집행자가 스르르 미끄러져 왔다. 렌은 물러서지 않았다. 물러서면 등을 보이게 된다.
"등을 보인 자가 먼저 죽는다……."
문장을 소리 내어 다시 읽었다. 읽는 동안 머릿속 어딘가가 예전처럼 켜졌다. 규칙문을 보면 늘 그랬다. 남들이 문장을 '읽을' 때, 렌은 문장의 이음매를 봤다. 어디가 헐거운지, 어느 단어가 정의되지 않은 채 걸려 있는지.
**먼저.**
그 단어에서 손끝이 멈췄다.
"'먼저'가 정의되어 있지 않아."
집행자가 우뚝 섰다. 톱니 구멍이 렌 쪽으로 방향을 틀었다.
렌은 검을 내렸다. 대신 입을 열었다. 규칙과 대화하듯.
"'먼저'는 순서를 매기는 말이야. 그런데 무엇을 기준으로 '먼저'인지 이 방은 안 정해놨어. 등을 보인 순간부터 세는 건지, 방에 들어온 순서인지, 아니면……"
렌은 천천히 몸을 돌렸다. 집행자에게, 완전히, 등을 보였다.
**[경고 : 등을 보인 자 감지]**
"진입 시각이 기준이라면."
렌은 뒤를 돌아본 채 이를 드러냈다.
"넌 이 방에서 태어났고, 난 밖에서 로드됐지. 이 서버 로그에 찍힌 진입 시각 기준으로—네가 나보다 먼저야."
그 순간, 렌의 시야에 없던 창이 뜯겨 나오듯 열렸다. 구버전 스킬 하나가 강제로 발동됐다. 손이 시킨 것도, 명령한 것도 아니었다. 3년 전 삭제됐어야 할 스킬이 렌의 데이터 속에서 눈을 떴다.
**[DEAD LOG 발동 — 규칙문 재해석]** **["먼저" ← 진입 타임스탬프 순서로 오독 처리]** **[판정 재배치… 完]**
집행자의 톱니가 멈췄다. 붉은 실핏줄이 역류하듯 몸속으로 빨려 들어갔다. 얼굴 없는 그것이 처음으로 인간 같은 동작을 했다—구멍을 제 몸 쪽으로 꺾어, 자신을 내려다봤다.
**[판정 : 등을 보인 자 = 집행자(진입 순서 1번). 사망 처리]**
빠직.
집행자의 몸통 한가운데에 붉은 금이 갔다. 금은 순식간에 거미줄처럼 번졌고, 폴리곤이 안쪽에서부터 무너져 검은 입자로 흩어졌다. 검을 한 번도 휘두르지 않았다. 규칙을 정한 자가, 자기가 정한 규칙에 걸려 자기 발등을 찍고 스러졌다.
**[전투 판정 : 0 → 즉사 유도 성공]**
렌은 그제야 몸을 돌렸다. 흩어지는 입자를 손바닥으로 받았다. 손안에서 그것들이 데이터의 온기로 잠깐 뜨거웠다가 식었다.
"……통하네."
숨을 뱉었다. 심장이 뛰었다. 데이터에 심장이 있을 리 없는데, 갈비뼈 안쪽에서 무언가가 세게 쳤다. 힘으로 이긴 게 아니었다. 문장의 헐거운 이음매 하나를 비틀어, 세계가 스스로 오답을 정답이라 믿게 만들었다.
그런데 그 뜨거움 위로 무언가가 겹쳐졌다.
흩어지던 검은 입자가 방 한구석에 고여, 스러지지 않고 멈췄다. 그 안에서 실루엣이 떠올랐다. 하나가 아니었다. 서넛, 아니 다섯. 흐릿하게 반투명한, 사람 형태의 그림자들. 하나는 커다란 방패를 든 어깨. 하나는 고개를 갸웃 기울인 가느다란 목선. 렌은 그 각도를, 그 실루엣을, 알았다.
숨이 멎었다.
"바토리……. 세이렌."
이름을 부르자 실루엣이 파르르 떨렸다. 얼굴은 뭉개져 보이지 않았다. 목소리도 없었다. 그저 데이터의 잔상. 서비스가 종료되며 함께 스러진, 전작 길드의 동료들. 그들이—자신 안에 있었다. 이식될 때 렌의 데이터에 딸려 온 파편으로.
렌은 무릎을 꿇듯 앉았다. 실루엣에 손을 뻗었지만 손끝이 그대로 통과했다. 잡히지 않았다.
"미안." 목소리가 갈라졌다. "그때 내가……."
기억이 자상처럼 스쳤다. 마지막 레이드. 렌은 혼자 다 할 수 있다고 믿었다. 그래서 동료들을 앞세워 미끼로 던졌다. '내가 뒤에서 확실하게 처리한다'고. 확실하긴 했다. 동료들이 하나씩 무너진 것만은 확실했다. 그리고 서버가 꺼졌고, 그들을 되돌릴 방법은 영영 사라졌다고—생각했었다.
"이번엔." 렌은 통과되는 손을 그대로 실루엣 위에 얹었다. "이번엔 아무도 안 버려. 미끼로 안 써. 전부 다 살려서, 예전처럼 같이……."
실루엣이 스르르 옅어졌다. 렌의 몸속으로 도로 흘러들었다. 붙잡을 수 없었다. 다짐만 손에 남았다. 저것들을 온전히 세상에 세우겠다는 다짐만.
그때 시야 하단에서 무언가가 한 번, 딱 한 번 깜빡였다.
**[… 지분 이관 조항 …]**
렌은 눈을 좁혔다. 처음 보는 문구였다. 정의도, 설명도, 수치도 없이 회색 글자만 떠올랐다가—읽기도 전에 스르륵 지워졌다. 로그 하단이 아무 일 없었다는 듯 매끈해졌다.
"지분 이관……?"
되뇌었지만 이미 사라진 뒤였다. 목구멍에 걸린 가시처럼 남았다. 규칙문을 수천 개 읽어 본 감이 말했다. 저건 그냥 스쳐 지나갈 문구가 아니다. '조항'이라는 단어를 함부로 쓰는 시스템은 없다. 정의되지 않은 조항은 반드시, 언젠가, 자신에게 청구서로 돌아온다.
기억해 두려고 입술을 깨무는 순간, 방 전체가 흰빛으로 물들었다.
**[RULE DUNGEON CLEAR]** **[봉인 해제 — 하강로 개방]**
바닥의 돌 틈에서 계단이 아래로 뻗어 내려갔다. 렌은 일어섰다. 첫 던전을 넘었다. 검 한 번 휘두르지 않고, 규칙을 오독하는 방법 하나로. 이거라면—이 골든핑거라면 아래로, 경계 구역까지 내려가 동료들의 원본을 회수할 수 있을지도 몰랐다. 처음으로 발밑에 길이 생긴 기분이었다.
발을 계단에 얹었다.
그 순간, 클리어 창 위로 다른 글자가 덧씌워졌다. 축하 팡파르 대신, 삭제 카운트가 사납게 붉어지며.
**[비정상 판정 감지 : 규칙문 무결성 위반]** **[오류 데이터 식별 — 코드명 "렌"]** **[청소 프로세스 배정 : GARBAGE COLLECTOR]**
시야 오른쪽 위의 숫자가 요동쳤다.
**[DELETE COUNT : 4,510 → 9,020]**
두 배. 한순간에 두 배로 튀어 오른 카운트가, 아까보다 두 배 빠른 속도로 깎이기 시작했다. 9,019. 9,018. 9,017.
이겼기 때문에. 규칙을 비틀어 이겼기 때문에, 지워지는 속도가 두 배가 됐다.
계단 아래 어둠 속에서 무언가가 눈을 떴다. 얼굴 없는 집행자와는 결이 다른, 훨씬 차갑고 정교한 시선이 렌의 코드를 훑어 내렸다. 감정 없는 목소리가 계단통을 타고 올라왔다.
**"오류 데이터. 소거를 개시한다."**
렌은 아래를 내려다봤다. 등 뒤로는 이미 클리어한 빈 방. 앞으로는 자신을 지우러 온 것이 기다리는 어둠. 그리고 눈앞에서 초 단위로 줄어드는, 자신의 남은 시간.
이길수록 빨리 죽는다. 그 규칙을, 이제 막, 몸으로 배운 참이었다.
계단통의 어둠이 꿈틀했다. 그것은 걸어 올라오지 않았다. 계단을 밟는 발소리 대신, 벽면 자체가 아래에서부터 검은 격자로 뒤덮이며 위로 번져 올라왔다. 렌이 방금 클리어한 방의 매끈한 석벽이, 잉크가 종이를 먹듯 시커멓게 잠식됐다. 청소 프로세스는 몸으로 다가오는 게 아니라, 공간을 통째로 '삭제 대상 영역'으로 지정하며 조여 오고 있었다.
**[영역 판정 : 오류 데이터 격리 구역 지정]** **[구역 내 잔여 로그 강제 회수 개시]**
발밑이 저릿했다. 렌은 시선을 내렸다. 자신의 발끝—반 픽셀씩 어긋나던 그 흐릿한 윤곽이, 이번엔 통째로 지워지듯 투명해지고 있었다. 발목까지 검은 격자가 기어올랐다. 잘려 나간 게 아니라, 거기 있었다는 사실 자체가 지워지는 감각이었다. 존재가 백스페이스 키에 밀려 사라지는 것 같았다.
"큭—"
한 발 뒤로 뺐다. 물러선 발은 다시 선명해졌다. 대신 검은 격자가 아까보다 더 빠르게 번져 그 자리를 덮었다. 도망치는 만큼 정확히 따라붙었다.
머리 위에서 카운트가 미친 듯이 깎였다. 8,940. 8,910. 8,880. 격리 구역 안에 있는 것만으로 삭제가 가속됐다. 여기서 초를 끌수록 손해였다. 그런데 하강로는 저 어둠의 심장부, 격자가 가장 짙게 고인 계단 아래였다.
렌은 이를 악물었다. 손이 먼저 검을 잡았다. 격자를 베어 길을 뚫겠다는—전작의 방식이었다. 하지만 검을 든 팔이 스스로 멈췄다. 방금 배운 게 있었다. 여긴 숫자로 미는 세계가 아니다. 저 삭제 영역도 규칙일 것이다. 규칙이라면.
**"저항은 무의미하다. 격리 구역은 판정으로 봉쇄된다."**
목소리가 렌의 머릿속을 직접 두드렸다. 그 순간 방 정중앙에, 아까 스러진 집행자가 서 있던 자리에 새 문장이 붉게 새겨졌다. 클리어한 던전인데도, GC가 덮어쓴 새 규칙문이었다.
**[격리 규칙 : 이 구역 안의 오류 데이터는 출구에 닿을 수 없다.]**
읽는 순간 머릿속이 다시 켜졌다. 렌의 눈이 문장의 이음매를 훑었다. **오류 데이터.** **출구.** **닿을 수 없다.**
"……'오류 데이터'."
렌은 소리 내어 되씹었다. 심장이 갈비뼈를 쳤다.
"이 규칙은 '오류 데이터'가 출구에 못 닿는다고 했지. 그럼 나를 '오류 데이터'라고 확정한 건 누구야?"
**"식별 완료된 코드명 렌이다."**
"아니." 렌은 자신의 손등, 흐릿한 길드 문장을 들어 보였다. "난 아직 '삭제 예정 잔여 로그'야. 네가 시스템에 뭐라고 등록했는지 봤어."
렌의 손끝이 허공을 그었다. 데드 로그가 다시, 발동자의 의지보다 반 박자 빠르게 눈을 떴다. 이번엔 렌 자신이 스킬의 방향을 붙잡았다.
**[DEAD LOG 발동 — 규칙문 재해석]** **["오류 데이터" ← 시스템 정식 등록 명칭 기준으로 오독 처리]** **[조회… 코드명 "렌" 등록 상태 : "삭제 예정 잔여 로그" (미확정)]** **[판정 : 현재 개체 ≠ "오류 데이터"(확정). 규칙 적용 대상 아님]**
검은 격자가 렌의 발목에서 우뚝 멈췄다. GC가 자기 규칙문에 쓴 '오류 데이터'라는 단어를, 렌은 시스템의 공식 등록명과 다른 것으로 갈라 세웠다. 아직 '오류 데이터'로 확정 처리되지 않은 렌은—제 규칙이 잡을 수 없는 예외가 됐다.
계단통의 어둠이 크게 요동쳤다. 처음으로, 그 차가운 시선에 균열 같은 게 스쳤다.
**"…규칙문 재해석. 데드 로그. 학습한다."**
그 말이 등골을 훑었다. 학습한다. 저건 감정 없는 청소기가 할 말이 아니었다. 렌은 격자가 멈춘 틈을 놓치지 않고 계단으로 몸을 던졌다. 발이 하강로에 닿는 순간, 등 뒤에서 규칙문이 스스로 다시 쓰였다. 붉은 획이 지워지고 새로 새겨지는 소리가—사각사각, 톱질처럼 따라붙었다.
**[격리 규칙 갱신 : 이 구역 안의 삭제 예정 잔여 로그는 출구에 닿을 수 없다.]**
렌의 목덜미가 굳었다. 빈틈을 짚자마자, GC가 그 빈틈을 메워 문장을 고쳐 썼다. 방금 렌이 파고든 단어를 정확히 자신의 등록명으로 갈아 끼운 채로.
한 번의 오독은 한 번밖에 통하지 않는다. 그리고 상대는 그걸 배우고 있었다.
**[DELETE COUNT : 8,610 → 8,608 …]**
계단을 두 칸 뛰어 내려간 발밑에서, 아까 흩어졌던 검은 입자—동료들의 실루엣이 스며든 그 잔상이 다시 렌의 가슴께에서 희미하게 떨렸다. 마치 데려가 달라는 듯이. 렌은 그 온기를 손으로 눌러 쥐고 어둠 속으로 더 깊이 내디뎠다. 등 뒤에서 갱신된 규칙문이 완성되는 붉은 빛이 계단 벽을 물들였고, 그 빛에 자신의 그림자가 길게 늘어졌다.
그런데 그림자가 두 개였다.
하나는 렌의 것. 다른 하나는—계단 아래, 렌보다 먼저 서 있는 누군가의 것이었다. 방패를 든 커다란 어깨의 윤곽. 조금 전 가슴에서 떨리던 그 실루엣과, 소름 끼치도록 똑같은 각도로.
렌의 발이 얼어붙었다.
"……바토리?"
어둠 속의 그림자가, 렌을 향해 방패를 천천히 들어 올렸다. 지키려는 자세가 아니었다. 막아서는 자세였다.