Bug-w-kodzie

Bugi które stworzyły gry – czyli jak jeden robak może zmienić koncepcję

Niedawno gdy znalazłem pięć minut dla siebie zacząłem przeglądać co w streamach piszczy. Wertowałem jeden kanał po drugim, gdy w pewnym momencie padło słowo „bug”. Może to mało odkrywcze, jednak gdzieś z tyłu głowy „zaswędziało” mnie to słowo. Kiedy chciałem sprawdzić etymologię tego słowa, natrafiłem na skarbnicę ciekawostek…

„Pierwsza” pluskwa na świecie

Bug (czyt. bag) – błąd/usterka w programie powodująca jego nieprawidłowe działanie, wynikająca z błędu ludzkiego na etapie projektowania lub tworzenia kodu źródłowego. No dobrze. Kiedy już sobie wytłumaczyliśmy czym jest bug, pora odpowiedzieć na kolejne pytanie. Co ma wspólnego pluskwa z programowaniem? No więc… zacznijmy od początku.

Na pewno musimy cofnąć się do XX wieku, a dokładnie 9 września 1947 roku, kiedy podczas pracy na komputerze Harvard Mark II jeden z operatorów (William Burke) stwierdził nieprawidłowości w pracy komputera. William szukając przyczyny spięcia natrafił na ćmę. „Usterka” została szybko usunięta i wklejona do dziennika z wpisem przypisywanym admirał Grace Hopper. I w ten oto (ponoć) sposób bug stał się bugiem. A dlaczego ponoć?

Ponieważ:

  1. Niektóre źródła negują udział Pani Hopper w tej historii,

  2. Istnieje podejrzenie, że słowo to, przeszło z żargonu telekomunikacyjnego.

Nawet jeśli ta historia jest prawdziwa to, czy to był jedyny bug, który mógł zapisać się na kartach video historii? Odpowiedź brzmi: nie!

Pierwszy-bug-komputerowy

Atomowy Gandhi - od spokojnego starca po bezwzględnego psychopatę

A jeśli nie wiecie o co chodzi, to chodzi o Mahatma Gandhi’ego. Tak! Autentycznie, wystarczył jeden bug, aby tego potulnego starca w pseudo „lenonkach” zamienić w zbrodniarza wojennego, jakiego by się nie powstydził niejeden komunista. Mowa tu o jednej z pierwszych odsłon Civilization i o tym, co zrobił zwykły błąd… Pokrótce: otóż współczynnik agresywności Indii od początku gry wskazywał 1. W momencie, gdy nacja Hindusów przyjmie ustrój demokratyczny, mechanika gry obniża współczynnik o 2 punkty. Na pierwszy rzut oka nie ma w tym nic dziwnego. Do czasu… Gra zamiast przyjąć wartość równą 0, przyjmuje wartość ujemną, a licznik w magiczny sposób zostaje „przekręcony” (i tu zaczyna się zabawa). Cały „wic” polega na tym, że Gandhi przyjmuje najwyższy wskaźnik agresywności, czyli 255 pkt. Tym samym nasz wysłannik pokoju zamienia się w jeźdźcę apokalipsy i z pasją wykorzystuje przy każdej możliwej sytuacji bomby atomowe.

swiat-jest-problemem-atomowki-sa-rozwiazaniem

Co ciekawsze studio MicroProse przyjęło ten błąd z dużym dystansem, a sam bug spotkał się z aprobatą wśród graczy. Oczywiście niedociągnięcie zostało naprawione, jednak aby upamiętnić ten moment, w następnych odsłonach przydzielono Gandhiemu bonus do rozwoju programu nuklearnego.

Poziom trudności – przypadek czy dodatek?

Dobre pytanie. Jak to było na początku? Rok 1978, era automatów (takich lodówek gdzie wrzuca się odpowiednio wyżłobioną monetę), a na maszynach króluje „Space invaders”. Gra na tamte czasy dość „wymagająca”, jeśli chodzi o pracę i parametry podzespołów. Przez co moc obliczeniowa maszyn była zbyt słaba, aby ”udźwignąć” tego wariata. Co zadecydował Pan Tomohira Nishikada? Powiedział – Nie ma bata! Zbuduję sobie automat. I nie zgadniecie co ten Japończyk mógł zrobić? Zrobił automat… Wracając do gry, to sama rozgrywka była prosta. Sterujemy statkiem kosmicznym, którym mamy za zadanie strzelać do powoli zbliżających się kosmitów. Powoli… I tu pies pogrzebany! Z początku wydaje się to proste – latamy i strzelamy. Ale, ale… Im więcej obcych ustrzelimy tym coraz szybciej będą zbliżać się w naszą stronę. Specjalny zamysł? Nie bardzo! Szkopuł tkwił w samej maszynie i jej możliwościach obliczeniowych. Na początku gry, kosmitów jest tak dużo, że komputer nie jest w stanie renderować obcych. Jednak im więcej obiektów zestrzelimy, tym komputer coraz lepiej radzi sobie z renderowaniem przeciwnika, co doprowadza do stopniowego przyspieszania rozgrywki. Możemy to potraktować pół żartem, pół serio, ale w taki sposób narodził się stopień trudności w grach.

space-invaders

Jak żyć bez combosów, to już lepiej nie żyć!

Tutaj bierzemy na tapet Street Fighter. Grę wydaną przez studio Capcom w 1987 roku. Czemu Street Fighter? Ano dlatego, że wśród jej twórców znajduje się Ojciec znanych i lubianych po dziś Combosów. I nie byłoby w tym nic dziwnego, gdyby nie fakt, że to jeden z bugów! Tak! Noritake Funamitsu testując drugą część Street Fighter’a zauważył, że przy wystarczająco szybkim naciskaniu ataków postać jest w stanie oddać więcej ciosów. Uznał jednak, że nikt nie zauważy tego błędu oraz nie będzie on wykorzystywany. Ekhem… Muka! Gracze od razu podłapali patent na specjalne ataki, a sam bug tak mocno zakorzenił się w mechanikach ataków, że dzisiejszy świat gier bez combosów byłby ciągłym męczeniem jednego przycisku.

Jak widzimy los bywa przewrotny. Czasem najdrobniejszy błąd może być początkiem czegoś ważnego. Czegoś, co nada pewnego rodzaju charakteru. Wynikiem błędu, który stanie się nieodzowną częścią każdej gry. Zatem, czy błędy popełnione przez Nishikade lub Capcom, które wpisały się w schemat gier video, możemy rzeczywiście nazwać błędami?

Dziękuję, że poświęciliście swój czas na przeczytanie tego artykułu.

Zachęcam Was również do kupowania gier korzystając z tego linka: https://www.g2a.com/n/blogame

Pozdrawiam.

Write a comment