From cd93ccb063b7da8d595bf8bc53ed72291d4fb751 Mon Sep 17 00:00:00 2001
From: Jakub Pelc <jakub.pelc@email.cz>
Date: Thu, 6 Mar 2025 15:22:54 +0100
Subject: [PATCH] =?UTF-8?q?Form=C3=A1t=20debugovac=C3=ADho=20v=C3=BDstupu?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 specifikace.md | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/specifikace.md b/specifikace.md
index 3b3dccd..694ab63 100644
--- a/specifikace.md
+++ b/specifikace.md
@@ -128,6 +128,19 @@ Všimněte si, že simulace má několik neintuitivních zjednodušení a vlastn
 
 Dále, pro detekci průsečíku lodi s asteroidem či cílem schválně používáme `euclidean_distance`, která má odmocninu zaokrouhlenou dolů.
 Sice by kolize šly počítat exaktně pomocí druhých mocnin vzdálenosti, ale v okrajových případech bychom naráželi na limity velikosti čísel.
+Dejte pozor, že toto neexaktní počítání kolizí je třeba implementovat i do akcelerační struktury pro hledání blízkých asteroidů a cílů,
+pokud nějakou budete používat.
 
-Naše rustová (vyhodnocovadlo) i typescriptová (webová vizualizace) implementace používá místo exaktní `isqrt` klasickou float64 odmocninu, kterou poté zaokrouhlí dolů na celé číslo.
+Naše rustová (vyhodnocovadlo) i typescriptová (webová vizualizace) implementace používá místo exaktní `isqrt` klasickou "float64" odmocninu, kterou poté zaokrouhlí dolů na celé číslo.
 Pro rozsahy hodnot relevantní v této úloze dávají obě funkce stejné výsledky.
+
+#### Debugování pomocí webové vizualizace
+
+Do [webové vizualizace](https://kvaleya.gitlab.io/asteracer/) můžete nahrát svou sadu instrukcí, kterou stránka poté vyhodnotí.
+Pro debugování se může hodit stáhnout si z ní "záznam simulace" následujícího formátu:
+
+Záznam obsahuje jeden řádek pro každou vstupní instrukci.
+Každý řádek popisuje stav světa po vykonání dané instrukce.
+První dvě čísla jsou X a Y pozice lodi, třetí a čtvrté číslo je X a Y rychlost lodi.
+Poté následuje několik jedniček nebo nul, kdy každá odpovídá jednomu cíli.
+Pokud už byl v simulaci daný cíl dosažen, má hodnotu 1, jinak má hodnotu 0.