Z tygodniowym opóźnieniem YoYoGames wydało po wakacyjnej przerwie nową wersję GameMakera. Wydanie zostało opóźnione przez błędy znalezione w becie, więc w tym miesiącu nie było parcia na pierwszy możliwy termin i miejmy nadzieję, oznacza to większą stabilność.
Co nowego w tej wersji?
- dodatkowe opcjonalne parametry w istniejących funkcjach audio, dzięki czemu można wiele rzeczy zrobić jedną funkcją, zamiast 3-4
- usunięcie platform które nie są już wspierane przez producentów OSów: 32bity dla Windowsa i Androida (z wyjątkiem wersji x86_64), UWP, XDK
- zmiana sposobu zarządzania assetami w programie (osoby wątek, aby przyspieszyć ładowanie projektów)
- nowy format dla tilesetów, dzięki czemu pliki roomów zajmą znacznie mniej miejsca
- nowe efekty dla layerów: Contrast, Fractal Noise, Gradient, Colour LUT oraz Twist Blur
- poprawki dla Feathera
- dodanie opcji stworzenia ustawień dla rozszerzeń w zabezpieczonych paczkach (z marketplace), które po zaimportowaniu można edytować i odczytać
- wsparcie dla Androidowego ProGuard, oraz usunięcie kodu który mógł powodować zgłaszanie zwiech aplikacji (ANR) w Google Play
- poprawki 162 zgłoszonych bugów (poza tymi naprawionymi w ramach pozostałych zmian)
YYG zaktualizowało też roadmapę ( gamemaker.io/en/roadmap ) na której zmieniła się kolejność dodania niektórych funkcji, a przy filtrach dostaliśmy listę tych które dostaniemy w wydaniach na koniec września, października i listopada.
Wiemy już też, że wydanie Long Term Support, który podobno ma dostać numer 2022.0, ma być wydany na koniec września. Przypomnę, że ta wersja nie będzie dostawać żadnych nowych ficzerów, a jedynie poprawki błędów, oraz aktualizacje wymagane przez poszczególne platformy docelowe (nowe SDK, nowe API, nowa wersja OS).
Ponadto, w październiku dostaniemy opcję wczytywania/usuwanie atlasów tekstur z pamięci (nieużywane tekstury nie są trzymane w GPU, ale są trzymane w RAM), oraz nowy, alternatywny interfejs (opcjonalnie - obecny nie zniknie). W końcu będzie więc można edytować obiekty z kodem na pełnym ekranie i bez łańcuszków pomiędzy oknami. Nowy wygląd zapewne poznamy przy okazji najbliższej bety.
Linki do ciekawych stron
Spotkanie z okazji 20 lecia - wybierzcie termin
Potrzebujemy waszej opinii, aby ustalić termin spotkania z okazji 20-lecia GMCLANu. Czasu w tym roku za wiele już nie zostało, gdyż chyba sensu robić imprezy zimą. Najbardziej odpowiednie terminy jakie bierzmy pod uwagę, aby nie było to za tydzień, nie w trakcie PGA (na którym też możemy się spotkać - 7-9 X), oraz nie bezpośrednio przed/po tej imprezie to:
- 24 września
- 22 października
- 29 października
Zjazd odbyłby się w Warszawie (i proszę nie mówić, że macie daleko - ja mam 380km). Przypomnę, że 20-lecie GMCLANu wypada 1 listopada, więc fajnie byłoby się spotkać przed tym terminem 
Przypominam też, że do grupy w której zgłaszamy swoją chęć uczestnictwa dołączyć można pod adresem meetup.gamemaker.pl , ale wasz wybór możecie też napisać w komentarzu.
SpriteTool - pierwsze osobne narzędzie od YYG
YoYoGames w tym roku zaskakuje na różnie sposoby - pozytywnie, zapowiadając wiele zmian i oferując częste aktualizacje, negatywnie - wprowadzając regresyjne bugi do rzeczy które działały i które w ostatniej chwili wślizgują się do stabilnych wydań (przez co wersje beta często działają lepiej...). Dziś do tego wszystkiego dołączyła trzecia kategoria - nie wiadomo co o tym myśleć...
YYG przedstawiło bowiem nową, osobną aplikację, która konwertuje obiekty 3D do sprite'ów 2D. Takie rzeczy bez problemu można zrobić w blenderze, ale cały pic polegać ma na tym, że oczywiście obsługa tego jest znacznie, znacznie prostsza. Pytanie jednak, czy warto tracić czas na osobne narzędzie do czegoś, co i tak przeznaczone jest dla osób które potrafią tworzyć modele 3D a tym samym obsługiwać Blendera... 
Program pobierzecie pod adresem opr.as/GM-Sprite , jego instrukcję pod adresem gms.yoyogames.com/SpriteTool.pdf , a temat dotyczący programu na forum YYG: forum.yoyogames.com/index.php?threads/new-3d-2d-tool-beta-release.97866 .
Program jest obecnie w wersji beta. Jego wydanie nie oznacza większego wsparcia dla 3D w GM, ale programista który za niego odpowiada został zatrudniony w YYG własnie po to, żeby nieco ułatwić pewne efekty 3D w grach 2D (paralaksy, izometria) - i zobaczymy co z tego wyjdzie.
Najstabilniejsze wydanie GMa wyjdzie we wrześniu
YYG potwierdziło dzisiaj, że na wrzesień planuje wydanie wersji GameMaker 2022.0 LTS (Long Term Support), która przez nastepne dwa lata dostawać będzie jedynie poprawki błędów i aktualizacje SDK/API eksportów, bez ŻADNYCH nowych funkcji, które znajdziemy w roadmapie. Te będą trafiać do "normalnych" comiesięcznych wydań, tak jak do tej pory (a zatem 2022.9 - 2022.12 i potem 2023.1 - 2023.12).
Przypomnę, że wersja ta, tak samo jak sierpniowe wydanie (które już za tydzień) pozbawione będzie niektórych eksportów, które często nie były i tak wspierane (ale dało się je odpalić na wybranych sprzętach), oraz funkcji które nadejdą, takie jak edytor particli, edytor UI, areny kolizji, efekty dźwiękowe, lepszy edytor kodu, prefaby, npm dla rozszerzeń.
Beta 2022.8 - koniec nieużywanych eksportów
Beta 2022.8 wprowadza zmiany, które nie każdemu mogą się spodobać. Wraz z tą wersją, w celu ułatwienia prac nad rozwojem i zmniejszeniem rozmiaru runtime, usunięte zostają:
- eksport Windows 32-bit/x86 (64 bity dodano pod koniec 2020 w v2.3.1, domyślnie włączono w 2022.2)
- eksport na Androida 32-bit/x86 (ale eksport x86_64 zostaje)
- UWP (Microsoft zakończył wsparcie i nikt tego nie używał, ale niestety zniknie opcja odpalania gier na Xboxie bez devkita)
- XDK dla Xboxa (tego też nikt nie używał i było dostępne tylko w najdroższej licencji)
Poza tym, 2022.8 wprowadza jak zwykle nowości:
- lepsza kompresja tilesetów w roomach (ale przez to projektów nie uda się otworzyć w wersji [ 2.8)
- opcje dla rozszerzeń, aby można było włączać/wyłączać niektóre rzeczy za pomocą checkboxa a nie kodu (i oczywiście funkcje do ich odczytu)
- poprawki bugów (zwłaszcza problemy z myszą w HTML5/OperaGX, oraz rekmompilacją tekstur i dźwięków)
- nowa funkcja call_later(period, units, func, [loop=false]) + call_canel(timesource)
- funkcje audio_play_sound dostały nowe argumenty na końcu - gain, offset, pitch, listener_mask, dzięki czemu można teraz zrobić narastanie dźwięku czy zmianę wysokości bez używania do tego 3-4 osobnych funkcji.
- stałe GM_project_filename i GM_build_type ("run" lub "exe"), które pomagają odnaleźć miejsce zapisu gier, oraz odpalać niektóre rzeczy tylko gdy gra została odpalona z IDE, a nie z dysku.
- opcja schowka na tekst dla Androida i Maca
- wirtualne klawisze dla HTML5 i Opery
- ponad 150 poprawek zgłoszonych błędów
Wersja stabilna 2022.8 powinna zostać wydana dopiero 30 sierpnia, tak więc do premiery jeszcze cały miesiąc - i lista ma szanse sporo urosnąć.
GameMakerowe spotkanie - #meetup
Mamy do was ogromną prośbę - dołączcie do grupy na Meetup, abyśmy poznali zainteresowanie spotkaniem polskich twórców GameMakerowych, dzięki czemu rośnie szansa na ekstra wsparcie od Opery i YoYoGames
Warto, tym bardziej, że w tym roku GMCLAN świętuje 20-lecie!
meetup.gamemaker.pl
zrob_gre_online() + GM 2022.6 wydany - mocny początek lata z YYG
Dzisiaj YoYoGames ma dla nas dwie dobre wiadomości.
Po pierwsze, w ostatniej wersji beta 2022.600 pojawiły się nowe funkcje do tworzenia gier multiplayer. Jest to o tyle ciekawe, że do stworzenia gry online wystarczy jedna linijka kodu:
kodrollback_join_game(); // lub jeśli hostujemy: rollback_create_game(2);
Są też fajne opcje dla sterowania w grze na każdej platformie, ale o nich przeczytacie w rozwinięciu newsa.
Dzisiaj wyszła też nowa wersja GameMakera - 2022.6. Co w niej nowego?
- nowe podpowiadanie składni, Feather, jest dostępne (ale domyślnie wyłączone)
- 5 nowych rodzajów filtrów
- nowe opcje dla rozszerzeń i funkcje, która pozwalają sprawdzić, czy dane rozszerzenie zostało włączone dla danego eksportu
- obsługa mikrofonu w Operze GX
- sporo zmian SDK dla konsol
Kolejne wydanie dopiero w sierpniu.
Zapraszam jeszcze po przykład sterowania z użyciem rollbacka również dla gier singleplayer, a tymczasem zostawiam was z nagraniem o tym, jak robić szybko gry multiplayer w GM:
GM 2022.5. Nowe "bebechy" i nowe funkcje
Mamy koniec maja, po dłuższej przerwie od intensywnych wydań, spowodowanych urlopami zdrowotnymi w YYG, oraz przejściem na .NET6 całego IDE i części kompilatorów, doczekaliśmy się nowej aktualizacji (kolejne powinniśmy dostać w czerwcu, sierpniu, wrześniu, październiku i listopadzie).
Co nowego w GameMaker 2022.5?
- nowe, globalne funkcje, odmierzające czas, które wykonują wybraną przez nas funkcję - ale cały bajer polega na tym, ze można je powtarzać, pauzować, przewijać, oraz grupować - jeden "time source" może mieć przypisanych pełno podrzędnych, przez co bardzo łatwo zatrzymamy odmierzanie czasu gdy np. w grze włączymy ekran opcji, lub jakaś postać coś mówi
- przeniesienie całego IDE na .NET6, dzięki czemu na Windowsie powinien być widoczny wzrost wydajności, a na Macu zlikwidowano mnóstwo błędów związanych z korzystaniem z Mono zamiast .NET, które Microsoft kilka lat temu oficjalnie wydał
- nowy efekt "liście na wietrze", pierwszy który nie jest shaderem (jego kod można podejrzeć w folderze z runtime) - na razie bez podglądu, gdyż IDE musiałoby umieć interpretować GML do rysowania
- inspektor dla dźwięku
Do tego wersje beta otrzymały wiele poprawek dla nowego systemu podpowiadania i analizowania kodu - Feather, który nie jest dostępny w wydaniach stabilnych, ale obecnie jest już na tyle gotowy, że jest nadzieja na jego wydanie w wersji 2022.6, oraz dołączenie go do wersji LTS (Long Time Support). Przejście na .NET6 musiało nastąpić przed wydaniem LTS, gdyż YYG ma zamiar wydawać do tej wersji jedynie poprawki błędów, a nie nowe funkcje, więc gdyby Microsoft postanowił w ciągu 2 lat coś zmienić, lub zakończyć wsparcie dla starszych wersji (a tak ma być) - postanowiono (całkiem słusznie) zaktualizować system. To otwiera też drogę do paru innych zmian (w tym dla nowego runtime), więc płakać nie będziemy.
Od wtorku powinny pojawiać się nowe bety z Featherem (i od razu na dzień dobry z dużą ilością poprawek) - czerwcowa wersja powinna wiec mocno ułatwić pracę z kodem.
Zakup licencji GM możliwy tylko do końca maja 2022
YoYoGames i Opera przeszły właśnie do ostatniego etapu wprowadzania subskrypcji - są one już dostępne także przez Steam.
Przy okazji firma poinformowała, że tzw. stałe licencje, można kupić przez Steam tylko do 31 maja. Co to oznacza?
- Osoby które mają stałą licencję, mogą dożywotnio korzystać z wszystkich wersji GMS2 i GM 2022
- Osoby które mają stałą licencję, będą mogły dożywotnio korzystać z GM LTS (Long Term Support), który ma dostawać aktualizacje SDK/OS, ale bez nowych funkcjonalności, przez dwa lata od pierwszego wydania (prawdopodobnie do lipca 2024)
- Nie jest jeszcze wiadome, czy osoby które mają stałą licencję, będą mogły też korzystać z tzw. "nowego runtime", które ma zostać wydane bliżej 2023 roku
Warto jednak pamiętać, że łącząc swoje konto Steam z kontem YYG nasze stałe licencje zostają dodane do konta YYG, dzięki czemu, bez utraty stałej licencji, przysługuje nam darmowa subskrypcja - 1 rok Indie, lub 2 miesiące Enterprise za każdą posiadaną przez nas licencję. Jeśli więc mamy np. stary eksport na Windowsa, to możemy otrzymać na rok, zupełnie za darmo, eksport na Win+Mac+Linux+HTML5+Android+iOS+GX. Potem wracamy do naszej poprzedniej, stałej licencji. Najlepszym momentem skorzystania z tej promocji będzie zatem moment, w którym pojawi się nowy runtime - wtedy nawet jeśli "stała" licencja miałaby już nie pozwalać z niego korzystać, to subskrypcja doda nam przynajmniej rok darmowego korzystania z nowszej wersji.
Normalnie licencja Indie kosztuje obecnie 23,99 zł miesięcznie, lub raptem 12 zł jeśli interesuje nas tylko eksport na "pulpitowy" system. To mniej niż większość innych typowych w dzisiejszych czasach subskrypcji i warto pamiętać, że można tworzyć gry i bez nich, a licencję kupić tylko na czas potrzeby wykonania eksportów.
Więcej informacji:
gamemaker.io/en/get
help.yoyogames.com/.../4405059050001-Subscriptions-FAQ
forum.yoyogames.com/index.php?threads/gamemaker-on-steam.95453
GM 2022.5 zaskakuje niezapowiadanymi nowościami
Dopiero co tydzień temu YYG sporządziło wielką listę rzeczy, którą chcieliby wprowadzić w tym roku, a dziś wypuszczono pierwszą (opóźnioną przez choroby pracowników) betę kwietniowo-majową. Z dwiema zmianami, których w planach wcześniej nie było.
Poza obiecanym przejściem na .NET 6 oraz nowymi grafikami instalatora, wczytywania i nową ikoną programu, dostaliśmy:
- Windows nie potrzebuje już tworzyć wirtualnego dysku, gdyż .NET 6 radzi sobie wyśmienicie z dłuższymi niż 256 znaków ścieżkami
- mnóstwo poprawek dla Feathera, wraz z opcją "znajdź wszystkie wystąpienia" dla zmiennych i funkcji (F3 pokazuje kolejne, Shift+F3 wszystkie)
- inspektor dźwięków
- nowy typ zdarzeń (globalnych) Time Sources, coś na zasadzie alarmów, ale są globalne, istnieją między roomami i możemy nimi sterować - pauzować, wznawiać, zatrzymywać, anulować czy ustawić ile razy mają się powtarzać, oraz oczywiście przypisać funkcję która ma się na końcu wydarzyć. Time Sources są wyzwalane między Begin Step a Step instancji.
- instance_create_xxx() dostało nowy, piąty parametr, który pozwala przekazać zmienne do ustawienia w momencie tworzenia obiektu. Co ważne, zmienne przekazane w ten sposób zostaną ustawione PRZED eventem Create, ale po evencie Pre-Create, czyli zmiennych zdefiniowanych w okienku Variable Definitions. Umożliwi to zdefiniowane zmiennych startowych, które potem można nadpisać albo w room editorze, albo podczas tworzenia obiektu i w evencie create wykonać różną czynność zależnie do wartości - zmienić sprite, pozycję itd. Na pewno wielu osobom to pomoże, gdyż dotychczas trzeba było takie rzeczy wykonać dopiero w kolejnym kroku, lub np. ustawiając alarm[0] = 1;
kodinstance_create_layer(x, y, layer, obj_jakis, {zmienna_a: 5, zmienna_b: 12} );
Ostatnie dwie zmiany nie były zapowiadane, a każda z nich jest przydatną zmianą.
Warto też zauważyć, jak bardzo ulega zmianiom sam silnik Feather, który ma nie tylko odpowiadać za lepsze podpowiadanie składni (co robi jak widać poniżej fenomenalnie), ale też podpowiadać zmienne należące tylko danych obiektów czy struktur w obecnym zasięgu (i w ogóle podpowiadać metody dla struktur), co jest ogromnym skokiem w porównaniu do starego silnika, pamiętającego jeszcze czasy GameMakera 5.
Najnowsze wersje GameMakera:
wydana 191 dni temu
wydana 326 dni temu
wydana 3 dni temu
Jak znajdę czas 
