Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

#gamedev

Kosmonauta

w Indyki

10piorunów

Z dziennika indie developera:

Godzina 01:40.
W końcu skończyłem tworzyć bibliotekę open-source do tworzenia drzew behawioralnych dla silnika Defold.
Pewnie nie mówi Ci to zbyt wiele dzienniczku, ale nie przejmuj się, mi też.

Efekty widać na wideo.
def-behavior-tree - Defold library for creating complex AI behaviors (youtube.com)

Pewnie zapytasz co tam się dzieje? Otóż normalnie tym stateczkiem steruje gracz, ale tutaj, wszystkim steruje podstępne AI (ale nie takie jak te całe czaty gpt), to takie zwykłe NPC jak w grach które znasz.
Te całe okienko po prawej pokazuje aktywne zadania wykonywane na drzewie.
Statek tańczy jak by dostawała pierdolca, dopóki meteoryt nie pojawi się zbyt blisko.
Wtedy zaczyna strzelać, ale tak leniwie, pojedyncze strzały, więcej mu się nie chce.
No chyba, że do jaśnie pana podleci więcej meteorytów, jak ich będzie więcej niż 3, to wtedy zaczyna napierdalać z laserka jeb jeb jeb.
To wszystko sprawdza sobie w tym drzewku behawioralnym.

Po przerobieniu sobie tej całej biblioteki, w końcu mogę normalnie zapisywać ostatnie zachowanie NPC i je wczytywać.
Wcześniej to nie było możliwe. Dlatego oficjalnie mogę etap zapisywania i wczytywania stanu prototypu mojej gry.

Dobranoc

     

Pokaż więcej komentarzy (2)

Gruba ryba

w Sztuka Sprawiedliwa

28piorunów

Dev update: zaczynam z wnętrzem Stonki, wystarczająco zajebane paletami?

Gruba ryba0piorunów

powinieneś poustawiać regały tak, żeby tworzyły labirynt bez wyjścia (´・ᴗ・ ` )

Pokaż więcej komentarzy (10)

Gruba ryba

w Sztuka Sprawiedliwa

17piorunów

Dev update: Demko zostało pobrane 20 razy (https://mrgerwant.itch.io/wir-sprawiedliwosci-demo btw ( ͡° ͜ʖ ͡°) )

Pokaż więcej komentarzy (23)

Tytan

w Ciekawostki

35piorunów

Witam w trzecim poście z cyklu 😉

Dziś zajmiemy się czymś, czego nie widać, chodząc po mieście, ani grzebiąc w archiwalnych bazach. Dziś pomówimy o... grach komputerowych. Otóż DNA Łodzi można znaleźć w wielu produkcjach, o których nie mieliście nawet pojęcia.

1. Zaczniemy od Wiedźmina, który jest łodzianinem z krwi i kości. To tutaj urodził się i mieszka do dziś Andrzej Sapkowski, autor całej serii książek o Wiedźminie. Stąd pochodzi także jeden z twórców CD Projekt, tutaj także powstawał pierwszy Wiedźmin, a CD Projekt RED, którego dopisek jest nawiązaniem do ceglanej estetyki całego miasta (patrz logo w komentarzu), miał pracownię w Łodzi, przy ulicy Traktorowej. Dziś w mieście znajduje się Skwer Wiedźmina, na którym mają stanąć pomniki bohaterów gry, a jeden z największych polskich murali (zdjęcie), przedstawiający właśnie Geralta, znajduje się w samym centrum miasta.
2. Wpływ Łodzi na CD Projekt nie zakończył się też na tym. Za dobór muzyki do Cyberpunka 2077 odpowiadał lider łódzkiego zespołu Cool Kids of Death, Krzysztof Ostrowski. Wybrał on też łódzkich artystów do stworzenia niektórych utworów, które dziś znamy w grze.
3. Cool Kids of Death, powstały w Łodzi, jest także odpowiedzialny za muzykę do This War of Mine.
4. Gra Medieval Dynasty, wieloletni hit Steama (polecam serdecznie, gra mnie wciągnęła na kilkaset h), jest grą stworzoną przez łódzkie studio Render Cube, które dzięki jej sukcesowi na całym świecie, utorowało sobie drogę na rynek giełdowy. Łódź nie jest im obojętna, gdyż w grze jest kilka nawiązań do miasta, chociażby w fabularnej opowieści o dalekim mieście Navis (z łac. Łódź).
5. W grze DMC: Devil May Cry, twórcy gry wykorzystali łódzki mural pt. "Dziewczyna w kąpieli" (ul. Pomorska 67).
6. Twórcy serii gier Farm Manager, firma Cleversan Software, wywodzą się z inkubatora łódzkiego parku technologicznego Bionanopark.
7. Także z miasta Łodzi wywodzi się gra SUPERHOT, która zdobyła popularność na świecie.
8. Tank Mechanic Simulator również powstało w siedzibie łódzkiej firmy DeGenerals.
9. Jedna z esportowych map do gry Counter Strike: Global Offensive, została zlokalizowana w Hi Piotrkowska — najwyższym łódzkim biurowcu. Odpowiada za to firma Erbud, wykonawca budowlany tego obiektu.
10. Firma Epic Games, znana wszystkim nie tylko z gry Fortnite, dwa lata temu otworzyła biuro właśnie w Łodzi. Stało się to we współpracy z firmą Studio Plastic, która w kooperacji z Sony stworzyła takie gry na PlayStation jak Bound, Datura, czy Linger in Shadows, a w kooperacji z CD Projekt RED także za edukacyjną grę dla odwiedzających Centrum Komiksu i Narracji Interaktywnej w słynnym EC1.
11. Dziś posiadająca siedzibę w mieście, lecz pochodząca ze Smardzewa koło Łodzi, powstała firma Wastelands Interactive, odpowiadająca wraz z łódzkim Big Cheese Studio S.A. za Cooking Simulator.

Jeśli zapomniałem o czymś, piszcie w komentarzach. W nich załączam również zdjęcia powiązane z ww. grami.

Pokaż więcej komentarzy (6)

Gruba ryba

w Sztuka Sprawiedliwa

15piorunów

Dev update: jak ktoś już pobrał demko to wstawiłem nową wersję bo był drobny bug z portretami drużyny po wczytaniu z sejwa https://mrgerwant.itch.io/wir-sprawiedliwosci-demo

Pokaż więcej komentarzy (11)

Gruba ryba

w Sztuka Sprawiedliwa

26piorunów

Dev update: sklep już działa (przynajmniej Ropuszka, wnętrz Stonki i Monopolowego nie robiłem jeszcze) https://youtu.be/OsSoaFZCNno

Pokaż więcej komentarzy (6)

Gruba ryba

w Sztuka Sprawiedliwa

18piorunów

Dev update: zaimplementowałem kupowanie przedmiotów, ale jeszcze nie działa - widzę pusty ekwipunek sklepu.
P.S. Przeszedłem to co jest gotowe ze stoperem w ręku i stąd wynika, że gejpleju jest na około 25 minut - wystarczy na demko?

Osobistość1piorunów

Dodaj do sklepu możliwość zakupu dildosa. Fajna byłaby też możliwość kupna kondonów i możliwość ich nadmuchania jak baloniki xd

Pokaż więcej komentarzy (2)

Gruba ryba

w Sztuka Sprawiedliwa

20piorunów

Ekspedientka z ropuszki

Gruba ryba0piorunów

Płacę żappsami. Poproszę 4 duże torby ze sztosów (na ekwipunek) i kartę podatkową HaloMed na wszelki wypadek (hp) xd

Pokaż więcej komentarzy (3)

Gruba ryba

w Sztuka Sprawiedliwa

32piorunów

Dev update: wnętrze Ropuszki

Fanatyk1piorunów

Bo powiem ci panie jak skończysz i będzie to coś w stylu south park magic stick to się nawet może sprzeda

Pokaż więcej komentarzy (9)

Gruba ryba

w Hydepark

20piorunów

najważniejsza półka w sklepie

Pokaż więcej komentarzy (7)

Gruba ryba

w Sztuka Sprawiedliwa

22piorunów

Dev update: zacząłem dodawać nowe opcje dialogowe do pierwszego głównego questa, ale jeszcze okazało się, że wprowadzenie zapisu i odczytu posuło zaliczanie misji, więc musiałem to naprawiać (już działa). Bonus: pod poprzednim postem w komentarzu napisałem, że nie ma dużej różnicy pomiędzy ustawieniami grafiki, w budynkach jednak jest. Załączam screeny

Gruba ryba1piorunów

Wyskoczył jeszcze błąd, który powoduje, że nie zalicza się cel zadania, który wymaga ukończenia innego zadania, ale jeszcze nie wiem co tam jest nie tak

Gruba ryba0piorunów

naprawiłem - przy okazji, levele wbijają się trochę za szybko, zmniejszyłem przyznawanie expa za cele zadań ze 100 do 50

Pokaż więcej komentarzy (2)

Gruba ryba

w Sztuka Sprawiedliwa

25piorunów

Dev update: zrobiłem menu ustawień

GURU23piorunów

Jak się zwiększy rozdzielke za wysoko to powinnien się pokazywać wir i crush gry, wiadomo ze jak ktoś gra na większej niż stare dobre hd to złodziej chciwy.

Pokaż więcej komentarzy (4)

Gruba ryba

w Sztuka Sprawiedliwa

34piorunów

Dev update: zrobiłem jeszcze menu pauzy (i quicksave/quick load z klawiatury, ale nie pokazuję na filmiku) https://streamable.com/pie7hh

Pokaż więcej komentarzy (6)

Gruba ryba

w Sztuka Sprawiedliwa

26piorunów

Dev update: zrobiłem dojebany ekran tytułowy https://streamable.com/lk4ai9

Fanatyk6piorunów

@MrGerwant - musi być mini-gra o trzymaniu latarki Januszowi przez Pjotera przy naprawianiu Passata.

Pokaż więcej komentarzy (12)

Lider

w Diffle

10piorunów

hehe

Pojawiło się pytanie o to jak działają hashe w linkach. A siedziałem cicho, bo kogo to interesuje. A ja szczerze bardzo zadowolony jestem jak to działa i tylko czekałem. dx

@Heheszki zwrócił uwagę, że te same hasła mają ten sam koniec. To prawda.

Wczorajszy (niedzisiejszy) wynik:
https://deykun.github.io/diffle-lang/pl?r=QIpUTYtUWbl5SM2UWLllGcuQDZk1iclRnL0gDOtMXYr5CMuITMuEjLxEjL2gTMtQXeyVWblhSI

Jego hash:
QIpUTYtUWbl5SM2UWLllGcuQDZk1iclRnL0gDOtMXYr5CMuITMuEjLxEjL2gTMtQXeyVWblhSI

Wchodzimy np. **https://onlinestringtools.com/reverse-string**i odwracamy kod:
IShlbWVyeXQtMTg2LjExLjEuMTIuMC5rYXMtODg0LnRlci1kZDQucGllLWU2MS5lbWUtYTUpIQ

Dekodujemy bash64 np. **https://www.base64decode.org/** i dostajemy:
!(emeryt-186.11.1.12.0.kas-884.ter-dd4.pie-e61.eme-a5)!

Jak ktoś da za krótki link to mu urwie hasło i wyświetli “Niestety ten link wygasł lub jest uszkodzony.” @Felonious_Gru czasami wstawia takie linki dając spacje. !( i )! są z tego samego powodu.

Co znaczą części
emeryt - hasło

186 - dzień roku
jeśli ktoś przestawi godzinę i wrzuci to jak zobaczy, że my mamy 185 dzień i to jutrzejsze hasło to zamiast spoilerów jest “Ten link powinien wkrótce działać".

11 - prawidłowych
1 - w złej pozycji
12 - nieprawidłowych
0 - wpisanych jako nieprawidłowe
Te liczby nie są wyświetlane w rezultacie, po nich są słowa i dla hasła emeryt i słów dalej jest liczony wynik tak jak w normalnej grze, te cyfry służą jako suma kontrolna, jak coś jest inaczej to link wygasł.

kas-884 - kasztan
ter-dd4 - terror
pie-e61 - pierw
eme-a5 - emeryt (hasło)
Z tego jestem dumny. Jak wpisujecie kasztan, to diffle pobiera chunk-kas.json z tablicą słów na kas, kąs etc. 884 to pozycja słowa kasztan w systemie szesnastkowym w pobranej tablicy.

Dlaczego? Bo krócej. 243 to w systemie szesnastkowym F3. A Bash64 to będzie MjQz i RjM, cel to mieć url sensownej długości. Z tego samego powodu nie ma tam całych słów.

Akurat w naszym przypadku to nie ma takiego znaczenia, bo link by był krótszy z całymi słowami.
!(emeryt-186.11.1.12.0.kasztan.terror.pierw.emeryt)!

Ale hasło było krótkie i nie miało polskich znaków (te w bashu są zwykle dłuższe) tu długość jest stała 6 znaków, a przy słowach startowych po 15 liter to się szybko zwraca.

But there is more… :brain:
Wychodzę z założenia, że jak ktoś strzela dużo słów to w pewnym momencie ma początek słowa.

I na przykład wpisane po kolei:
korzyść, korzeń, korytarz, kora, koran

W tym co wyżej skutkuje kor-123.kor-420.kor-312.kor-12.kor-1098
Ale ja wiedząc, że początek jest ten sam tnę te słowa do kor-123.420.312.12.1098
+ potem do szesnastkowego jeszcze (1098 -> 44a, 12 -> c).

Jak po kor jest kon to jest n-cyfra i odtwarza te litery patrząc na wcześniejsze słowo.

I teraz czasami aktualizuje słownik słów (nie wygrywających tylko tych do wpisania) i wtedy te cyfry się mogą przesunąć, jeśli suma kontrolna się rozejdzie, jest informacja, że link wygasł, ale teoretycznie jeśli po aktualizacji suma działa to link może działać i jest też jakieś ryzyko, że słowa się zmieniły, ale bez wpływu na wynik wtedy czyjś wynik ma oszukane słowo/a.

Nie ma co tej wiedzy używać do oszukiwania, bo wystarczy w trybie prywatnym zgadnąć hasło i potem w normalnym wpisać co się chce i się będzie miało super linka z wynikiem.

Z programistycznych rzeczy to testy jednostkowe nie są tak szanowane, ale właśnie ten ficzer jest nimi pokryty i każdy etap tego wygenerowania linku z słów i słów z linku jest pokryty testami i to po prostu ma działać i się nie psuć.

Gruba ryba2piorunów

@Deykun Ha! DZIĘKUJĘ że zaspokoiłeś moją ciekawość 🥹 Dotarłem do odwrócenia, ale skorzystałem z kiepskiego dekodera który wyrzucił krzaki, wróciłem do punktu wyjścia. W końcu doszedłem do wniosku, że pewnie api podmienia niektóre znaki w sposób który mnie nie ciekawi, bo jednak szukałem czegoś co będzie widać też gołym okiem :) Bardzo fajne.

Lider1piorunów

@Deykun

>Nie ma co tej wiedzy używać do oszukiwania
Teraz to mi nadepnąłes na odcisk

Pokaż więcej komentarzy (9)

Gruba ryba

w Sztuka Sprawiedliwa

22piorunów

Dev update: naprawiłem wczytywanie drużyny z sejwa zrobionego po wyjściu z budynku (w zasadzie to nie wczytywanie tu było problemem, tylko ustawienia spawnowania - gra nie spawnuje domyślnie aktorów, gdy jest w tym miejscu jakiś obiekt z kolizją, ale da się to zmienić dla każdej klasy, np. spawnować obok, gdzie już kolizji nie ma), natomiast dalej nie wiem co się dzieje z questami - niby zapisują się poprawnie, ale przy wczytaniu w obiekcie sejwa w tablicy na questy jest pusto, mimo, że przy zapisie były dane, nie mam pojęcia o co tu chodzi i debugowanie przyniosło więcej pytań niż odpowiedzi

[UPDATE] Wczytywanie questów już działa (patrz komentarz)

[UPDATE 2] nagrałem na dowód, że działa (mam nadzieje, że wszystko widać) https://streamable.com/lgmzua

Gruba ryba4piorunów

Jedna rzecz, którą zauważyłem teraz to, że w klasie Sejwa nie dałem makra UPROPERTY() [które, powoduje, że Garbage Collector nie niszczy obiektu, wcześniej przez to wyskakiwały mi nulle podczas walki w miejsce skilli postaci) do tablicy Questów - chociaż wątpię, że tylko o to chodziło, bo raczej Unreal nie odpala "odśmiecania" po zaledwie paru sekundach, więcej się dowiem jak odpalę znowu, tylko naprawiam jeszcze jedną małą rzecz

Pokaż więcej komentarzy (2)