LinkedSnek
Ett tidigt Unity/C#-projekt med länkade datastrukturer, hex-grid, breadth-first-search-pathfinding och ett fungerande AI/autopilot-läge.
Projektkontext
LinkedSnek var en individuell Unity/C#-kursuppgift med fokus på datastrukturer och algoritmer. Jag byggde senare vidare på projektet med ett självständigt AI/pathfinding-experiment på samma game board.
Projektet använder Unity 2020.3.16f1 och representerar spelet på ett hex-grid i stället för ett traditionellt fyrkantigt Snake-board.
Vad jag implementerade
Jag skrev GridScript, Snek och SeekerScript. Grid:en använder cube coordinates (q, r och s, där q + r + s = 0) och stödjer movement i hex-grid:ens sex riktningar tillsammans med boundary handling.
Snake-kroppen representeras som rekursivt länkade Snek-komponenter. Movement propageras genom de länkade segmenten och growth skapar och länkar ytterligare segment.
BFS-pathfinding och AI/autopilot
Jag implementerade breadth-first search med early exit från snake-positionen till food-målet. Sökningen lagrar besökta noder i en cameFrom-map och gör path reconstruction när målet har nåtts.
Under utvecklingen hade LinkedSnek ett färdigt, fungerande AI/autopilot-läge som använde denna BFS-pathfinding för att navigera snake mot food. I den bevarade repository-snapshoten är den slutliga SnekAutoPilot-integrationen kommenterad, medan BFS- och path-reconstruction-implementationen finns kvar i SeekerScript. Autopiloten ska därför beskrivas som ett färdigt läge som fungerade under utvecklingen, inte som ett permanent aktiverat eller default gameplay mode.
Source
Den historiska implementationen finns i det publika GitHub-repot.