From 36882e50cf37b26037ee88980b95b00a97a88ea7 Mon Sep 17 00:00:00 2001 From: iisaev Date: Thu, 29 Oct 2026 09:26:13 +0100 Subject: [PATCH] Desert notes after retiring the alternative renders; mod documentation --- .gitignore | 1 + DESERT.md | 60 +++++ characters/desert.json | 75 +++++++ docs/assets/battle.jpg | Bin 0 -> 27801 bytes docs/assets/character-sheet.jpg | Bin 0 -> 34561 bytes docs/assets/desert.jpg | Bin 0 -> 139768 bytes docs/assets/prologue.jpg | Bin 0 -> 51894 bytes docs/assets/shrine.jpg | Bin 0 -> 134015 bytes docs/assets/workbench.jpg | Bin 0 -> 64228 bytes docs/en.md | 115 ++++++++++ docs/es.md | 115 ++++++++++ docs/ja.md | 115 ++++++++++ docs/ko.md | 115 ++++++++++ docs/ru.md | 115 ++++++++++ docs/vi.md | 115 ++++++++++ docs/zh.md | 115 ++++++++++ locale/en.properties | 6 +- locale/es.properties | 2 +- locale/ja.properties | 2 +- locale/ko.properties | 2 +- locale/ru.properties | 6 +- locale/scenarios_en.properties | 18 ++ locale/scenarios_ru.properties | 18 ++ locale/vi.properties | 2 +- locale/zh.properties | 2 +- manifest.json | 8 +- map_events/rpg_desert/events.json | 198 ++++++++++++++++ map_events/rpg_elder_house/barrels.json | 73 ++++++ map_events/rpg_village/barrels.json | 96 ++++++++ map_events/rpg_village/desert.json | 17 ++ map_events/rpg_woodland_shrine/events.json | 18 +- maps/rpg_desert.json | 125 +++++++++++ maps/rpg_woodland_shrine.json | 104 ++++----- scenarios/rpg_plus/desert/enter.scenario | 7 + scenes/rpg_desert.json | 5 + test_suites/desert/manifest.json | 6 + test_suites/desert/src/DesertTestDriver.cs | 212 ++++++++++++++++++ .../desert/src/DesertTestInitializer.cs | 23 ++ test_suites/play/src/RpgPlusTestDriver.cs | 4 +- .../woodland/src/WoodlandTestDriver.cs | 42 +++- 40 files changed, 1867 insertions(+), 70 deletions(-) create mode 100644 DESERT.md create mode 100644 characters/desert.json create mode 100644 docs/assets/battle.jpg create mode 100644 docs/assets/character-sheet.jpg create mode 100644 docs/assets/desert.jpg create mode 100644 docs/assets/prologue.jpg create mode 100644 docs/assets/shrine.jpg create mode 100644 docs/assets/workbench.jpg create mode 100644 docs/en.md create mode 100644 docs/es.md create mode 100644 docs/ja.md create mode 100644 docs/ko.md create mode 100644 docs/ru.md create mode 100644 docs/vi.md create mode 100644 docs/zh.md create mode 100644 map_events/rpg_desert/events.json create mode 100644 map_events/rpg_elder_house/barrels.json create mode 100644 map_events/rpg_village/barrels.json create mode 100644 map_events/rpg_village/desert.json create mode 100644 maps/rpg_desert.json create mode 100644 scenarios/rpg_plus/desert/enter.scenario create mode 100644 scenes/rpg_desert.json create mode 100644 test_suites/desert/manifest.json create mode 100644 test_suites/desert/src/DesertTestDriver.cs create mode 100644 test_suites/desert/src/DesertTestInitializer.cs diff --git a/.gitignore b/.gitignore index c301ca8..f79a943 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,7 @@ obj/ gen/ obj/ bin/ +art_sources/ *.tres~ *.tscn~ diff --git a/DESERT.md b/DESERT.md new file mode 100644 index 0000000..053b577 --- /dev/null +++ b/DESERT.md @@ -0,0 +1,60 @@ +# Desert expansion + +From the village, walk west along the existing horizontal road to cell (0,9). +This enters `rpg_desert` at (38,12). Its eastern edge at (39,12) returns to +village (1,9); the landing cells are outside the trigger cells. + +The 40x24 map uses the separate `desert` tileset: sand and rocky surface patches, +an adobe house, a caravan shelter, a ruined tower, date palms, cacti and scrub. +Buildings are complete multi-cell compositions. Their occupied footprints +block movement; no interior map is provided. Door/notice interactions are at +the front of the buildings. + +Five visible monsters use two new character templates: +`rpg_desert_scorpion` and `rpg_desert_beetle`. Interact with E/F to fight them. +Victories grant coins and small resources through normal battle loot and set +per-monster flags; defeated monsters stay gone across save/load. + +Original barrel tiles were converted to actor events in the village and +elder's house. Two more supply barrels are beside village buildings and +three are in the desert. Every barrel has independent closed/open pages, +its own saved flag, a distinct open sprite, and one-time small rewards. +Reopening only displays the empty message. Existing chests are unchanged. +Barrel definitions: `map_events//barrels.json` and desert `events.json`. + +## Art choices + +The map uses the `desert` tileset (built-in image_gen source). Two alternative +ComfyUI renders with identical logical ids (`qwen_image_21_clean_00110_.png`, +`qwen_image_21_clean_00111_.png`) were used by no map and were removed from the +mod on 2026-10-29; their installed tilesets are archived in +`../art_sources/cthangover/village_pack/retired_tilesets_2026-10-29/`, and +`build_desert_v1.cjs` still builds them into `gen/desert_v1//` for comparison. +Installing one again as a tileset swaps the desert art without moving buildings or +changing event/collision coordinates. + +The original ComfyUI PNGs and embedded workflows/prompts are archived under +`gen/desert_v1/`. Background extraction used built-in image_gen; its separate +outputs and exact extraction prompts are beside the originals. Full-resolution +selected sheets and individual alternative objects live in +`../art_sources/cthangover/village_pack/art_sources/desert_qwen110/` and `desert_qwen111/`. +The main source sheets are in `art_sources/desert_v1/`. +Prompts for the main generation are in `comfy/rpg_life/desert_v1_prompts.json`. + +`comfy/rpg_life/build_desert_v1.cjs` assembles images, charsets, metadata and the +authored content (Node with `sharp` required). It also writes +`gen/desert_v1/map_preview.png` and `variants_preview.png`. +It is an authoring builder: rerunning restores its authored map placements. +It does not modify game collection definitions. + +## Verification + +`--itest=desert` / TestRunner `--test desert` checks one-time barrel rewards, +save/load, both transitions by real movement, both monster battles and loot, +and persistent defeated-monster/open-barrel states. Optional +`--shots=` captures the desert in a windowed run. +The test uses the reserved save slot `slot_9918` and removes it on success. + +2026-10-28 host verification: desert 29/29, rpg_walk 34/34, +resource_atlas_rpg_plus 39/39, locale_atlas 89/89 (zero locale errors). +The existing shutdown RID diagnostics are separate from those passing assertions. diff --git a/characters/desert.json b/characters/desert.json new file mode 100644 index 0000000..e2621b9 --- /dev/null +++ b/characters/desert.json @@ -0,0 +1,75 @@ +{ + "Kind": "character", + "Items": [ + { + "Id": "rpg_desert_scorpion", + "Name": "rpg_plus/desert/enemy/scorpion/name", + "Image": "characters/desert/scorpion", + "Behaviour": "base", + "Level": 2, + "Point": 1, + "Health": 16, + "Defence": 0, + "Attack": 4, + "Exp": 8, + "RecruitmentChance": 0, + "Actions": [ + "physics/attack" + ], + "Stats": { + "str": 4, + "vit": 3, + "agi": 6 + }, + "Loot": [ + { + "ItemId": "money/coin", + "MinCount": 2, + "MaxCount": 5, + "Probability": 100 + }, + { + "ItemId": "rpg_demo/stones", + "MinCount": 1, + "MaxCount": 2, + "Probability": 100 + } + ] + }, + { + "Id": "rpg_desert_beetle", + "Name": "rpg_plus/desert/enemy/beetle/name", + "Image": "characters/desert/beetle", + "Behaviour": "base", + "Level": 1, + "Point": 1, + "Health": 12, + "Defence": 1, + "Attack": 3, + "Exp": 5, + "RecruitmentChance": 0, + "Actions": [ + "physics/attack" + ], + "Stats": { + "str": 3, + "vit": 3, + "agi": 3 + }, + "Loot": [ + { + "ItemId": "money/coin", + "MinCount": 2, + "MaxCount": 5, + "Probability": 100 + }, + { + "ItemId": "rpg_plus/resin", + "MinCount": 1, + "MaxCount": 2, + "Probability": 100 + } + ] + } + ] +} diff --git a/docs/assets/battle.jpg b/docs/assets/battle.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bc26cdbd5598943b6e078244014bfff158035bdf GIT binary patch literal 27801 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

-?5Ow6)#a zIZ}J6@B1&-efl{qDL2>gNsK=baG`VyldtE<>oeXr-vKM}P2&6llgPqfCbxcScEMdw z>XELwiWr`|$6p9EZV!ltxjQJ^-wP}1*O3se&oS@K9KCnUrrVX;RQ=?x#n1QSIyLVt z4sn_W%T8$qyms)e8kJLOsG9p}R#43R^=D7ydFPgZt9-8SnVdLpEI53AeywWcniKEC zinC<~R}y}RG*)kUzISks&;Rj2BfzZ7yS>L~#s5pADkNUhIF8xoyD zYcfI@EriUxac>ZX@oaq>xbDF-TQ;_90XvW+XMN5J44?{KF{kdOicMODeaa%XUw(8) zNXLy%yEM@Lo$0rpaoftWAbSsmEcy3#R4y|E>UFT&hn+wh(pzGLgsqiFJJ74@y0zlv zfgH%ImjLULz;~SwQ~cS)-3@rSK9tUj2%Tv>$>1teJhv6g}%@! z+0dnRhR!F+Num@pQov*2OHyO z4nLYa^FjT)$-fr@;{Vpov!n2h*cFW@NTF>p?&h0>9B6d-k06hCo>we`5dbz*$Ou*LO zjTaj4{r=7rBJ+3;?Zy7)9f)=WAh8cf#DucmpPO~VQN3R${Br(Y3YhEfOLR&I7VKZ1 z{&@$Y*8+1>{Rqmdyt&0lZ4TOyVt%{dXz zg1KN;;Z^j>Xhudc&*~8|t;s8Iz~VItR&p$MK)?ScLT4g|p~;I($9=T0Q6jn-w*UQc zoxB0_M%au^lNZTL8|ECtF$&P@k0jVhhNh8Nt3qOnyeiE39$rB|^cN_aD-RG75{%)u z{ha}T(p-Rm7dXdS(qgP08Q~#>f;o66uM%tZNFUA`2hj0qrs|jIs+Ap+qq~vS z=UrK>SA4BeZlB*uuqczWKKGb+c+O>ua@x{%U;f7h>eH_#UMyvHzB?n}*?)C5qf(W@ z`mqvXj`fI$>5RtJ^$0JiqLq_ltaQaKx->ekgdSwnb|D?_p~^)pq9@#jX8a<()y3~O zF=`8ZxUE!cJhqJ}{3uvL*Pjc24E_@10p127fv|{mc|DNWp8++VNr_3k%hic zbqQU(0!A^Z?=GIn2fhnlRb#@9Omw0UMX3vx95N?dh9XZS!IAq-KLeO7hIKj5JM}z9 zu#>T)zI+{i6NsLNk2byXu zdm+ER!h3>kZLk^g>)Eu6$jJXbHA~$3G;{WI(QFTe+T2|?Q4ibd1Ba*~`l(Bg|ej`y$lj?pQ+2K_9*7bYE6_e%7|SeqHVU z9V3a%v`oA|i*eSCGMZP?<1PH%jJDL zSJ+-Ll0|i&;~2&lIuIp|Ozrl!!ujq%qT|7JpWKDEs?d?4V!_&pQa0;oJqg^;?di zE3BsSk0qtj5tyor)bbMnvhw~YWT_I?!&l`J;C%3;Q z;*9l;ee+F4#aj|xWu;qY$`Q|-W!71}MX-)h>Q>o`I_=juioRaj_s!3QeFuvAk$Z<< z5^t^YJX2UwKXGsFs7K4K?C{GIRb{**b`dv}*t>cv%?=x!Oy=W}oxgqBut!Itz*mG`)>@*lM4m3N?~n(gp8?E8d=B4&8;&FWOPRoL2W(t+E} zBeJ7UMsoy&YY+8xY}eMUQE+d(Mh|ZYRF-eC;TA|AwZ6VjAmQ9C*2Om_7@6kOnzvPr z*IAy$={0Ie^;{f#(xahU^m)K2ZocF4`?&C=#A_NM9^~5eVy9Or1K-m3pBN8&;XjZ% zOJ61G52ehoU%_k-UVK;ZLx}}HCEB$dJ%YDK#uQreJhoxupF#u{e&p&yUrw=1lFGwo8`2XE8>rUKTdnoOI;7{rq1yi6Rcv5$gP ziZ?+cB;xSBR|1w;c;0VEnb=+@A;7;iI`k5*+=D8d#l-Iu!h3r6nsQTG9bMo^{ zz0y8kBPr8lY=Oi4X7KmB^~;Y$wtTDm;Tu`U>VRzezVF!K*>X7J z-}KTBG>`}wA+4#);E%RN?2|t3Ko{4pQ*X+zeWQkHuZ_d|UTATk+K07>4Y-B2QFqex zWnkZO{^Tq%oN21br3noP(w=PrMcP$Jk@d}&zwB@hPdHW>%aepgJ#d*7HFRlmgKq0#`XvdEd!4&LHmo}iYZkM#J-=x8RQS20I&Iw`+32)Q|t5(f}SX_}d75fDiEh-Xv-V67t{)SmhCM4$M|7#q%T| zxs@VbMJL^3cg(i(@VX22E70e0Hl;2M3~jMwX=#5CV5U2DoerIhok$_8;T0O`_9MOX zkd_JqMXG2#7RC@YN4k0h)5*hoRestVo_k1Jybpf?#t?B%UlXfjLV%7}WE8md$8K7& zKDz7vx&RYvc`T{RLLB+If@1`241_d9PnpYmy+mRR;q}QQ?FQ=^QdF}4Sq_$HQ_xZ%0 ziEvz_EE+Dn%)yiK@2S^)^#)A+8<7`SkQbSb8M@d%W9YF}?c;qiAlYN-R8mg2lxCBf zrtReXvT)07J{~uwkK3F8QMl+bHq&wb>klVXZCvlSJRO|y(o*)s`g!_Xy>Q{G+{+U5 zlb9kgY(e}br1`i-dotHat?x2&e!@x%FTX@DZ61>?^qL*1OmC+}WJF$i@|x+h28Ud| z&*zU<%1uEoOvhJ|4K4t!RRIsr{U6Vs_iT&n#y^ZiPo}%ns{&g?b3b(hb}4}xB)z>P zJGcXV^;KlKH*kwx+CT0)9=#MjcV%0PRo14`8tDv1GL&gu9(0j%pyRw2NZIr1q4~UFzEI zBzZPm-OMPz^yA0Dr;dgN&#?O#zU_5&h6O9(zpx|PPA{q7JQv`0KV>%>tZ=Gfmsy<9 z;ULi_C@I#;$CyDu(*Qzzi8$h#E){lCln$0V?1LWb+>>V(tz_tD$ec@{eItymF4%9B z5X6X#r7%e44g4@>1hz@+*`*>Z&z(rUfW3H^Lgj<`oqG}=FB;)f7tO@Nx&;{IGQ6 zI)i0i9^uz@%JK*6loR;BncycvpI5C z*X{sb!JHU62t3iFpj*Q{u^beQ??hJOb4PMRt+kwr#Et!xzBOt>*V?aYT?#i_gx_M- zSA3?@s+Vu0QRy8>6Ei88cyyAx6-ZFwZ`4Jcu|t#NJ+2^L@4Skm7xH{iy#3*ZZb@`( zu_3u*!>bw`w>TZhC~omTkY-{Ca!LE~c5(OY$IZj{Ha~xA8dB=cc}w_QlTy#>VTx|( z4#b?7Y4MZd_3muAQS&7>JEKLpRU%pRpiruap2=i8*u-ZR3oa{s!{-6I3jMyw{8DLln%Ds!N~p>KGd|=zf}MU4b`}kUD3ayPej^kN z1{?q0u99lWhJ&dZdr!0a7~W;SjUyXS=gC5dhdE1ybwjYPlt-B#OwPFz@hLjLTmI)A zXb*Q9I53x?)IWoIznR&#r*1sqkHi`CGLJLA!?T65sx|uY@J0pl5-iL+ko(iScyn7L zu%IXRE)}q$eGfZp2*@1QS1-KRb4C6Bqf!)+s3=?y>+=mFWS_^xNXj!vXUi?Z9wmf47ha-Z7imM!AJJr&vzE$E9*w+jD0qwq zp8p_n%Fn!56l`UAkW}ObW4?UG;kW`NZun|`I%CKaL4=>#`yc_QP9B~VsSxZ(7&BHq zuV5Ay;a)Apg8h^qig%!IY?pGENB#hfxF?RvZ$s^ zVT2Fn;>a!l^W5x!nRcZhfp+X6$a!N^l@;F8%mkZ_qjqesXg59RTC-NmZ|Bxei#c#$ zJ7;qS7kA(Q$fSKlRX&4YWvq+9c)(p2xQ42*v)zTc@=7qPZ@`H6M%2@$!)SDzEWyM$rxW%( z%w06k&s{FK0=xAJSS>Z=K{%}v3ZafnZDT$vhL%}iGEN^}jnKG~ z7e&=_`9l)l`co2P{tHQLq{E5=ECI>EGII$KyX3zmh5eZv#^7c0J2q&eWV`&Ap=DJv zG`=4gP)bPGiV3BM^VruPFYhUQVltF-gdizzfiY7>4ia>*gX#ujU_Ch?Af7R<$)O(| zl#Eca5fSbDdAVJeAKu#R_Qe_^)9zki0L6LE6gs?Cg#ct3*lrvZ?;&$ptG1`;YE~Pu=o_k2%!sD_ZdJ=X&s`MDX;jQSL4C<@_w>_6RWrSTq}2y8un}}}3v(5-Z(+uQ zIt6a?_N8BXdGM04SyM>Q&3=_`JuZ{F{=`bQ>u9{?n{ZQkBnt=jde>0M0X#Eu6n|Xj z2hcx0`Uqc5l(2J`&$JXL8P1rXU=d{beHva}302$;o|3Pv=oU)|l1FB2*Dh7RDr76@ zPiz~iDAUq!T{P$8wm1Dek2M_%i-{6HB#e#KnMUcHcNro{r61{4e4WaX)onUSxzC7K zj~UZ@*FI}NxSnNwUcgH>tu1;r!Qm8j`EF}XcfeW@+k zmFDRZ=y!)*WA+-d59;7*j$cfSoBIXzj zS_gzIjZhH(KLzbSo@t+gpza~up!Nn=@l`(%UA?0{C$i1ld$fJdas!@+Y~_jV+GS-) zm=hD7i5aY-n|1eLPL>s=f|utJ(#I;9Ays(j41(Y#O|aAoO9goQVGl0|PKNb6K#6FA zJGoTe5Ge1|nu5!K#JdD|wY|T4yEF{#WAD`UEEylb%JJE#nt~?SvF?&g&~dMxIflG{ zdkXNmYtE4p4a1>|@znTA4y>QSks1?P%b+n#H1B4wBhvLjRyw`IB2!`B7n>*gW`bX5 zx-JEhg6%jAUaF~W*!b;lF{wsBBM#P9)Chr`;Wnd`?*_>i{O!*_ke z^TI>BJp$R<-gEbf@#rH_q<7)ZU@T`}{Mm8oAs-z-OSUe8dU#^aJFT88QC+WDJ}onE&@H?$jG@Q9L%?RrO}klX%m%UQ_Anz>7N;I{lCs9=xKukoH-{NNa=kt^{VKmu zJBontOGr(9hF4{YjK}&#$wJtGlw)O-^T8}kXohnn0=NZWTFGiGh=nxj@@q??qfI$-wgS2=!kY#8TFCYWq1fKFCEW%9E?3DxjUnE!mVn13+Hx@ex`ssEj4y*0| zNQo4GshE!RV~F~Jyx&YVAShX6IFa6NSlV~P$?tf0rP8Gc?EJ)0p=ydZ@)iX%!OGD} zLJoEr9I?MDk4;5iez=9FfwdtP8KM;teDOVPa8QFO8*4O@iDJ<`XVfkU!&EmC@y2$0 zD^k%qZ@?e{eScm`yIDwv?lfkg5(Lu9;MEL52rN5f2GoQIfJAC#roLI1;6{IntTvt! zk|6>`Zu2`^>3@2sas1cbG_LxW5r6V!6L19#b&X6=bS!!%hC!Xo2rT>u*s(Ac=U;}V zv4gQ5$5LudUhcU+6%Xh?7sR_F1Ot@!`_WJ2<Cb@sFiQo3}S2#6j_UK)LNn58ISafF@5r^0Gs)+iL!>{G!4&!-_c zQJh2Iw5aN$h?3bnNFY0Kv4@ZR)=+g8Z`j3Vg1f$c>U`uxIsFAQk7=pu7hz zZm-w<2&E$DY;L!X5IlmPer)>V#VtqN%}blZxHw)`uJapcLWW$`YQeAmDC?Gr$HZG} zc>VeHIYomuyWR=r9rIN(lO{NAvUn-jUxQX*sr|k`5x1?3ELwgpGHr)xa`Wa_Py9A`YkFG$3-GOPL5cU}8dm(`XAQ0Yh8LOcJ2wAl3_T zw0)tCF!bf>nmliJ@BqTTvAX(Zhe7hIa83ZhhFeHZ%t0crT?uK)BSFHuX;r+~pm2v& z%5V*(c)^Y3@sEX)bi}{w#Ak^kYZ6OT)zuo|e42=n{pNc$Efi_IwU%z+-Xf{i#UZf^ zm=4xU=Gx-~oQ!oult=v4v)7Z>Prpf@*hgnyUUpXs-U`hQsjB5omEDR)%&Wt14;nI97#UdO_<(1cx z5fc%4VXXqwC_2ffY=zCwo$q&8N4doBU5qREX1+K6u4m^9*L31{!v*63&C<^eXWRH$ zQnQufqk5bx%d9LOpWO0se-!=W+$T>)?cP%=C*s!5<}{^bKaWC;i?~S>dtCcX=he8s z_h0T4o7ay;wmWy2`7UNUOxRc`O{z5w`+Zp~)R5+=1X(B47aLax#W5+Cak1k)vR4On zz18nqFNz?>niz$c^ZCfl8;=bNxupCIXw@mXQD=W+V_|q3fzq4i29EA=5(@q?vP*m zXw9o+u4JUkrTgIZwMn?Hj+S3VSo8Rt?7eyK`=oCRYqiv4s1(ENx2+rOsP;zUMXy$D z-^-%JN&?aJD@e$b^5M9a2<3&>d6D*~*ZCwX?-nLYrO3RZMtwVdxs7JH*Gcb)g?TTM z#owZP8%=diQiydSWFP!#sxrFjR#jbeaX%szdCQAi9MRgYsM~JSU|?L~oX$j>@j5~Z z(Ub;>E}Gg2FlkV#=NJ&s74SRMKD8clCpye^W5qvIuVlJ&Yj1*!Sr% zOS#BlfRl+*xOAK@$kDr0!b0>=u(JdgpvMw-^Tk;S43Yp|Cx)6BCKB-ukb+VFon&yh zrK1$~3YY`CUMQLX(i91B2;`j;L)bt%hG{1a-WVihq&nl_e383{g&5>ON_-~+?VZF3 z7_i;udNNoL(}TJ$Sa$$wZ|Rptq1yF%)PaJ zaWY?vGFz{*X3k69Q;E4yFwMj3dlxhAfJmbm^bNvCdx6ZESru6|M;!^7>!jZ%X&r5G%r{+mnbm%{;`o&sX`@ox ziN1;b>T$%qFRNA2h0OSxf*@SFDiwol@$jcwOAkfxM72+SZ6YH{8{$VdA-URoArHQgT^eL zM+}f?+Of#}L@u>@glDUm&P&1>)AcwmV{%%Ss5}=c&es^PLajW|q(rHZh;@GO7(b*e zZ)Dooap^swp8hP$<5zSP(m``ySsPI?aZQvIgGT%{HFC3B`>9t6w2AoZoI&0wIy{<8Ij6*kl759UTT}y&@0ur z$<&-x5dCB+J5S$Zt?d~_4Fowv!3p!ESztkSAhZG61@jY?BHrJ0(q3${061EN$iLOf zWFz3C{;g_onaKM1VF19riT__V$oyY4DE;>aL2mZHDBQ*4V5j~?#;@mJWc;VE{;%Wu zugLgwTz}0XfF%Agi|UE&J-FX6u(fsie*Qc*Yd9SX>0#k_mF4~W@WyaB+9bt{oNLS0 z9isN#j2LQ4TngiY0peeKcLVX6|MY8IvC?(QgRx4L2b!37MxF7X# zxYM_-M(pECYV_=P^wzLTJN+^meZbROZKSePF0`53#iBb>v18q~Jv%!?5z^wjLjRf8{Os6ryj%P@$st^T7yv<)+Dc(<)-TMtw_@xi4FTVnJCR1*{VuCKFS}V)y0Qq9ZZ9}?;`N^6LMlU$O<}0Oqw8=eC9fSt|$F9I` zITr>o{_r^7l#D-jUVc=6)Cfh_NrTJ7CO-CL{QpC(h}Wl1Hk+$xs5EH5w!c$?fJl z$_E$bfkUHc6Vu(ls?Y&*!yn%dt8k6QpEWS)yOW%G4#fvla2NRd3c!FjhG-`4>@pkz zzzB?YlJA57H{M8x!4RTT%SY=FxNqkPb`f-S>`x)BSUtjX zNVBEP_}1es;YyPCu`te3*H`TBjvsQY-6^4l;&qgYvl7B-_bvuqx4os-#2%QYTh>%b ziVr7W#8M*E#mQ&;M;|t85PB;`U6_{3rCxY*`Nq_A^}kd4z+LKjWK^o=ZlD6byDDd4 z%d@H6cqHxQ)uVjgu+~ba3qI8WufN&GHRQZ0dd+{x!hCJDM9r-^=y8?s^5pyYeD=Yf zz>e}u4h24kPY3n7R<9N>TD+dPjedk+d!7=0Qq?PK(RNOHFaKLaRIVR!_u=#*vh6d@ks5c|KiA~@JIDH1ai+-CJV}Tajbx8HV-ve=y2Usqs zoEiYq*nm=m$hp4`#h_ln$+Jd;-B^^RC=jf4zXU62kd}>t3IApcfeg1;7AKA#=s}~} zBh7YIK4KzkR(Ed;U%qoTF@+YT{vFfAZXjePtW%Olzi^mRs$bBb8zTro571B$hv%J( zdC{ZXzMOB0n=-%Ij+_oGI~qQI;iK$vnr`Ksz1;qT3!#MJVoWrN@mTK~(@QrU)R~Zw zqaSi?m=2OJWyO2yGpcc?({Tnpr~7cvR`jdO>Ce+!inbb@KkUw>485366#uj?(D_d1 zyH)h|cZ7s+B|I_cgJ9AAnao_*)xz`X_~Hwzg=2SVZ&NtW8zH0m3g0b#BaaleA9na& zV0yD9{_C^8tFMbD(j^wHy#@W1rzj!4ilxm#9XT%@t8qd1k1bEU6hJc_fK3)F_0|lO zV$!olUJAI|B06Gw)vxz{N*(UyHw);ff>C(;l5z;% z?gGb?@ZMN`3v=vo5f7FD9|qW7lq3ZIW~`P6YfZGBhQ@g~O09y;3;QXaj!4`n$?$$cO6N|BAr{#s^VO#;b8^A&+6uz$(rz;wT zu+ztS9_?%L=`YY*>tPMY9OO<-?D7_)nYATp&$8sjB^YO`2rW1*qNL8;&T^@Ayp4Y! z9YuDGTj=I)RlAc(X65Mh=8=w1%RCSp?=dLviO(~}DBstPe$bi7a9$75%ve@0#iU%1 zVaw|(r<<&P@KD9frT(zF$BdFsU$ub zL^Jw4TAN`DQl9rHvWc}nW3T2TNqxncjOrRz!l-7(2*aE2l20mSqpZ`KOC=JfP`cvF z6VDEs=D4DcZT2DtgLf444B)@+(T>h{f=>^e5)^8M7( zh=sK8o_LRvcM1awMFk#Yl{vEjtJ|f{d){)rWwTMgS*cN@*(6gEvRd|0jGsP=+ri4J zMZqS^&WVeiOTEykr%Xml#CR%NLZ4u!7HehZ5qS_<%&3U1CT8qY;9Jd)T!!^?np$y3 zv$9!Vh|Z;0?qQIL{TYP8Owz&FlFXSvT#dj1msrWY%b~GEn-N5z)gfjYF+g3YgLre4 zs2UN^aL%1nNei$blQ1*BJP3}&SkbuW&7wpBhXDBm3~LB>uaE?TEP+whIFf?Ii~y_% z6y@VhfjbK#Oc3Bq=g>Vs&K%igBXH4R4NkMGqzcfhCA`1epPEH59SMcV$h(EJIt@Qe zjD8t;8I3SY_ld+Xyb@5MFtn+27anLwT|7WyA$K6#j2!^T8~=aGy7qXc_y7N~8Jeh= zTyo8&jZ|1g!f>$7Z6+zLa)~zOL<))ABCX}NNv&eXHkYEyX%&@7A(diOj!H#GAyK)7 zqu*=m5-&|-Amwso zg2#(ItlVcpKd~XkN3lnowtPTLibP&_-FJwY>9Q&f*PE{Ff4U)nd2iIeEP0Ri^8Cn+ z&$GLqle@=PXlz&;OOZ=7n~Uu7Wj{SR)a5~j*zw38QHFiYIy`H5xjYT1e(vLc9APAz3SVdb?;bL!v&%agV{G#Ns-bNRiaUgb(bqlh#JIbcF@A;mdN~A&H!JqTWq_exNzYD+QM&<2Myyj z7-4pmd7J5O%NzS&l;sWwbYagRQ&lD>$TxMS9?lIVJY6&$K(6U43q<_gYwzeqkuV_7bb{?`jpYSpRv5i3YDAH?i0*@I`I7SBH(?uBl3NNzgM2hI%cm zE_m?NPPIgSG#6E|AbGHtRdL`^?E%lUm)}J;G50jQTF1-IIP%P$_rIbhyZt6jHosaR zjK8?4Y5)Dlv^&?)t+ZCNJUC1&>CGDa<1>fRQZmm8_~teW(BPnng` z)q*Q+fwA=4n-=yq-U{XXg*$dxyW)IJrC#08(&abVHoNw^xpzAdJ~#L)AKv^h%jzmS zr2L$Yw{R^p(Ab={j?aU9@kP^Ezb{=O+T2HSTB|&Uv773bOQqvqk-nJWQAP3xh@oi= zFYFozLbpRjlVMHU-K_Mo;=mq`f6bTQFslf2?aUem6UCuRX>!f@=0tk1G@Xew6V|Xi zs`YMT6$}Lv;{G09{vaufy(2L+r;gx;UN%klhk<@41XYBJ7IDS~z&PBzy>ziXO;aa^ z;`6G6x?R$8z?vP0(GqC_JkE9{VYHzt>MD)0*ZYG~!gdMeC6q%1kLWm47m3%%dA6iT z^Q1H+QA&TuUpL#nrpc5b!XW}Wa5E9-HwK_S;tZA)&9ADc!&wN*6m9UO% zu`cTjYe(7U3)zvo949!XLE+aU3&|IQoQ~PE|3mUUx6&WQn%cMW)wIlvkaudSiWQ=T=su>n3^0drQ|c`=UGd$>Hca ze;a?Vy6+Ua@~J1aqkfXR6O7hRtdpieWfojX@r3%rMTwcBsfr$|l=$E;<9e~n=%`nG z#nxeFLsqMHZnevZSA>T8^?h0e-It!LuT^b%Q5v?*-DI7yPBuR_)@$tr_o$O0WH&|P zvEj|f_quu$%h-RYG?}T`!ke~O&KU(98cC%^jK_uMBv&9!xL6M&BB956l9b>IdZkbf zHi(L>W3OY|jJPx9upKu}alp*hvppT=!hY(ke_RRmRKbaye#AjZfcEX<)@dqdD^{;U zO4IR+7Zd7F+T%jgUhnf6M^oLj%H;Arf_w2m8jJiX0MW3+@s336K0v>}bJ7-KaK zfzUxZ+Aqz)6VHFrdKBdBX5F$dUI6;cv@LNg0>%w@8L2 zQyI|FW4-8oJerL2#f3rIm45d@vt7r*6AAT`zg>c9{_g21nG{4bm5)=cJa&qgC4Z88 z?4vm7)r?0bMe-L&Q{`Ec7k-q31e>%a@S~V|IRNcnSU0?WN$Iyb2S(glveU**>>uM* zud!aYF4HZZuid*T?e6unX{;iRA-BBei(k)dy6~~K>Kxqtr~iXOvV*OIYg(Y?aYApn ze=jS(>znG|_13x87e+7Nma z$N54_FUuf&LHA_jNj`ta={DJQ)$?U*jdfVnYDQN~_#s3cmQ#@AxF*qGm0)dNWi+l6 z;kJsEt%9TP?t$jk+0zSEz>xw7WD5PunbLwhWj?{SG*$Df2#&dCNsyI0Q-FN+h{WTN zBe+_TkcdR2CkTzDa6E0?jD|^{Hxv|bKgD{j+`#_b+l+bTv(s0BZl{eq^U9WFGnS3} zA;C&m)Ce#HmhlcwtYQRD2W0c0roX9xz{o~`{h4tp6pP-W`} zG^J~H@MX!gDhS5O2daIYzNrGIRfo#<8Q4SpIS?l99a^}WgGXKg#-MQ@x1!uN>59De>0?2=pd?+pu3s7EPFcM`O7I|Mqp;TapFXvQQ6TVpRSOT;!}-7M88uJ znW^a4`2m!R){#M+s}lO#H)PJ5N1aykhdIypO5;9RV6;jLH}Mgw4Vzvw>@C2Uz!WA^ z1Inf(SRw)Qw`_ER0)*nki~G)!%9iSqM1~!$?_zzhy;NE8$!Hb z2N?>Q)d4Un+zI9K?c3!@s8ej0g{ob_SjY6-3W2=f9|EK()qau~f!^aQ=?j95Q?M2F zK~ExDg?FeNzSnn};4EtYvc=z5@%8iY$b`saYTOknzKcc!?oE}WM`?WlkL9L^ebfx7 zscZ3(MN3|n92yrd3YaPhTF+->)P_AFp8Y5CZa?3pYd_|(f^Q-#c9f>+aMG;bH!sla zwSzbDW}UmYP0R&9jaE;ckVwvTVoBn4wQVMr-YW@5rD_i51*TUYuvunY$F9ti0Y@PT z69E=ux`cAa#194eUM}h*6t1VtIM=2vZqfx9A(g#@AgL8##AO4JW`nE=*3b{;Hs^J) zksWwj6vyvIs#*~)N`}%&Ku{Dj=x*g6<2;Zir_bZnfEzE<6z7jLGXdF8%ch9RW5^_c z!GQ9z25=?T6EvQ(b#pIlk^!W*Z{=<7J#M{C}kTg3b3zQFiRD^}SCL$ls;4zcI%G)ZV_ z@$FlEoOSVy=h|LwNW4khi?%1`8TLCv`tv2+m*W~O_?wzxi6EJ(?VdA`j*r;%gY_-( z{MgN8N6PYtn{&q2JYGJ6RyrHMJI5u}YNzYV`%^u4PWH)F-j>9FCkNRX+gcTOw|Fg@ zuS>QcQ*T<`XP{tNJ@L9o=Th;2eTI#?aq|Poezik;)7_IdU+#W%PNVgFI6X=@@a)y? zdFnvXPbAp3e*D1m?-R-B+4!GGD?|Dd`K+ippToa!Tshj47jOF3edff$WtICgTjN1e*e2icNE4#k(yPsk)xFB; zpxICav&|mce_Yf?fHvp>8~r@AilSes0_uWQ1N}K>So+;pp;_E8x(4n!m&Bqk{5{X>GMRYT}t6Vd$gh|+I_BnF}S*Vt_bh+ zc^Q1zff;$E#TljDhY59EEo4(VqyZ;_TFx(l5`h-ZdKP`TgX(+1a*jySx9A zS5uJB7|^Rz+#%}kxx23ZM(3-oT~U&4R}Y6akj+@A(S_x?d&BP9C%%+ANyY=?->Sa# zzIHg^LFv$-h`UJFFXNv9RH}Ttbje>x>0FTv)8aTYX1w*+ZLV+^znB(mua6}VDRK_=7}(edhBOOivIMm z#+lN{pzx+ETk=B>M`R||E?0EiYWrsTquoGF)Z*5#-R6(#S8}S#?LKWY9#WxHC!AV# zQiYg3{%J`+_sQ($x94VZ|0rch3*7T*e*0?UC-1))Nuu=cQ`z&vb+6|9vYTf%o#Q>} z45v&e8joF8yX-OjCL}gYG2QSMslX{qnv}S*C{VR_PAl--682D5_P{>B!*m#e)eN_v zvF+o%OK)Mb*_cOmKB}yz4eT5?ssW%21?>SgVN(Pgq1c6VXx<>S^#+~qiG=)M+jEm5 z=tZ{plSJYXFVv~C)D3jG{j7#r`f5YzSM~y+8t@2B&eORx4TICcBaU4$Fe~ha2BkDj zneR#>#*h@4;->_>R=gMo6^AK^c_EW1Wl)*`hLL0t)yWtk|93D9w8Txt@vBt{Tny$s(0k)#s76w0gT{(lM{$%O4D)#{BRV=#ihIWQFz7cav>hnHLQk({t0c+*V6e^1yf6{ zNkKbGx5F7$Hg$MJdUZmlUu29sBP3$dWfK+;(57Ywg$=PIkjXU=N4stP^Jzs%DGite zrtRR4&RHFX<>h9-ShK#XgMpklPOOxjlJ(f2lcCj1Opc*5o6>Q$!9 zn?LS`g+z7l3g2R(KFFE6d_Kvo?BNk30~J=Q`n^?EGs!oc{S8L9ZYq!)l(aofv-FQj=FJmol=3I9D^?^fR(Fm?B_g5q{)#=c?SfDUoU%qYNAv<%-htq@2uBi|L0?C+^pGh7mxW5QWN?B$0m3L zQSovQavBR{w3!VBZ1?Z$Di;hC6e;9MP=~K*2)j3#IK$ zMEs1{p?}Qn;?416qPMd=7Y%uN+ugo`30@Z;B^qBI+u!bdivZ{^KKJ9 zk;<&iCr7)*8uRNLa{k~A-aMrE#}7u^(-x)-ELYfS?pN6`a=zqchS|PqhV{d zZpLf_MPKmp;`C$x>4SYI>@0u3i@(2n;c3&o6A#1mlI{AtU+M`GoZfxOyx@Fc@U7bC zf_arji&M`-RteHo*EFau&{dsySlYI!z$0wdeLA#r`*iH#O6$+{9esPw9?GID$RD_* zIK?~IBCmSxxzk@kz0%d0p~inqJ>k1V>PXi8S9O1z<|wc={kTlJlTQ$3i;!tk#} z_rG}@+-G9?`*nG=s*;`IIgU={nESW;_mq>vFC@8+ncO<~q;gG;3eEobx{=TYuQ=}$ z>;`*|DXcYpyr859UqAzUyBU)HM9;7`- z1T>P~Cjqc`SUe7-+`Nd?r9A&ws)`YoG(uG+5bWEHfV!6PB@(bMQ3>QSsT`DpU{hVG zG~I#li=)=(`75)P^xWjXHp~sKVa1G)jt+2Wgjn(_Lw`?jYLhM*;%Y#pfbs*fSbmiQ zllX6N$caFVjFEBBK?Ez=a6-c%T4G#`bCb~mHURUDoDMf+6;o7t0^2Cn`2~+=!SsTN z0j!tZWkjR_F$hE>VDkhx4Lm<*;zE3bU>AT=^4K8!Vn8x1Ez!%^UOLG}3bF+mz1<>1 zn*GVrQ|z#s9+34TJV|_MD(;fPeu8}{{2V**aIQ&~GSqBo9-I@v<;$#C&=LVEt8lsz zZmlWJYsVvl?)YJkL?p=d1u&{$a^=v_S8EC^D#s!UcV8S@`a*N2?gm%c<@4{mwQ26; z9YXHJrA_MFi|*H<4Ah6$@x7a?_lZS$w|{&O&MjKOY(=ja9`>=OO^N?p9<=<~v81(8 z7hOIKU2$GvF#z zSu~e9viy+#)!+kdJEpt~wjJt~_IbvgTKZ-gFI3E%^5IXorjS+*TvaUCCoEnudTj)nD~(PBY!(#?BE~8J@|uh=bjem zuEcUOl|M$uYiW7S6sPLjyfR4VQ?wkNI9CgG&{X_=#2S^FhF+Sf8Dyd ze2vh*Kc51iwp~GB_muwOLbtDWREd zFl4L|Lu-Yxl%Yhw_*FO?psj`{ED&_C70h596{1o#iS*D65*iB?!wIXPEtai00JjyH zxfrN~B9NRG5wUypnTv;5qBc}|6>gU_UeKu(AzNA8nD*bb#|@Q=rP+d-McxuDRbWh^ z2FX;RscNTWq*)P=djJ{;+SjyM8Vc+Fqc0)YxU-ZTh6U}0*J=xTlxNeT&_XmpTWNo^ z?~Oghm%hLE&5BCe-WO%>Qum^IJR#y__v*-yKT06<513r`2*XFYhK--f}FA zN|LTDs9L5?iXd(Jkd{u-J@@sctpj25mYZZI`??xZs!;fPx!%!T-@ixO&deStojR=g zV%zDS*Gt!pnj|JQGF57#8a|p_wtE-+v0`Ls&$;U1zx~kG72Dgd8g7=WT2Z?vB-SI6 zYOa9Sm%PK6LNn_XE!L{|K1#JCs)s!B5L?v}``p&0{h@->p<kvSIC|)6+l->*y7B3q0 z1ap(Kz+a2r(FFY#8EQfX{Pq!Sdzk7e?kv3AVW|v6gAoWIAs!eXF}OQm0SemO*$|bl z??xBOui5y`ccQ9iXC$jzWvAoY`NJ(g490}d0IVrFI+r`W*&FwxyK2uN7-heYmE=SI z+Blo?W7-$YE1A2b137U^*CzeXKjA>5dqae?xu|NSdudl3 literal 0 HcmV?d00001 diff --git a/docs/assets/character-sheet.jpg b/docs/assets/character-sheet.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2083f805c5ad3b61cc708d9b76c4e01cec9cbb23 GIT binary patch literal 34561 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 literal 0 HcmV?d00001 diff --git a/docs/assets/desert.jpg b/docs/assets/desert.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1ad42534d8998a7773b6f89864ca97cc58d66931 GIT binary patch literal 139768 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%0A_EnBY@& zzneY#nn&<&@EUbE;(j-aQqW`1(3z7HELBPD zjh750^OrN^=Qa4}4gboNHjwCljS_06b1n;6oWiC`Fthn77-)}dz3FtFcB(*37u9?$ ze!`2~Uvqa?T1wL*-n^sVuq9+D<428tb!yF#;yI*|)nBVwNl%AibP*>>di}QbmWp0f z)|TGv3ERm3NGOmKCr$2B$W|_Be)nl zby}W!272Q@sZ9-o#g~1*;YpbA8s77AkEe>Ftb?pDwKY`!Oh_65L4oCB4rJw*{#T0$ zeg-gt@Mi+@AZcRn4Y?$!QKEVzL(dTKE%^YMw*UQ8sfP}FlU_KXEDh7XNh+;f%YJ_V zGTSL1r8z~{bNO|B-OI({7upV-*aboSjO1I*rV~noHf}#tn$+|X(RFFZMA1d$sz)zN z+Obd$;WG=PXJyemk)EAl@sVqR(xraW2?At`!aCc@@lF@2j|@oNhSo0nj%CBEclSwJ zlAN_wq|2Fm zHrNx$3$q7X=;S>QR~#cLzd#DcN-L>UP7VmItDz@EAyg+8e`6p15n}_ks23o5zWs)sv6bw5F zg~;N;uBvkk=_mvjZy#qQZ@-oJB*fexkLxsQMzFFzIIW28Gt`<(+zi^T?uO!%o5g%y Rh4gJ;3fRu^7WDp1{}&0&bn*ZI literal 0 HcmV?d00001 diff --git a/docs/assets/prologue.jpg b/docs/assets/prologue.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3102bcdf84ec6c816ed186c0af7a50a04b04b3c5 GIT binary patch literal 51894 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 N+%vCmp7i(sCIEcq^=AM8 literal 0 HcmV?d00001 diff --git a/docs/assets/workbench.jpg b/docs/assets/workbench.jpg new file mode 100644 index 0000000000000000000000000000000000000000..40462d4b2dad9b8a0a557f237c1cc8e95393a55c GIT binary patch literal 64228 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 + /// Exercises authored data through real interaction, battle rewards and save/load. + /// Enemy HP is reduced only after the battle starts, keeping the UI victory/loot path. + /// + public partial class DesertTestDriver : Node + { + private const string Slot = "slot_9918"; + private const string VillageBarrel = "supply_rpg_village_19_11"; + private readonly Queue choices = new(new[] { 0, 1 }); + private readonly string shots; + private int step, ticks, passed, failed, coins, branches, elixirs, stones, resin; + private double elapsed; + private ulong nextAttack; + private BattleSceneContext testedBattle; + private Key? releaseKey; + private static RpgWorldView View => RpgWorldHost.Current?.View; + private static DialogBox Box => RpgInput.FindDialogBox(); + private static IInventory Bag => GameData.Instance.Runtime.Inventory; + + public DesertTestDriver(string shots) + { + this.shots = shots; + Name = "DesertTestDriver"; + var timer = new Timer { WaitTime = 0.1, Autostart = true }; + timer.Timeout += Tick; + AddChild(timer); + } + + private void Tick() + { + if (step < 0) return; + if (releaseKey.HasValue) + { + var key = releaseKey.Value; + Input.ParseInputEvent(new InputEventKey { PhysicalKeycode = key, Keycode = key, Pressed = false }); + releaseKey = null; + } + elapsed += 0.1; + if (elapsed > 180) { Check(false, $"timeout at step {step}"); Finish(); return; } + try { RunStep(); } + catch (Exception ex) { Check(false, ex.ToString()); Finish(); } + } + + private void RunStep() + { + var scene = GetTree().Root.GetNodeOrNull("SceneManager")?.CurrentSceneName; + if (!Boot.IsReady || string.IsNullOrEmpty(scene)) return; + if (Box?.IsRunning == true) + { + if (Box.IsWaitingAnswer) Box.TrySelectVariant(choices.Count > 0 ? choices.Dequeue() : 0); + else Box.NextAction(); + return; + } + if (GodotSceneService.IsTransitioning || ++ticks < 3) return; + switch (step) + { + case 0: + if (View?.Map.ID != "rpg_village") return; + Check(View.FindEvent("village_to_desert")?.Current.Teleport.Map == "rpg_desert", "west exit points to desert"); + Check(View.CanEnter(new Vector2I(0, 9)), "west village border is passable"); + coins = Bag.CheckCount("money/coin"); branches = Bag.CheckCount("rpg_demo/branches"); + View.PlacePlayer(19, 12, RpgDirection.Up); + Check(View.Interact(), "closed supply barrel can be opened"); + Next(); return; + case 1: + Check(Bag.CheckCount("money/coin") == coins + 2 && Bag.CheckCount("rpg_demo/branches") == branches + 1, "barrel grants the authored small loot"); + Check(View.FindEvent(VillageBarrel)?.Current.Sprite == "desert/barrel_open", "barrel switches to open graphic"); + View.Interact(); Next(); return; + case 2: + Check(Bag.CheckCount("money/coin") == coins + 2 && Bag.CheckCount("rpg_demo/branches") == branches + 1, "opening twice does not duplicate loot"); + SaveService.Save(Slot); + Check(GameSession.LoadAndEnter(this, Slot), "barrel save reloads"); + Next(); return; + case 3: + if (View?.Map.ID != "rpg_village") return; + Check(View.FindEvent(VillageBarrel)?.PageIndex == 1, "open barrel survives reload"); + Check(Bag.CheckCount("money/coin") == coins + 2, "barrel coins survive reload without duplication"); + View.PlacePlayer(1, 9, RpgDirection.Left); Tap(Key.Left); Next(); return; + case 4: + if (View?.Map.ID != "rpg_desert") return; + Check(View.Player.Cell == new Vector2I(38, 12), "walking west arrives at the east desert entrance"); + Check(View.Tileset.ID == "desert", "desert uses its own art and sand surface"); + Check(View.FindEvent("desert_scorpion_1")?.Visible == true && View.FindEvent("desert_beetle_2")?.Visible == true, "both desert monster species are present"); + Check(View.CanEnter(new Vector2I(39, 12)), "return passage is open"); + Shot("desert"); + coins = Bag.CheckCount("money/coin"); elixirs = Bag.CheckCount("rpg_demo/elixir"); + View.PlacePlayer(17, 9, RpgDirection.Up); Check(View.Interact(), "desert supply barrel opens"); Next(); return; + case 5: + Check(Bag.CheckCount("money/coin") == coins + 3 && Bag.CheckCount("rpg_demo/elixir") == elixirs + 1, "desert barrel grants coins and an elixir"); + View.Interact(); Next(); return; + case 6: + Check(Bag.CheckCount("money/coin") == coins + 3 && Bag.CheckCount("rpg_demo/elixir") == elixirs + 1, "desert barrel is repeat safe"); + stones = Bag.CheckCount("rpg_demo/stones"); + View.PlacePlayer(26, 12, RpgDirection.Right); + Check(View.Interact(), "scorpion interaction starts its battle"); Next(); return; + case 7: + if (!Win("rpg_desert_scorpion")) return; + Next(); return; + case 8: + if (!ContinueVictory()) return; + Next(); return; + case 9: + if (View?.Map.ID != "rpg_desert") return; + Check(View.FindEvent("desert_scorpion_1")?.Visible == false, "defeated scorpion disappears"); + Check(Bag.CheckCount("rpg_demo/stones") >= stones + 1, "scorpion victory grants its loot"); + resin = Bag.CheckCount("rpg_plus/resin"); + View.PlacePlayer(22, 14, RpgDirection.Up); + Check(View.Interact(), "beetle interaction starts its battle"); Next(); return; + case 10: + if (!Win("rpg_desert_beetle")) return; + Next(); return; + case 11: + if (!ContinueVictory()) return; + Next(); return; + case 12: + if (View?.Map.ID != "rpg_desert") return; + Check(View.FindEvent("desert_beetle_2")?.Visible == false, "defeated beetle disappears"); + Check(Bag.CheckCount("rpg_plus/resin") >= resin + 1, "beetle grants its loot"); + SaveService.Save(Slot); + Check(GameSession.LoadAndEnter(this, Slot), "desert progress reloads"); + Next(); return; + case 13: + if (View?.Map.ID != "rpg_desert") return; + Check(View.FindEvent("desert_scorpion_1")?.Visible == false && View.FindEvent("desert_beetle_2")?.Visible == false, "defeated monsters stay gone after reload"); + Check(View.FindEvent("desert_barrel_supply")?.PageIndex == 1, "desert barrel stays open after reload"); + View.PlacePlayer(38, 12, RpgDirection.Right); Tap(Key.Right); Next(); return; + case 14: + if (View?.Map.ID != "rpg_village") return; + Check(View.Player.Cell == new Vector2I(1, 9), "east desert exit returns inside west village edge"); + Check(View.FindEvent(VillageBarrel)?.PageIndex == 1, "village barrel remains open after the round trip"); + SaveService.DeleteSave(Slot); Finish(); return; + } + } + + private bool Win(string id) + { + if (GetTree().CurrentScene is not BattleSceneContext battle) return false; + if (battle.IsDestroyed) return true; + if (battle.ActiveBattleCore is not IBattleAutoPlayable auto || !auto.IsWaitingForPlayerInput || Time.GetTicksMsec() < nextAttack) return false; + var enemies = battle.FindChild("FFEnemyPanel", true, false) as FFEnemyPanel; + var players = battle.FindChild("FFPlayerPanel", true, false) as FFPlayerPanel; + var menu = battle.FindChildren("*", "", true, false).OfType().FirstOrDefault(); + if (enemies == null || players == null || menu == null) return false; + if (testedBattle != battle) + { + testedBattle = battle; + Check(enemies.Widgets.Count == 1 && enemies.Widgets[0].Card.ID == id, "battle contains " + id); + foreach (var enemy in enemies.Widgets) { enemy.Card.Attributes.Defence.Value = 0; enemy.Card.Attributes.Health.Value = 1; } + } + var target = enemies.Widgets.FirstOrDefault(w => !w.IsDead); + var player = players.Widgets.FirstOrDefault(w => !w.IsDead); + if (target == null || player == null) return false; + player.Card.Attributes.Point.Value = 100; + Click(player); + menu.SelectedIndex = menu.Entries.FindIndex(e => e.Key == "attack"); menu.ConfirmSelection(); + menu.SelectedIndex = menu.Entries.FindIndex(e => e.Data is Cthangover.Core.Characters.ActionCharacter action && action.Type == Cthangover.Core.Characters.ActionCharacterType.ToEnemy); + menu.ConfirmSelection(); Click(target); nextAttack = Time.GetTicksMsec() + 1600; + return false; + } + + private bool ContinueVictory() + { + if (GetTree().Root.FindChild("ContinueButton", true, false) is not Button button || !button.IsVisibleInTree()) return false; + button.EmitSignal(BaseButton.SignalName.Pressed); return true; + } + private static void Click(Control c) => c.EmitSignal(Control.SignalName.GuiInput, new InputEventMouseButton { ButtonIndex = MouseButton.Left, Pressed = true }); + private void Tap(Key key) + { + // Movement samples held input in _Process; retain the press until + // the next timer tick so at least one real simulation frame sees it. + Input.ParseInputEvent(new InputEventKey { PhysicalKeycode = key, Keycode = key, Pressed = true }); + releaseKey = key; + } + private void Shot(string name) + { + if (string.IsNullOrEmpty(shots) || DisplayServer.GetName() == "headless") return; + DirAccess.MakeDirRecursiveAbsolute(shots); + ViewportCapture.SavePng(GetViewport(), shots.TrimEnd('/') + "/" + name + ".png"); + } + private void Next() { step++; ticks = 0; } + private void Check(bool ok, string message) + { + if (ok) passed++; else failed++; + GameLogger.Log("TEST", (ok ? "PASS " : "FAIL ") + message); + } + private void Finish() + { + step = -1; + GameLogger.Log("TEST", $"[TEST_RESULT] name=desert passed={passed} failed={failed}"); + GetTree().Quit(failed == 0 ? 0 : 1); + } + } +} diff --git a/test_suites/desert/src/DesertTestInitializer.cs b/test_suites/desert/src/DesertTestInitializer.cs new file mode 100644 index 0000000..856ba25 --- /dev/null +++ b/test_suites/desert/src/DesertTestInitializer.cs @@ -0,0 +1,23 @@ +namespace Cthangover.Mods.RpgPlus.Tests +{ + using System.Linq; + using Cthangover.Core.Mods; + using Godot; + + /// Mounts the opt-in desert playthrough without adding production gameplay code. + public class DesertTestInitializer : IModInitializer + { + private static bool queued; + public void OnModLoaded(string id) { } + public void OnModResourcesReady() + { + var args = OS.GetCmdlineUserArgs(); + if (queued || !args.Contains("--itest=desert")) return; + queued = true; + string shots = null; + foreach (var arg in args) + if (arg.StartsWith("--shots=")) shots = arg.Substring(8); + ModRoot.AddDeferred(new DesertTestDriver(shots)); + } + } +} diff --git a/test_suites/play/src/RpgPlusTestDriver.cs b/test_suites/play/src/RpgPlusTestDriver.cs index bf4033e..8cb9049 100644 --- a/test_suites/play/src/RpgPlusTestDriver.cs +++ b/test_suites/play/src/RpgPlusTestDriver.cs @@ -419,9 +419,9 @@ namespace Cthangover.Mods.RpgPlus.Tests nightPhase++; return false; case 1: - var material = View.GetNodeOrNull("Main")?.Material as ShaderMaterial; + var material = View.Presentation?.SharedMaterial; Check(material != null, "the tiles have the map's light material"); - Check(material != null && View.Player.Material == material, "the player shares it"); + Check(material != null && View.Presentation.ActorsShareMaterial, "the player shares it"); var weights = material?.GetShaderParameter("time_weights").AsVector4() ?? Vector4.Zero; Check(Mathf.IsEqualApprox(weights.W, 1f), "23:00 lights the map as night"); Check((material?.GetShaderParameter("light_count").AsInt32() ?? 0) >= 4, "the player, the lamp and windows give light"); diff --git a/test_suites/woodland/src/WoodlandTestDriver.cs b/test_suites/woodland/src/WoodlandTestDriver.cs index 8fda3e2..d2ee062 100644 --- a/test_suites/woodland/src/WoodlandTestDriver.cs +++ b/test_suites/woodland/src/WoodlandTestDriver.cs @@ -33,6 +33,7 @@ namespace Cthangover.Mods.RpgPlus.Tests private readonly Queue choices = new(); private readonly bool pact; private readonly string shots; + private readonly bool terrainReview; private int step; private int ticks; private int passed; @@ -60,6 +61,7 @@ namespace Cthangover.Mods.RpgPlus.Tests { this.pact = pact; this.shots = shots; + terrainReview = OS.GetCmdlineUserArgs().Contains("--terrain-review"); Name = "WoodlandTestDriver"; var timer = new Timer { WaitTime = 0.1, Autostart = true }; timer.Timeout += Tick; @@ -204,6 +206,7 @@ namespace Cthangover.Mods.RpgPlus.Tests Go("rpg_elder_house", 6, 4, RpgDirection.Up); Next(); return; case 21: if (View?.Map.ID != "rpg_elder_house") return; + Shot("interior"); Tap(Key.E); Next(); return; case 22: Check(Quest("ward").Data.Status == 2, "elder supplies the lantern recipe objective"); @@ -423,12 +426,49 @@ namespace Cthangover.Mods.RpgPlus.Tests if (villageShotPhase == 1) { Shot("village"); - time.SetTime(shotTime); + if (terrainReview) + CheckWaterMaterials(); + else + time.SetTime(shotTime); villageShotPhase = 2; } return true; } + private void CheckWaterMaterials() + { + var tileset = View.Tileset; + var textures = new RpgTextures(); + Check(tileset.Image == "village/objects" && tileset.SurfaceImage == "village/surfaces", + "objects and surfaces use separate atlases"); + Check(tileset.TileOf(40)?.Surface != null && tileset.AutotileOf(40) == null, + "water uses a base material with runtime diffusion"); + Check(tileset.Tiles.Count(t => t.Surface != null) == 7 && + tileset.Tiles.All(t => t.Index < 192 || t.Index >= 1000 && t.Index < 1120), + "only seven base surfaces remain, with no baked phase or transition ids"); + var roomTop = tileset.TileOf(1000)?.AtlasIndex ?? -1; + var roomPacked = roomTop >= 0 && roomTop % tileset.Columns + 12 <= tileset.Columns; + for (var cell = 0; cell < 120; cell++) + roomPacked &= tileset.TileOf(1000 + cell)?.AtlasIndex == roomTop + cell / 12 * tileset.Columns + cell % 12; + Check(roomPacked, "the authored room occupies a connected 12x10 atlas block"); + Check(View.Presentation?.SurfaceChunkCount > 0, + "the world renders the computed surface layer"); + var caveTop = tileset.TileOf(128)?.AtlasIndex ?? -1; + Check(caveTop >= 0 && caveTop % tileset.Columns + 1 < tileset.Columns && + tileset.TileOf(129)?.AtlasIndex == caveTop + 1 && + tileset.TileOf(27)?.AtlasIndex == caveTop + tileset.Columns && + tileset.TileOf(130)?.AtlasIndex == caveTop + tileset.Columns + 1, + "the cave occupies a complete 2x2 atlas rectangle"); + var lampTop = tileset.TileOf(29)?.AtlasIndex ?? -1; + Check(lampTop >= 0 && tileset.TileOf(28)?.AtlasIndex == lampTop + tileset.Columns, + "the streetlamp head and foot form one vertical atlas rectangle"); + var grid = RpgMapGrid.Parse(View.Map); + var generated = RpgSurfaceRenderer.Build(grid, RpgLayer.Back, tileset, textures); + Check(generated?.GetWidth() == grid.Width * tileset.TileSize, + "diffusion is generated from the current map at runtime"); + generated?.Dispose(); + } + private void Shot(string name) { if (string.IsNullOrEmpty(shots) || DisplayServer.GetName() == "headless") return;

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 hcdPx2v;Qv6La*RuUpQe#6#WVu-)S?h_{M#C^/ new people, the workbench, cave door, barrels; same ids replace rpg_demo_game's +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ crossroads, training yard, shrine, desert +├── quests/woodland.json journal stages +├── items/, recipes/, stations/ materials, crafted things, the workbench's menu +├── patches/character.json monster loot added to rpg_demo_game's monsters +├── patches/shop.json more goods for the village merchant +└── characters/, charsets/, backgrounds/, locale/ +``` + +**Extend another mod instead of copying it.** The village, house and forest still come from `rpg_demo_game`. An event with the same id as one there replaces it (the elder gets new dialogs); new ids add people. Patches add loot to its monsters and goods to its shop. + +**Checks and conditions in scenarios.** The seer tests Luck and then looks at your gear: + +```scenario +text "— Want to know what awaits you? Give me your hand. Not that one — the one you don't steal with." key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "— The wolf at the cave fears fire more than steel. And strike where it has no shield. That part is free. The rest isn't." key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` checks the bag, `level(rpg_hero) >= 3` the hero's level; flags make one-time rewards safe. Lines are written in Russian with a `key=` each; the translations are in `locale/scenarios_.properties`. + +**A recipe** is data in `recipes/woodland.json`: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +The optional **tile map editor** paints ground, collision and events, and the **Data Editor** edits items, recipes and characters. Turn them on in the game's scheme. + +## If something goes wrong + +1. **The wolf's amber is missing in an old save.** Go to the wolf's spot by the cave and press E/F: the amber can be picked up there once if you have neither it nor the lantern. +2. **Not sure what to do next.** Open the journal. +3. **A dialog option is missing.** Some options appear only after a quest stage or with a certain item. diff --git a/docs/es.md b/docs/es.md new file mode 100644 index 0000000..7d25d5c --- /dev/null +++ b/docs/es.md @@ -0,0 +1,115 @@ +# RPG Plus — un RPG de bosque construido con mods + +RPG Plus es un RPG pequeño y completo: un prólogo tipo novela visual donde eliges quién era tu héroe, después una aldea y un bosque sobre mapa de tiles, un misterio sobre la luz perdida del bosque, misiones secundarias, una mesa de trabajo, un mercader, un desierto al oeste y combates por turnos. El juego está hecho solo de archivos de datos y escenarios; sus reglas — atributos, equipo, pruebas, combates, crafteo — vienen de mods separados que cualquier otro juego también puede usar. + +Se juega desde **Jugar → RPG Plus → Nueva partida**. + +![El prólogo del cruce de caminos: un poste indicador en un camino forestal y la pregunta "¿Quién eras antes de llegar aquí?" con tres respuestas: un soldado, un aprendiz de mago, un vagabundo.](assets/prologue.jpg) + +## La historia y cómo jugar + +1. **El cruce de caminos.** Elige tu pasado: **soldado** (guerrero), **aprendiz de mago** (mago) o **vagabundo** (pícaro). La elección fija tus atributos y tu equipo inicial. Empiezas con 25 monedas. +2. **La aldea junto al Bosque Gris.** Camina con WASD o las flechas, corre con Shift, usa E o F para hablar e interactuar. El **diario** siempre anota tu siguiente paso concreto. +3. **El anciano** pregunta por la luz desaparecida o te manda directamente tras el lobo de la cueva del este. +4. **El bosque.** Recoge leña y setas; los limos sueltan resina viva y monedas. El lobo siempre suelta un corazón de ámbar y suficiente pelaje para un manto. +5. **La mesa de trabajo del pozo.** Prepara una pomada del bosque (seta + resina), un manto del guardián (2 pelajes + 2 resinas) o el farol guardián (ámbar + 2 resinas + 2 ramas). Ponte el manto desde la bolsa: cambia tus números reales de combate. +6. **La herborista**, junto a la valla occidental, necesita pomada; ayudarla lleva a un correo desaparecido en el bosque del sur. +7. **El santuario.** Lleva el farol por la cueva que está tras el lobo hasta el santuario en ruinas. Devuélvele la luz al bosque, o pacta por la aldea. Ambos finales cierran la aventura, y las últimas palabras del anciano siguen tu elección. + +Otra gente de la aldea: el **instructor** te lleva al patio de entrenamiento (experiencia una vez, y una prueba de Fuerza para alzar un tronco), y la **adivina** lee tu suerte. El hogar junto al pozo restaura salud y maná. Las recompensas no se pueden cobrar dos veces. + +![La mesa de trabajo del pozo con tres recetas: Pomada del bosque, Manto del guardián y Farol guardián, los ingredientes que tienes y necesitas, y el botón de crear.](assets/workbench.jpg) + +![El santuario en ruinas del bosque, "El bosque recuerda", el héroe cargando el farol.](assets/shrine.jpg) + +### El desierto + +Desde la aldea, sigue el camino principal hacia el oeste hasta salir del borde del mapa y llegarás a **la Marca Seca**: arena, una casa de adobe, un refugio de caravana, una torre en ruinas, palmeras y cactus. Cinco escorpiones y escarabajos esperan pelea, y los barriles de provisiones guardan pequeñas recompensas de una sola vez. El borde este devuelve a la aldea. + +![La Marca Seca: arena con un refugio de caravana, cactus, palmeras, barriles, escorpiones y escarabajos; el héroe llega por el camino desde el este.](assets/desert.jpg) + +## Tu héroe + +Abre la **hoja de personaje** desde la barra de herramientas para ver tu clase, nivel y experiencia, los atributos (Fuerza, Agilidad, Inteligencia, Vitalidad, Carisma, Suerte), los valores de combate y el equipo en las ranuras de arma, cuerpo y accesorio. Equípate desde la bolsa. + +![La hoja de personaje de un pícaro de nivel 2: atributos, salud y maná, ataque con un bono de +3 del equipo, ranuras de equipo vacías.](assets/character-sheet.jpg) + +Los combates usan el estilo de órdenes (FF) con daño calculado por fórmulas. Algunas opciones de diálogo enfrentan un atributo a una tirada de d20, como el **[Fuerza 12]** del instructor. + +![Un combate contra el lobo: el héroe abajo a la izquierda, el lobo con su salud, ataque y defensa arriba, el registro de combate a la derecha.](assets/battle.jpg) + +## Cómo se monta el juego + +RPG Plus es la colección **RPG Plus**. Sus bloques: + +```text +Historia rpg_plus_game (este mod) +Aldea y bosque rpg_demo_game: los mapas, la gente y los objetos que este juego amplía +Recursos y reglas village_pack (arte), classic_rpg_pack (atributos, clases, equipo) +Atributos y pruebas stats_base, stat_checks +Mundo de tiles rpg +Objetos, equipo, comercio items_base, equipment, trading, crafting +Motor 2D shell2d_base, dialog_base, characters_base, audio_base +Combate turn_battle_base, ff_battle, battle_formulas +Combate de cartas card_battle (opcional) +Interfaz ui_base, menu_base +Editor de mapas de tiles rpg_editor (opcional) +Editores de datos schema_tools, items_editor, characters_editor (opcional) +Render de tiles tile_topdown_base, tile_isometric_base +``` + +Ajustes de la colección: `battle.core` es `ff_battle`, las pruebas tiran `d20`, el sprite del héroe en el mapa es `village/hero`, los mapas se dibujan de arriba a abajo. Se cambian en **Mods & Collections → Colecciones → RPG Plus → Editar esquema**. + +## Para autores: cámbialo sin código + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ prólogo, training_yard, events/ (instructor, adivina), woodland/, desert/ +├── map_events// gente nueva, la mesa de trabajo, la puerta de la cueva, barriles; los mismos id sustituyen a los de rpg_demo_game +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ cruce de caminos, patio de entrenamiento, santuario, desierto +├── quests/woodland.json etapas del diario +├── items/, recipes/, stations/ materiales, objetos fabricados, el menú de la mesa de trabajo +├── patches/character.json botín añadido a los monstruos de rpg_demo_game +├── patches/shop.json más mercancías para el mercader de la aldea +└── characters/, charsets/, backgrounds/, locale/ +``` + +**Amplía el mod de otro en vez de copiarlo.** La aldea, la casa y el bosque siguen viniendo de `rpg_demo_game`. Un evento con el mismo id que uno de allí lo sustituye (el anciano recibe diálogos nuevos); los id nuevos añaden gente. Los parches añaden botín a sus monstruos y mercancías a su tienda. + +**Pruebas y condiciones en los escenarios.** La adivina prueba la Suerte y luego mira tu equipo: + +```scenario +text "—¿Quieres saber qué te espera? Dame la mano. Esa no: la que no usas para robar." key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "—El lobo de la cueva teme más al fuego que al acero. Y golpea donde no tenga escudo. Esto es gratis. Lo demás, no." key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` mira la bolsa, `level(rpg_hero) >= 3` el nivel del héroe; las banderas hacen seguras las recompensas de una sola vez. Las líneas están escritas en ruso con un `key=` cada una; las traducciones están en `locale/scenarios_.properties`. + +**Una receta** son datos en `recipes/woodland.json`: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +El **editor de mapas de tiles** opcional pinta suelo, colisiones y eventos, y el **Editor de datos** edita objetos, recetas y personajes. Actívalos en el esquema del juego. + +## Si algo falla + +1. **Falta el ámbar del lobo en una partida guardada antigua.** Ve al punto del lobo junto a la cueva y pulsa E/F: el ámbar se puede recoger allí una vez si no tienes ni él ni el farol. +2. **No sabes qué hacer ahora.** Abre el diario. +3. **Falta una opción de diálogo.** Algunas opciones aparecen solo tras una etapa de misión o con cierto objeto. diff --git a/docs/ja.md b/docs/ja.md new file mode 100644 index 0000000..78cd59a --- /dev/null +++ b/docs/ja.md @@ -0,0 +1,115 @@ +# RPG Plus — MOD で組み上げた森の RPG + +RPG Plus は完成された小規模 RPG です。まず自分のヒーローの過去を選ぶビジュアルノベル形式のプロローグ、続いてタイルマップの村と森、森から消えた光の謎、サブクエスト、作業台、商人、西の砂漠、そしてターン制バトル。ゲームはデータファイルとシナリオだけでできており、ルール — ステータス、装備、判定、戦闘、クラフト — は別々の MOD が担います。どの MOD も他のゲームでも使えます。 + +開始は **プレイ → RPG Plus → ニューゲーム** から。 + +![岐路のプロローグ:森の道の道標と、「ここへ来る前、きみは何者だった?」という問い。答えは三つ:兵士、魔法使いの弟子、流浪人。](assets/prologue.jpg) + +## 物語と遊び方 + +1. **岐路。** 過去を選びます:**兵士**(ウォリアー)、**魔法使いの弟子**(メイジ)、**流浪人**(ローグ)。選択がステータスと初期装備を決めます。所持金は 25 硬貨から。 +2. **灰色の森のそばの村。** WASD か矢印キーで歩き、Shift で走り、E か F で話しかけ・調べます。**ジャーナル**は常に、次の具体的な一歩を示してくれます。 +3. **村長**は消えた光について尋ねてくるか、東の洞窟の狼のもとへすぐに送り出します。 +4. **森。** 柴とキノコを集めます。スライムは生きた樹脂と硬貨を落とします。狼は必ず琥珀の心臓と、マント一枚ぶんの毛皮を落とします。 +5. **井戸の作業台。** 森の軟膏(キノコ + 樹脂)、森の番人のマント(毛皮 2 + 樹脂 2)、護りの灯籠(琥珀 + 樹脂 2 + 柴 2)を作れます。マントはインベントリから装備します。実際の戦闘の数値が変わります。 +6. 西の柵のそばの**薬草師**は軟膏を求めています。手伝うと、南の森で行方不明になった伝令へとつながります。 +7. **祠。** 灯籠を持って、狼の奥の洞窟を抜け、荒れた祠へ。光を森に返すか、村のために契りを交わすか。どちらの結末でも冒険は終わり、村長の最期の言葉はあなたの選択に従います。 + +村のその他の人々:**師匠**は稽古場へ連れて行ってくれ(経験値は一度、丸太を持ち上げる力の判定つき)、**占い師**はあなたの運を読みます。井戸のそばの囲み炉は体力とマナを回復します。報酬は二度は受け取れません。 + +![井戸の作業台と三つのレシピ:森の軟膏、森の番人のマント、護りの灯籠。持っている材料と必要な材料、そして作成ボタン。](assets/workbench.jpg) + +![森の荒れた祠、「森は覚えている」、灯籠を捧げ持つヒーロー。](assets/shrine.jpg) + +### 砂漠 + +村から大通りを西へ、マップの端を出ていくと**乾いた辺境**に着きます。砂、日干しレンガの家、隊商の休憩小屋、崩れた塔、ヤシとサボテン。サソリと甲虫が五匹戦いを待ち、補給の樽には小さな一度きりの報酬が入っています。東の端から村へ戻れます。 + +![乾いた辺境:隊商の休憩小屋のある砂地、サボテン、ヤシ、樽、サソリと甲虫。ヒーローは東の道からやって来ます。](assets/desert.jpg) + +## あなたのヒーロー + +ツールバーから**キャラクターシート**を開くと、クラス、レベルと経験値、属性(力、敏捷、知力、体力、カリスマ、幸運)、戦闘値、武器・体・装飾品のスロットの装備が見られます。装備はインベントリから着けます。 + +![レベル 2 のローグのキャラクターシート:属性、体力とマナ、装備による +3 の攻撃ボーナス、空き装備スロット。](assets/character-sheet.jpg) + +戦闘はコマンド式(FF)バトルで、ダメージは数式で計算されます。会話の選択肢の一部は属性を d20 ロールで判定します。師匠の **[力 12]** がその例です。 + +![狼との戦闘:左下にヒーロー、上に体力・攻撃・防御つきの狼、右に戦闘ログ。](assets/battle.jpg) + +## ゲームの構成 + +RPG Plus の正体はコレクション **RPG Plus** です。そのブロック: + +```text +物語 rpg_plus_game(この MOD) +村と森 rpg_demo_game:このゲームが拡張するマップ、人、アイテム +素材とルール village_pack(アート)、classic_rpg_pack(ステータス、クラス、装備) +ステータスと判定 stats_base, stat_checks +タイル世界 rpg +アイテム、装備、交易 items_base, equipment, trading, crafting +2D エンジン shell2d_base, dialog_base, characters_base, audio_base +戦闘 turn_battle_base, ff_battle, battle_formulas +カードバトル card_battle(任意) +インターフェース ui_base, menu_base +タイルマップエディター rpg_editor(任意) +データエディター schema_tools, items_editor, characters_editor(任意) +タイルレンダラー tile_topdown_base, tile_isometric_base +``` + +コレクションの設定:`battle.core` は `ff_battle`、判定は `d20` をロール、ヒーローのマップスプライトは `village/hero`、マップはトップダウン描画。**Mods & Collections → コレクション → RPG Plus → 構成を編集** から変えられます。 + +## 作者向け:コードなしで変える + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ プロローグ、training_yard、events/(師匠、占い師)、woodland/、desert/ +├── map_events// 新しい人々、作業台、洞窟の扉、樽。同じ id は rpg_demo_game のものを置き換える +├── maps/ rpg_woodland_shrine.json、rpg_desert.json +├── scenes/ 岐路、稽古場、祠、砂漠 +├── quests/woodland.json ジャーナルの段階 +├── items/, recipes/, stations/ 素材、作成品、作業台のメニュー +├── patches/character.json rpg_demo_game のモンスターに追加されたドロップ +├── patches/shop.json 村の商人の商品の追加 +└── characters/, charsets/, backgrounds/, locale/ +``` + +**コピーせず、他の MOD を拡張する。** 村も家も森も今も `rpg_demo_game` から来ます。そこと同じ id のイベントはそれを置き換え(村長は新しい会話を得る)、新しい id は人を増やします。パッチはモンスターのドロップと店の商品を足します。 + +**シナリオの判定と条件。** 占い師は幸運を試し、それからあなたの装備を見ます: + +```scenario +text "「この先を知りたいかい?手をお出し。そっちじゃない——盗みに使わないほうの手だよ」" key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "「洞窟の狼は鋼より火を恐れる。それと盾のないところを打ちな。ここまでは無料。残りは有料だよ」" key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` はインベントリを、`level(rpg_hero) >= 3` はヒーローのレベルを見ます。フラグのおかげで、一度きりの報酬は安全です。台詞はロシア語で書かれ、各行に `key=` が付きます。翻訳は `locale/scenarios_.properties` にあります。 + +**レシピ**は `recipes/woodland.json` のデータです: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +任意の**タイルマップエディター**は地面・衝突・イベントを描き、**データエディター**はアイテム・レシピ・キャラクターを編集します。ゲームの構成で有効にしてください。 + +## うまくいかないとき + +1. **古いセーブに狼の琥珀がない。** 洞窟のそばの狼の場所へ行って E/F を押してください。琥珀も灯籠も持っていなければ、そこで一度だけ拾えます。 +2. **次に何をすればいいか分からない。** ジャーナルを開きましょう。 +3. **会話の選択肢が出ない。** 一部の選択肢は、特定のクエスト段階の後か、特定のアイテム所持時だけ現れます。 diff --git a/docs/ko.md b/docs/ko.md new file mode 100644 index 0000000..ae8991f --- /dev/null +++ b/docs/ko.md @@ -0,0 +1,115 @@ +# RPG Plus — 모드로 지어 올린 숲의 RPG + +RPG Plus는 완성된 소규모 RPG입니다. 영웅의 과거를 고르는 비주얼 노벨 프롤로그, 이어서 타일맵의 마을과 숲, 숲에서 사라진 빛의 미스터리, 사이드 퀘스트, 작업대, 상인, 서쪽의 사막, 그리고 턴제 전투. 게임은 데이터 파일과 시나리오만으로 이루어져 있고, 규칙 — 스탯, 장비, 판정, 전투, 제작 — 은 별개의 모드가 담당합니다. 어떤 모드든 다른 게임에서도 쓸 수 있습니다. + +**플레이 → RPG Plus → 새 게임**에서 시작합니다. + +![갈림길 프롤로그: 숲길의 이정표와 “여기 오기 전엔 누구였나?”라는 질문, 세 가지 답: 군인, 마법사 견습생, 방랑자.](assets/prologue.jpg) + +## 이야기와 진행 방법 + +1. **갈림길.** 과거를 고르세요: **군인**(전사), **마법사 견습생**(메이지), **방랑자**(로그). 선택이 스탯과 시작 장비를 정합니다. 시작 자금은 동전 25닢. +2. **잿빛 숲 옆 마을.** WASD나 방향키로 걷고, Shift로 뛰고, E나 F로 말하고 상호작용합니다. **저널**은 언제나 다음 구체적 한 걸음을 알려 줍니다. +3. **촌장**은 사라진 빛을 묻거나, 곧장 동쪽 동굴의 늑대에게 보냅니다. +4. **숲.** 땔감과 버섯을 모으세요. 슬라임은 산 수지와 동전을 남깁니다. 늑대는 언제나 호박 심장과 망토 한 벌分의 털을 남깁니다. +5. **우물 작업대.** 숲 연고(버섯 + 수지), 숲 수호자 망토(털 2 + 수지 2), 수호 등불(호박 + 수지 2 + 땔감 2)을 만들 수 있습니다. 망토는 가방에서 착용하세요. 실제 전투 수치가 바뀝니다. +6. 서쪽 울타리 옆 **약초상**은 연고가 필요합니다. 돕다 보면 남쪽 숲에서 실종된 전령으로 이어집니다. +7. **성소.** 등불을 들고 늑대 너머의 동굴을 지나 폐허가 된 성소로 가세요. 숲에 빛을 돌려주거나, 마을을 위해 계약을 맺거나. 두 결말 모두 모험을 끝내고, 촌장의 마지막 말은 당신의 선택을 따릅니다. + +마을의 다른 사람들: **훈련관**은 수련장으로 안내해 주고(경험치는 한 번, 통나무 드는 힘 판정 포함), **점쟁이**는 당신의 행운을 읽습니다. 우물 곁 화덕은 체력과 마나를 회복합니다. 보상은 두 번 받을 수 없습니다. + +![우물 작업대와 세 레시피: 숲 연고, 숲 수호자 망토, 수호 등불. 가지고 있는 재료와 필요한 재료, 그리고 제작 버튼.](assets/workbench.jpg) + +![숲 속 폐허가 된 성소, “숲은 기억한다”, 등불을 든 영웅.](assets/shrine.jpg) + +### 사막 + +마을에서 큰길을 따라 서쪽으로, 맵 끝을 벗어나면 **마른 변경**에 닿습니다. 모래, 흙벽돌 집, 상로막 쉼터, 무너진 탑, 야자수와 선인장. 전갈과 딱정벌레 다섯 마리가 싸움을 기다리고, 보급 통에는 작은 일회성 보상이 들어 있습니다. 동쪽 끝은 다시 마을로 돌아갑니다. + +![마른 변경: 상로막 쉼터가 있는 모래사장, 선인장, 야자수, 통, 전갈과 딱정벌레. 영웅은 동쪽 길에서 도착합니다.](assets/desert.jpg) + +## 당신의 영웅 + +툴바에서 **캐릭터 시트**를 열면 클래스, 레벨과 경험치, 속성(힘, 민첩, 지능, 생명력, 매력, 행운), 전투 수치, 그리고 무기·몸·장신구 슬롯의 장비를 볼 수 있습니다. 장비는 가방에서 착용합니다. + +![2레벨 로그의 캐릭터 시트: 속성, 체력과 마나, 장비의 +3 보너스가 붙은 공격, 빈 장비 슬롯.](assets/character-sheet.jpg) + +전투는 커맨드식(FF) 전투로, 피해는 공식으로 계산됩니다. 일부 대화 선택지는 속성을 d20 굴림으로 판정합니다. 훈련관의 **[힘 12]**가 그 예입니다. + +![늑대와의 전투: 왼쪽 아래 영웅, 위에 체력·공격·방어를 가진 늑대, 오른쪽에 전투 기록.](assets/battle.jpg) + +## 게임의 구성 + +RPG Plus의 정체는 컬렉션 **RPG Plus**입니다. 그 블록: + +```text +이야기 rpg_plus_game(이 모드) +마을과 숲 rpg_demo_game: 이 게임이 확장하는 맵, 사람, 아이템 +에셋과 규칙 village_pack(그림), classic_rpg_pack(스탯, 클래스, 장비) +스탯과 판정 stats_base, stat_checks +타일 세계 rpg +아이템, 장비, 거래 items_base, equipment, trading, crafting +2D 엔진 shell2d_base, dialog_base, characters_base, audio_base +전투 turn_battle_base, ff_battle, battle_formulas +카드 배틀 card_battle(선택) +인터페이스 ui_base, menu_base +타일맵 편집기 rpg_editor(선택) +데이터 편집기 schema_tools, items_editor, characters_editor(선택) +타일 렌더러 tile_topdown_base, tile_isometric_base +``` + +컬렉션 설정: `battle.core`는 `ff_battle`, 판정은 `d20`을 굴리고, 영웅의 맵 스프라이트는 `village/hero`, 맵은 탑다운으로 그려집니다. **Mods & Collections → 컬렉션 → RPG Plus → 구성 편집**에서 바꿀 수 있습니다. + +## 모드 작성자를 위해: 코드 없이 바꾸기 + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ 프롤로그, training_yard, events/(훈련관, 점쟁이), woodland/, desert/ +├── map_events// 새 사람들, 작업대, 동굴 문, 통. 같은 id는 rpg_demo_game의 것을 대체 +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ 갈림길, 수련장, 성소, 사막 +├── quests/woodland.json 저널 단계 +├── items/, recipes/, stations/ 재료, 제작품, 작업대 메뉴 +├── patches/character.json rpg_demo_game 몬스터에 추가된 전리품 +├── patches/shop.json 마을 상인의 물품 추가 +└── characters/, charsets/, backgrounds/, locale/ +``` + +**복사하지 말고 다른 모드를 확장하세요.** 마을도 집도 숲도 여전히 `rpg_demo_game`에서 옵니다. 거기와 같은 id의 이벤트는 그것을 대체하고(촌장은 새 대사를 얻음), 새 id는 사람을 더합니다. 패치는 그 몬스터의 전리품과 가게 물품을 더합니다. + +**시나리오의 판정과 조건.** 점쟁이는 행운을 시험한 뒤 당신의 장비를 봅니다: + +```scenario +text "“무엇이 기다리는지 알고 싶어? 손을 줘. 그거 말고 — 도둑질 안 하는 손.”" key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "“동굴의 늑대는 강철보다 불을 더 무서워해. 그리고 보호막이 없는 데를 쳐. 여기까진 공짜야. 나머진 아니고.”" key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"`은 가방을, `level(rpg_hero) >= 3`은 영웅의 레벨을 봅니다. 플래그 덕분에 일회성 보상은 안전합니다. 대사는 러시아어로 쓰였고 각 줄에 `key=`가 있습니다. 번역은 `locale/scenarios_.properties`에 있습니다. + +**레시피**는 `recipes/woodland.json`의 데이터입니다: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +선택인 **타일맵 편집기**는 지면·충돌·이벤트를 그리고, **데이터 편집기**는 아이템·레시피·캐릭터를 편집합니다. 게임의 구성에서 켜세요. + +## 문제가 생겼을 때 + +1. **오래된 저장 파일에 늑대의 호박이 없습니다.** 동굴 옆 늑대 자리로 가서 E/F를 누르세요. 호박과 등불이 둘 다 없다면 그곳에서 한 번 주울 수 있습니다. +2. **다음에 뭘 해야 할지 모르겠습니다.** 저널을 여세요. +3. **대화 선택지가 사라졌습니다.** 어떤 선택지는 특정 퀘스트 단계 후에, 또는 특정 아이템이 있을 때만 나타납니다. diff --git a/docs/ru.md b/docs/ru.md new file mode 100644 index 0000000..7ad7793 --- /dev/null +++ b/docs/ru.md @@ -0,0 +1,115 @@ +# RPG Plus — лесная RPG, собранная из модов + +RPG Plus — законченная небольшая RPG: пролог-новелла, где вы выбираете, кем был ваш герой, затем деревня и лес на тайловой карте, тайна пропавшего лесного света, побочные задания, верстак, торговец, пустыня на западе и пошаговые бои. Игра состоит только из файлов данных и сценариев; правила — характеристики, снаряжение, проверки, бои, крафт — приносят отдельные моды, которые может взять и любая другая игра. + +Запуск — **Играть → RPG Plus → Новая игра**. + +![Пролог на перекрёстке: указатель у лесной дороги и вопрос «Кем ты был до того, как пришёл сюда?» с тремя ответами: солдат, ученик мага, странник.](assets/prologue.jpg) + +## История и как играть + +1. **Перекрёсток.** Выберите своё прошлое: **солдат** (воин), **ученик мага** (маг) или **странник** (плут). Выбор задаёт характеристики и стартовое снаряжение. На старте у вас 25 монет. +2. **Деревня у Серого леса.** Ходите на WASD или стрелки, бегите на Shift, говорите и взаимодействуйте на E или F. **Журнал** всегда называет ваш конкретный следующий шаг. +3. **Староста** спрашивает о пропавшем свете или сразу отправляет вас за волком у восточной пещеры. +4. **Лес.** Собирайте хворост и грибы; слизни оставляют живую смолу и монеты. Волк всегда оставляет сердце янтаря и столько шерсти, что хватит на плащ. +5. **Верстак у колодца.** Сварите лесную мазь (гриб + смола), сшейте плащ лесного стража (2 шерсти + 2 смолы) или соберите сторожевой фонарь (янтарь + 2 смолы + 2 веток). Плащ надевается из сумки: он меняет ваши настоящие боевые числа. +6. **Травница** у западного забора просит мазь; помощь ей приводит к пропавшему курьеру в южном лесу. +7. **Святилище.** Пронесите фонарь через пещеру за волком к разрушенному святилищу. Верните лесу свет — или заключите сделку ради деревни. Обе концовки завершают приключение, а последние слова старосты зависят от вашего выбора. + +Прочие жители деревни: **наставник** ведёт на тренировочную площадку (опыт один раз и проверка силы с бревном), **гадалка** читает вашу удачу. Очаг у колодца восстанавливает здоровье и ману. Награды нельзя собрать дважды. + +![Верстак у колодца с тремя рецептами: Лесная мазь, Плащ лесного стража и Сторожевой фонарь, имеющиеся и нужные ингредиенты и кнопка изготовления.](assets/workbench.jpg) + +![Разрушенное святилище в лесу, «Лес помнит», герой несёт фонарь.](assets/shrine.jpg) + +### Пустыня + +От деревни пройдите по главной дороге на запад, за край карты, — попадёте в **Сухой предел**: песок, глинобитный дом, навес каравана, разрушенная башня, пальмы и кактусы. Пять скорпионов и жуков ждут боя, а бочки припасов хранят небольшие разовые награды. Восточный край ведёт обратно к деревне. + +![Сухой предел: песок, навес каравана, кактусы, пальмы, бочки, скорпионы и жуки; герой приезжает по дороге с востока.](assets/desert.jpg) + +## Ваш герой + +Откройте **лист персонажа** с панели инструментов: класс, уровень и опыт, характеристики (Сила, Ловкость, Интеллект, Выносливость, Харизма, Удача), боевые значения и снаряжение в слотах оружия, брони и аксессуара. Надевайте вещи из сумки. + +![Лист персонажа плута второго уровня: характеристики, здоровье и мана, атака с бонусом +3 от снаряжения, пустые слоты экипировки.](assets/character-sheet.jpg) + +Бои идут в командном стиле (FF), урон считается по формулам. Часть вариантов диалога проверяет характеристику броском d20 — например, **[Сила 12]** у наставника. + +![Бой с волком: герой внизу слева, волк со здоровьем, атакой и защитой вверху, журнал боя справа.](assets/battle.jpg) + +## Как игра собрана + +RPG Plus — это коллекция **RPG Plus**. Её блоки: + +```text +Сюжет rpg_plus_game (этот мод) +Деревня и лес rpg_demo_game: карты, люди и предметы, которые игра расширяет +Ресурсы и правила village_pack (арт), classic_rpg_pack (характеристики, классы, снаряжение) +Характеристики и проверки stats_base, stat_checks +Тайловый мир rpg +Предметы, снаряжение, торговля items_base, equipment, trading, crafting +2D-движок shell2d_base, dialog_base, characters_base, audio_base +Бой turn_battle_base, ff_battle, battle_formulas +Карточный бой card_battle (опционально) +Интерфейс ui_base, menu_base +Редактор тайловых карт rpg_editor (опционально) +Редакторы данных schema_tools, items_editor, characters_editor (опционально) +Тайловый рендер tile_topdown_base, tile_isometric_base +``` + +Настройки коллекции: `battle.core` — `ff_battle`, проверки бросают `d20`, спрайт героя на карте — `village/hero`, карты рисуются сверху. Меняются в **Mods & Collections → Коллекции → RPG Plus → Изменить схему**. + +## Авторам: меняйте без кода + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ пролог, training_yard, events/ (наставник, гадалка), woodland/, desert/ +├── map_events// новые люди, верстак, дверь пещеры, бочки; события с теми же id заменяют события rpg_demo_game +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ перекрёсток, тренировочная площадка, святилище, пустыня +├── quests/woodland.json этапы журнала +├── items/, recipes/, stations/ материалы, изделия, меню верстака +├── patches/character.json добыча, добавленная монстрам rpg_demo_game +├── patches/shop.json товары сверх обычных у деревенского торговца +└── characters/, charsets/, backgrounds/, locale/ +``` + +**Расширяйте чужой мод, а не копируйте его.** Деревня, дом и лес по-прежнему берутся из `rpg_demo_game`. Событие с тем же id, что там, заменяет его (староста получает новые диалоги); новые id добавляют людей. Патчи добавляют добычу его монстрам и товары его лавке. + +**Проверки и условия в сценариях.** Гадалка испытывает Удачу, а потом смотрит на ваше снаряжение: + +```scenario +text "— Хочешь знать, что тебя ждёт? Дай руку. Не эту — ту, которой не воруешь." key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "— Волк у пещеры боится огня больше, чем стали. И бей туда, где у него нет щита. Это бесплатно. Остальное — нет." key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` заглядывает в сумку, `level(rpg_hero) >= 3` — в уровень героя; флаги делают разовые награды безопасными. Строки написаны по-русски, у каждой есть `key=`; переводы лежат в `locale/scenarios_.properties`. + +**Рецепт** — это данные в `recipes/woodland.json`: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +Опциональный **редактор тайловых карт** рисует землю, коллизии и события, а **редактор данных** правит предметы, рецепты и персонажей. Включите их в схеме игры. + +## Если что-то пошло не так + +1. **В старом сохранении нет янтаря волка.** Подойдите к месту волка у пещеры и нажмите E/F: янтарь можно подобрать там один раз, если у вас нет ни его, ни фонаря. +2. **Неясно, что делать дальше.** Откройте журнал. +3. **Пропал вариант диалога.** Некоторые варианты появляются только после определённого этапа задания или при нужном предмете. diff --git a/docs/vi.md b/docs/vi.md new file mode 100644 index 0000000..f956cc2 --- /dev/null +++ b/docs/vi.md @@ -0,0 +1,115 @@ +# RPG Plus — một RPG rừng rậm dựng từ các mod + +RPG Plus là một trò RPG nhỏ mà hoàn chỉnh: phần mở đầu kiểu tiểu thuyết tương tác để bạn chọn quá khứ của anh hùng, rồi một làng và khu rừng trên bản đồ ô vuông, bí ẩn về ánh sáng lạc mất của khu rừng, nhiệm vụ phụ, bàn chế tạo, thương nhân, một hoang mạc phía tây và chiến đấu theo lượt. Trò chơi chỉ gồm tệp dữ liệu và kịch bản; còn luật chơi — chỉ số, trang bị, phép kiểm, chiến đấu, chế tạo — đến từ những mod riêng mà trò chơi khác cũng dùng được. + +Chơi từ **Chơi → RPG Plus → Trò chơi mới**. + +![Phần mở đầu ở ngã ba: tấm biển chỉ đường bên con đường rừng và câu hỏi “Trước khi đến đây, ngươi là ai?” với ba câu trả lời: lính, đệ tử pháp sư, kẻ phiêu bạt.](assets/prologue.jpg) + +## Cốt truyện và cách chơi + +1. **Ngã ba.** Chọn quá khứ của bạn: **lính** (chiến binh), **đệ tử pháp sư** (pháp sư) hay **kẻ phiêu bạt** (rogue). Lựa chọn quyết định chỉ số và trang bị khởi đầu. Bạn bắt đầu với 25 đồng xu. +2. **Ngôi làng bên Rừng Xám.** Đi lại bằng WASD hoặc phím mũi tên, chạy bằng Shift, dùng E hoặc F để nói chuyện và tương tác. **Nhật ký** luôn ghi rõ bước cụ thể tiếp theo của bạn. +3. **Trưởng làng** hỏi về ánh sáng biến mất, hoặc phái bạn đi ngay theo con sói ở hang phía đông. +4. **Khu rừng.** Hái củi và nấm; slime rơi ra nhựa sống và đồng xu. Con sói luôn rơi trái tim hổ phách và đủ lông để may một chiếc áo choàng. +5. **Bàn chế tạo bên giếng.** Làm thuốc mỡ rừng (nấm + nhựa), áo choàng người canh rừng (2 lông + 2 nhựa) hoặc đèn lồng hộ mệnh (hổ phách + 2 nhựa + 2 củi). Mang áo choàng từ túi đồ: nó thay đổi con số chiến đấu thật của bạn. +6. **Bà thuốc** ở hàng rào phía tây cần thuốc mỡ; giúp bà dẫn tới người đưa thư mất tích trong rừng phương nam. +7. **Đền thờ.** Xách đèn qua hang động phía sau con sói tới đền thờ hoang tàn. Trả ánh sáng cho khu rừng, hoặc lập khế ước cho ngôi làng. Cả hai kết thúc đều khép lại cuộc phiêu lưu, và lời cuối của trưởng làng sẽ theo lựa chọn của bạn. + +Một số người khác trong làng: **võ sư** dẫn bạn ra bãi tập (kinh nghiệm một lần, kèm phép kiểm Sức mạnh để nhấc khúc gỗ), và **bà thầy bói** đọc vận may của bạn. Lò sưởi bên giếng hồi máu và mana. Phần thưởng không nhận lại được lần thứ hai. + +![Bàn chế tạo bên giếng với ba công thức: Thuốc mỡ rừng, Áo choàng người canh rừng và Đèn lồng hộ mệnh, nguyên liệu bạn có và cần, cùng nút Chế tạo.](assets/workbench.jpg) + +![Đền thờ hoang trong rừng, “Khu rừng nhớ”, anh hùng đang xách đèn.](assets/shrine.jpg) + +### Hoang mạc + +Từ làng, đi theo con đường chính về phía tây, ra khỏi mép bản đồ là tới **Vùng Biên Khô**: cát, một ngôi nhà bằng đất nặn, chỗ trú của đoàn thương xa, một tòa tháp hoang, cây cọ và xương rồng. Năm con bọ cạp và bọ hung chờ được đánh, và các thùng tiếp tế cất phần thưởng nhỏ một lần. Mép đông dẫn về lại làng. + +![Vùng Biên Khô: cát với chỗ trú của đoàn thương xa, xương rồng, cây cọ, thùng hàng, bọ cạp và bọ hung; anh hùng tới bằng con đường từ phía đông.](assets/desert.jpg) + +## Anh hùng của bạn + +Mở **bảng nhân vật** từ thanh công cụ để xem class, cấp và kinh nghiệm, các chỉ số (Sức mạnh, Nhanh nhẹn, Trí tuệ, Sinh lực, Sức hút, May mắn), giá trị chiến đấu và trang bị trong ba ô vũ khí, thân thể và phụ kiện. Trang bị lấy từ túi đồ. + +![Bảng nhân vật của một rogue cấp 2: chỉ số, máu và mana, tấn công có +3 từ trang bị, các ô trang bị trống.](assets/character-sheet.jpg) + +Trận đánh dùng lối chiến đấu ra lệnh (FF), sát thương tính theo công thức. Một số lựa chọn hội thoại đem chỉ số ra thử với một lần gieo d20, ví dụ **[Sức mạnh 12]** của võ sư. + +![Trận đánh với con sói: anh hùng ở dưới bên trái, con sói cùng máu, tấn công và phòng thủ ở phía trên, nhật ký chiến đấu bên phải.](assets/battle.jpg) + +## Trò chơi được ghép thế nào + +RPG Plus là bộ sưu tập **RPG Plus**. Các khối của nó: + +```text +Cốt truyện rpg_plus_game (mod này) +Làng và rừng rpg_demo_game: bản đồ, con người và vật phẩm mà trò này mở rộng +Tài nguyên và luật village_pack (hình ảnh), classic_rpg_pack (chỉ số, class, trang bị) +Chỉ số và phép kiểm stats_base, stat_checks +Thế giới ô vuông rpg +Vật phẩm, trang bị, mua bán items_base, equipment, trading, crafting +Engine 2D shell2d_base, dialog_base, characters_base, audio_base +Chiến đấu turn_battle_base, ff_battle, battle_formulas +Chiến đấu thẻ bài card_battle (tùy chọn) +Giao diện ui_base, menu_base +Trình soạn bản đồ ô rpg_editor (tùy chọn) +Trình soạn dữ liệu schema_tools, items_editor, characters_editor (tùy chọn) +Bộ dựng ô tile tile_topdown_base, tile_isometric_base +``` + +Cấu hình của bộ sưu tập: `battle.core` là `ff_battle`, phép kiểm gieo `d20`, hình anh hùng trên bản đồ là `village/hero`, bản đồ vẽ nhìn từ trên xuống. Đổi trong **Mods & Collections → Bộ sưu tập → RPG Plus → Sửa sơ đồ**. + +## Dành cho tác giả: đổi nội dung không cần mã + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ phần mở đầu, training_yard, events/ (võ sư, thầy bói), woodland/, desert/ +├── map_events// người mới, bàn chế tạo, cửa hang, thùng hàng; id trùng sẽ thay của rpg_demo_game +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ ngã ba, bãi tập, đền thờ, hoang mạc +├── quests/woodland.json các chặng nhật ký +├── items/, recipes/, stations/ nguyên liệu, sản phẩm, trình đơn của bàn chế tạo +├── patches/character.json chiến lợi phẩm thêm cho quái của rpg_demo_game +├── patches/shop.json thêm hàng cho thương nhân trong làng +└── characters/, charsets/, backgrounds/, locale/ +``` + +**Hãy mở rộng mod của người khác thay vì copy nó.** Làng, nhà và rừng vẫn đến từ `rpg_demo_game`. Sự kiện trùng id với sự kiện ở đó sẽ thay thế nó (trưởng làng nhận hội thoại mới); id mới thêm người. Các bản vá thêm chiến lợi phẩm cho quái và thêm hàng cho cửa hàng của nó. + +**Phép kiểm và điều kiện trong kịch bản.** Bà thầy bói thử May mắn rồi nhìn trang bị của bạn: + +```scenario +text "“Muốn biết điều gì đang chờ ngươi? Đưa tay đây. Không phải tay đó — tay không dùng để trộm ấy.”" key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "“Con sói ở hang sợ lửa hơn thép. Và hãy đánh vào chỗ nó không có khiên. Phần này miễn phí. Phần còn lại thì không.”" key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` nhìn vào túi đồ, `level(rpg_hero) >= 3` nhìn cấp của anh hùng; nhờ các cờ mà phần thưởng một lần không bị nhận hai lần. Các câu viết bằng tiếng Nga, mỗi câu một `key=`; bản dịch nằm trong `locale/scenarios_.properties`. + +**Một công thức** là dữ liệu trong `recipes/woodland.json`: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +**Trình soạn bản đồ ô** tùy chọn vẽ nền, va chạm và sự kiện, còn **Trình soạn dữ liệu** sửa vật phẩm, công thức và nhân vật. Bật chúng trong sơ đồ của trò chơi. + +## Nếu có trục trặc + +1. **Hổ phách của con sói thiếu trong bản lưu cũ.** Ra chỗ con sói bên hang và nhấn E/F: nếu bạn chưa có hổ phách cũng như đèn, có thể nhặt nó ở đó một lần. +2. **Chưa biết làm gì tiếp.** Mở nhật ký. +3. **Một lựa chọn hội thoại mất tích.** Một số lựa chọn chỉ xuất hiện sau một chặng nhiệm vụ nhất định hoặc khi có vật phẩm nhất định. diff --git a/docs/zh.md b/docs/zh.md new file mode 100644 index 0000000..87c2cfa --- /dev/null +++ b/docs/zh.md @@ -0,0 +1,115 @@ +# RPG Plus — 用模组搭起来的森林 RPG + +RPG Plus 是一款完整的小型 RPG:先是一段视觉小说序章,让你选择英雄的过去;然后是图块地图上的村庄与森林、关于森林失落的神秘之光的主线、支线任务、工作台、商人、西边的沙漠和回合制战斗。游戏只由数据文件和剧本组成;规则——属性、装备、检定、战斗、制作——则来自独立的模组,任何其他游戏同样可以复用。 + +从“开始游戏 → RPG Plus → 新游戏”进入。 + +![岔路口序章:林间路边的路标,问题“来这里之前,你是谁?”以及三个选项:士兵、魔法师学徒、流浪者。](assets/prologue.jpg) + +## 剧情与玩法 + +1. **岔路口。** 选择你的过去:**士兵**(战士)、**魔法师学徒**(法师)或**流浪者**(盗贼)。选择决定你的属性和初始装备。开局有 25 枚硬币。 +2. **灰森林旁的村庄。** 用 WASD 或方向键行走,Shift 奔跑,E 或 F 交谈与互动。**日志**始终列着你接下来该做的具体一步。 +3. **村长**会问起失踪的光,或者直接派你去东边洞穴对付那只狼。 +4. **森林。** 采集柴火和蘑菇;史莱姆掉落活树脂和硬币。狼必定掉落琥珀之心,以及足够做一件斗篷的毛皮。 +5. **井边工作台。** 制作林间药膏(蘑菇 + 树脂)、守林人斗篷(2 毛皮 + 2 树脂)或守护提灯(琥珀 + 2 树脂 + 2 柴火)。斗篷可以从背包直接穿上:它会改变你真实的战斗数值。 +6. 西边栅栏旁的**草药师**需要药膏;帮她之后,会引出南方森林里失踪的信使。 +7. **圣祠。** 带着提灯穿过狼身后的洞穴,抵达荒废的圣祠。把光还给森林,或者为村庄立下一纸契约。两个结局都会完结这段冒险,村长最后的嘱托也随你的选择而变。 + +村里还有别人:**教头**会带你去练武场(经验只有一次,还有一次举起原木的力量检定),**占卜师**为你解读运气。井边的炉火恢复生命和法力。奖励不能重复领取。 + +![井边工作台和三个配方:林间药膏、守林人斗篷和守护提灯,标注了你已有和所需的材料,以及“制作”按钮。](assets/workbench.jpg) + +![森林中荒废的圣祠,“森林记得”,英雄提着提灯。](assets/shrine.jpg) + +### 沙漠 + +从村庄沿主路向西走出地图边缘,就到了**枯荒之地**:黄沙、一座土坯房、一处商队棚屋、一座残塔、棕榈和仙人掌。五只蝎子和甲虫等着开打,补给桶里装着小份的一次性奖励。东边边缘通回村庄。 + +![枯荒之地:沙地上的商队棚屋、仙人掌、棕榈、木桶、蝎子和甲虫;英雄从东边的道路抵达。](assets/desert.jpg) + +## 你的英雄 + +从工具栏打开**角色面板**,可以看到职业、等级和经验、属性(力量、敏捷、智力、体质、魅力、幸运)、战斗数值,以及武器、身体、饰品三个栏位里的装备。装备从背包里穿上。 + +![二级盗贼的角色面板:属性、生命和法力、带装备 +3 加成的攻击、空的装备栏位。](assets/character-sheet.jpg) + +战斗采用指令式(FF),伤害由公式计算。部分对话选项会让属性对抗一次 d20 掷骰,比如教头的**[力量 12]**。 + +![与狼的战斗:英雄在左下角,狼连同其生命、攻击和防御在上方,战斗记录在右侧。](assets/battle.jpg) + +## 游戏的组成 + +RPG Plus 就是合集 **RPG Plus**。它的分组: + +```text +剧情 rpg_plus_game(本模组) +村庄与森林 rpg_demo_game:本游戏在其上扩展的地图、人物和物品 +素材与规则 village_pack(美术)、classic_rpg_pack(属性、职业、装备) +属性与检定 stats_base, stat_checks +图块世界 rpg +物品、装备、交易 items_base, equipment, trading, crafting +2D 引擎 shell2d_base, dialog_base, characters_base, audio_base +战斗 turn_battle_base, ff_battle, battle_formulas +卡牌战斗 card_battle(可选) +界面 ui_base, menu_base +图块地图编辑器 rpg_editor(可选) +数据编辑器 schema_tools, items_editor, characters_editor(可选) +图块渲染器 tile_topdown_base, tile_isometric_base +``` + +合集的设置:`battle.core` 为 `ff_battle`,检定掷 `d20`,英雄的地图贴图为 `village/hero`,地图以俯视方式绘制。可在 **Mods & Collections → 合集 → RPG Plus → 编辑结构** 中修改。 + +## 给模组作者:不改代码就能改内容 + +```filestree +rpg_plus_game/ +├── scenarios/rpg_plus/ 序章、training_yard、events/(教头、占卜师)、woodland/、desert/ +├── map_events// 新人物、工作台、洞穴门、木桶;相同 id 的事件会覆盖 rpg_demo_game 的 +├── maps/ rpg_woodland_shrine.json, rpg_desert.json +├── scenes/ 岔路口、练武场、圣祠、沙漠 +├── quests/woodland.json 日志的阶段 +├── items/, recipes/, stations/ 材料、成品、工作台的菜单 +├── patches/character.json 给 rpg_demo_game 的怪物追加的掉落 +├── patches/shop.json 给村庄商人追加的商品 +└── characters/, charsets/, backgrounds/, locale/ +``` + +**去扩展别的模组,而不是复制它。** 村庄、房屋和森林仍然来自 `rpg_demo_game`。与那里相同 id 的事件会将其替换(村长得到新对话);新 id 则添加人物。补丁给它的怪物添加掉落,给它的商店添加商品。 + +**剧本中的检定与条件。** 占卜师先测试幸运,再打量你的装备: + +```scenario +text "“想知道等着你的是什么?把手给我。不是这只——是你不用来偷东西的那只。”" key=rpg_plus/seer/hello +check luk 14 who=rpg_hero else=fail -> :ok + +:ok +text "“洞口的狼怕火胜过怕钢。还有,往它没护盾的地方打。这些免费。其余的不免费。”" key=rpg_plus/seer/fortune +when "!equipped(rpg_hero, 'classic/clover_charm')" -> :charm +end +``` + +`when "item('rpg_plus/salve') >= 1"` 检查背包,`level(rpg_hero) >= 3` 检查英雄的等级;标志位让一次性奖励不会重复。台词以俄语写成,每行带一个 `key=`;翻译在 `locale/scenarios_.properties` 里。 + +**配方**就是 `recipes/woodland.json` 里的数据: + +```json +{ + "Id": "rpg_plus/salve", + "Name": "rpg_plus/recipe/salve/name", + "Type": "Cooking", + "Input": [ + { "Id": "rpg_demo/mushroom", "Count": 1 }, + { "Id": "rpg_plus/resin", "Count": 1 } + ], + "Output": [{ "Id": "rpg_plus/salve", "Count": 1 }] +} +``` + +可选的**图块地图编辑器**负责绘制地面、碰撞和事件,**数据编辑器**则编辑物品、配方和角色。在游戏的结构里打开它们。 + +## 出问题了怎么办 + +1. **旧存档里没有狼的琥珀。** 走到洞穴旁狼所在的位置按 E/F:只要你既没有琥珀也没有提灯,就能在那里捡到一次。 +2. **不知道下一步做什么。** 打开日志。 +3. **某个对话选项不见了。** 有些选项只有推进到某个任务阶段或持有特定物品后才会出现。 diff --git a/locale/en.properties b/locale/en.properties index 533986c..b70527a 100644 --- a/locale/en.properties +++ b/locale/en.properties @@ -1,5 +1,5 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = The story of the RPG Plus sample, built on top of the RPG demo rather than beside it: a novel-style prologue at a crossroads with a class choice and a first charisma check, then the whole rpg_demo village and forest without a single edit — a trainer and a fortune teller are added by this mod's own map events file, a training yard scene, gear at the merchant's (a shop patch), a wolf with stats (a character patch). Only data and scenarios. +mod_rpg_plus_game_desc = A complete small RPG: a prologue that picks the class, a village and forest mystery, crafting, trade, a desert and turn-based battles — data and scenarios only. rpg_plus/item/resin/name = Living resin rpg_plus/item/resin/desc = The slime left this instead of a will. Burns even in the rain. @@ -33,3 +33,7 @@ rpg_plus/recipe/lantern/name = Ward lantern rpg_plus/recipe/lantern/desc = Amber, two resin and two branch bundles. Light needs a frame. rpg_plus/station/name = The well workbench rpg_plus/map/shrine = The forest remembers + +rpg_plus/desert/map/name=The Dry March +rpg_plus/desert/enemy/scorpion/name=Sand scorpion +rpg_plus/desert/enemy/beetle/name=Desert beetle diff --git a/locale/es.properties b/locale/es.properties index caacae4..66fd412 100644 --- a/locale/es.properties +++ b/locale/es.properties @@ -1,2 +1,2 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = La historia del ejemplo RPG Plus, construida encima de la demo RPG y no a su lado: un prólogo estilo novela en un cruce con elección de clase y una primera tirada de carisma, luego toda la aldea y el bosque de rpg_demo sin tocar nada — un maestro y una adivina añadidos con el propio archivo de eventos de mapa del mod, una escena del patio de entrenamiento, equipo en la tienda (un parche de la tienda), un lobo con estadísticas (un parche de personaje). Solo datos y escenarios. +mod_rpg_plus_game_desc = Un RPG pequeño y completo: un prólogo que elige la clase, el misterio de la aldea y el bosque, crafteo, comercio, un desierto y combates por turnos. Solo datos y escenarios. diff --git a/locale/ja.properties b/locale/ja.properties index 5a79e17..c64aabc 100644 --- a/locale/ja.properties +++ b/locale/ja.properties @@ -1,2 +1,2 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = RPG Plus サンプルの物語。RPG デモの横ではなく上に作られている:十字路でのノベル風プロローグで職業を選び、最初のカリスマ判定。その後は rpg_demo の村と森をそのまま——師匠と占い師はこの MOD 自身のマップイベントファイルで追加、稽古場のシーン、商人の装備(店のパッチ)、ステータス付きの狼(キャラクターのパッチ)。データとシナリオのみ。 +mod_rpg_plus_game_desc = 完成された小さな RPG:クラスを選ぶプロローグ、村と森の謎、クラフト、交易、砂漠、ターン制バトル。データとシナリオのみ。 diff --git a/locale/ko.properties b/locale/ko.properties index e618b1f..674c883 100644 --- a/locale/ko.properties +++ b/locale/ko.properties @@ -1,2 +1,2 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = RPG Plus 샘플의 이야기. RPG 데모 옆이 아니라 그 위에 만들었습니다: 갈림길의 노벨식 프롤로그에서 직업을 고르고 첫 매력 판정을 하고, 이어서 rpg_demo의 마을과 숲 전체를 한 줄도 고치지 않고 — 스승과 점쟁이는 이 모드의 자체 맵 이벤트 파일로 추가, 수련장 장면, 상인의 장비(상점 패치), 능력치를 가진 늑대(캐릭터 패치). 데이터와 시나리오만. +mod_rpg_plus_game_desc = 완성된 소규모 RPG: 클래스를 고르는 프롤로그, 마을과 숲의 미스터리, 제작, 거래, 사막, 턴제 전투. 데이터와 시나리오만 있습니다. diff --git a/locale/ru.properties b/locale/ru.properties index 1e13a57..0a2f59a 100644 --- a/locale/ru.properties +++ b/locale/ru.properties @@ -1,5 +1,5 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = Сюжет образца RPG Plus, построенный поверх RPG-демо, а не рядом с ним: пролог-новелла на перекрёстке с выбором класса и первой проверкой харизмы, затем вся деревня и лес rpg_demo без единой правки — наставник и гадалка добавлены собственным файлом событий карты, сцена тренировочной площадки, снаряжение у торговца (патч лавки), волк со статами (патч персонажа). Только данные и сценарии. +mod_rpg_plus_game_desc = Полная маленькая RPG: пролог с выбором класса, тайна деревни и леса, крафт, торговля, пустыня и пошаговые бои — только данные и сценарии. rpg_plus/item/resin/name = Живая смола rpg_plus/item/resin/desc = Слизень оставил её вместо завещания. Горит даже под дождём. @@ -33,3 +33,7 @@ rpg_plus/recipe/lantern/name = Сторожевой фонарь rpg_plus/recipe/lantern/desc = Янтарное сердце, две смолы, две связки веток. Свету нужен каркас. rpg_plus/station/name = Верстак у колодца rpg_plus/map/shrine = Лес помнит + +rpg_plus/desert/map/name=Сухой предел +rpg_plus/desert/enemy/scorpion/name=Песчаный скорпион +rpg_plus/desert/enemy/beetle/name=Пустынный жук diff --git a/locale/scenarios_en.properties b/locale/scenarios_en.properties index 4fc0be3..ffa5f63 100644 --- a/locale/scenarios_en.properties +++ b/locale/scenarios_en.properties @@ -95,3 +95,21 @@ rpg_plus/woodland/lamplighter/3 = “Brighter forest. Darker village. At least t rpg_plus/woodland/elder/ready = “Built it? Then through the cave to the shrine. Keep the shutters closed until you decide whom the light serves.” rpg_plus/woodland/amber/recovered = The amber heart was left by the cave. This time you take it with you. + +rpg_plus/desert/barrel/supply_rpg_village_19_11=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_village_20_11=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_village_4_7=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_village_22_11=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_elder_house_1_2=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_elder_house_2_2=You find a few supplies in the barrel. +rpg_plus/desert/barrel/supply_rpg_elder_house_10_2=You find a few supplies in the barrel. + +rpg_plus/desert/enter=Beyond the last tree, the shade ends. The scorpions here are larger than the local hopes. +rpg_plus/desert/barrel/desert_barrel_supply=You find a few supplies in the barrel. +rpg_plus/desert/barrel/empty=Empty. Even the rubbish has been taken. +rpg_plus/desert/barrel/desert_barrel_caravan=You find a few supplies in the barrel. +rpg_plus/desert/barrel/desert_barrel_ruins=You find a few supplies in the barrel. +rpg_plus/desert/house=A note on the door reads: Back when it cools down. The ink has faded. +rpg_plus/desert/caravan=The caravan has left. The prices remain. Nothing has become cheaper. +rpg_plus/desert/enemy/scorpion=The scorpion raises its tail. Negotiations will be brief. +rpg_plus/desert/enemy/beetle=The beetle scrapes the sand. It charges meat for passage. diff --git a/locale/scenarios_ru.properties b/locale/scenarios_ru.properties index faed9f5..8346c33 100644 --- a/locale/scenarios_ru.properties +++ b/locale/scenarios_ru.properties @@ -95,3 +95,21 @@ rpg_plus/woodland/lamplighter/3 = — В лесу светлее. В дерев rpg_plus/woodland/elder/ready = — Собрал? Тогда через пещеру к святилищу. И не поднимай створки, пока не решишь, кому светить. rpg_plus/woodland/amber/recovered = Сердце янтаря осталось у пещеры. На этот раз забираешь его с собой. + +rpg_plus/desert/barrel/supply_rpg_village_19_11=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. +rpg_plus/desert/barrel/supply_rpg_village_20_11=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. +rpg_plus/desert/barrel/supply_rpg_village_4_7=В бочке нашлась мелочь: 2 монет(ы), 1 смола. +rpg_plus/desert/barrel/supply_rpg_village_22_11=В бочке нашлась мелочь: 2 монет(ы), 1 смола. +rpg_plus/desert/barrel/supply_rpg_elder_house_1_2=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. +rpg_plus/desert/barrel/supply_rpg_elder_house_2_2=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. +rpg_plus/desert/barrel/supply_rpg_elder_house_10_2=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. + +rpg_plus/desert/enter=За последним деревом кончается тень. Скорпионы здесь крупнее местных надежд. +rpg_plus/desert/barrel/desert_barrel_supply=В бочке нашлась мелочь: 3 монет(ы), 1 эликсир. +rpg_plus/desert/barrel/empty=Пусто. Даже мусор уже забрали. +rpg_plus/desert/barrel/desert_barrel_caravan=В бочке нашлась мелочь: 4 монет(ы), 1 смола. +rpg_plus/desert/barrel/desert_barrel_ruins=В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста. +rpg_plus/desert/house=На двери записка: «Вернусь, когда станет прохладно». Чернила выцвели. +rpg_plus/desert/caravan=Караван ушёл. Цены остались. Дешевле от этого не стало. +rpg_plus/desert/enemy/scorpion=Скорпион поднимает хвост. Переговоры будут короткими. +rpg_plus/desert/enemy/beetle=Жук скребёт песок. За проход он берёт мясом. diff --git a/locale/vi.properties b/locale/vi.properties index 3bf85dd..4a74f1d 100644 --- a/locale/vi.properties +++ b/locale/vi.properties @@ -1,2 +1,2 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = Câu chuyện của mẫu RPG Plus, xây trên bản demo RPG chứ không đặt cạnh nó: phần mở đầu kiểu tiểu thuyết ở ngã ba với lựa chọn lớp nhân vật và lần kiểm tra sức hút đầu tiên, rồi toàn bộ làng và rừng của rpg_demo không sửa một dòng — sư phụ và bà thầy bói được thêm bằng chính tệp sự kiện bản đồ của mod, cảnh bãi tập, trang bị ở cửa hàng (bản vá cửa hàng), con sói có chỉ số (bản vá nhân vật). Chỉ dữ liệu và kịch bản. +mod_rpg_plus_game_desc = Một RPG nhỏ nhưng trọn vẹn: phần mở đầu chọn class, bí ẩn của làng và khu rừng, chế tạo, mua bán, hoang mạc và chiến đấu theo lượt — chỉ dữ liệu và kịch bản. diff --git a/locale/zh.properties b/locale/zh.properties index ebacf9f..c0d07ba 100644 --- a/locale/zh.properties +++ b/locale/zh.properties @@ -1,2 +1,2 @@ mod_rpg_plus_game_name = RPG Plus -mod_rpg_plus_game_desc = RPG Plus 示例的故事,建立在 RPG 演示之上而非之旁:十字路口的小说式序章,选择职业并进行第一次魅力检定;之后是 rpg_demo 的整个村庄和森林,一处未改——导师和占卜师由本模组自己的地图事件文件加入,练武场场景,商人处的装备(商店补丁),带属性的狼(角色补丁)。仅有数据和剧本。 +mod_rpg_plus_game_desc = 一款完整的小型 RPG:选择职业的序章、村庄与森林之谜、制作、交易、沙漠和回合制战斗——只有数据和剧本。 diff --git a/manifest.json b/manifest.json index 18c5dfd..588d2e9 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "name": "RPG Plus", "version": "1.0.0", "author": "ct", - "description": "A woodland RPG with a class prologue, a village ward mystery, an apothecary and missing courier, a ruined shrine with two endings, monster loot and recipes. World and story are data and scenarios; crafting is a separate reusable mechanic.", + "description": "A complete small RPG: a prologue that picks the class, a village and forest mystery, crafting, trade, a desert and turn-based battles — data and scenarios only.", "category": "story", "depends": [ "rpg_demo_game>=1", @@ -31,6 +31,12 @@ "activate": [ "--itest=woodland" ] + }, + { + "id": "desert", + "activate": [ + "--itest=desert" + ] } ] } diff --git a/map_events/rpg_desert/events.json b/map_events/rpg_desert/events.json new file mode 100644 index 0000000..8429223 --- /dev/null +++ b/map_events/rpg_desert/events.json @@ -0,0 +1,198 @@ +{ + "Events": [ + { + "Id": "desert_to_village", + "X": 39, + "Y": 12, + "Tile": -1, + "Dir": "Down", + "Trigger": "Touch", + "Solid": false, + "Teleport": { + "Map": "rpg_village", + "X": 1, + "Y": 9, + "Dir": "Right" + } + }, + { + "Id": "desert_barrel_supply", + "X": 17, + "Y": 8, + "Sprite": "desert/barrel_closed", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag desert_barrel_supply_open 1", + "action item.add id=money/coin count=3", + "action item.add id=rpg_demo/elixir count=1", + "ptext \u0022\u0412 \u0431\u043E\u0447\u043A\u0435 \u043D\u0430\u0448\u043B\u0430\u0441\u044C \u043C\u0435\u043B\u043E\u0447\u044C: 3 \u043C\u043E\u043D\u0435\u0442(\u044B), 1 \u044D\u043B\u0438\u043A\u0441\u0438\u0440.\u0022 key=rpg_plus/desert/barrel/desert_barrel_supply" + ], + "Pages": [ + { + "Condition": "desert_barrel_supply_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \u0022\u041F\u0443\u0441\u0442\u043E. \u0414\u0430\u0436\u0435 \u043C\u0443\u0441\u043E\u0440 \u0443\u0436\u0435 \u0437\u0430\u0431\u0440\u0430\u043B\u0438.\u0022 key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "desert_barrel_caravan", + "X": 25, + "Y": 8, + "Sprite": "desert/barrel_closed", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag desert_barrel_caravan_open 1", + "action item.add id=money/coin count=4", + "action item.add id=rpg_plus/resin count=1", + "ptext \u0022\u0412 \u0431\u043E\u0447\u043A\u0435 \u043D\u0430\u0448\u043B\u0430\u0441\u044C \u043C\u0435\u043B\u043E\u0447\u044C: 4 \u043C\u043E\u043D\u0435\u0442(\u044B), 1 \u0441\u043C\u043E\u043B\u0430.\u0022 key=rpg_plus/desert/barrel/desert_barrel_caravan" + ], + "Pages": [ + { + "Condition": "desert_barrel_caravan_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \u0022\u041F\u0443\u0441\u0442\u043E. \u0414\u0430\u0436\u0435 \u043C\u0443\u0441\u043E\u0440 \u0443\u0436\u0435 \u0437\u0430\u0431\u0440\u0430\u043B\u0438.\u0022 key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "desert_barrel_ruins", + "X": 10, + "Y": 20, + "Sprite": "desert/barrel_closed", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag desert_barrel_ruins_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \u0022\u0412 \u0431\u043E\u0447\u043A\u0435 \u043D\u0430\u0448\u043B\u0430\u0441\u044C \u043C\u0435\u043B\u043E\u0447\u044C: 2 \u043C\u043E\u043D\u0435\u0442(\u044B), 1 \u0441\u0432\u044F\u0437\u043A\u0430 \u0445\u0432\u043E\u0440\u043E\u0441\u0442\u0430.\u0022 key=rpg_plus/desert/barrel/desert_barrel_ruins" + ], + "Pages": [ + { + "Condition": "desert_barrel_ruins_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \u0022\u041F\u0443\u0441\u0442\u043E. \u0414\u0430\u0436\u0435 \u043C\u0443\u0441\u043E\u0440 \u0443\u0436\u0435 \u0437\u0430\u0431\u0440\u0430\u043B\u0438.\u0022 key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "desert_house_door", + "X": 8, + "Y": 8, + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": false, + "Commands": [ + "ptext \u0022\u041D\u0430 \u0434\u0432\u0435\u0440\u0438 \u0437\u0430\u043F\u0438\u0441\u043A\u0430: \u00AB\u0412\u0435\u0440\u043D\u0443\u0441\u044C, \u043A\u043E\u0433\u0434\u0430 \u0441\u0442\u0430\u043D\u0435\u0442 \u043F\u0440\u043E\u0445\u043B\u0430\u0434\u043D\u043E\u00BB. \u0427\u0435\u0440\u043D\u0438\u043B\u0430 \u0432\u044B\u0446\u0432\u0435\u043B\u0438.\u0022 key=rpg_plus/desert/house" + ] + }, + { + "Id": "desert_caravan_notice", + "X": 21, + "Y": 8, + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": false, + "Commands": [ + "ptext \u0022\u041A\u0430\u0440\u0430\u0432\u0430\u043D \u0443\u0448\u0451\u043B. \u0426\u0435\u043D\u044B \u043E\u0441\u0442\u0430\u043B\u0438\u0441\u044C. \u0414\u0435\u0448\u0435\u0432\u043B\u0435 \u043E\u0442 \u044D\u0442\u043E\u0433\u043E \u043D\u0435 \u0441\u0442\u0430\u043B\u043E.\u0022 key=rpg_plus/desert/caravan" + ] + }, + { + "Id": "desert_scorpion_1", + "X": 27, + "Y": 12, + "Sprite": "desert/scorpion", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "ptext \u0022\u0421\u043A\u043E\u0440\u043F\u0438\u043E\u043D \u043F\u043E\u0434\u043D\u0438\u043C\u0430\u0435\u0442 \u0445\u0432\u043E\u0441\u0442. \u041F\u0435\u0440\u0435\u0433\u043E\u0432\u043E\u0440\u044B \u0431\u0443\u0434\u0443\u0442 \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u043C\u0438.\u0022 key=rpg_plus/desert/enemy/scorpion", + "action rpg.battle enemies=rpg_desert_scorpion win_flag=desert_scorpion_1_dead", + "end" + ], + "Condition": "desert_scorpion_1_dead != 1" + }, + { + "Id": "desert_beetle_2", + "X": 22, + "Y": 13, + "Sprite": "desert/beetle", + "Tile": -1, + "Dir": "Left", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "ptext \u0022\u0416\u0443\u043A \u0441\u043A\u0440\u0435\u0431\u0451\u0442 \u043F\u0435\u0441\u043E\u043A. \u0417\u0430 \u043F\u0440\u043E\u0445\u043E\u0434 \u043E\u043D \u0431\u0435\u0440\u0451\u0442 \u043C\u044F\u0441\u043E\u043C.\u0022 key=rpg_plus/desert/enemy/beetle", + "action rpg.battle enemies=rpg_desert_beetle win_flag=desert_beetle_2_dead", + "end" + ], + "Condition": "desert_beetle_2_dead != 1" + }, + { + "Id": "desert_scorpion_3", + "X": 13, + "Y": 14, + "Sprite": "desert/scorpion", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "ptext \u0022\u0421\u043A\u043E\u0440\u043F\u0438\u043E\u043D \u043F\u043E\u0434\u043D\u0438\u043C\u0430\u0435\u0442 \u0445\u0432\u043E\u0441\u0442. \u041F\u0435\u0440\u0435\u0433\u043E\u0432\u043E\u0440\u044B \u0431\u0443\u0434\u0443\u0442 \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u043C\u0438.\u0022 key=rpg_plus/desert/enemy/scorpion", + "action rpg.battle enemies=rpg_desert_scorpion win_flag=desert_scorpion_3_dead", + "end" + ], + "Condition": "desert_scorpion_3_dead != 1" + }, + { + "Id": "desert_beetle_4", + "X": 11, + "Y": 10, + "Sprite": "desert/beetle", + "Tile": -1, + "Dir": "Left", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "ptext \u0022\u0416\u0443\u043A \u0441\u043A\u0440\u0435\u0431\u0451\u0442 \u043F\u0435\u0441\u043E\u043A. \u0417\u0430 \u043F\u0440\u043E\u0445\u043E\u0434 \u043E\u043D \u0431\u0435\u0440\u0451\u0442 \u043C\u044F\u0441\u043E\u043C.\u0022 key=rpg_plus/desert/enemy/beetle", + "action rpg.battle enemies=rpg_desert_beetle win_flag=desert_beetle_4_dead", + "end" + ], + "Condition": "desert_beetle_4_dead != 1" + }, + { + "Id": "desert_beetle_5", + "X": 28, + "Y": 19, + "Sprite": "desert/beetle", + "Tile": -1, + "Dir": "Down", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "ptext \u0022\u0416\u0443\u043A \u0441\u043A\u0440\u0435\u0431\u0451\u0442 \u043F\u0435\u0441\u043E\u043A. \u0417\u0430 \u043F\u0440\u043E\u0445\u043E\u0434 \u043E\u043D \u0431\u0435\u0440\u0451\u0442 \u043C\u044F\u0441\u043E\u043C.\u0022 key=rpg_plus/desert/enemy/beetle", + "action rpg.battle enemies=rpg_desert_beetle win_flag=desert_beetle_5_dead", + "end" + ], + "Condition": "desert_beetle_5_dead != 1" + } + ] +} diff --git a/map_events/rpg_elder_house/barrels.json b/map_events/rpg_elder_house/barrels.json new file mode 100644 index 0000000..7b5fb5b --- /dev/null +++ b/map_events/rpg_elder_house/barrels.json @@ -0,0 +1,73 @@ +{ + "Events": [ + { + "Id": "supply_rpg_elder_house_1_2", + "X": 1, + "Y": 2, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_elder_house_1_2_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста.\" key=rpg_plus/desert/barrel/supply_rpg_elder_house_1_2" + ], + "Pages": [ + { + "Condition": "supply_rpg_elder_house_1_2_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "supply_rpg_elder_house_2_2", + "X": 2, + "Y": 2, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_elder_house_2_2_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста.\" key=rpg_plus/desert/barrel/supply_rpg_elder_house_2_2" + ], + "Pages": [ + { + "Condition": "supply_rpg_elder_house_2_2_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "supply_rpg_elder_house_10_2", + "X": 10, + "Y": 2, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_elder_house_10_2_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста.\" key=rpg_plus/desert/barrel/supply_rpg_elder_house_10_2" + ], + "Pages": [ + { + "Condition": "supply_rpg_elder_house_10_2_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + } + ] +} diff --git a/map_events/rpg_village/barrels.json b/map_events/rpg_village/barrels.json new file mode 100644 index 0000000..ca425d8 --- /dev/null +++ b/map_events/rpg_village/barrels.json @@ -0,0 +1,96 @@ +{ + "Events": [ + { + "Id": "supply_rpg_village_19_11", + "X": 19, + "Y": 11, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_village_19_11_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста.\" key=rpg_plus/desert/barrel/supply_rpg_village_19_11" + ], + "Pages": [ + { + "Condition": "supply_rpg_village_19_11_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "supply_rpg_village_20_11", + "X": 20, + "Y": 11, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_village_20_11_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_demo/branches count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 связка хвороста.\" key=rpg_plus/desert/barrel/supply_rpg_village_20_11" + ], + "Pages": [ + { + "Condition": "supply_rpg_village_20_11_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "supply_rpg_village_4_7", + "X": 4, + "Y": 7, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_village_4_7_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_plus/resin count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 смола.\" key=rpg_plus/desert/barrel/supply_rpg_village_4_7" + ], + "Pages": [ + { + "Condition": "supply_rpg_village_4_7_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + }, + { + "Id": "supply_rpg_village_22_11", + "X": 22, + "Y": 11, + "Sprite": "desert/barrel_closed", + "Trigger": "Action", + "Solid": true, + "Commands": [ + "flag supply_rpg_village_22_11_open 1", + "action item.add id=money/coin count=2", + "action item.add id=rpg_plus/resin count=1", + "ptext \"В бочке нашлась мелочь: 2 монет(ы), 1 смола.\" key=rpg_plus/desert/barrel/supply_rpg_village_22_11" + ], + "Pages": [ + { + "Condition": "supply_rpg_village_22_11_open == 1", + "Sprite": "desert/barrel_open", + "Commands": [ + "ptext \"Пусто. Даже мусор уже забрали.\" key=rpg_plus/desert/barrel/empty" + ] + } + ] + } + ] +} diff --git a/map_events/rpg_village/desert.json b/map_events/rpg_village/desert.json new file mode 100644 index 0000000..9cd7271 --- /dev/null +++ b/map_events/rpg_village/desert.json @@ -0,0 +1,17 @@ +{ + "Events": [ + { + "Id": "village_to_desert", + "X": 0, + "Y": 9, + "Trigger": "Touch", + "Solid": false, + "Teleport": { + "Map": "rpg_desert", + "X": 38, + "Y": 12, + "Dir": "Left" + } + } + ] +} diff --git a/map_events/rpg_woodland_shrine/events.json b/map_events/rpg_woodland_shrine/events.json index 3e68cd6..4d28562 100644 --- a/map_events/rpg_woodland_shrine/events.json +++ b/map_events/rpg_woodland_shrine/events.json @@ -4,6 +4,8 @@ "Id": "shrine_exit", "X": 1, "Y": 11, + "Tile": -1, + "Dir": "Down", "Trigger": "Touch", "Teleport": { "Map": "rpg_forest", @@ -17,14 +19,12 @@ "X": 12, "Y": 5, "Tile": 36, + "Dir": "Down", + "Trigger": "Action", "Scenario": "rpg_plus/woodland/beacon", - "Light": { - "Radius": 2, - "Color": "#699baf" - }, "Pages": [ { - "Condition": "rpg_ward_done == 1 && rpg_ward_choice == 'pact'", + "Condition": "rpg_ward_done == 1 \u0026\u0026 rpg_ward_choice == \u0027pact\u0027", "Tile": 36, "Light": { "Radius": 6, @@ -32,14 +32,18 @@ } }, { - "Condition": "rpg_ward_done == 1 && rpg_ward_choice == 'free'", + "Condition": "rpg_ward_done == 1 \u0026\u0026 rpg_ward_choice == \u0027free\u0027", "Tile": 38, "Light": { "Radius": 6, "Color": "#9ce3c7" } } - ] + ], + "Light": { + "Radius": 2, + "Color": "#699baf" + } } ] } diff --git a/maps/rpg_desert.json b/maps/rpg_desert.json new file mode 100644 index 0000000..b5ff1e2 --- /dev/null +++ b/maps/rpg_desert.json @@ -0,0 +1,125 @@ +{ + "Kind": "rpg_map", + "Items": [ + { + "Id": "rpg_desert", + "Name": "rpg_plus/desert/map/name", + "Tileset": "desert", + "Width": 40, + "Height": 24, + "Zoom": 2, + "Layers": { + "Back": [ + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 0 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 1 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 0 0 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" + ], + "Main": [ + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . 244 245 . . . . . . . . . . 244 245 . . . . . . . . . . . . . . . . . . . . 252 253 . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 230 231 . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . 124 125 126 127 128 129 . . . . . . 164 165 166 167 168 169 . . . . . . . 244 245 . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . 252 253 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . 252 253 . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . 252 253 . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . 244 245 . . . . . . . . . . . . . .", + " . . . . . 196 197 198 199 . . . . . . 229 230 231 . . . . . . . . . . . . . . 229 230 231 . 252 253 . .", + " . . 252 253 . . . . . . . . . . . . . . . . . . . . . . . . 252 253 . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ." + ], + "Front": [ + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . 240 241 . . . . . . . . . . 240 241 . . . . . . . . . . . . . 220 221 222 . . . . . . . .", + " . . 242 243 . . . . . . . . . . 242 243 . . . . . . . . . . . . . 223 224 225 . . . . 250 251 . .", + " . . . . . . . 100 101 102 103 104 105 . . . . . . 140 141 142 143 144 145 . . . . 226 227 228 . . . . . . . .", + " . . . . . . . 106 107 108 109 110 111 . . . . . . 146 147 148 149 150 151 . . . . . . . . . . . . . . .", + " . . . . . . . 112 113 114 115 116 117 . . . . . . 152 153 154 155 156 157 . . . . . . . 240 241 . . . . . .", + " . . . . . . . 118 119 120 121 122 123 . . . . . . 158 159 160 161 162 163 . . . . . . . 242 243 . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . 250 251 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . 250 251 . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . 250 251 . . . . . . . . . . . . . . . . . . .", + " . . . . . 180 181 182 183 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . 184 185 186 187 . . . . . . 220 221 222 . . . . . . 240 241 . . . . . . 220 221 222 . . . . .", + " . . . . . 188 189 190 191 . . . . . . 223 224 225 . . . . . . 242 243 . . . . . . 223 224 225 . . . . .", + " . . . . . 192 193 194 195 . . . . . . 226 227 228 . . . . . . . . . . . . . . 226 227 228 . 250 251 . .", + " . . 250 251 . . . . . . . . . . . . . . . . . . . . . . . . 250 251 . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .", + " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ." + ] + }, + "Collision": [ + "########################################", + "#......................................#", + "#......................................#", + "#......................................#", + "#......######......######..............#", + "#......######......######..............#", + "#......######......######..............#", + "#......######......######..............#", + "#......######......######..............#", + "#......................................#", + "#......................................#", + "#......................................#", + "#......................................o", + "#......................................#", + "#......................................#", + "#......................................#", + "#....####..............................#", + "#....####..............................#", + "#....####..............................#", + "#....####..............................#", + "#....####..............................#", + "#......................................#", + "#......................................#", + "########################################" + ], + "Spawn": { + "X": 38, + "Y": 12, + "Dir": "Left" + }, + "Ambient": "#fff0d8" + } + ] +} diff --git a/maps/rpg_woodland_shrine.json b/maps/rpg_woodland_shrine.json index 93d9d05..40aee83 100644 --- a/maps/rpg_woodland_shrine.json +++ b/maps/rpg_woodland_shrine.json @@ -8,69 +8,67 @@ "Width": 24, "Height": 16, "Zoom": 2, - "Ambient": "#a3bbc1", - "Atmosphere": "woodland", "Layers": { "Back": [ - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 4 4 4 4 4 4 4 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 6 6 6 6 6 6 6 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 6 6 6 6 6 6 6 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 6 6 6 6 6 6 6 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 6 6 6 160 6 6 6 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 4 4 4 4 170 4 4 4 4 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 170 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 170 24 24 24 24 24 24 24 24 24 24 24", - " 24 173 165 165 165 165 165 165 165 165 165 165 166 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", - " 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24" + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 4 4 4 4 4 4 4 4 4 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 4 3 3 3 3 3 3 3 4 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 4 3 3 3 3 3 3 3 4 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 4 3 3 3 3 3 3 3 4 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 4 4 4 4 3 4 4 4 4 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 3 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 3 24 24 24 24 24 24 24 24 24 24 24", + "24 3 3 3 3 3 3 3 3 3 3 3 3 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24", + "24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24" ], "Main": [ - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " 70 71 72 70 71 72 70 71 72 . . . . . . 70 71 72 70 71 72 70 71 72", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . 37 . . . . . . . 37 . . . . . . .", - " 70 71 72 70 71 72 . . . . . . . . . . . . 70 71 72 70 71 72", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " 70 71 72 . . . . . 37 . . . . . . . 37 . . . . 70 71 72", - " . . . . 70 71 72 . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . 70 71 72", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72" + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + "70 71 72 70 71 72 70 71 72 . . . . . . 70 71 72 70 71 72 70 71 72", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . 37 . 124 125 126 127 . . 37 . . . . . . .", + "70 71 72 70 71 72 . . . . . . . . . . . . 70 71 72 70 71 72", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + "70 71 72 . . . . . 37 . . . . . . . 37 . . . . 70 71 72", + ". . . . 70 71 72 . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . 70 71 72", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + "70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72 70 71 72" ], "Front": [ - " 64 65 66 64 65 66 64 65 66 . . . . . . 64 65 66 64 65 66 64 65 66", - " 67 68 69 67 68 69 67 68 69 . 112 113 114 115 . 67 68 69 67 68 69 67 68 69", - " . . . . . . . . . . 116 117 118 119 . . . . . . . . . .", - " 64 65 66 64 65 66 . . . . 120 121 122 123 . . . . 64 65 66 64 65 66", - " 67 68 69 67 68 69 . . . . 124 125 126 127 . . . . 67 68 69 67 68 69", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " 64 65 66 . . . . . . . . . . . . . . . . . . 64 65 66", - " 67 68 69 . 64 65 66 . . . . . . . . . . . . . . 67 68 69", - " . . . . 67 68 69 . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . 64 65 66", - " . . . . . . . . . . . . . . . . . . . . . 67 68 69", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " . . . . . . . . . . . . . . . . . . . . . . . .", - " 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66", - " 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69", - " . . . . . . . . . . . . . . . . . . . . . . . ." + "64 65 66 64 65 66 64 65 66 . . . . . . 64 65 66 64 65 66 64 65 66", + "67 68 69 67 68 69 67 68 69 . 112 113 114 115 . 67 68 69 67 68 69 67 68 69", + ". . . . . . . . . . 116 117 118 119 . . . . . . . . . .", + "64 65 66 64 65 66 . . . . 120 121 122 123 . . . . 64 65 66 64 65 66", + "67 68 69 67 68 69 . . . . . . . . . . . . 67 68 69 67 68 69", + ". . . . . . . . . . . . . . . . . . . . . . . .", + "64 65 66 . . . . . . . . . . . . . . . . . . 64 65 66", + "67 68 69 . 64 65 66 . . . . . . . . . . . . . . 67 68 69", + ". . . . 67 68 69 . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . 64 65 66", + ". . . . . . . . . . . . . . . . . . . . . 67 68 69", + ". . . . . . . . . . . . . . . . . . . . . . . .", + ". . . . . . . . . . . . . . . . . . . . . . . .", + "64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66 64 65 66", + "67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69 67 68 69", + ". . . . . . . . . . . . . . . . . . . . . . . ." ] }, "Collision": [ "########################", "#......................#", "#......................#", - "#.........#..#.........#", + "#.........####.........#", "#.........####.........#", "#......................#", "#......................#", @@ -88,7 +86,9 @@ "X": 2, "Y": 11, "Dir": "Right" - } + }, + "Ambient": "#a3bbc1", + "Atmosphere": "woodland" } ] } diff --git a/scenarios/rpg_plus/desert/enter.scenario b/scenarios/rpg_plus/desert/enter.scenario new file mode 100644 index 0000000..54af6e5 --- /dev/null +++ b/scenarios/rpg_plus/desert/enter.scenario @@ -0,0 +1,7 @@ +scene: rpg_desert +priority: 10 +is_one_run: true +save_allowed: true +--- +ptext "За последним деревом кончается тень. Скорпионы здесь крупнее местных надежд." key=rpg_plus/desert/enter +end diff --git a/scenes/rpg_desert.json b/scenes/rpg_desert.json new file mode 100644 index 0000000..6d90324 --- /dev/null +++ b/scenes/rpg_desert.json @@ -0,0 +1,5 @@ +{ + "name": "rpg_desert", + "defaultBackground": "desert/outpost", + "defaultAmbient": "" +} diff --git a/test_suites/desert/manifest.json b/test_suites/desert/manifest.json new file mode 100644 index 0000000..b090265 --- /dev/null +++ b/test_suites/desert/manifest.json @@ -0,0 +1,6 @@ +{ + "name": "Desert and supply barrel test", + "description": "West/east transitions, one-time barrel loot, save/load and both desert monster battles.", + "sources": ["src/*.cs"], + "depends": ["rpg_plus_game>=1", "ff_battle>=1"] +} diff --git a/test_suites/desert/src/DesertTestDriver.cs b/test_suites/desert/src/DesertTestDriver.cs new file mode 100644 index 0000000..26178c7 --- /dev/null +++ b/test_suites/desert/src/DesertTestDriver.cs @@ -0,0 +1,212 @@ +namespace Cthangover.Mods.RpgPlus.Tests +{ + using System; + using System.Collections.Generic; + using System.Linq; + using Cthangover.Core.Battle; + using Cthangover.Core.Bootstrap; + using Cthangover.Core.Games; + using Cthangover.Core.Items; + using Cthangover.Core.Scenes; + using Cthangover.Core.Settings; + using Cthangover.Core.UI; + using Cthangover.Core.Utils; + using Cthangover.Mods.Dialog; + using Cthangover.Mods.Interface.View; + using Cthangover.Mods.Rpg; + using Cthangover.FFBattle.UI; + using Godot; + + ///