Pages

Saturday, December 9, 2017

Gruntz - rozczytywanie pliku CHEATZ.TXT
Gruntz - deciphering the CHEATZ.TXT file

(I'm sorry, but the English translation of the article is not yet available. And I don't think it will be in the near future. But feel free to get something useful out of the Polish version, using Google Translate for instance. Cheers)
W poprzednim artykule omawiałem ze szczegółami budowę pliku ATTRIBUTEZ.TXT. Teraz pora na kolejny i zarazem ostatni plik z tej samej kategorii, a mianowicie - plik CHEATZ.TXT. W związku z tym, że oba pliki mają ze sobą wiele wspólnego, przed przeczytaniem tego artykułu polecam najpierw zapoznać się z artykułem poświęconym plikowi ATTRIBUTEZ.TXT, nawet pobieżnie. Powinno to dać pewien zarys tego, z czym się teraz mierzymy.

Plik CHEATZ.TXT miał dla mnie szczególne znaczenie. Po pierwsze, sposób szyfrowania wykorzystany w pliku ATTRIBUTEZ.TXT odkryto podczas mojej nieobecności - byłem wówczas w trakcie stosunkowo dłuższej przerwy od Gruntzów i jak wróciłem na forum, stanąłem przed faktem dokonanym. Śmiesznie się czułem na samą myśl, że tak wielkie odkrycie ominęło mnie szerokim łukiem. Po drugie, okazało się, że plik ATTRIBUTEZ.TXT zawiera naprawdę ważne rzeczy, w tym - kody do gry. Z całych 148KB, jakie zajmuje plik, prawie 5.5KB stanowią same kody (jest ich łącznie 69). Tymczasem plik CHEATZ.TXT nie ma nawet 1KB i jest ponad sześć razy mniejszy niż same kody z pliku ATTRIBUTEZ.TXT! Prowokuje to pytanie, co też takiego znajduje się w tym pliku? Czy rzeczywiście są tam kody do gry, jak sugerowałaby nazwa? Jeżeli tak, to musiałoby ich być naprawdę niewiele, o wiele mniej niż w pliku ATTRIBUTEZ.TXT. A po trzecie - wystarczy spojrzeć na samą lokalizację pliku. Pełna ścieżka do niego to mianowicie \STATEZ\CREDITZ\PALETTEZ\CHEATZ.TXT. Ciekawe, czy ma ona jakikolwiek związek z zawartością pliku.

Gruntz - rozczytywanie pliku ATTRIBUTEZ.TXT
Gruntz - deciphering the ATTRIBUTEZ.TXT file


(I'm sorry, but the English translation of the article is not yet available. And I don't think it will be in the near future. But feel free to get something useful out of the Polish version, using Google Translate for instance. Cheers)
Spośród tysięcy różnych plików w archiwum GRUNTZ.REZ dwa są w pewnym sensie wyjątkowe i niepowtarzalne na swój sposób. Są to mianowicie pliki \GAME\ATTRIBUTEZ.TXT oraz \STATEZ\CREDITZ\PALETTEZ\CHEATZ.TXT. W sumie w archiwum są cztery pliki z rozszerzeniem *.TXT. Oprócz tych dwóch wymienionych wcześniej, są jeszcze pliki \GAME\VERSION\VERSION.TXT (nie wykorzystywany przez samą grę, zawierający jedynie napis "1.00") i \STATEZ\CREDITZ\CREDITZ.TXT (napisy końcowe wyświetlane po zakończeniu gry). Ale o ile te dwa pliki z łatwością można rozczytać za pomocą zwykłego notatnika, o tyle na plikach ATTRIBUTEZ.TXT oraz CHEATZ.TXT można sobie połamać zęby - jak otworzy się je w notatniku, pojawiają się bowiem ... same krzaki.

Chwila moment, przecież są to pliki binarne! Kiedy pierwszy raz zobaczyłem te pliki parę lat temu, poczułem momentalne rozgoryczenie tym faktem. Byłem bowiem wówczas przekonany o tym, że nigdy nie poznam zawartości tych plików. Co jak co, ale plik CHEATZ.TXT może wywołać ślinotok u co niektórych ze względu chociażby na samą nazwę. I co on robi w folderze PALLETEZ?

W tym poście postaram się wyjaśnić, czym tak naprawdę jest plik ATTRIBUTEZ.TXT i czemu służy. W kolejnym poście natomiast zajmę się z kolei plikiem CHEATZ.TXT.

Friday, December 8, 2017

Gruntz - krótka historia modowania
Gruntz - the brief history of modding

(Sorry, it's a work in progress. The translation is NOT complete. To view the complete article, go and see its Polish version. Hopefully you'll get something out of it, perhaps with a little of Google Translate. Cheers)

Gruntz ... the game of my entire childhood (right after The Neverhood) and the game I have really fond memories of. And definitely I'm not the only one out there - since the game was produced in 1999, numerous Gruntz communities and fan pages have been created. Unfortunately the time spares no man and these activities were not an exception. Most of them have been forgotten or closed down due to lack of activitity. The one that did survive and is noteworthy is the GooRoo's Gruntz Forum. The forum has been already running for 14 years (and I've been its proud member for 10 years). Naturally it had its ups and downs but thanks to Ed Kivi - the founder of the forum - everything is running smoothly and the forum is prospering. The most of the forum's activity is based on the work of the Designers, who design custom levels for others to play. At the time of writing there are 619 custom levels and counting! 12 of which are made by yours truly ;) The most recent level was released less than month ago so the site is doing perfectly well.
Gruntz ... praktycznie gra mojego dzieciństwa (ustępująca jedynie grze The Neverhood) i gra, którą darzę szczególną sympatią. Zresztą nie tylko ja - od samego początku, w momencie, kiedy gra wyszła w 1999, powstało co najmniej parę różnych Gruntzowych społeczności oraz fanpage'ów. Czas nie oszczędzał nikogo i wszystkie powoli się wykruszały aż zostało w gruncie rzeczy (pardon the pun ;) ) jedynie forum GooRoo's Gruntz. Forum funkcjonuje już od ponad 14 lat (sam jestem na niej zarejestrowany już od lat dziesięciu) i naturalnie miał okresy większej i mniejszej aktywności. Ale dzięki założycielowi forum - Ed'a Kivi - wszystko prężnie się rozwija. Większość aktywności forum opiera się w dużej mierze na grupie tzw. Designerów, którzy od czasu do czasu tworzą nowe poziomy, w które grają pozostali fani. W momencie pisania tego posta, poziomów jest już 619 i ta liczba ciągle się powiększa (12 z nich jest nawet mojego autorstwa), najnowszy poziom wyszedł nawet niespełna miesiąc temu. Więc samo forum ma się jeszcze dobrze ;)

I'd even say there's quite a fandom concentrated around the game. There are illustrated walkthroughs to guide the player through a level, be it standard or custom one (some of them in a video form), there are countless discussions on possible sequels of the game (some are even in the making), there was also a time when comic strips were put together. Oh, and there's an interesting habit of changing the spelling of words ending with an "s" where it's replaced with a "z" instead, so we can spot "Switchez", "Cheatz" and "Toolz" all over the place instead of regular "Switches", "Cheats" and "Tools". It's not only restricted to plurals - just take "Indiana Jonez" as an example (and bonus point to those who know where this phrase is used in the game!). This distinctive notation was introduced by the creators of the game themselves (the name of the game being a subtle hint - "Gruntz").
Pokusiłbym się nawet o stwierdzenie, że gra Gruntz skupiła wokół siebie pewnego rodzaju fandom. Są tworzone ilustrowane opisy przejścia (tzw. walkthroughs) standardowych poziomów i tych niestandardowych (również w formie filmów video), są toczone niezliczone dyskusje odnośnie ewentualnych sequelów gry (są nawet próby stworzenia takowego), nawet był okres czasu, kiedy tworzone były krótkie komiksy o tematyce Gruntzów. Czego to ludzie nie wymyślali. Oprócz tego na forum panuje maniera specyficznego zapisywania końcówek angielskich wyrazów, które kończą się na literę "s". Zamiast niej mianowicie piszę się literę ... "z". Tak więc przeglądając forum bardzo często spotka się takie słowa, jak "Switchez", "Cheatz", czy "Toolz" zamiast zwykłych "Switches", "Cheats" i "Tools". Taki zapis nie ogranicza się jedynie do rzeczowników liczby mnogiej - dajmy chociażby wyrażenie "Indiana Jonez" jako przykład (a sto punktów dla tych, którzy wiedzą, gdzie to wyrażenie jest wykorzystywane w grze!). Ta specyficzna maniera zapoczątkowana została przez samych twórców gry (wystarczy spojrzeć chociażby na nazwę gry - "Gruntz").

Wednesday, December 12, 2012

Gruntz REZ Patcher 1.0.0

It's the first version of the application used to modify REZ files based on patches. You provide a list of patches which program then analyzes and modifies the contents of the original REZ package.

Gruntz REZ Patcher is intended to finally make Gruntz a moddable game! To some extent at least.

Since it's the first working version of the program, you're likely to encounter some of the bugs. When this happens, report them in the comment section below this post alongside ideas for new features and constructive feedback in general. I don't think there's a need for a special place for it at this very moment, maybe I'll think of it later.
Pierwsza wersja programu do modyfikowania plików REZ w oparciu o patche, lub "łatki", jak kto woli. Podaje się listę patchy, które program następnie analizuje i na ich podstawie dodaje lub nadpisuje pliki w oryginalnym pliku REZ.

Program stworzony z myślą o modowaniu gry Gruntz! Przynajmniej w jakimś stopniu.

Nie ukrywam, że w związku z tym, że jest to pierwsza wersja programu, błędy mogą występować. Jak ktoś coś znajdzie, można je zgłosić w komentarzach pod tym postem, jak również pomysły na nowe funkcje programu lub inne konstruktywne uwagi. Nie wiem czy jest sens tworzyć w tym celu jakieś osobne miejsce, najwyżej później się coś wymyśli.

DownloadPobierz
Gruntz REZ Patcher 1.0.0 (1.45MB)



Poniżej zrzuty ekranu podczas dodawania nowego tilesetu "Virtual Reality" autorstwa Zu i efekt końcowy:
Below are the screenshots of the addition of the custom tileset "Virtual Reality" by Zu:




Saturday, October 13, 2012

Gruntz REZ Patcher 0.1.0

Skończyłem pierwszą wersję programu "Gruntz REZ Patcher". Słowem wstępu: program jest pisany przeze mnie dla gry Gruntz, ale bardzo prawdopodobne, że będzie również działał i dla innych gier Monolith'u, takie jak Claw (Kapitan Pazur), czy też Get Mediaval. Z założenia ma umożliwić tworzenie modów do gry, czyli stałoby się możliwe tworzenie nowych tile setów, dodawanie nowych image setów, dźwięków itp. co dotychczas było niemożliwe przy aktualnym stanie rzeczy.

Póki co, zaimplementowałem same najważniejsze rzeczy, czyli funkcję tworzenia paczki REZ oraz możliwość wyeksportowania jej zawartości na dysk. Aplikacja działa przez wiersz poleceń i nie ma GUI - dodam go później. Na razie ma działać.
I've just finished the first version of "Gruntz REZ Patcher". The application is primaly written for use in the game Gruntz, however it's very likely to work with other Monolith games as well, such as Claw and Get Mediaval. Its primary goal is to make it possible to mod Gruntz: the program would allow anyone to create new tile sets, adding new image sets, sounds etc. As of now it isn't really possible because of a lack of proper tools.

This version features only the most important functions, which practically are the "basis" of the future versions. These features are: creating a REZ package and exporting its contents. The user input is received via command-line; it's got no GUI - I'll add it later, since it's not a priority now.

DownloadPobierz
Gruntz REZ Patcher 0.1.0 (435KB)



Tuesday, October 9, 2012

Tytuł zastępczyPlaceholder title


No dobra, wreszcie jakoś ogarnąłem obecność dwóch języków na blogu. Nie było to łatwe, bo, z tego co się orientuję, Blogger nie ma żadnych tego typu pluginów wspierających zmianę języków. No i nie znam JavaScript, co rzeczy komplikuje jeszcze bardziej ... może kiedyś opublikuję tutaj skrypty, których użyłem, zobaczymy.

Będę tutaj umieszczał swoje wyskoki z programowania i matematyki. Nie żeby były jakieś profesjonalne, raczej amatorskie, ale gdzieś je trzeba wrzucać.

Alrighty then, I've finally got my bilingual blog working. As far as I know Blogger doesn't support any language changes on the fly. That's why I've spent some time and have written a little script just for this. It's the first script in JS I've written in a while, so it sure wasn't easy! Ah well, someday perhaps I'll publish these scripts somewhere, but not that it's something really fancy. We'll see.

Anyways, I'm going to put my programming and mathematical "shenanigans" in here. Not that it's something outstanding, I just need to put these things somewhere.


Tomalla