Kolejny kwartał za nami, kolejny GMS wydany.
Ta wersja nie zmienia wiele - poprawia głównie działanie z najnowszymi wersjami eksportów (iOS, HTML5, Android, MacOS), oraz aktualizuje (w końcu) wtyczki do zakupu DLC na urządzeniach mobilnych. Dodano też websockety dla HTML5 i ogólnie kolejny raz ten eksport dostaje wszystko to, co w nim nie działało.
Poza tym, raczej sporo zmian pod spodem przygotowujących GMa pod wielkie zmiany języka GML, które teoretycznie powinny wejśc w betę w ciągu 1-2 miesięcy - o czym więcej tutaj: gmclan.org/index.php?nius=572
yoyogames.com/.../gamemaker-studio-2-version-2-2-4-out-now
Linki do ciekawych stron
Stabilne 2.2.3 wydane
Stabilna wersja 2.2.3 GameMaker Studio wydana. Lista zmian w poprzednim newsie, a my z niecierpliwością czekamy na kolejny update - po wakacjach powinny się już zacząć bety sekwencji i zmian w GML, które opisywałem tutaj ( gmclan.org/index.php?nius=572 ) i które są największymi zmianami w GM w historii.
GameMaker Studio 2.2.3 [BETA] już jest
Zgodnie z planem (jeden GM na kwartał), GMS 2.2.3 pojawił się na serwerach YoYoGames. W tej wersji nie ma wielkich zmian dla samych gier (eksport na TVOS), głównie skupiono się na poprawkach IDE (zawieszanie, brak okien "otwórz", problemy z internetem) i podobno teraz już tych problemów nie będzie.
yoyogames.com/.../what-s-new-in-2-2-3-now-in-beta?utm_source=social&utm_campaign=blog
- można wyłączyć sandbox (zapisywanie plików wszędzie)
- można wyłączyć sortowanie głębokości vertexów na surface, co zmniejszy znacząco zużycie pamięci
- można tworzyć "lokalne" paczki zasobów, poza marketplace
- można wyłączyć kompilacje na wirtualnym dysku X:, Z:, itp. która zapobiega za długim ścieżkom do plików - ale wtedy trzeba długości pilnować samemu (256 znaków, limit CMD na windowsie)
- teraz działają 4-bitowe stringi UTF, obsługę w grze oczywiście trzeba dodać samemu
GameMaker Studio 2 na komórki taniej!
Świetna wiadomość dla użytkowników GMS - wersja na komórki od dzisiaj ZNACZNIE taniej.
Z dotychczasowej ceny 399$ (ponad 1500 zł!) zjechano do 199$ (ok. 760zł). To teoretycznie wciąż drogo - ale pamiętajmy, jeśli mamy dobry pomysł na grę i przygotujemy go sobie dobrze najpierw pod Windowsa, potem wystarczy już tylko kupić licencję i poprawić grę na docelowych platformach. Zresztą, do iOS i tak trzeba mieć komputer od Apple, oraz najlepiej iPhone i iPada więc licencja to najniższy koszt.
Licencja na eksport do Amazon Fire wynosi 99$, ale... ma ktoś z was Kindle ?
Wielkie zmiany i nowości w GML pod koniec roku !!!
Na taką informację czekaliśmy od dawna. GameMakerStudio 2 w końcu czekają konkretne zmiany, poprawiające i dodające mnóstwo brakujących funkcjonalności do języka GML!!!
Pełna lista tutaj: yoyogames.com/blog/514/gml-updates-in-2019 - ale postaram się wam przybliżyć o co chodzi (zwłaszcza tym który angielski sprawia problemy).
Dereferencje tablic i struktur.
GMS 2 wprowadził zmianę, która pozwala wstawić tablicę do tablicy. Tak naprawdę teraz tablice 2D to własnie tablica w tablicy. Niestety, odczyt takiej zagłębionej tablicy nie jest łatwy, trzeba bowiem "podtablicę" przypisać najpierw do zmiennej.
Zmiany to poprawią i będzie można napisać tak:
kodvar a = my_array[1][4][0][2];To samo dotyczy map, list i gridów:
kodvar a = my_list[| 5][# 5, 6][? "key"]; // odczyt 5 elementu listy, potem pozycji 5,6 grida, potem klucza mapy w tymże gridzie
Skrypty i funkcje można napisać teraz wszędzie i przypisać do zmiennej.
Zamiast tworzyć skrypt, od teraz będzie można napisać:
kodfunction my_script(a,b){return a+b;}Poza faktem, że można zrezygnować z argument0,...,.argment15, można też przypisać funkcję do zmiennej (jak w JS) i ta zmienna automatycznie zostaje nazwą funkcji. Powala to też na tymczasowe funkcje:
kodvar my_script = function(a,b){return a+b;} // bez "var" funkcja będzie globalnaMinusem jest to, że takie funkcje stracą dostęp do zmiennych tymczasowych zdefiniowanych poza nimi.
Wszystkie istniejące skrypty zostaną przekonwertowane po odpaleniu w GMS 2.3 do nowego formatu, a domyślnie zostanie argument0, argument1 itp.
Funkcje będzie też można dzięki temu zrobić w jednym pliku, a nie każda osobno. Będzie trzeba się przestawić z mówienia "skrypt" na "własna funkcja" - chociaż na finalne nazewnictwo poczekamy, na forum YYG już są na ten temat narzekania.
Lekkie obiekty
Będzie można zdefiniować własne obiekty, bez jakichkolwiek wbudowanych zmiennych (x, y, image_index itp.) - coś na zasadzie "struct" z innych języków czy właśnie obiektu z Javascriptu.
kod
var a = {
name: "Buty z borsuka",
price: 500,
def: 20,
desc: "Te buty zrobiłem ręcznie",
can_buy: function() { return global.gold > price; }
};
konstruktor "new"
konstruktor "new" pozwoli na utworzenie instancji obiektu (coś jak instance_create dla lekkich obiektów).
kod
function Item(n,p){
name = n;
price = p;
};
var buty = new Item("Gwiezdne kapcie", 300);
Łapanie wyjątków
GMS2 wprowadzi funkcjonalność wyłapywania błędów w grze, bez wywalania fatal errorów.
kod
try {
var b = my_array[-1];
} catch ex {
// w zmiennej ex będzie błąd, zapewne "Index out of bounds" w tym przypadku
} finally {
// kod który będzie wykonany zawsze po try-catch, w sumie to bez finally za klamrą też powinien się wykonać
}
Garbage collector
Będzie usuwał zmienne które wyparowały z pamięci. Nie jest jeszcze jasne czy, ds_xxx też znikną, jak nie będą przypisane do żadnej zmiennej, bo tego YYG nie napisało. Ale logicznym by było, zeby tak się stało.
Od wersji 2.2 GMS, stringi będą rzutowane na liczby w przypadku działań
Ku zaskoczeniu YYG ogłosiło, że od wersji 2.2.2 dla zarówno standardowych, jak i eksportów YYG, włącza obsługę typowania dynamicznego string->liczba (w drugą stronę o dziwo nie).
yoyogames.com/.../gml-consistency-in-version-2-2-2
Na czym to polega? Otóż jeśli napiszemy:
kodvar = 5 + '6';to otrzymamy 11, a nie błąd kompilacji. Każdy string, który jest poprawną liczbą, zostanie przekonwertowany i nie wywali błędu.
Prawidłowe liczby to np. "5", "+"5, "-5", "5.5", "5e", "5cokolwiek" - wszystko, co przekonwertowała by też funkcja "atof" z języka C. Wszystkie znaki inne niż cyfry zostaną odrzucone, o ile udało się już coś skonwertować.
Może to powodować trochę błędów - innych niż do tej pory, na co warto zwrócić uwagę.
Przypominam też, że o ile 5 + "6" to 11, to już "5" + 6 powinno dać nam... błąd.
Wprowadzi to niestety nieco zamieszania i chyba dotychczasowe, mniej elastyczne podejście mimo generowania błędów było lepsze. Z drugiej jednak strony, podobno w niektórych eksporterach to już tak działało, więc teraz zostało "wyrównane".
Przetestuj pełną wersję GMS2 za darmo!
Z okazji Global Game Jamu, który odbywa się w ten weekend, YYG rozdaje wszystkim chętnym klucz do pełnej wersji Desktop programu, działający od piątku do końca stycznia.
Osoby które z niego skorzystają, mogą kupić potem GMS 20% taniej.
Więcej info: yoyogames.com/.../global-game-jam-jar-2019-licence-tips-resources
Pierwszy temat w drugim sezonie ligi 24
Dzisiaj - testowo - rusza drugi sezon ligi 24. Temat będzie prosty, na wykonanie gry będzie cały weekend (piątek 18:00 - poniedziałek 00:00).
Tym razem nie chodzi tyle o zrobienie samej gry, co przetestowanie czy wszystko działa (osobna punktacja, osobny sezon, upload plików).
Przypominam, że w lidze może brać udział każdy, kto zgłosi grę (niekoniecznie wykonaną w GM), w temacie ligi w czasie jej aktywności. Nie trzeba dawać kodu źródłowego.
Update:
Dodałem brakujące wpisy puktacji z tur #156, #157, #158 ! Co prawda linki do gier na forum nie działały, ale i tak wzuciłem zipy z infomracją o tym i punktację (wygląda, ze niektórzy głosowali już po zakończeniu, wiec sugerowałem sie kolejnością w postach).
Mała aktualizacja strony
Wskazówka:
Dzisiaj dokonałem wrzutki kilkudziesięciu zmian (optymalizacje i nowości), na łącznie ponad 1000 linijek kodu. Testowałem je w wolnych chwilach przez pół roku, więc mam nadzieję, że wszystko działa jak trzeba. Najważniejsze z nich to:- Sezony w lidze 24, osobna punktacja, wyświetlanie wyników na stronie głównej w formie podium, animowany zegar w HTML5, przeogromny refactoring kodu
- połączanie dwóch stron nowości z forum w jedną, kolorowanie ikonek tylko nieprzeczytanych postów
- zmiany w JS i CSS, przygotowanie do porzucenia mootools i przejście na jQuery
Artykuły:
- tryb pełnego ekranu w Akademii, która mam nadzieję wystartuje do wiosny z kursem dla początkujących (powrót Catch the Clown!)
- poprawnie wyliczanie średniej ocen (tzn. zamiast 9.99 możliwe jest 10.0)
- orientacyjny czas czytania artykułów
- ikony wersji GMa w artykułach i plikach (muszę jeszcze je ręcznie ustawić w panelu)
Uwaga!
Jeśli znajdziecie jakieś błędy, albo macie uwagi - zgłaszajcie
Nowy główny menadżer w YoYoGames - Staurt Poole
Po tym jak we wrześniu odszedł James Cox (którego działania nie pokrywały się z wizją Mike'a i jak wiemy z jego bloga, głównie to, oraz brak wizji poprawy mimo odejścia Jamesa, skłoniły również Mike'a do odejścia), nowym menadżerem został Stuart Poole. Stuart pracuje w firmie od 2010 roku, w trakcie gdy ja tam pracowałem był moim "wydawcą" gier.
Opcje teraz są dwie - jako stary wyjadacz, Stuart będzie mocno cisnął na Playtech (bo to on odpowiada teraz za kontakty z nimi) na pewne rzeczy, aby rozwijać GMS2.
Druga opcja jest taka, że Mike pewnie wiedział, że ten awans nadejdzie, a mimo to odszedł, zatem Stuart może mieć już zupełnie inną wizję niż w 2012, gdy tam pracowałem i niestety nic lepszego się nie wydarzy.
Najbliższe miesiące pokażą, oby jednak wszystko poszło w dobrą stronę!
Źródło: gamesindustry.biz/articles/2019-01-16-yoyo-games-promotes-stuart-poole-to-general-manager
Najnowsze wersje GameMakera:
wydana 75 dni temu
wydana 3 dni temu
wydana 9 dni temu