Code Monkey home page Code Monkey logo

erars's Introduction

erars

WARNING: This software is still experimental!

ERA runtime made with Rust

Run nightly

Download erars.exe from https://github.com/Riey/erars/actions/workflows/nightly.yml

Why new runtime

There is Emuera which has emerged as an alternative to eramaker, but at this point it's very slow and dependent on the Windows platform.

erars provides fast start time and cross-platform support.

Current start time

In my machine (r7 5800x) loading eraTHYMKR(about 1,445,295 ERB lines) with Emuera takes 7 seconds.

And with erars, it takes 0.5 second. Note that this program supports multi threading.

erars's People

Contributors

riey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

icodein

erars's Issues

eraSQN 조교튕김오류

아무 몽마를 구매후 조교에 들어가면 게임이 튕깁니다

로그
INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30 }
INFO [erars_loader] [Initialize]: 20ms
INFO [erars_loader] [Load CSV]: 8ms
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 27ms
INFO [erars_loader] [Parse/Compile ERB]: 1294ms
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 999
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 111
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_stdio::stdio_frontend] [stdio] <- 1
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_stdio::stdio_frontend] [stdio] <- 100
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
ERROR [erars_vm::terminal_vm] VM error occurred: Variable TRAINNAME is not exists
ERROR [erars_vm::terminal_vm] At function SHOW_USERCOM ERB\TRAIN\USERCOM.ERB@27

eraSQN 에러

https://gitgud.io/mosochu/EraSQNK 여기서 받은 sqn입니다.
게임실행시 튕기진 않으나, 아래와 같은 오류가 납니다.

error[E0001]: Compile ERROR
┌─ CSV\ITEM.CSV:232:1

232 │ 401,몽마의비키니
│ ^^^^^^^^^^^^^^^^ CSV 형식이 잘못됐습니다.

┌─ ERB\ABL\ABLUP.ERB:624:3

624 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\EVENT\EVENT_NINSHIN.ERB:157:4
 │

157 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\EVENT\EVENT_TRAVEL_NTR.ERB:212:6
 │

212 │ NPC_NAME =
│ ^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '(' at:
Alt at:
in section 'single_expr', at:

 │
 ┌─ ERB\EVENT\EXPLORER_EVENT.ERB:707:1
 │

707 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\EVENT\VIDEONAME.ERB:21:4
 │

21 │ V_TITLE = %V_TITLE% 아나타의%조사처리(TEXTS("匂い"),"가")% 난다…♪
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '(' at: %V_TITLE% 아나타의%조사처리(TEXTS("匂い"),"가")% 난다…♪
Alt at: %V_TITLE% 아나타의%조사처리(TEXTS("匂い"),"가")% 난다…♪
in section 'single_expr', at: %V_TITLE% 아나타의%조사처리(TEXTS("匂い"),"가")% 난다…♪

 │
 ┌─ ERB\EVENT_K\DEVENT_K25_2.ERB:2268:5
 │

2268 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\EVENT_K\EVENT_K22_2_829.ERB:6933:4
 │

6933 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\EVENT_K\EVENT_K95.ERB:133:3
 │

133 │ TALENT:유아/유아퇴행 = 1
│ ^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: /유아퇴행 = 1
in section 'AssignOp', at: /유아퇴행 = 1

 │
 ┌─ ERB\SHOP\PRINT_LIST.ERB:446:2
 │

446 │ PRINTFORML -%조사처리(CALLNAME:TOINT(CHOICES:1),"이")% 기억하고 있는 아르카나의 목록-
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '(' at: 조사처리(CALLNAME:TOINT(CHOICES:1),"이")% 기억하고 있는 아르카나의 목록-
Alt at: 조사처리(CALLNAME:TOINT(CHOICES:1),"이")% 기억하고 있는 아르카나의 목록-
in section 'single_expr', at: 조사처리(CALLNAME:TOINT(CHOICES:1),"이")% 기억하고 있는 아르카나의 목록-

 │
 ┌─ ERB\SHOP\SAMONTRBL.ERB:563:1
 │

563 │ ELSEIF GETBIT(P, 0) || (RAND:4 == 0 && TALENT:처녀 == 0 && TALENT:MASTER:소환천재(天才) == 0)
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected ')' at: (天才) == 0)
Alt at: (RAND:4 == 0 && TALENT:처녀 == 0 && TALENT:MASTER:소환천재(天才) == 0)
in section 'single_expr', at: (RAND:4 == 0 && TALENT:처녀 == 0 && TALENT:MASTER:소환천재(天才) == 0)

 │
 ┌─ ERB\SHOP\SQ_TATTOO.ERB:1110:3
 │

1110 │ TWAIT ANI_SPEED, 0
│ ^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: ANI_SPEED, 0
in section 'AssignOp', at: ANI_SPEED, 0

 │
 ┌─ ERB\SHOP\SHOP3.ERB:1106:1
 │

1106 │ ABL_SAMON = 1 + (TALENT:MASTER:소환천재(天才) > 0)*2 + (TALENT:MASTER:소환천재(天災) > 0) + (TALENT:MASTER:수수께끼의매력 > 0) + (TALENT:MASTER:금단의지식 > 0)
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected ')' at: (天才) > 0)*2 + (TALENT:MASTER:소환천재(天災) > 0) + (TALENT:MASTER:수수께끼의매력 > 0) + (TALENT:MASTER:금단의지식 > 0)
Alt at: (TALENT:MASTER:소환천재(天才) > 0)*2 + (TALENT:MASTER:소환천재(天災) > 0) + (TALENT:MASTER:수수께끼의매력 > 0) + (TALENT:MASTER:금단의지식 > 0)
in section 'single_expr', at: (TALENT:MASTER:소환천재(天才) > 0)*2 + (TALENT:MASTER:소환천재(天災) > 0) + (TALENT:MASTER:수수께끼의매력 > 0) + (TALENT:MASTER:금단의지식 > 0)

 │
 ┌─ ERB\SYSTEM_NEWGAME.ERB:1091:1
 │

1091 │ ADDCOPYCHARA ARG
│ ^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: ARG
in section 'AssignOp', at: ARG

 │
 ┌─ ERB\TRAIN\EVENT_ARCANA.ERB:296:4
 │

296 │ ADDCOPYCHARA TARGET
│ ^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: TARGET
in section 'AssignOp', at: TARGET

 │
 ┌─ ERB\TRAIN\COUNTER_SYSTEM.ERB:1035:2
 │

1035 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\SHOP\SHOP.ERB:1562:2
 │

1562 │ ITEMSALES:☆기교Lv = 1
│ ^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: :☆기교Lv = 1
in section 'AssignOp', at: :☆기교Lv = 1

 │
 ┌─ ERB\TRAIN\EVENT_SETFLAG.ERB:75:4
 │

75 │ MEMOS = %TOSTR(BASE:(ARG:2):식별번호)%
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '(' at: %TOSTR(BASE:(ARG:2):식별번호)%
Alt at: %TOSTR(BASE:(ARG:2):식별번호)%
in section 'single_expr', at: %TOSTR(BASE:(ARG:2):식별번호)%

 │
 ┌─ ERB\TRAIN\FUNCTION_SQ.ERB:106:3
 │

106 │ TWAIT 100, 0
│ ^^^^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at: 100, 0
in section 'AssignOp', at: 100, 0

 │
 ┌─ ERB\TRAIN\EVENT_M.ERB:1355:4
 │

1355 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\TRAIN\TRACHECK.ERB:1015:2
 │

1015 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

 │
 ┌─ ERB\TRAIN\SOURCE.ERB:1446:2
 │

1446 │ FORCEWAIT
│ ^^^^^^^^^ Expression parsing failed: Parse error:
expected '=' at:
in section 'AssignOp', at:

eraSQN 날짜 표기오류

SQN의 컨피그에서 [10] 컨피그 세이브를 했을때, 날짜가 현실날짜와 다르게나옵니다.

image

image

eraSQN 캐릭터 생성 에러

https://gitgud.io/mosochu/EraSQNK 여기서 받은 sqn입니다.
게임 실행후 난이도 노말[0] - 캐릭터 설정[0] - ♂[0] 을 하면 튕깁니다.
또한, 캐릭터 설정시에 [0] ♂ 을 제외한 다른 성별 선택지를 선택시, 아무일도 일어나지않습니다.
image

에러로그
INFO [erars_loader] [Initialize]: 0ms
INFO [erars_loader] [Load CSV]: 12ms
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 19ms
INFO [erars_loader] [Parse/Compile ERB]: 1275ms
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
ERROR [erars_vm::terminal_vm] VM error occurred: 스크립트에서 예외발생: mosochu github release-renovation Ver.200301 BUG : "음모" 를 찾을 수 없습니다
ERROR [erars_vm::terminal_vm] At function CONFIG ERB\CONFIGURE.ERB@3
ERROR [erars_vm::terminal_vm] At function SET_DETAIL ERB\SYSTEM_NEWGAME.ERB@330
ERROR [erars_vm::terminal_vm] At function MASTER_FAMALE_A ERB\SYSTEM_NEWGAME.ERB@240
ERROR [erars_vm::terminal_vm] At function START_CHARA_SELECT ERB\SYSTEM_NEWGAME.ERB@1458

[191] 특수능력취득 튕김현상

image

기본화면에서 [191] 특수능력취득 커맨드를 사용하면 튕김.

INFO [erars_loader] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars_loader] Unknown csv name _RENAME
WARN [erars_loader] Unknown csv name NOWEX
WARN [erars_loader] Unknown csv name JUEL
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
INFO [erars_compiler::parser] Don't use DA
INFO [erars_compiler::parser] Don't use DB
INFO [erars_compiler::parser] Don't use DC
INFO [erars_compiler::parser] Don't use DD
INFO [erars_compiler::parser] Don't use DE
INFO [erars_compiler::parser] Don't use TA
INFO [erars_compiler::parser] Don't use TB
WARN [erars_loader] Unknown csv name GAMEBASE
ERROR [erars_vm] VM failed with: Value is not int
ERROR [erars_vm] at function TROPHY_FEAT_GET@1168 ERB\SYS\TROPHY.ERB [ SIF TALENT:MASTER:(LOCALS:LOCAL)]
ERROR [erars_vm] at function USERSHOP@647 ERB\SYS\SHOP\SHOP.ERB [ CALL TROPHY_FEAT_GET]
INFO [erars_loader] Program Terminated

UI 진행도

전체 구현

  • PRINT
  • NEWLINE
  • DRAWLINE
  • ALIGNMENT
  • REUSELASTLINE
  • COLOR
  • BGCOLOR
  • CLEARLINE
  • LINECOUNT
  • FONT
  • STYLE
  • INPUT
  • ONEINPUT
  • TINPUT
  • 이미지

HTML 구현

  • 중간부터 출력 가능하게 만들기

조교 종료후 튕김현상

https://gitgud.io/riey/eraTHYMKR 여기서 받은 ym으로 했습니다.

ym 이지에 토리코 기본세트(10) 에서 레이무 조교후 조교종료[999] 로 나가는 도중 게임이 튕겼습니다.

로그

INFO [erars] Load config: EraConfig { lang: Korean, save_nos: 20 }
WARN [erars] Unknown csv name NOWEX
WARN [erars] Unknown csv name GAMEBASE
WARN [erars] Unknown csv name MARK
WARN [erars] Unknown csv name TCVAR
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
INFO [erars_compiler::parser] Don't use DA
INFO [erars_compiler::parser] Don't use DB
INFO [erars_compiler::parser] Don't use DC
INFO [erars_compiler::parser] Don't use DD
INFO [erars_compiler::parser] Don't use DE
INFO [erars_compiler::parser] Don't use TA
INFO [erars_compiler::parser] Don't use TB
WARN [erars] Unknown csv name RENAME
WARN [erars] Unknown csv name JUEL
INFO [erars] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
ERROR [erars::vm] VM failed with: Function BARSTR is not exists
ERROR [erars::vm] at function SHOW_ABLUP_SELECT_2@184 ERB\ABLUP\ABL_MENU.ERB [ PRINTFORM [{LOCAL, 2}] %ABLNAME:LOCAL, 8, LEFT%:LV{ABL:LOCAL} %BARSTR(ABL:LOCAL, 5, 5)% ]
ERROR [erars::vm] at function SHOW_ABLUP_SELECT@12 ERB\ABLUP\ABL_MENU.ERB [CALLFORM SHOW_ABLUP_SELECT
{(FLAG:12 & 2) / 2 + 1}]
INFO [erars] Program Terminated

HTTP로 실행 중 정지하는 현상

로그는 아래와 같습니다:

INFO [erars::ui::http_backend] Listening on 127.0.0.1:8000
INFO [erars] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars] Unknown csv name GAMEBASE
WARN [erars] Unknown csv name _RENAME
WARN [erars] Unknown csv name NOWEX
WARN [erars] Unknown csv name TCVAR
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
INFO [erars_compiler::parser] Don't use DA
INFO [erars_compiler::parser] Don't use DB
INFO [erars_compiler::parser] Don't use DC
INFO [erars_compiler::parser] Don't use DD
INFO [erars_compiler::parser] Don't use DE
INFO [erars_compiler::parser] Don't use TA
INFO [erars_compiler::parser] Don't use TB
WARN [erars] Unknown csv name MARK
WARN [erars] Unknown csv name JUEL
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 0, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 1, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 2, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 3, ty: Int, is_one: false, timeout: None }) <- 1
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 4, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 5, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 6, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 7, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 8, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 9, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 10, ty: Str, is_one: false, timeout: None }) <- 
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 11, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 12, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 13, ty: Int, is_one: false, timeout: None }) <- 111
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 14, ty: Int, is_one: false, timeout: None }) <- 101
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 15, ty: Int, is_one: false, timeout: None }) <- 0
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 16, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 17, ty: Int, is_one: false, timeout: None }) <- 1000
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 18, ty: Int, is_one: false, timeout: None }) <- 100
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 19, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 20, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 21, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 22, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 23, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 24, ty: Int, is_one: false, timeout: None }) <- 999
INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 25, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 26, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] Some(InputRequest { generation: 27, ty: AnyKey, is_one: false, timeout: None }) <- 

INFO [erars::ui::http_backend] [UI] None <- 

INFO [erars::ui::http_backend] [UI] None <- 


image

이 이후로 작동을 정지하는데, current_req가 null로 돌아오는 것으로 보아 내부 처리에서 무한루프가 도는 것 같습니다.
/input에 전송한 내용은 "", "\n", "\r\n"으로 시도해 보았지만 차이는 없었습니다.

일단 ABLUP 처리 이전까지는 정상적으로 작동하는 것을 확인했습니다.

HTTP Response의 TextStyle에 format 정보를 추가해주세요

PRINT에는 접사에 따라서 좌/우측 정렬이나 개행 여부 등 문자열의 위치 정보가 갈리는 것을 확인했습니다.
하지만 현재 HTTP response는 콘솔에 출력되는 내용을 그대로 출력하는 중이라 개행 여부나, 정렬 방향에 대한 자세한 정보 없이 공백 등으로 이미 포매팅된 스트링만 제공되고 있어, 클라이언트 측에서 반응형 UI를 적용하기 어려운 상황입니다.

해당 부분을 TextStyle에 추가해 주셨으면 합니다.

PRINTC 계열 함수에서 문제가 발생합니다

image

Train이 아닌 상태에서 PRINTLC [101] - 능력 보기 와 같은 코드에서 한 행에 표시되지 않고 각 항목이 전부 분리된 행에 표시됩니다.


image

추가로 Train 상태에서 config에 적용된 PRINTC 개수에 따른 개행이 정상적으로 적용되지 않습니다.

eraSQN 커맨드오류

sqn에서 쿠즈노하를 조교할때 아래의
image
커맨드를 실행헀을때 게임이 튕깁니다.

INFO [erars_loader] Load config
INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30, font_family: "D2Coding", font_size: 18, line_height: 19 }
INFO [erars_loader] [Initialize]: 0ms
WARN [wgpu_core::device] Requested size 1009x480 is outside of the supported range: Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }..=Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }
INFO [erars_loader] [Load CSV]: 275ms
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] [Merge CSV]: 3ms
INFO [erars_loader] [Merge chara CSV]: 1ms
INFO [erars_loader] [Merge ERH]: 101ms
INFO [erars_loader] [Parse/Compile ERB]: 3517ms
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(1)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(100)
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(6)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(107)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(5)
ERROR [erars_vm::terminal_vm] VM error occurred: Function TOFULL is not exists
ERROR [erars_vm::terminal_vm] At function TRAIN_MESSAGE_COM5 ERB\COMF\COMF5.ERB@141
ERROR [erars_vm::terminal_vm] At function TRAIN_MESSAGE_B ERB\TRAIN\EVENT_M.ERB@184
ERROR [erars_vm::terminal_vm] At function COM5 ERB\COMF\COMF5.ERB@14

eraSQN 세이브튕김

eraSQN에서 세이브를 할려고 하거나, 처음들어가면 뜨는 메인메뉴에서 [1] 로드해서 시작한다를 했을때 튕깁니다.

INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30 }
INFO [erars_loader] [Initialize]: 3ms
INFO [erars_loader] [Load CSV]: 10ms
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 30ms
INFO [erars_loader] [Parse/Compile ERB]: 1356ms
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 999
INFO [erars_stdio::stdio_frontend] [stdio] <- 100
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 200
ERROR [erars_vm::terminal_vm] VM error occurred: Function SAVENOS is not exists
ERROR [erars_vm::terminal_vm] At function PRINT_SAVEDATA ERB\SAVELOAD.ERB@136
ERROR [erars_vm::terminal_vm] At function SAVEGAME_EX ERB\SAVELOAD.ERB@23
ERROR [erars_vm::terminal_vm] At function USERSHOP ERB\SHOP\SHOP.ERB@815

버튼 파싱 오류

>[ 9] 2022年10月08日 22:52:52 1일째 낮
이라는 스트링을

image

하나의 버튼으로 인식하지 못합니다

노예 구매시 튕김현상

https://gitgud.io/riey/eraTHYMKR 여기서 받은 ym으로 했습니다.

ym 이지에 토리코 기본세트(10) 에서 시작하자마자 레이무 구매했는데 튕겼습니다.

로그

INFO [erars] Load config: EraConfig { lang: Korean }
WARN [erars] Unknown csv name _RENAME
INFO [erars] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars] Unknown csv name MARK
WARN [erars] Unknown csv name JUEL
WARN [erars] Unknown csv name NOWEX
WARN [erars] Unknown csv name GAMEBASE
WARN [erars] Unknown csv name TCVAR
WARN [erars] Unknown csv name VARIABLESIZE
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: fontstyle(0)
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] Ignore SP feature
WARN [erars::vm] TODO: FONTBOLD
WARN [erars::vm] TODO: FONTREGULAR
WARN [erars::vm] Ignore SP feature
ERROR [erars::vm] VM failed with: Variable out of range 11000
ERROR [erars::vm] at function SET_CALLNAME@2687 ERB\SYS\PRINT_STATE.ERB [ STR:(COUNT + 11000) = %CSVNAME(COUNT, 0)%]
ERROR [erars::vm] at function PRINT_RELATION@1125 ERB\SYS\PRINT_STATE.ERB [CALL SET_CALLNAME]
ERROR [erars::vm] at function SHOW_ADDITIONAL_INFO@125 ERB\SYS\SHOP\SHOP_CHARALIST.ERB [ CALL PRINT_RELATION, LOCAL:1]
ERROR [erars::vm] at function CHARA_PROFILE@1580 ERB\SYS\SHOP\SHOP_CHARALIST.ERB [ CALL SHOW_ADDITIONAL_INFO]
ERROR [erars::vm] at function CHARA_MANUAL@12 ERB\SYS\SHOP\SHOP_CHARALIST.ERB [CALL CHARA_PROFILE]
ERROR [erars::vm] at function CHARA_BUY_MAIN@143 ERB\SYS\SHOP\SHOP_CHARABUY.ERB [ CALL CHARA_MANUAL]
ERROR [erars::vm] at function USERSHOP@536 ERB\SYS\SHOP\SHOP.ERB [ CALL CHARA_BUY_MAIN]
INFO [erars] Program Terminated

eraSQN 몽마관련오류

난이도 노말로 캐릭터 "당신" 생성후 몽마를 구매할려고 [111] 몽마소환 선택후 1번 서큐버스를 구매하니 게임이 튕겼습니다.
또한, 게임 시작후 캐릭터 만들기에서 [ 1] 몽마의 목록에서 선택 을 한후 1번 서큐버스를 고르니 게임이 튕겼습니다.

구매튕김로그
INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30 }
INFO [erars_loader] [Initialize]: 19ms
INFO [erars_loader] [Load CSV]: 9ms
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
INFO [erars_loader] [Merge CSV]: 1ms
INFO [erars_loader] [Merge chara CSV]: 1ms
INFO [erars_loader] [Merge ERH]: 31ms
INFO [erars_loader] [Parse/Compile ERB]: 1364ms
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 999
INFO [erars_stdio::stdio_frontend] [stdio] <- 100
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- ""
INFO [erars_stdio::stdio_frontend] [stdio] <- 111
WARN [erars_vm::terminal_vm::executor] TODO: CHKFONT
INFO [erars_stdio::stdio_frontend] [stdio] <- 1
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
ERROR [erars_vm::terminal_vm] VM error occurred: Variable 쾌C is not exists
ERROR [erars_vm::terminal_vm] At function SOURCE_CVABM ERB\TRAIN\TRACHECK.ERB@385
ERROR [erars_vm::terminal_vm] At function CALC_SOURCE ERB\TRAIN\TRACHECK.ERB@79
ERROR [erars_vm::terminal_vm] At function ANALYSIS_CALC_MAIN ERB\SHOP\ANALYSIS.ERB@313
ERROR [erars_vm::terminal_vm] At function ANALYSIS_CALC ERB\SHOP\ANALYSIS.ERB@262
ERROR [erars_vm::terminal_vm] At function PRINT_PROFILE ERB\SHOP\SHOP3.ERB@1029
ERROR [erars_vm::terminal_vm] At function PROFILE ERB\SHOP\SHOP3.ERB@942
ERROR [erars_vm::terminal_vm] At function CHARA_MANUAL ERB\SHOP\SHOP3.ERB@1064
ERROR [erars_vm::terminal_vm] At function CHARA_BUY ERB\SHOP\SHOP2.ERB@51
ERROR [erars_vm::terminal_vm] At function USERSHOP ERB\SHOP\SHOP.ERB@664

몽마목록에서선택로그
INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30 }
INFO [erars_loader] [Initialize]: 34ms
INFO [erars_loader] [Load CSV]: 9ms
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 29ms
INFO [erars_loader] [Parse/Compile ERB]: 1282ms
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 0
INFO [erars_stdio::stdio_frontend] [stdio] <- 1
INFO [erars_stdio::stdio_frontend] [stdio] <- 1
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
WARN [erars_vm::terminal_vm::executor] Ignore SP feature
ERROR [erars_vm::terminal_vm] VM error occurred: Variable 쾌C is not exists
ERROR [erars_vm::terminal_vm] At function SOURCE_CVABM ERB\TRAIN\TRACHECK.ERB@385
ERROR [erars_vm::terminal_vm] At function CALC_SOURCE ERB\TRAIN\TRACHECK.ERB@79
ERROR [erars_vm::terminal_vm] At function ANALYSIS_CALC_MAIN ERB\SHOP\ANALYSIS.ERB@313
ERROR [erars_vm::terminal_vm] At function ANALYSIS_CALC ERB\SHOP\ANALYSIS.ERB@262
ERROR [erars_vm::terminal_vm] At function PRINT_PROFILE ERB\SHOP\SHOP3.ERB@1029
ERROR [erars_vm::terminal_vm] At function PROFILE ERB\SHOP\SHOP3.ERB@942
ERROR [erars_vm::terminal_vm] At function CHARA_MANUAL ERB\SHOP\SHOP3.ERB@1064
ERROR [erars_vm::terminal_vm] At function START_CHARA_SELECT ERB\SYSTEM_NEWGAME.ERB@1492

Empty argument

@FOO(ARG, ARG:1, ARGS)

CALL FOO( , 123 , ) => CALL FOO(0, 123, "")

config 포맷의 serde 지원

장점

  1. config 내용을 다른 형식(json) 등으로 옮기기 쉬워짐
  2. config 내용을 추가하기 편해짐

eraSQN 설정 튕김오류

게임시작후 [555]컨피그에 들어간후 [0] 조교신 전반에 깊게 관련된 설정 > [0] 사정장소의 변경 > [9] 이 설정으로 한다. 를 누를시 튕깁니다.

로그
INFO [erars_loader] Config: EraConfig { lang: Japanese, save_nos: 0, max_log: 500, printc_count: 4, printc_width: 30 }
WARN [wgpu_core::device] Requested size 1009x480 is outside of the supported range: Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }..=Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }
INFO [erars_loader] [Initialize]: 67ms
INFO [erars_loader] [Load CSV]: 295ms
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1001, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ제작 스레드 갤럼 일동", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "mosochu github release-renovation", title: "eraSQNK" }
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 199ms
INFO [erars_loader] [Parse/Compile ERB]: 2746ms
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(999)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(100)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- AnyKey
INFO [erars_egui] Res -> Empty
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(555)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(0)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(9)
ERROR [erars_vm::terminal_vm] VM error occurred: Function ALLSAMES is not exists
ERROR [erars_vm::terminal_vm] At function SETCONFIG ERB\CONFIGURE.ERB@948
ERROR [erars_vm::terminal_vm] At function SETCONFIG ERB\CONFIGURE.ERB@651
ERROR [erars_vm::terminal_vm] At function SET_CONFIGURE_MAIN ERB\CONFIGURE.ERB@72
ERROR [erars_vm::terminal_vm] At function SET_CONFIGURE ERB\CONFIGURE.ERB@4
ERROR [erars_vm::terminal_vm] At function USERSHOP ERB\SHOP\SHOP.ERB@831

PRINT 버튼 파싱 오류

eraTHYMKR의 ERB/SYS/SAVELOAD.erb의 24라인에 있는 다음 코드

PRINTL [100] 돌아가기          [101] 이전 페이지  [102] 다음 페이지

와 같은 경우 그림과 같이 모든 버튼이 추출되지 않고 최초 버튼만 인식되는 오류가 있습니다.

image

[] string

EraSQNK
ERB/TRAIN/EVENT_T.ERB에서

3329행 @NAMES 를 보면

image

처럼 []으로 묶어서 넣어버리는데 이게 기존 EE에서는 PRINTFORMLC에서 스트링으로 제대로 나옵니다

ERB/CONFIGURE.ERB에서

831행
PRINTFORMLC  [{LCOUNT, 2}] \@GETBIT(TALENT:MASTER:성벽, LCOUNT) ? ○ # - \@ %NAMES("속성", LCOUNT)%

eraTHYMKR 실행 불가능

새 게임 시작해서 eratohoYM 선택 후 어떤 난이도를 선택해도 실행되지 않습니다.
추가로 100 HELP를 선택하면 작동이 정지합니다.

json flag를 켜든 안 켜든 동일한 문제가 발생합니다.

칭호 출력버그?

image

새로운 칭호를 얻을수있다 뜨는데 정작 무슨칭호인지 보이지않음.

조교튕김버그

image

세이브를 불러왔을때 지정되어있는 노예가 없어서
[109] 조교 대상 변경으로 다시 노예를 지정후, 조교한다에 돌입하면 튕김.

혹시몰라 세이브도 첨부
save00.msgpack.gz

WARN [erars_loader] Unknown csv name GAMEBASE
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
INFO [erars_compiler::parser] Don't use DA
INFO [erars_compiler::parser] Don't use DB
INFO [erars_compiler::parser] Don't use DC
INFO [erars_compiler::parser] Don't use DD
INFO [erars_compiler::parser] Don't use DE
INFO [erars_compiler::parser] Don't use TA
INFO [erars_compiler::parser] Don't use TB
WARN [erars_loader] Unknown csv name MARK
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars_loader] Unknown csv name _RENAME
WARN [erars_loader] Unknown csv name NOWEX
WARN [erars_loader] Unknown csv name TCVAR
WARN [erars_loader] Unknown csv name JUEL
ERROR [erars_vm] VM failed with: Variable STAIN Character index 1 not exists
ERROR [erars_vm] at function COM_ABLE1@12 ERB\COM\COMF0's\COMF001.ERB [SIF STAIN:3 >= 2 && (STAIN:3 != 16 && STAIN:3 != 17) && ASSIPLAY == 0 && TALENT:MASTER:64 == 0]
INFO [erars_loader] Program Terminated

커맨드/메소드 구현 진행도

제어함수

  • RETURN
  • RETURNFORM
  • RETURNF
  • RESTART
  • QUIT
  • THROW
  • DOTRAIN
  • CALLTRAIN

대입연산자

  • =
  • '=
  • {+, -, &, ...}=

입력함수

  • INPUT
  • TINPUT
  • ONEINPUT
  • WAIT[ANYKEY]
  • TWAIT
  • FORCEWAIT
  • MOUSESKIP
  • MESSKIP

출력함수

  • PRINT
  • PRINTW
  • PRINTPLAIN
  • PRINTBUTTON
  • PRINTD
  • PRINTK
  • HTML_PRINT
  • 그래픽 함수
  • BAR
  • BARSTR
  • REUSELASTLINE
  • REDRAW
  • DRAWLINE
  • DRAWLINEFORM
  • CUSTOMDRAWLINE
  • CLEARLINE
  • GETCOLOR
  • GETDEFCOLOR
  • SETCOLOR
  • GETBGCOLOR
  • GETDEFBGCOLOR
  • SETBGCOLOR
  • RESETCOLOR
  • RESETBGCOLOR
  • SETCOLORBYNAME
  • SETBGCOLORBYNAME
  • FONTBOLD
  • FONTITALIC
  • FONTSTYLE
  • GETSTYLE
  • SETFONT
  • GETFONT

산술함수

  • ABS
  • SQRT
  • POWER
  • SIGN
  • INRANGE
  • LOG
  • LOG10
  • LIMIT
  • GETBIT
  • SETBIT
  • CLEARBIT
  • INVERTBIT

배열함수

  • SUMARRAY
  • ARRAYSHIFT
  • ARRAYMOVE
  • GROUPMATCH
  • VARSET
  • CVARSET
  • FINDELEMENT
  • FINDLASTELEMENT
  • NOSAMES
  • ALLSAMES

문자열함수

  • STRLENS
  • STRLENSU
  • SUBSTRING
  • SUBSTRINGU
  • UNICODE
  • CHARATU
  • STRFINDU
  • STRCOUNT
  • STRJOIN
  • REPLACE
  • ESCAPE
  • ENCODETOUNI
  • CONVERT

저장/로드함수

  • PUTFORM
  • SAVEDATA
  • CHKDATA
  • RESETDATA
  • LOADDATA
  • DELDATA
  • SAVENOS
  • SAVEGLOBAL
  • LOADGLOBAL
  • SAVEGAME
  • LOADGAME
  • SAVECHARA
  • CHKCHARADATA
  • FIND_CHARADATA
  • LOADCHARA

유틸함수

  • TOINT/STR
  • [C]UPCHECK
  • SPLIT
  • SWAP
  • RESET_STAIN
  • GETEXPLV
  • GETPALAMLV
  • RAND
  • DUMPRAND
  • GETTIME
  • GETTIMES
  • GETMILLISECOND
  • GETSECOND

캐릭터함수

  • ADDDEFCHARA
  • ADDCHARA
  • ADDCOPYCHARA
  • COPYCHARA
  • GETCHARA
  • DELCHARA
  • SWAPCHARA
  • SORTCHARA
  • PICKUPCHARA
  • CSV 함수들

wasm의 storage 관련

erars-wasm에서 저장을 위해 현재 브라우저의 LocalStorage를 사용하는 것으로 알고 있습니다.

다만 erars의 작업은 동기로 실행되고 있는데, 이럴 경우 메인 스레드가 블러킹될 수 있어 erars-wasm을 Worker로 사용하는 것이 바람직한 사용법 같습니다.
그런데 Worker에서는 localStorage를 사용할 수가 없어서, Worker를 통해 wasm을 로드하면 오류가 발생합니다.

가능하면 erars-wasm이 localStorage 대신 IndexedDB를 이용하도록 바꿀 수 있을까요?

image

손가락 삽입[4] 사용시 튕김

ym - 이지 - 토리코[10] 로 하는데 마리사를 구매후 조교할때 손가락삽입[4] 커맨드 사용시 튕김.

ym판, 마리사는유지 설정

WARN [erars_loader] Unknown csv name MARK
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
INFO [erars_compiler::parser] Don't use DA
INFO [erars_compiler::parser] Don't use DB
INFO [erars_compiler::parser] Don't use DC
INFO [erars_compiler::parser] Don't use DD
INFO [erars_compiler::parser] Don't use DE
INFO [erars_compiler::parser] Don't use TA
INFO [erars_compiler::parser] Don't use TB
WARN [erars_loader] Unknown csv name NOWEX
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "원", unit_forward: false, start_message: "신사망상중...", sell_item_count: 0, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0, 0, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200, 400, 700, 1000, 1500, 2000], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000, 500000, 1000000, 5000000, 10000000, 50000000], pband_init: 0, relation_init: 0 }
WARN [erars_loader] Unknown csv name _RENAME
WARN [erars_loader] Unknown csv name TCVAR
WARN [erars_loader] Unknown csv name JUEL
WARN [erars_loader] Unknown csv name GAMEBASE
ERROR [erars_vm] VM failed with: TODO: Jump(0)
ERROR [erars_vm] at function COM4@55 ERB\COM\COMF0's\COMF004.ERB [ JUMP COM605]
INFO [erars_loader] Program Terminated

erars-stdio + json에 불필요한 출력

eraTHYMKR에서 새 게임을 시작한 과정입니다.

Microsoft Windows [Version 10.0.22621.674]
(c) Microsoft Corporation. All rights reserved.

C:\Users\eliot\workspace\erars-neu\eraTHYMKR>erars-stdio --json
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["[Initialize]: 0ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Load CSV]: 28ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Merge CSV]: 5ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Merge chara CSV]: 2ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["
신사망상중...",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Merge ERH]: 102ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Parse/Compile ERB]: 1221ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Report errors]: 0ms",{"color":[255,255,255]}]}]},{"parts":[{"Text":["[Check codes]: 3ms",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["eraTHYMKR 2019 국내 갱신판 · 191028",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["v3.21",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["통합자: ㅇㄹ",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["(2019년 10월 28일 최종갱신)",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["※본 게임은 조교 SLG 제작 툴 erakanon을 수정·재배포한 것입니다.",{"color":[255,255,255]}]}]},{"align":"Center","parts":[{"Text":["「노예를 괴롭혀주세요…… 노예를 아껴주세요」",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["[0] 힘세고 강한 시작",{"color":[255,255,255]}]],0,{"Int":0}]}]},{"parts":[{"Button":[[["[1] 불러오기",{"color":[255,255,255]}]],0,{"Int":1}]}]}]}
{"generation":0,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Text":["★★ 모드를
선택해 주세요 ★★",{"color":[255,255,255]}]}]},{"parts":[{"Text":["",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["[0] eratohoYM",{"color":[255,255,255]}]],1,{"Int":0}]}]},{"parts":[{"Button":[[["[1] ABNORMAL",{"color":[255,255,255]}]],1,{"Int":1}]}]},{"parts":[{"Button":[[["[6] PROSTITUTE",{"color":[255,255,255]}]],1,{"Int":6}]}]},{"parts":[{"Button":[[["[9] EXTRA  ",{"color":[255,255,255]}]],1,{"Int":9}]}]},{"parts":[{"Button":[[["[100] HELP   (각 게임 모드의 간단한 설명)",{"color":[255,255,255]}]],1,{"Int":100}]}]}]}
{"generation":1,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["“eratohoYM” 모드를 선택했습니다.",{"color":[255,255,255]}]}]}]}
{"generation":2,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Text":["★★ 난이도를 선택하세요 ★★",{"color":[255,255,255]}]}]},{"parts":[{"Text":["",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["[1] EASY    (120일 기한, 목표 금액 100만원)",{"color":[255,255,255]}]],3,{"Int":1}]}]},{"parts":[{"Button":[[["[2] NORMAL   (90일 기한, 목표 금액 100만원)",{"color":[255,255,255]}]],3,{"Int":2}]}]},{"parts":[{"Button":[[["[3] HARD     (99일 기한, 목표 금액 100만원)",{"color":[255,255,255]}]],3,{"Int":3}]}]},{"parts":[{"Button":[[["[4] LUNATIC  (90일 기한, 목표 금액 100만원)",{"color":[255,255,255]}]],3,{"Int":4}]}]},{"parts":[{"Button":[[["[5] PHANTASM (60일 기한, 목표 금액 100만원)",{"color":[255,255,255]}]],3,{"Int":5}]}]},{"parts":[{"Button":[[["[100] HELP   (각 난이도의 설명)",{"color":[255,255,255]}]],3,{"Int":100}]}]}]}
{"generation":3,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}
{"generation":4,"ty":"Int","is_one":false}

1
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["난이도 : “EASY”를 선택했습니다.",{"color":[255,255,255]}]}]}]}
{"generation":5,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Text":["★★ 추가 기능은 어떻게 하겠습니까? ★★",{"color":[255,255,255]}]}]},{"parts":[{"Text":["",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["[0] 필요 없음    :추가 기능을 설정하지 않고 스타트",{"color":[255,255,255]}]],6,{"Int":0}]}]},{"parts":[{"Button":[[["[1] 기본 세트    :처음으로 eratohoYM에 접하는 분 지향",{"color":[255,255,255]}]],6,{"Int":1}]}]},{"parts":[{"Button":[[["[2] wiki 세트    :eratoho 일본어 wiki내 페이지에 소개되어 있는 설정",{"color":[255,255,255]}]],6,{"Int":2}]}]},{"parts":[{"Button":[[["[3] 애정 세트    :노예와 애정을 가지고 접하고 싶은 분 지향",{"color":[255,255,255]}]],6,{"Int":3}]}]},{"parts":[{"Button":[[["[4] 자학 세트    :비참한 결말을 맞이하고 싶은 분 지향",{"color":[255,255,255]}]],6,{"Int":4}]}]},{"parts":[{"Button":[[["[5] 비주차 세트   :주차 플레이를 고려하지 않는 분 지향",{"color":[255,255,255]}]],6,{"Int":5}]}]},{"parts":[{"Button":[[["[6] YM 권장 세트   :어쨌든 우선 eratohoYM을 즐겨보고 싶으신 분 지향",{"color":[255,255,255]}]],6,{"Int":6}]}]},{"parts":[{"Button":[[["[8] 개별 설정    :컨피그를 일일이 설정합니다.",{"color":[255,255,255]}]],6,{"Int":8}]}]},{"parts":[{"Button":[[["[10] 토리코 기본 세트:YM 권장 세트+토리코 모드 편의기능. eratohoYM 초심자 혹은 즐겜유저 지향.",{"color":[250,150,250]}]],6,{"Int":10}]}]},{"parts":[{"Button":[[["[11] 토리코 EX 세트  :웬만큼 eratohoYM을 꿰고 있는 분들을 위한 하드코어 기능 세트.숙련자 지향.",{"color":[250,150,250]}]],6,{"Int":11}]}]},{"parts":[{"Button":[[["[12] 경비원 세트   :토리코 모드 패치의 신 게임 모드인 경비 시스템 추가. 숙련자 지향.",{"color":[250,150,250]}]],6,{"Int":12}]}]},{"parts":[{"Text":["※설정은 나중에도 변경 가능합니다",{"color":[255,255,255]}]}]}]}
{"generation":6,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["추가 기능을 유효로 하지 않고 게임을 시작합니다.",{"color":[255,255,255]}]}]}]}
{"generation":7,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Text":["\"노 모어 글레이즈\" 모드를 선택할 수 있습니다. 어떻게 하시겠습니까?",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["",{"color":[255,255,255]}],["[0] 선택하지 않는다.",{"color":[255,255,255]}]],8,{"Int":0}]}]},{"parts":[{"Button":[[["[1] 선택한다.",{"color":[255,255,255]}]],8,{"Int":1}]}]},{"parts":[{"Button":[[["[2] …그게 뭐야?",{"color":[255,255,255]}]],8,{"Int":2}]}]},{"parts":[{"Text":["",{"color":[255,255,255]}]}]}]}
{"generation":8,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["일반 모드로 플레이합니다.",{"color":[255,255,255]}]}]}]}
{"generation":9,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Text":["적절한 eratohoYM의 프롤로그입니다. 보시겠습니까?",{"color":[255,255,255]}]}]},{"parts":[{"Button":[[["[0] 필요 없어!",{"color":[255,255,255]}]],10,{"Int":0}]}]},{"parts":[{"Button":[[["[1] 예",{"color":[255,255,255]}]],10,{"Int":1}]}]}]}
{"generation":10,"ty":"Int","is_one":false}
0
{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["",{"color":[255,255,255]}]}]},{"parts":[{"Text":["당신의 이름을 알려주세요. (5자까지)",{"color":[255,255,255]}]}]}]}
{"generation":11,"ty":"Str","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["\"당신\"으로 정해졌습니다.",{"color":[255,255,255]}]}]}]}
{"generation":12,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["(이름은 언제든 CONFIG에서 변경할 수 있습니다)",{"color":[255,255,255]}]}]}]}
{"generation":13,"ty":"AnyKey","is_one":false}

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["1일째",{"color":[255,255,255]}]}]},"lines":[{"parts":[{"Line":["-",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["1일째 1년 1월 1일 일요일",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["1일째 1년 1월 1일 일요일",{"color":[255,255,255]}]},{"Text":["(낮)",{"color":[192,192,192]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["1일째 1년 1월 1일 일요일",{"color":[255,255,255]}]},{"Text":["(낮)",{"color":[192,192,192]}]},{"Text":[" 잔여139일",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["거주지:보통 집 ",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["거주지:보통 집 ",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["당신(주인) ",{"color":[255,255,255]}]}]},"lines":[{"parts":[{"Text":["거주지:보통 집 (최대10명 노예구입가능)",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":[" ",{"color":[255,255,255]}]}]},"lines":[{"parts":[{"Text":["당신(주인) <멀쩡함>(심도 :Lv0)",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":[" 체력",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["소지금:5000원",{"color":[255,255,255]}]}]},"lines":[{"parts":[{"Text":[" 체력",{"color":[255,255,255]}]},{"Text":["[********************************]",{"color":[192,192,192]}]},{"Text":["(2500 /2500 )",{"color":[255,255,255]}]}]},{"parts":[{"Text":[" ",{"color":[255,255,255]}]}]},{"parts":[{"Text":["",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["소지금:5000원(목표금액까지995000원)",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Text":["보유아이템:비디오카메라 비디오테이프×1 ",{"color":[255,255,255]}]}]},{"parts":[{"Line":["-",{"color":[255,255,255]}]}]}]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[]}{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"lines":[{"parts":[{"Button":[[["[101] - 능력 보기        ",{"color":[255,255,255]}]],14,{"Int":101}]},{"Button":[[["[102] - 휴식             ",{"color":[255,255,255]}]],14,{"Int":102}]},{"Button":[[["[110] - 아이템 구입      ",{"color":[255,255,255]}]],14,{"Int":110}]},{"Button":[[["[111] - 노예 구입        ",{"color":[255,255,255]}]],14,{"Int":111}]},{"Button":[[["[121] - 기능훈련사      ",{"color":[255,255,255]}]],14,{"Int":121}]},{"Button":[[["[122] - 약방             ",{"color":[255,255,255]}]],14,{"Int":122}]},{"Button":[[["[190] - 환상향연기       ",{"color":[255,255,255]}]],14,{"Int":190}]},{"Button":[[["[191] - 특수능력 취득    ",{"color":[255,255,255]}]],14,{"Int":191}]},{"Button":[[["[200] - 저장하기         ",{"color":[255,255,255]}]],14,{"Int":200}]},{"Button":[[["[300] - 불러오기         ",{"color":[255,255,255]}]],14,{"Int":300}]},{"Button":[[["[400] - 캐릭터 검색      ",{"color":[255,255,255]}]],14,{"Int":400}]},{"Button":[[["[777] - 컨피그 설정      ",{"color":[255,255,255]}]],14,{"Int":777}]},{"Button":[[["[998] - 동방조교전       ",{"color":[255,255,255]}]],14,{"Int":998}]}]}]}
{"generation":14,"ty":"Int","is_one":false}

이중에

{"rebuild":false,"bg_color":[0,0,0],"hl_color":[255,255,0],"last_line":{"parts":[{"Text":["보유아이템:",{"color":[255,255,255]}]}]},"lines":[]}

처럼 불필요한 출력이 반복되는 것 같습니다.

Load issue(EraSQNK)

새 게임 시작 이후 바로 저장한 다음 재실행하여 로드하면 오류가 발생합니다.

INFO [erars_loader] Config: EraConfig { lang: Korean, save_nos: 20, max_log: 5000, printc_count: 3, printc_width: 26 }
INFO [erars_loader] [Initialize]: 3ms
INFO [erars_loader] [Load CSV]: 7ms
WARN [erars_loader] Unknown csv name JUEL
INFO [erars_loader] Replace: ReplaceInfo { money_unit: "$", unit_forward: false, start_message: "Now Loading...", sell_item_count: 100, drawline_str: "-", bar_str1: "*", bar_str2: ".", system_menu0: "[0] 最初からはじめる", system_menu1: "[1] ロードしてはじめる", comable_init: 0, stain_init: [0, 0, 2, 1, 8, 0], timeout_message: "時間切れ", explv_init: [0, 1, 4, 20, 50, 200], palamlv_init: [0, 100, 500, 3000, 10000, 30000, 60000, 100000, 150000, 250000], pband_init: 4, relation_init: 0 }
ERROR [erars_compiler::parser] Variable ITEMNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable EQUIPNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable FLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable TFLAGNAME is not exists but defined in variablesize.csv
ERROR [erars_compiler::parser] Variable CDFLAG is not exists but defined in variablesize.csv
INFO [erars_loader] GAMEBASE: Gamebase { code: 9224517, version: 1000, allow_version: 2, default_chara: 0, no_item: 0, author: "eraSQ製作スレッド槍男一同", info: "※본작은 SLG작성 툴 erakanon의 개조・재배포판입니다. eraSQN(2017_05_25)의 한글판입니다.", year: "2019_01_11 암모니아 번역*디버그 중. 19.4.10.1V", title: "eraSQNK" }
INFO [erars_loader] [Merge CSV]: 0ms
INFO [erars_loader] [Merge chara CSV]: 0ms
INFO [erars_loader] [Merge ERH]: 17ms
WARN [wgpu_core::device] Requested size 1422x828 is outside of the supported range: Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }..=Extent3d { width: 800, height: 600, depth_or_array_layers: 1 }
INFO [erars_loader] [Parse/Compile ERB]: 272ms
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(1)
INFO [erars_egui] Req <- Int
INFO [erars_egui] Res -> Int(19)
ERROR [erars_vm::terminal_vm] VM error occurred: Variable STAIN Character index 1 not exists
ERROR [erars_vm::terminal_vm] At function RESETFLAG_CLO ERB\CLOTHES\CLOTHES.ERB@559
ERROR [erars_vm::terminal_vm] At function CHECK_FLAG_MUMA ERB\SHOP\SHOP.ERB@82
ERROR [erars_vm::terminal_vm] At function SHOW_SHOP ERB\SHOP\SHOP.ERB@186

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.