Minecraft technicznie.

W kilku poprzednich postach dotyczących gry Minecraft napisałem (LINK oraz LINK) o rozległym świecie i nieskończonej mapie.

Okazuje się iż mapa jest skończona co tylko potwierdza wielkość gry🙂

Nie będę kopiował z Wiki tekstu, nie ma dużo czytania więc dla chętnych LINK.

Gier opierających się na generowaniu alternatywnego, realistycznego świata jest kilka. Na pewno można tak traktować Second Life chociaż po 15 minutach tym walnąłem więc nie jestem kompetentny aby się wypowiadać.

Wspólnym mianownikiem są :

  • nie może być mowy o żadnych celach (gracz sam decyduje o sobie)
  • musi być jak najmniej ograniczeń o sztucznej naturze
  • wachlarz możliwych zachowań musi być jak największy

Nie są to więc gry w sensie dokładnego rozumienia. Nie przeszkadza to jednak temu aby były zabawne.

Minecraft tworzony jest w jawie co ma jedyny minus w tym iż jest niewydajny. Cała reszta to plusy. Gra pójdzie na wszystkim co ma jawę. Język wysokiego poziomu użyty do pisania kodu daje łatwe możliwości modyfikowania jak i poprawiania.

Minecraft ma szanse stać się kompletną symulacją świata chociaż zapewne musi minąć dużo czasu a i wymagania takiego systemu były by kosmiczne.

Już pojawiają się problemy gdy gracze próbują niszczyć plansze przez projektowaniu „wybuchów nuklearnych”.  Jak kompleksowy system stoi za fizyką wybuchu można przeczytać TUTAJ.

A to film pokazujący efekty. Ciekawe jaką moc miał komp🙂

Oczywiście są nieścisłości. Na przykład, samotne klocki mogą wisieć w powietrzu bez zamocowania. Jest to do zrobienia ale system sprawdzający osypywanie zajmowałby pewnie moc jednego porządnego rdzenia CPU. Oczywiście nie każdy klocek tak może. Piasek i żwir się osypują po jakimkolwiek kontakcie (do tego czasu pozostają w zawieszeniu) Zielone części drzew znikają po ścięciu przypisanego im fragmentu pnia. Jenak możliwości rozwojowe przeważają te wady. System cieczy nie bazuje zaś na naszej rzeczywistości ale jest dosyć zrozumiały.

Kolejnym aspektem niejako zostawionym jest SI.

Swego czasu projektowałem (pozostało to w fazie czysto papierowej i już się raczej nie zmieni) coś podobnego do MC. Aplikacja bazująca na grze w życie z tym że : zdefiniowany jest świat (jak w MC chociaż budowy blokowej nigdy nie brałem pod uwagę) bazujący na rzeczywistym, osobniki bazują na prostej sieci neuronowej.

Nawet w MC można stworzyć kulę ziemską pod warunkiem zmiany bloków kwadratowych na ostrosłupy ścięte. O ile teoretycznie jest to ok, w praktyce rozmiar skrajnie wewnętrznych figur musiał by być nieskończenie mały. Oczywiście tworzyło by to realistyczne odwzorowanie gęstości w zależności od głębokości ale na to pewnie poszły by kolejne 2 rdzenie CPU.

Budowa SI na bazie sieci neuronowej z opcją uczenia przekroczyła cokolwiek dostępnego technicznie wtedy a i teraz jest to nadal teoria (chociaż gdyby ktoś miał jakiś superkomputer🙂 ) przez wzgląd na skokowy przyrost danych w każdej iteracji.

Zresztą problem SI jest do tej pory nierozwiązany. Co prawda „nauka” systemów na zasadzie  if…then okazałą się niewypałem, ale pomimo udowodnienia poprawności założeń sieci neuronowych, również tu nie udało się zbudować czegoś rozsądnego.

Aktualnie w MC stwory bazują na najprostszych zachowaniach.

  • Neutralne są neutralne dopóki ich nie zaatakujemy. Wtedy uciekają.
  • Wrogie atakują gdy gracz wejdzie w pole widzenia (przy czym nie widzą przez przeźroczyste bloki)
  • Zombie wykazują podstawowe zachowanie poprzez próbę wyważania  znalezionych drzwi.
  • Endermany reagują na wzrok gracza (najechanie celowniczkiem na postać stwora)

Brak zaawansowanych skryptów to jedno, chwilowo stwory nie maja nawet sprawnej pamięci. Pająk w dzień nie atakuje jeśli nie zostaje zaatakowany. Widząc gracza reaguje poprzez zauważenie i oglądanie go, po czym odchodzi, by po ponownym obejrzeniu znowu zareagować na tego samego gracza (nawet jeśli nie wykonał żadnego poruszenia). Tak samo Enderman. Rozzłoszczony atakuje ale wystarczy zmusić go do warunkowej teleportacji (nie związanej z atakiem na gracza) aby status wrogi zamienił się ponownie na neutralny.

Na dzisiaj tyle🙂

One thought on “Minecraft technicznie.

  1. Pingback: Zagrywamy się :) | Niecodziennik

Możliwość komentowania jest wyłączona.