← Powrót do strony głównej

Historia Advent of Code 2021


Advent of Code 2021 opowiada historię poszukiwań kluczy do sań, które wpadły do oceanu po tym, jak jeden z elfów potknął się i przypadkowo je upuścił! Aby je odnaleźć, wsiadasz do łodzi podwodnej elfów (oczywiście ozdobionej lampkami bożonarodzeniowymi) i schodzisz w głębiny oceanu, napotykając po drodze różne przeszkody techniczne i naturalne.


Przebieg fabuły


Dzień 1-4: Początek podwodnej wyprawy[1]


Gdy tylko alarm za burtą się włącza, wskakujesz do łodzi podwodnej elfów przygotowanej na takie sytuacje. Łódź ma eksperymentalną antenę, która powinna być w stanie namierzyć klucze, jeśli tylko wzmocnisz jej sygnał wystarczająco mocno - jest mały wskaźnik pokazujący siłę sygnału przez wyświetlanie 0-50 gwiazdek. Aby uratować Święta, musisz zdobyć wszystkie 50 gwiazdek do 25 grudnia.


Łódź automatycznie wykonuje skan sonarem dna morskiego. Musisz przeanalizować pomiary głębokości, aby zrozumieć, jak szybko głębokość wzrasta.


Następnie musisz nauczyć się pilotować łódź podwodną - system rozumie komendy typu "forward", "down", "up". Łódź wydaje dziwne skrzypienia, więc prosisz o raport diagnostyczny, który pokazuje zużycie energii wyrażone w liczbach binarnych.


Już prawie 1.5 km pod powierzchnią oceanu spotykasz gigantyczną kałamarnicę, która przyczepiona jest do zewnętrznej strony łodzi! Może chce zagrać w bingo? Łódź ma podsystem bingo, który pomaga pasażerom zabić czas - musisz zdecydować, która plansza wygra pierwsza.


Dni 5-9: Podwodne niebezpieczeństwa


Natrafiasz na pole ujść hydrotermalnych na dnie oceanu! Tworzą wielkie, nieprzezroczyste chmury - najlepiej ich unikać. Musisz przeanalizować mapę linii ujść.


Dno morskie staje się bardziej strome. Może klucze poniosło w tym kierunku? Przelatuje masowy ławica świecących latarników (lanternfish) - rosną one eksponencjalnie szybko! Musisz zamodelować ich wzrost populacji.


Wielki wieloryb uznał, że łódź podwodna to jego następny posiłek i jest znacznie szybszy od ciebie! Nagle pojawia się rój krabów (każdy w swojej małej łodzi podwodnej), którzy przylatują, aby cię uratować! Przygotowują się do wysadzenia dziury w dnie oceanu - sensory wskazują masywny system jaskiń pod nimi. Kraby muszą się wyrównać, aby mieć wystarczającą moc do wysadzenia wystarczająco dużej dziury.


Ledwo docierasz do bezpieczeństwa jaskini, gdy wieloryb uderza w wejście, powodując zawalenie. Sensory wskazują inne wyjście z jaskini na znacznie większej głębokości - musisz iść dalej.


Wyświetlacze siedmiosegmentowe w łodzi są uszkodzone - muszą zostać naprawione podczas ucieczki, inaczej będziesz w kłopotach.


Dni 10-13: Głębiej w jaskinie


Prosisz łódź o znalezienie najlepszej trasy z jaskini, ale odpowiada tylko: "Błąd składni w podsystemie nawigacji w linii: wszystkie". Cała nawigacja jest uszkodzona! Musisz znaleźć skorumpowane linie kodu.


Wchodzisz do dużej jaskini pełnej rzadkich bioluminescencyjnych ośmiornic dumbo! Nie lubią lampek choinkowych na łodzi, więc je wyłączasz. Może mógłbyś nawigować przez jaskinię bez przeszkadzania ośmiornicę, gdybyś przewidział, kiedy błyski światła się wydarzą?


Dzięki subsystemom podpowierzchniowym łodzi działającym suboptymalne, jedynym sposobem na wydostanie się z jaskini jest znalezienie wszystkich ścieżek przez system jaskiń. Musisz zbudować mapę połączeń między jaskiniami.


Docierasz do kolejnej wulkanicznie aktywnej części jaskini. Byłoby miło móc zrobić termowizję, aby wiedzieć, które jaskinie są zbyt gorące. Na szczęście łódź jest wyposażona w kamerę termiczną! Aby ją aktywować, musisz wpisać kod z podręcznika - okazuje się, że strona 1 to duży arkusz przezroczystego papieru z punktami i instrukcjami origami.


Dni 14-19: Wzmacnianie łodzi i dekodowanie


Niewiarygodne ciśnienie na tej głębokości zaczyna obciążać łódź. Łódź ma sprzęt polimeryzacyjny, który mógłby wyprodukować odpowiednie materiały do wzmocnienia łodzi. W pobliskich jaskiniach wulkanicznych powinny być niezbędne elementy. Musisz znaleźć optymalną formułę polimeru.


Ściany jaskini zbliżają się. Łódź ledwo się mieści - głównym problemem jest to, że ściany są pokryte chitonami (skorupiaki), najlepiej ich nie dotykać. Musisz znaleźć ścieżkę z najniższym całkowitym ryzykiem przez jaskinię.


Gdy opuszczasz jaskinię i docierasz na otwarte wody, otrzymujesz transmisję od elfów z powrotem na statku. Została wysłana za pomocą BITS (Buoyancy Interchange Transmission System) - systemu pakowania wyrażeń numerycznych w sekwencje binarne. Musisz zdekodować wiadomość.


Ostatecznie dekudujesz wiadomość elfów. Mówi: "HI". Kontynuujesz poszukiwanie kluczy sań. Przed tobą jest coś, co wygląda na wielką rysę oceaniczną. Może klucze wpadły tam? Lepiej wyślij sondę, aby zbadać.


Schodząc w dół rysy oceanicznej, napotykasz ślimaki morskie (snailfish). Mówią, że widziały klucze do sań! Powiedzą ci nawet, w którym kierunku poszły, jeśli pomożesz jednemu z mniejszych ślimaków z jego zadaniem domowym z matematyki.


Po drodze w dół, sonda wypuściła zestaw beaconów i skanerów do wody. Trudno się nawigować w kompletnej ciemności otwartych wód rysy oceanicznej, ale jeśli zbudujesz mapę rysy używając danych ze skanerów, powinieneś być w stanie bezpiecznie dotrzeć na dno.


Dni 20-23: W dół rysy oceanicznej


Gdy skanery są w pełni rozstawione, kierujesz ich uwagę na mapowanie dna rysy oceanicznej. Gdy otrzymujesz obraz ze skanerów, wygląda na losowy szum. Może możesz połączyć algorytm ulepszania obrazu i obraz wejściowy, aby go trochę oczyścić?


Nie ma zbyt wiele do roboty, gdy powoli schodzisz na dno oceanu. Komputer łodzi podwodnej rzuca ci wyzwanie w miłej grze Dirac Dice.


Działanie na tych ekstremalnych głębokościach oceanicznych przeciążyło reaktor łodzi - musi być zrestartowany. Musisz ustawić wszystkie kostki reaktora 3D na włączone lub wyłączone zgodnie z listą kroków restartu.


Grupa amfipodów zauważa twoją wymyślną łódź podwodną i cię zaczepia. "Z taką imponującą powłoką z pewnością możesz nam pomóc z pytaniem, które zdumiało naszych najlepszych naukowców". Grupa nieśmiałych, upartych amfipodów żyje w pobliskiej norze. Chcą metody zorganizowania każdego amfipoda w bocznych pomieszczeniach, używając minimalnej energii.


Dni 24-25: Finał - dno oceanu


Magiczny dym zaczyna wyciekać z jednostki logicznej arytmetycznej łodzi (ALU). Bez możliwości wykonywania podstawowych operacji arytmetycznych i logicznych, łódź nie może tworzyć fajnych wzorów z lampkami bożonarodzeniowymi! Nie może też nawigować. Ani uruchomić systemu tlenowego. Na szczęście prawdopodobnie masz wystarczająco dużo tlenu, aby zbudować nowy ALU. Gdy zbudujesz zamiennik, musisz go przetestować, walidując numer modelu łodzi podwodnej za pomocą programu MONAD.


Finał: Dzień 25 - Ogórki morskie


To jest to: dno rysy oceanicznej, ostatnie miejsce, gdzie mogą być klucze do sań! Eksperymentalna antena łodzi wciąż nie jest wystarczająco wzmocniona, aby wykryć klucze, ale muszą tu być. Wszystko, co musisz zrobić, to dotrzeć na dno morskie i je znaleźć.


Przynajmniej dotknąłbyś dna morskiego, gdybyś mógł - niestety, jest ono całkowicie pokryte przez dwa duże stada ogórków morskich i nie ma wystarczająco dużej otwartej przestrzeni dla twojej łodzi podwodnej.


Ogórki morskie poruszają się w idealnie prostych liniach, poruszając się naprzód tylko wtedy, gdy jest na to miejsce. Musisz przewidzieć, kiedy będziesz mógł wylądować swoją łodzią - symulując ich ruchy krok po kroku, aż przestaną się poruszać i zrobią miejsce dla twojej łodzi!


Podsumowanie


Historia 2021 roku to opowieść o podwodnej misji ratunkowej kluczy do sań Świętego Mikołaja, które wpadły do oceanu. Musimy pomóc w pilotowaniu łodzi podwodnej, naprawianiu jej uszkodzonych systemów (nawigacja, wyświetlacze, reaktor, ALU), unikaniu niebezpieczeństw oceanicznych (wieloryby, ujścia hydrotermalne, chitony), rozwiązywaniu zagadek z mieszkańcami oceanu (kałamarnice, latarniki, kraby, ślimaki, amfipody, ogórki morskie) i ostatecznie dotarciu na samo dno rysy oceanicznej Mariany, by odnaleźć zagubione klucze i uratować Święta Bożego Narodzenia!


← Powrót do strony głównej