{"format":"murdoku-puzzle/1","id":"icecream","version":1,"difficulty":"very-easy","level":1,"size":{"rows":5,"cols":5},"languages":["en","hu","de","fr","es","it","nl","pl","pt","ro","ca","cs","fi","vi","tr","el","ru","uk","ar","ko","ja","zh-Hans","zh-Hant"],"defaultLanguage":"en","title":"Jäätelökahvila","tagline":"Gelateria Rimini rantabulevardilla · elokuun ilta vuonna 1962 · pistaasijäätelö oli loppunut","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-29","story":"Rimini, tukahduttavan kuuma elokuun ilta vuonna 1962. Pienestä gelateriasta rantabulevardilla pistaasijäätelö oli loppunut jo kuudelta, viimeiset auringonpolttamat turistit poistuivat terassilta ja jäätelönvalmistaja laski päivän kassaa. Vitale, kiinteistökehittäjä, joka oli koko kesän yrittänyt ostaa jäätelökahvilan ja purkaa sen hotellin tieltä, istuutui terassille raidallisen aurinkovarjon viereen ja tilasi espresson, jota hän ei koskaan juonut. Auringonlaskun aikaan hänet löydettiin sieltä kuolleena. Vain neljä ihmistä oli ollut hänen lähellään, ja jokainen antoi yhden lauseen lausunnon – selvitä, kuka oli hänen kanssaan yksin.","rules":{"standard":["Jokaisella <b>rivillä</b> ja jokaisessa <b>sarakkeessa</b> on täsmälleen <b>yksi henkilö</b>. Heti kun sijoitat jonkun, yliviivaa koko hänen rivinsä ja sarakkeensa.","<b>”Vieressä”</b> = suoraan vasemmalla, oikealla, yläpuolella tai alapuolella, ja <b>samalla alueella</b>. Esineiden ruutuja (tiskiallas, jäätelötiski, pöytä, aurinkovarjo, polkupyörä ja kukkapenkki) ei voi miehittää, paitsi tuoleja ja penkkiä.","Murhaaja oli <b>yksin uhrin kanssa</b>: kukaan muu ei ollut tuolla alueella."],"special":[]},"roleNames":{"guest":"vieras","staff":"henkilökunta","victim":"uhri"},"personGroups":[{"id":"guests","name":"Vieraat","persons":["A","B","V"]},{"id":"staff","name":"Henkilökunta","persons":["C","D"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Kitchen","cells":[[1,1],[1,2],[2,1]],"fill":"#e3e9ec","pattern":"tiles","labelAt":[1,2],"name":"Keittiö"},{"id":"Parlour","cells":[[1,3],[1,4],[2,2],[2,3],[3,1],[3,2],[4,1]],"fill":"#f6dde6","pattern":"marble","labelAt":[3,2],"name":"Sali"},{"id":"Terrace","cells":[[1,5],[2,4],[2,5],[3,3],[3,4],[3,5],[4,2],[4,3],[5,1],[5,2]],"fill":"#f0e4cc","pattern":"tiles","labelAt":[4,3],"name":"Terassi"},{"id":"Garden","cells":[[4,4],[4,5],[5,3],[5,4],[5,5]],"fill":"#dcebcd","pattern":"marble","labelAt":[5,4],"name":"Puutarha"}],"objectTypes":{"bench":{"occupiable":true,"name":"penkki","icon":"<rect x=\"7\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"35.8\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"4\" y=\"8\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.3\"/><rect x=\"4\" y=\"17.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"32.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/>"},"chair":{"occupiable":true,"name":"tuoli","icon":"<rect x=\"9\" y=\"7\" width=\"28\" height=\"32\" rx=\"6\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"7\" width=\"28\" height=\"9\" rx=\"4\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/>"},"bicycle":{"occupiable":false,"name":"polkupyörä","icon":"<circle cx=\"13\" cy=\"30\" r=\"8\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"2\"/><circle cx=\"33\" cy=\"30\" r=\"8\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"2\"/><path d=\"M13 30 L20 16 h10 l3 14 M20 16 l6 14 h-13 M30 16 l-4 -4\" fill=\"none\" stroke=\"#c0392b\" stroke-width=\"2.2\" stroke-linejoin=\"round\"/>"},"counter":{"occupiable":false,"name":"jäätelötiski","icon":"<rect x=\"0\" y=\"10\" width=\"46\" height=\"26\" fill=\"#a97c50\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"0\" y=\"10\" width=\"46\" height=\"7\" fill=\"#c9a06f\"/>"},"flowers":{"occupiable":false,"name":"kukkapenkki","icon":"<path d=\"M17 28 h12 l-2 12 h-8 z\" fill=\"#c9c3b8\" stroke=\"#6b6660\" stroke-width=\"1.2\"/><circle cx=\"16\" cy=\"19\" r=\"5\" fill=\"#e0526a\"/><circle cx=\"30\" cy=\"19\" r=\"5\" fill=\"#f2a53a\"/><circle cx=\"23\" cy=\"12\" r=\"5\" fill=\"#f2d24a\"/><circle cx=\"23\" cy=\"22\" r=\"4.5\" fill=\"#d94a8a\"/><path d=\"M12 25 q6 -8 11 -6\" fill=\"none\" stroke=\"#3f8a4a\" stroke-width=\"2\"/><path d=\"M34 25 q-6 -8 -11 -6\" fill=\"none\" stroke=\"#3f8a4a\" stroke-width=\"2\"/>"},"sink":{"occupiable":false,"name":"tiskiallas","icon":"<rect x=\"7\" y=\"9\" width=\"32\" height=\"28\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"24\" rx=\"11\" ry=\"7\" fill=\"#ffffff\" stroke=\"#8a949c\"/><circle cx=\"23\" cy=\"24\" r=\"2\" fill=\"#8a949c\"/><rect x=\"21\" y=\"10\" width=\"4\" height=\"6\" fill=\"#8a949c\"/>"},"table":{"occupiable":false,"name":"pöytä","icon":"<rect x=\"7\" y=\"7\" width=\"32\" height=\"32\" rx=\"5\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"12\" width=\"22\" height=\"22\" rx=\"3\" fill=\"#d1a675\"/>"},"umbrella":{"occupiable":false,"name":"aurinkovarjo","icon":"<path d=\"M5 24 q18 -22 36 0 z\" fill=\"#e26d5a\" stroke=\"#8a3a2a\" stroke-width=\"1.2\"/><path d=\"M5 24 q4 -6 9 0 q4 -6 9 0 q4 -6 9 0 q4 -6 9 0\" fill=\"none\" stroke=\"#f9d7cf\" stroke-width=\"1.5\"/><line x1=\"23\" y1=\"24\" x2=\"23\" y2=\"42\" stroke=\"#5a4a3a\" stroke-width=\"2\"/>"}},"wallTypes":{},"objects":[{"cell":[1,1],"type":"sink"},{"cell":[1,4],"type":"counter"},{"cell":[2,2],"type":"chair"},{"cell":[2,3],"type":"table"},{"cell":[2,4],"type":"chair"},{"cell":[3,3],"type":"chair"},{"cell":[3,4],"type":"umbrella"},{"cell":[3,5],"type":"chair"},{"cell":[4,1],"type":"chair"},{"cell":[4,5],"type":"bicycle"},{"cell":[5,2],"type":"chair"},{"cell":[5,3],"type":"bench"},{"cell":[5,5],"type":"flowers"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Arturo","gender":"M","role":"guest","color":"#c62828","avatar":{"bg":"#1565c0","skin":"#e4b998","hair":"#1c1a1a","style":"slick","shirt":"#f4efe6","mustache":true,"mustacheColor":"#1c1a1a"},"clue":"Hän oli <b>alimmalla rivillä</b>.","job":"viereisen hotellin omistaja","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Arturo\"><rect width=\"80\" height=\"80\" fill=\"#1565c0\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#1c1a1a\"/></svg>","solverRole":"guest","constraints":[{"type":"row","rows":[5]}]},{"id":"B","name":"Brigida","gender":"F","role":"guest","color":"#2e7d32","avatar":{"bg":"#e65100","skin":"#f6d8c0","hair":"#7a4a2a","style":"bob","shirt":"#7fc4d8","glasses":true},"clue":"Hän oli <b>pöydän</b> vieressä.","job":"lomalla oleva bolognalainen opettaja","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Brigida\"><rect width=\"80\" height=\"80\" fill=\"#e65100\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#7a4a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7fc4d8\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#7a4a2a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"table"}]},{"id":"C","name":"Corrado","gender":"M","role":"staff","color":"#1565c0","avatar":{"bg":"#2e7d32","skin":"#e7b98f","hair":"#3a2a1c","style":"short","shirt":"#f4efe6","apron":true,"beard":true},"clue":"Hän oli <b>Salissa</b>. Hän istui <b>tuolilla</b>.","job":"jäätelönvalmistaja","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Corrado\"><rect width=\"80\" height=\"80\" fill=\"#2e7d32\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3a2a1c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"staff","constraints":[{"type":"area","areas":["Parlour"]},{"type":"on","obj":"chair"}]},{"id":"D","name":"Dafne","gender":"F","role":"staff","color":"#6a1b9a","avatar":{"bg":"#ad1457","skin":"#f3d3b5","hair":"#b7482c","style":"ponytail","shirt":"#1b1b1b","apron":true},"clue":"Hän oli <b>polkupyörän</b> vieressä.","job":"tarjoilija","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dafne\"><rect width=\"80\" height=\"80\" fill=\"#ad1457\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#b7482c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><path d=\"M26 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 Z\" fill=\"#b7482c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"bicycle"}]},{"id":"V","name":"Vitale","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#f1c8a5","hair":"#8a8278","style":"bald","shirt":"#2f3b4c","mustache":true,"mustacheColor":"#8a8278","glasses":true},"clue":"<b>Uhri.</b> Hänet löydettiin <b>Terassilta</b>, <b>aurinkovarjon</b> vierestä – yksin murhaajan kanssa.","job":"kiinteistökehittäjä, joka halusi jäätelökahvilan","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Vitale\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f3b4c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1c8a5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1c8a5\"/><path d=\"M26 30 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#8a8278\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#8a8278\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#8a8278\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"guest","constraints":[{"type":"area","areas":["Terrace"]},{"type":"beside","obj":"umbrella"}]}],"victim":"V","murderer":"A","solution":{"B":[1,3],"C":[2,2],"V":[3,5],"D":[4,4],"A":[5,1]},"walkthrough":[{"place":["D"],"cand":{"A":[[5,1],[5,2],[5,3]],"B":[[1,3],[2,2]],"C":[[2,2]]},"text":"Aloita lausunnosta, joka jättää vähiten ruutuja. Dafne oli polkupyörän vieressä (R4C5, Puutarhassa). ”Vieressä” tarkoittaa viereistä ruutua samalla alueella: sen yläpuolella oleva R3C5 kuuluu Terassiin ja alapuolella oleva R5C5 on kukkapenkki, joten jäljelle jää vain R4C4. <b>Dafne on ruudussa R4C4</b> – yliviivaa rivi 4 ja sarake 4."},{"place":["C","B"],"cand":{"A":[[5,1]]},"text":"Corrado oli Salissa ja istui tuolilla. Salissa on kaksi tuolia, R2C2 ja R4C1, ja rivi 4 on Dafnen: <b>Corrado on ruudussa R2C2</b>. Brigida oli pöydän (R2C3) vieressä. Sen viereiset ruudut Salissa ovat R1C3 ja R2C2 (R2C4 ja R3C3 kuuluvat Terassiin), ja R2C2 on Corradon: <b>Brigida on ruudussa R1C3</b>."},{"place":["A"],"cand":{},"text":"Arturo oli alimmalla rivillä. R5C5 on kukkapenkki, ja sarakkeet 2, 3 ja 4 on jo otettu: <b>Arturo on ruudussa R5C1</b>."},{"final":true,"text":"Tapaus ratkaistu: viimeinen vapaa ruutu, R3C5, on uhrin – Terassilla, aurinkovarjon vieressä, aivan kuten hänen korttinsa kertoo, vaikka emme koskaan tarvinneet sitä. Vitale oli siellä yksin viereisen hotellin omistajan kanssa. <b>Arturo on murhaaja!</b>"}],"solver":{"rules":[],"occupiable":["bench","chair"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-29"}}