Scene/Event VM choice target 검토

0x004bfdb4 공통 표시 스트림을 분리하고, prompt trace 40 18 마커와 handler-table 0x16/0x18 cluster가 아직 연결되지 않았음을 명시한다.

요약

common-stream-grounded-handler-cluster-unlinked
common stream0x004bfdb4
common stream rolesystem/menu render stream
opcode 0x18 handler0x0040bab2
0x18 advance4 bytes
selected target global0x0059e2a0
prompt marker linkedFalse
map1 0x16 producer rows0
map1 0x18/common branches10 / 15
choice marker arg rows267
arg exact/low6 matches129 / 172
arg high-bit rows125
next prompt proofFalse

Decisions

오해 방지 기준
itempromotionevidenceremaining gap
branch target 0x004bfdb4reclassified-groundedevent-dialogue-block-021 classifies the range as system-text-like and its text lines are menu/system labelsnot a selected option -> next prompt target; treat it as a common render/menu stream
opcode 0x18 inline operandrejected-as-prompt-targetprompt trace marker 40 18 3a NN is a 4-byte row, so the following 40 00 00 00 is the next command, not an inline targetscript_handler_table 0x18 also exists, but it is not proven to be the same prompt-choice marker domain
prompt marker vs handler cluster domainblocked-domain-linkmap1_01a prompt trace shows 0x18 markers and common 0x09 branches, while handler-table 0x16 producer rows are absent from that selected prompt tracedo not use the 0x16 -> 0x59e2a0 -> 0x18 handler cluster as selected-option proof until the stream binding is shown
prompt choice marker argumentpartialglobal choice marker rows=267, exact count matches=129, low6 count matches=172, high-bit rows=125plain 0x02..0x05 markers often equal visible choice count, but high-bit/menu markers include flags or merged-menu context
script-handler target storagegrounded-handler-unlinkedopcode 0x16 handler writes stream+0x04 to global 0x0059e2a0which producer instance executes for each displayed choice branch is not proven; map1_01a selected prompt trace shows opcode 0x16 rows=0
map1_01a selected trace producer instanceblocked-static-gaptrace rows: opcode 0x18=10, branch calls to 0x004bfdb4=15, opcode 0x16 producer rows=0selected option -> next prompt still needs a different producer path or runtime-selected branch sample
0x0059db1f counterreclassified-grounded0x00433107 increments 0x59db1f from an internal random-threshold check, so it is not the user selected option indexexact selected option -> next prompt edge still needs a different producer proof or runtime sample

Handler Cluster

0x16 -> 0x59e2a0 -> 0x18
nameopcodehandlerpromotionevidencesource
selected target producer0x160x0040ba3fgrounded-handlerreads stream+0x04 and stores the dword into 0x0059e2a0, then advances stream by 8out/script_handler_table.json / disassembly bytes
selection state initializer candidateunindexed-nearby-routine0x0040ba5fpartial-neighbor-routinereads stream+0x04/+0x06/+0x07/+0x08 and writes 0x59db18/0x59db1c/0x59db1e/0x59db1flocal disassembly cluster; not promoted as an opcode entry
selected target gate0x180x0040bab2grounded-handler-partial-routeadvances stream by 4; compares 0x59db1e and 0x59db1f; when active flag is nonzero it jumps context+0x40 to 0x0059e2a0out/script_handler_table.json / disassembly bytes
random gate success counter updaterexternal-random-gate0x00433107grounded-not-choice-indexcalls internal rand16_mod(10000), compares against 0x59db1c, and increments 0x59db1f only on random-threshold successglobal-ref scan + random gate review

Choice Rows

next prompt still blocked
choicestarttextcalls to 0x004bfdb4remaining gap
100x004c0790한가한 게 좋지, 잠이나 잘까 / 한가한데 쇼핑이나 할까2choice marker and branch-call rows are visible, but selected option -> next prompt target is not proven
150x004c0876기록 / 그만둔다1choice marker and branch-call rows are visible, but selected option -> next prompt target is not proven
190x004c09fc쇼핑은 그만두고 자자 / 아니 쇼핑하러 가볼까1choice marker and branch-call rows are visible, but selected option -> next prompt target is not proven
220x004c0ad4후~쇼핑은 관두고 자자 / 아냐 억지로라도 쇼핑가야지4choice marker and branch-call rows are visible, but selected option -> next prompt target is not proven

Prompt Choice Marker Argument

global scan

Plain marker bytes often match visible choice count. High-bit values such as 0x82, 0x83, 0x8c, and 0xc2 remain flag/menu-layout candidates, not next-target proof.

marker byterows
0x02128
0x036
0x045
0x051
0x071
0x081
0x4212
0x8215
0x8327
0x8419
0x851
0x878
0x8b5
0x8c17
0xc216
0xc35
Prompt Choice Marker Samples
promptstartrawlinesarglow6hightext
story-prompt-00090x004419b840 18 3a 0220x0220x00연다 그만둔다
story-prompt-00400x004422f440 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-00630x0044e30c40 18 3a 0330x0330x00간단한 코스 적당한 코스 초난관 코스
story-prompt-00680x0044e46e40 18 3a 0330x0330x00간단한 코스 적당한 코스 초난관 코스
story-prompt-00740x0044e5b440 18 3a 0220x0220x00거럼 내비둬
story-prompt-00760x0044e61040 18 3a 0210x0220x00싫어
story-prompt-00820x0044e72640 18 3a 0220x0220x00거럼 싫은데
story-prompt-00880x0044e84c40 18 3a 0220x0220x00말이라고 해 싫다니까
story-prompt-00940x0044e99a40 18 3a 0220x0220x00거럼 싫어
story-prompt-01040x0044eb9a40 18 3a 0220x0220x00물론이지 그냥둬
story-prompt-01100x0044ed0040 18 3a 0220x0220x00물론 노우!
story-prompt-01140x0044ee1c40 18 3a 0210x0220x00아니오
story-prompt-01170x0044eeac40 18 3a 0210x0220x00아니오
story-prompt-01360x0044f3dc40 18 3a 0550x0550x00초급 중급 상급 최상급 그만둔다
story-prompt-01390x0044f4d840 18 3a 0210x0220x00아니오
story-prompt-01430x0044f5dc40 18 3a 0210x0220x00아니오
story-prompt-01530x0044f85640 18 3a 0440x0440x00회복의 두루마리 탈출의 두루마리 마수석 필요없어!
story-prompt-01550x0044f8f440 18 3a 0430x0440x00회복의 두루마리 탈출의 두루마리 필요없다
story-prompt-01550x0044f8f440 18 3a 0430x0440x00회복의 두루마리 탈출의 두루마리 필요없다
story-prompt-01760x0044feaa40 18 3a 0220x0220x00움직인다 그만둔다
story-prompt-02650x0045718c40 18 3a 0220x0220x00오우케이 잠깐만!
story-prompt-02930x0045f02840 18 3a 0220x0220x00그렇게는 못해 알았어
story-prompt-03010x0045f27040 18 3a 0220x0220x00거럼 거럼 아, 아냐!
story-prompt-03100x0045f49e40 18 3a 0220x0220x00좋아요 아니오
story-prompt-03130x0045f54640 18 3a 0220x0220x00그러지요 싫습니다
story-prompt-03250x0045f81040 18 3a 0210x0220x00아니오
story-prompt-03270x0045f87240 18 3a 0210x0220x00아니오
story-prompt-03850x0046096240 18 3a 0220x0220x00그렇게는 못한다 알았다구요
story-prompt-03930x00460bc840 18 3a 0220x0220x00거럼 거럼 아냐 틀리다구
story-prompt-04020x00460de240 18 3a 0220x0220x00알았어 싫어
story-prompt-04050x00460e9240 18 3a 0220x0220x00거럼 거럼 아니라구
story-prompt-04170x0046116e40 18 3a 0210x0220x00아, 아뇨
story-prompt-04190x004611c840 18 3a 0220x0220x00거럼 아니야
story-prompt-04790x0046230a40 18 3a 0220x0220x00그렇게는 못한다 아, 알았다구
story-prompt-04870x0046253840 18 3a 0220x0220x00물론이지 아니야
story-prompt-04960x0046276440 18 3a 0220x0220x00물론 싫어
story-prompt-04990x0046281c40 18 3a 0220x0220x00물론이지 아니요
story-prompt-05060x004629e040 18 3a 0220x0220x00갖고 간다 그만둔다
story-prompt-05140x00462c1040 18 3a 0220x0220x00그렇다 아니다
story-prompt-05160x00462c8040 18 3a 0220x0220x00그렇다 아니다
story-prompt-05800x00463ee040 18 3a 0220x0220x00그렇게는 못한다 알았어
story-prompt-05880x0046413c40 18 3a 0220x0220x00그래, 그렇다 아냐, 아니라구
story-prompt-06970x00466e9840 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-07230x0046c8ac40 18 3a 0220x0220x00그러지 뭐 싫~어
story-prompt-07350x0046cc6840 18 3a 0220x0220x00알았어 싫다니까
story-prompt-07420x0046ce3040 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-07710x0046d6d640 18 3a 0220x0220x00한사람씩 밟는다 그만둔다
story-prompt-07790x0046d8f840 18 3a 0220x0220x00도전한다 그만둔다
story-prompt-07810x0046d94a40 18 3a 0220x0220x00조~오치 싫~어
story-prompt-07980x0046dd9a40 18 3a 0440x0440x00오른쪽으로 올려놓는다 왼쪽으로 올려놓는다 올려놓지 않는다 포기한다
story-prompt-08060x0046df8c40 18 3a 0710x0770x00모르겠어
story-prompt-08520x0046ec5240 18 3a 0220x0220x00누른다 그만둔다
story-prompt-08600x0046ee5640 18 3a 0220x0220x00그렇다네 아니라구
story-prompt-08950x0046f74040 18 3a 0220x0220x00문을 통과한다 그만둔다
story-prompt-09070x0046fa6c40 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-09100x0046fb1840 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-09350x004701ec40 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-09380x0047029240 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-09640x0047098e40 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-09670x00470a3840 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-12340x00481dde40 18 3a 8330x8330x80쉰다 기록 그만둔다
story-prompt-12770x00482b3a40 18 3a 8330x8330x80휴식 기록 그냥간다
story-prompt-13460x00483f6a40 18 3a 0220x0220x00수면비약을 준다 아까워서 안준다
story-prompt-13790x0048509240 18 3a 0330x0330x00물론이죠 다시 설명을 듣는다 때려 치운다
story-prompt-13890x0048541c40 18 3a 0330x0330x00다시 도전한다 다시 설명을 듣는다 때려 치운다
story-prompt-13900x004871cc40 18 3a 0220x0220x00처음부터 이어서
story-prompt-14060x0048757640 18 3a 0210x0220x00아니오
story-prompt-14380x0048d45040 18 3a 0440x0440x00유적 안에 뭐가 있지? 전투 요령을 알려주게! 모드란게 뭐지?! 물어보고 싶은 게 없네
story-prompt-14560x0048db2e40 18 3a 0220x0220x00열어본다 그만둔다
story-prompt-14790x0048e0cc40 18 3a 0220x0220x00한 명씩 밟는다 그만둔다
story-prompt-15050x0048e7be40 18 3a 0220x0220x00넣는다 그만둔다
story-prompt-15380x0048f1f640 18 3a 0210x0220x00아니오
story-prompt-16360x0049a20440 18 3a 0220x0220x00물론 받는다 그만둔다
story-prompt-16420x0049a3b440 18 3a 0220x0220x00당연히 받는다 아니, 그만둔다
story-prompt-16560x0049a84c40 18 3a 8440x8440x80소모품을 산다 무기·방어구를 산다 진귀한 물품은? 그만둔다
story-prompt-16740x0049acf240 18 3a 8330x8330x80횃불세트 1000G 고급한방약 1000G 안산다
story-prompt-16750x0049ad4e40 18 3a 8320x8330x80횃불세트 1000G 안산다
story-prompt-16750x0049ad4e40 18 3a 8220x8220x80횃불세트 1000G 안산다
story-prompt-16760x0049ad8a40 18 3a 8320x8330x80고급한방약 1000G 안산다
story-prompt-16760x0049ad8a40 18 3a 8220x8220x80고급한방약 1000G 안산다

Common Stream Decode

system/menu display stream
VAopcodelabeloperandraw
0x004bfdb40x03set display/font row-40 03 00 00
0x004bfdb80x08set display style triplet-40 08 00 00
0x004bfdbc0x0dset current context text id0x0003000040 0d 00 00 00 00 03 00
0x004bfdc40x07set object fixed-point position0x000000f840 07 90 00 f8 00 00 00
0x004bfdcc0x15move text origin/cursor relative0x0000001040 15 10 00 10 00 00 00
0x004bfdd40x37set global timer/state-40 37 00 00
0x004bfdd80x1bselect script data bank-40 1b 00 00
0x004bfddc0x0brender current context text id-40 0b 00 00
0x004bfde00x0areturn from event stream branch-40 0a 00 00
0x004bfde40x03set display/font row-40 03 00 00
0x004bfde80x08set display style triplet-40 08 00 00
0x004bfdec0x0dset current context text id0x0003002a40 0d 00 00 2a 00 03 00
0x004bfdf40x07set object fixed-point position0x0000011840 07 f0 00 18 01 00 00
0x004bfdfc0x15move text origin/cursor relative0x0000001040 15 10 00 10 00 00 00
0x004bfe040x04set display timer/state-40 04 00 00
0x004bfe080x1bselect script data bank-40 1b 00 00
0x004bfe0c0x0brender current context text id-40 0b 00 00
0x004bfe100x0areturn from event stream branch-40 0a 00 00
Common Stream Text Lines
VAtext
0x004bfe4c처음부터
0x004bfe5e이어서하기
0x004bfe84시나리오 선택
0x004bfea2시나리오
0x004bfeb2시나리오
0x004bfec2시나리오
0x004bfed2시나리오
0x004bfee2시나리오
0x004bfef2시나리오
0x004bff02시나리오
0x004bff12시나리오
0x004bff22시나리오 체험판
0x004bff3c시나리오데모
0x004bff4e미니게임
0x004bff5e기타
0x004bff7a시나리오
0x004bff98아타호의 집
0x004bffac되돌아감
0x004bffca시나리오
Global Reference Scan
globalimmediate VAnear bytes
choiceTargetGlobalRefs0x0040ba4f40 04 a3 a0 e2 59 00 8b 45 08 83
choiceTargetGlobalRefs0x0040bb1240 5c a1 a0 e2 59 00 8b 4d 08 89
choiceTargetGlobalRefs0x0040bbc740 5c a1 a0 e2 59 00 8b 4d 08 89
choiceLimitGlobalRefs0x0040ba9b40 06 a2 1e db 59 00 c6 05 1f db
choiceLimitGlobalRefs0x0040bac233 c0 a0 1e db 59 00 33 c9 8a 0d
randomGateSuccessCounterRefs0x0040baa100 c6 05 1f db 59 00 00 8b 45 08
randomGateSuccessCounterRefs0x0040bacac9 8a 0d 1f db 59 00 3b c1 0f 8e
randomGateSuccessCounterRefs0x0040bae200 c6 05 1f db 59 00 00 33 c0 a0
randomGateSuccessCounterRefs0x0040bba300 c6 05 1f db 59 00 00 8b 45 08
randomGateSuccessCounterRefs0x0043310900 fe 05 1f db 59 00 5f 5e 5b c9
choiceActiveFlagRefs0x0040b9bc33 c0 a0 49 77 45 00 85 c0 0f 84
choiceActiveFlagRefs0x0040baea33 c0 a0 49 77 45 00 85 c0 0f 84
choiceActiveFlagRefs0x0040bb7933 c0 a0 49 77 45 00 85 c0 0f 84
choiceActiveFlagRefs0x0041132b00 c6 05 49 77 45 00 01 c7 05 18

Remaining Proofs

다음 분석 대상
  • proof that the selected prompt trace dispatches through the script_handler_table 0x16/0x18 cluster, or proof that it does not
  • exact producer instance that sets the selected option -> next prompt target for each displayed choice
  • actual user choice cursor/confirm producer; 0x0059db1f is now excluded as a random-gate counter
  • selected option -> next prompt edge for choice rows 10/15/19/22
  • direct field scene execution proof for the selected prompt sequence
Source Artifacts