Ucieszą się osoby, które z różnych powodów wolą korzystać z wersji GameMakera, która nie posiada "chorób wieku dziecięcego" dzięki nie wprowadzaniu żadnych nowości, a oferuje jedynie poprawki dla poważnych bugów i aktualizacje SDK, co ułatwia nam aktualizacje, gdy dobrze działającą potrzebujemy jedynie rekompilować jeśli wymaga tego np. AppStore, Google Play, czy sklepy konsolowe, wprowadzając jakieś nowe wymagania - a nie zmienia się nic w kodzie.
YYG planuje kolejne wydanie LTS (Long Term Stable) wyrównujące je z bieżącymi funkcjami IDE i runtime dopiero w 2025 roku (oznaczone jako 2025.0). Powodem tak dużego rozstrzału jest stopniowe wprowadzenie w tym roku nowego runtime (w ciągu kilku tygodni ma ruszyć otwarta beta), który do 2025 powinien już być wystarczająco stabilny.
Obecny LTS doczeka się co najmniej jednej aktualizacji SDK w tym roku (2022.0.3; jeśli zajdzie nagła potrzeba - odpowiednio więcej) - więc będzie zdatny to pracy zapewne nie tylko w tym, ale co najmniej w przyszłym roku.
Warto jednak czasem sprawdzać na kopii projektu, jak działa on w bieżących wersjach GM - chociażby wersja 2024.2 dostanie kilka poprawek optymalizujących dostęp do struktur i wszelkich danych które wymagają hashowania, a nazwy te są literałami (czyli nie mogą się zmienić w trakcie gry) - zmiana ta pozytywnie dotyka zwłaszcza kompiler GMS2 YYC - przy grach mobilnych może to oznaczać, że większa liczba sprzętów osiągnie wymarzone 60/60 FPS, jeśli gra miewała problemy na telefonach-zmieniakach.
Wersje miesięczne nadal będą się pojawiać tradycyjnie co 1, 2 lub 3 miesiące.
Linki do ciekawych stron
World of Horror z nominacją do Paszportów Polityki 2023
Miło nam poinformować, że stworzona w GMie gra World of Horror, nad którą pracował znany wam z forum @japanstache, czyli Paweł Koźmiński, został nominowany do Paszportów Polityki 2023 w kategorii Kultura Cyfrowa. To jak na razie najwyższe wyróżnienie dla GMowych gier które powstały w naszym kraju, dlatego gratulujemy!
Pierwsza beta na 2024 dostępna
Opóźniona przez problemy z nowym edytorem kodu, który ma wkrótce także trafić do bety, dostępna jest pierwsza wersja beta na ten rok (2024.2), dla wydania, które będzie dostępne pod koniec lutego.
Jakie zmiany? Na tę chwilę, dostaliśmy chociażby kilka nowych funkcji:
- GM_is_sandboxed
- pozwala sprawdzić, czy projekt pozwala na otwieranie plików w dowolnych lokalizacjach (przydatne dla bibliotek)
- handle
(które prawdopodobnie zostanie zmienione na handle_parse()
, żeby nie kolidować ze zmiennymi twórców), które pozwala pobrać referencję na asset po jego nazwie jako string
- is_mouse_over_debug_overlay, is_keyboard_used_debug_overlay
- dla wyłączenia eventów w grze, gdy korzystamy z debugowego ImGui
- window_enable_borderless_fullscreen, window_get_borderless_fullscreen
- funkcje które dodają obsługę fullscreena przy braku ramki okna gry
- json_stringify, json_parse
- dostały nowy argument filter_func
który pozwala "poprawić" json przed zapisem. Dodatkowo, null
nie będzie już odczytywane jako pointer_null
, a jako undefined
, co pozwoli na szybszy odczyt danych w tej samej formie, jak zostały one zapisane. Jakby tego było mało, referencje na Assety zostaną zapisane ze specjalnymi prefixami i suffixami @ref ASSET
, dzięki czemu tak długo jak nie zmienimy nazwy assetu, możemy go zapisać i wczytać w plikach json.
Poza tym, poprawiono odczyt zmiennych, zwłaszcza struktur - zależnie od użycia kompilerów VM czy YYC zysk może wynosić od 1,5-2,5x, więc może to mieć spory wpływ na grę, zwłaszcza, jeśli korzystacie z zagłębionych struktur np. do tworzenia GUI.
Poza tym, od teraz można w oknach debugowych w grze zobaczyć tekstury i sprawdzić statystyki garbage collectora.
Wprowadzono też kompresję danych o tilesetach, co powinno pozytywnie wpłynąć na rozmiary .exe, jeśli korzystacie z tej funkcjonalności.
Pełna lista zmian: github.com/YoYoGames/GameMaker-Bugs/milestone/7?closed=1
To oczywiście nie wszystko na kolejną wersję, a niektóre z powyższych funkcji mogą jeszcze być doszlifowywane i zawierać bugi - warto jednak je przetestować i zgłaszać wszystkie błędy które znajdziecie, żeby nie trafiły one do wersji miesięcznej i żeby nie czekać z ich naprawą aż do kwietnia
YYG przeniosło też całe repozytorium Feature Requestów do bazy bugów, więc teraz wszystko będzie na jednej liście, co ułatwi sprawdzanie notek o wydaniu.
Styczniowy Asset Bundle dostępny - dla wszystkich
W związku z przejściem GM z systemu subskrybcji na darmową licencję niekomercyjną, mogliście przegapić fakt, że również zestawy assetów do gier - grafik i dźwięków, które co miesiąc wydaje YYG, od teraz stały się darmowe.
Z racji, że weszliśmy w nowy, 2024 rok, pojawiła się kolejna, 26 już paczka - tym razem zawiera ona grafiki pikselowych bohaterów do gry fantasy.
Wszystkie assety można pobrać tutaj: gamemaker.io/en/bundles (poprzednie również dostępne są za darmo). Aby je pobrać, trzeba się jedynie zalogować na konto YYG / Opera.
GM 2023.11 wydany
YYG wydało ostatnią wersję GameMakera w tym roku. Chociaż może się wydawać, że mniej w niej zmian niż w poprzednich wersjach, tak naprawdę sporo zmieniło się "pod spodem", przygotowując grunt pod zmiany które wejdą w kolejnych wydaniach, oraz mają związek z przejściem GM na darmową wersję.
Zmiany i nowości w 2023.11:
- Eksport Opera GX Game Strip (minigry)
- Efekty tekstu SDF w sekwencjach
- Filtr "cienie" w room editorze (Hard Drop Shadow)
- Package Manager (będzie używany w otwartej becie nowego runtime, oraz do prefabów i pluginów IDE)
- optymalizacje cachowania danych przy kompilacji (2-3x szybsze pakowanie tekstur) oraz odczytu danych w structach w runtime (niektóre przypadki nawet 4-5x, zwłaszcza w YYC)
- referencjami zamiast liczbami od teraz są: buffers, vertex buffer, vertex formats, surfaces (co może oznaczać, że niektóre porównania z -1 lepiej zastąpić undefined
)
- room_get_info()
zwraca informacje o zasobach i ustawieniach w wybranym roomie
- asset_get_ids()
do pobrania listy zasobów
- możliwość kopiowania fragmentów buforów z uwzględnieniem przerw w sekwencji (strided copy)
- dbg_slider_int()
dla slidera z liczbami całkowitymi w imgui, dbg_add_font_glyphs
dla wyświetlenia brakujących liter z niełacińskiego alfabetu
- texturegroup_get_names()
- zwracane są nazwy tekstur w grze
- tm_systemtiming
- ustawia limit klatek w grze na "ile fabryka dała", przydatne głównie na telefonach z androidem które ustawiają/wymuszają liczbę klatek ponad API Androida
- TileSetInfo
jako nowa struktura
- 229 bugfixów
Pełne informacje znajdują się pod nowym linkiem: github.com/YoYoGames/GameMaker-Bugs/milestone/4?closed=1 - stare strony Release Notes nie będą już aktualizowane, z racji przejścia YYG na bardziej przejrzysty system zarządzania, w którym widzimy znacznie więcej tego co się dzieje
Lepsze wyświetlanie licencji na profilu YYG
W związku z tym, że GM stał się darmowy i wymaga licencji jedynie w przypadku, gdy wydamy grę na której cokolwiek zarobimy, YYG po prośbach użytkowników zaktualizowało stronę kont ( gamemaker.io/account/dashboard ).
Teraz w tym miejscu wyświetla się informacja o tym, czy posiadamy licencję komercyjną (Professional lub Enterprise) na runtime GMS2 VM, GMS2 YYC i GMRT (nowy runtime) i na jakie platformy.
Dodatkowo, widzimy informację, na jakie platformy dla "starego" runtime działają kupione w przeszłości licencje, co równa się z tym, że na te platformy możemy wydać komercyjne gry bez wykupywania nowej licencji Professional. Pamiętajmy tylko, że licencje GMS2 nie działają (jako komercyjne) na Nowy Runtime. Można go jednak swobodnie używać na nowych zasadach za darmo, bez kupowania licencji i aktywowania czegokolwiek, tak długo, jak nie zaczniemy zarabiać na grze wyeksportowanej z jego pomocą.
Nowy runtime jest planowany jako "stabilny" nie wcześniej niż w drugiej połowie 2024 roku, a otwarta beta powinna ruszyć w grudniu lub styczniu. Wcześniej czeka nas jeszcze beta nowego edytora kodu (w ciągu 1-2 tygodni), a nieco później beta prefabów - wszystkie 3 bety nałożą się na siebie i nie muszą być częścią wydania 2024.2, jeśli nie będą wystarczająco stabilne.
GameMaker od dziś DARMOWY!
YYG i Opera postanowiły totalnie zaskoczyć użytkowników GameMakera, jak i twórców gier ogólnie, wywołując dziś niemałe trzęsienie ziemi:
Uwaga!
Od dziś GameMaker jest darmowy dla zastosowań niekomercyjnych, na desktopy, web i komórki.Oznacza to, że firma rezygnuje z subskrypcji, a licencja będzie wymagana jedynie, jeśli wydajemy płatną grę. Nie zostają wycofane prawa które posiadaliśmy wydając starsze gry, w tym prawa "stałych" licencji na GMS2.
Podsumowując nowe licencje:
- Free (niekomercyjny) eksport na GX.games, Windows, Linux, Mac, Android, iOS, HTML5 - 0 zł
- Professional komercyjny eksport na GX.games, Windows, Linux, Mac, Android, iOS, HTML5 - jednorazowo 463 zł za licencję, potrzebny tylko gdy chcemy wydać jakąś płatną grę
- Enterprise eksport na konsole (Xbox, PlayStation, Nintendo Switch): 290zł m/c (2900zł za rok)
Co ważne, te zmiany obejmują też nowy runtime, zatem będzie on darmowy, chyba, że zaczniemy na grze zarabiać.
Licencja Professional obejmuje zarówno stare runtime GMS2 (VM, YYC), jak i nowy runtime (GMRT).
Stare licencje "stałe" (Permanent), wciąż działają na eksporty na które zostały zakupione i nie trzeba osobnej licencji Professional - możemy wydawać komercyjne gry korzystając z zakupionych eksportów GMS2 VM i GMS2 YYC dożywotnio. Oczywiście na gry darmowe nie potrzeba nam licencji wcale.
Wskazówka:
Cena licencji komercyjnej będzie pomniejszona o kwotę zapłaconą w ramach subskrypcji.
Szczegóły w FAQ: help.gamemaker.io/.../14954144182941 .
Tabelka z cenami i możliwościami: gmclan.org/gamemaker/ceny
Listopadowy Asset Bundle nawiązuje do klasyka
Jak co miesiąc, posiadacze subskrypcji otrzymali nowy Asset Bundle (poprzednie oczywiście nadal są do pobrania).
Tym razem na tapet wzięto klasyka, który dostarczany był jako przykładowa gra do starszych GameMakerów - chodzi mianowicie o 1945.
Wszystkie assety znajdziecie na stronie gamemaker.io/en/bundles .
Beta 2023.11 z niespodzianką
Po dość długim okresie oczekwiania spowodowanym wydaniem wersji LTS, YYG wydało w końcu pierwszą betę wersji 2023.11.
Niespodziewanie, wprowadza ona nową funkcję room_get_info(ind,[views],[instances],[layers],[layer_elements],[tilemap_data])
- która zwraca nam informacje o roomie (w którym aktualnie nie jesteśmy), jak listę widoków, instancji, layerów, elementów na tych layerach, czy tilemap. Można więc stworzyć grę, w której nie zmieniamy roomów, a "doczytujemy" informacje o nich i odtwarzamy w obecnym.
Poza tym, asset_get_type
działa od teraz z nowymi referencjami zamiast id liczbowych, a do zasobów które dołączyły do tej listy dodano buffery, vertexy i surface. Warto więc sprawdzić swoje projekty, jeśli jakimś cudem gdzieś wykorzystywaliście liczbę zwracaną przez surface_create() do porównań z inną liczbą naturalną (nie z innym surface).
Pojawiła się też funkcja asset_get_ids
która pozwala zwrócić listę wszystkich zasobów danego typu.
Poza tym, na tę chwilę poprawiono 71 bugów.
Od tego wydania zmiany w betach będą dostępne jedynie na githubie i dopiero wersja miesięczna dostanie pełnoprawne release notes. Listę zmian znajdziecie więc na liście ficzerów i bugów:
github.com/YoYoGames/GameMaker-Bugs/milestone/4?closed=1
github.com/YoYoGames/GameMaker-Feature-Requests/milestone/3?closed=1
Retransmisja GMCLAN Meetup #3 na naszym kanale Youtube.
Jeśli nie mogliście być obecni podczas GMCLAN Meetup #3 w zeszłą sobotę, mamy dla was dobrą wiadomość - całe spotkanie dostępne jest na naszym kanale Youtube (osadzona wersja dostępna jest także w rozwinięciu newsa) - youtu.be/watch?v=_KOaVAwoB10 .
Ponieważ taka formuła spotkała się z ciepłym przyjęciem, na pewno będziemy ją powtarzać. Kolejne spotkanie online odbędzie się w I kwartale 2024.
Z kolei latem, w dniach 7-9 czerwca, ponownie planujemy spotkać się na żywo w Warszawie. Tegoroczne spotkanie odbyło się w oparach absurdu po spożyciu przeterminowanego energetyka Bekantan, prowadząc do wydarzeń z cyklu tych co "zostają w Vegas". W październiku natomiast planujemy wystawić się na PGA.
Zapraszamy do oglądania!
Najnowsze wersje GameMakera:
wydana 74 dni temu
wydana 2 dni temu
wydana 8 dni temu