From 49837f8e9645d933ad3beccfb646eedc6238e596 Mon Sep 17 00:00:00 2001 From: shoko Date: Mon, 20 Apr 2026 09:41:09 +0000 Subject: [PATCH] feat: Second starter case - The Broken Vase - Case: easy-02-the-broken-vase - Plot: Antique vase shattered, roommate vs visitor - Evidence: Broken vase photo + text messages - Suspects: Sam Chen + Alex Kim - Placeholder images for testing - truth.enc: base64 encoded Now we have 2 easy cases to choose from. --- cases/easy-02-the-broken-vase/case.yaml | 40 ++++++++++++++++++ .../images/evidence-01.jpg | Bin 0 -> 16517 bytes .../images/evidence-02.jpg | Bin 0 -> 21783 bytes .../images/suspect-01.jpg | Bin 0 -> 7314 bytes .../images/suspect-02.jpg | Bin 0 -> 7201 bytes cases/easy-02-the-broken-vase/truth.enc | 1 + 6 files changed, 41 insertions(+) create mode 100644 cases/easy-02-the-broken-vase/case.yaml create mode 100644 cases/easy-02-the-broken-vase/images/evidence-01.jpg create mode 100644 cases/easy-02-the-broken-vase/images/evidence-02.jpg create mode 100644 cases/easy-02-the-broken-vase/images/suspect-01.jpg create mode 100644 cases/easy-02-the-broken-vase/images/suspect-02.jpg create mode 100644 cases/easy-02-the-broken-vase/truth.enc diff --git a/cases/easy-02-the-broken-vase/case.yaml b/cases/easy-02-the-broken-vase/case.yaml new file mode 100644 index 0000000..d91b518 --- /dev/null +++ b/cases/easy-02-the-broken-vase/case.yaml @@ -0,0 +1,40 @@ +title: "The Broken Vase" + +briefing: + narrative: | + You left your apartment at 1:00 PM for a quick errand. + You returned at 2:00 PM to find your grandmother's antique vase + shattered on the living room floor. + + Two people were in your apartment while you were gone: + your roommate and a visitor. + + Figure out what happened. + +evidence: + - id: "evidence-01" + name: "Broken Vase Photo" + image: "images/evidence-01.jpg" + description: "Photo of the shattered vase on the floor" + + - id: "evidence-02" + name: "Text Messages" + image: "images/evidence-02.jpg" + description: "Text messages from one of the suspects" + +suspects: + - id: "suspect-01" + name: "Sam Chen" + photo: "images/suspect-01.jpg" + description: | + Your roommate. Was home when you left. + Said they were studying in their room. + You saw them on the couch when you left. + + - id: "suspect-02" + name: "Alex Kim" + photo: "images/suspect-02.jpg" + description: | + Your friend. Came over briefly for a study session. + Arrived just after you left. + You texted Sam to let them in. diff --git a/cases/easy-02-the-broken-vase/images/evidence-01.jpg b/cases/easy-02-the-broken-vase/images/evidence-01.jpg new file mode 100644 index 0000000000000000000000000000000000000000..753f81d1a1cc55b4026255c7ca745bda53e9eede GIT binary patch literal 16517 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 J_g6u1&z~w%TtEN- literal 0 HcmV?d00001 diff --git a/cases/easy-02-the-broken-vase/images/suspect-02.jpg b/cases/easy-02-the-broken-vase/images/suspect-02.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7cb4c8945b26a73454b6ff0a5cc8bcee4cad6839 GIT binary patch literal 7201 zcmeHMX;f3!7Cx6GBtRH0geeSR2uK-<2q{>>fHJ6PA%dtCMCM6Q1_cBg21Vw{nP*W5 zEeO_#fV5Nv%GA_CMP`s8f<>kRN)beId$Di5w-)Oy7t-gyoV)hm0Wnv&T zAOJ%c7((g+1;vSj-Zk*=1_@xWC`y8mun0P#LIMat7>odlA0>d!K8=n8ER2&>HLwtr zVz}Yef=QcVv+@Y)+e&Mt_qNVZ4c$ZHgoI^e<>bj4nj5q}(Ke!eW^A(g^X-;a);2qK z?s9P4=d}O8!7n{Ly}W&V{rp42PMi#nh&&a4=4`^b#H8fx^A|2&x_sqoPCl#Pn{Nw? zZWiAyE3dd$`TY-7Kh@PYG&cRr`Q=Gldq-zicTX?(+3?8o-$!4JjnBS(HTUQI>xIQP zE4(0p`I{En|4nQaFBs(|fVu^XU*QD_grkOmu{c!&K}ib+-Yr;4ZBs0Pv@I*Iv{p#n zaPN$?dq}IW4AqFMF}p(T9kaC&i(417{}B5xuUD+74;s~&Cg_%Q^^tb*QJ$T;E+bjgQB{AoA z(J{t{1fs|V`1MY0+e`C5ur6-!4(~IDg927 zzgOFOAG+z`DeRGz1Tnq{iLd_d^q#|pORh`~t*v^}K$e%36C=JVxI2dFcg5eHcd_Bs zNumLLC7`DW!FXN)}lb)gIr$lauwT)uxcvsE@PrB=mu>M_d#J5H* zI}I`_bD9SvG7DNarVs%&Ub;%L6hloF26M&in*)7*RVP|lQTi7H0z{e(r}QdFG9Izn z$DyJ9crR|h9Zz!epE}E*&5x9Kg>b5D&Cl1WeV;z45}9i5>2kXk+8rOG9pEZ9!H71Q z)l3OKHacE;(!q)}aQs-gOl2QA$Rn#P@nv^QfB%8Ucpqh!&!;TCGkc9LOH94m*4SWw zM;EhE!J?)`s6`k75#Ig5P6mdc@Ox!f2&-tdGpv5M9mgCTo zxPowzvw0CRuk6a&l#C+ss_vDwZu({HLhhFM`9>_|!Sg_3-83LcrP||*8CE2)9^0SF z>l%EyCv19&XoY}$Z?^Ypr<&s@;}JmZVj$p7ef1kn^1T1-^;M}t`?~gCE8dTa(Z1i= z>S)oEY*UU54R~Jih~?4E{h{ImS5&Tgd)p?FP3|?;mx20J=vqwLqCKwnliOTCHQ->* zZeX`9wgrwRJTs(9;_WBTWK8QwyDdoAaLpwd_5)9Ay?o4`Kbnjq^d3~ePVJN5fH_|? zweLu0*kWONzgL!KwgtIKS6o3xtHtC90moPzdzsZ4W2BYOs?1eL{55k2b@h@xPp!fO zlzydN8F5Zcg(q!19PA-0(udosr0PM=eV_S<2*?g7WOlpjFH6w?WmVc&(#Z6rENWI| zEGK9npmk$c+5g;CFsOpa4*u5JI&~uOlv0QF7oBOtzYRH4Zrsv4WZCYsC#ZMJ@y7~> zSnkH`X^pQ1xm|Gz%ncaH(*f-K7!!_>%l4(cTy9%(lg5aHDO)WlurioaijFc=bOzAy5HytA8;*hZYSsacfdV1shzkKaT# zTq|yk4OF*NzttbI)hY3~@mCXajXFQ(#~4N%6YuzGYg$`h@+<7F!&zpRomDS|Vwx)a z7*>F^4wD|HSG-0O@-4hNnEB#rNe}9nfN9h*;mZl=S9GhPJ+!2P01mC4IccEJOG zTZW#at=9^d4{@zZy>A|0#rLVR)-k?{YgOuf^Y|*hPo1@ntwY6! z2N&R3pSoNOTA|HCQ^m61XiHB^zHCrXaZvP!bjL$4m_1mj(6a8M6