Linki do ciekawych stron

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".

Komentarze (łącznie 8):
n
nowy_user (Pon., 04 Mar. 19, 21:31)
#1

Dzięki za info, co prawda sam nie korzystam z GMS2 , ale jest to coś, co warto miec z tyłu głowy. Rozumiem, że ta zmiana to ujednolicenie pewnych standardów , i tu duży plus dla Yoyo, że pracują nad rozwojem GMLa. Byłoby jednak dobrze, gdyby np. w ustawieniach pozostawali opcje wyłączenia konwersji stringów na liczby, choćby do celów debugacyjnych. Już wyobrażam siebie godzinami siedzącego nad jakimś bugiem, po czym dostrzegam, że niechcąco użyłem stringa zamiast liczby... normalnie GM powinien to zgłosić przy kompilacji, ale po nowych zmianach możemy żyć w błogiej nieświadomości.

gnysek (Wto., 05 Mar. 19, 10:06)
#2

Nie dodadzą takiej opcji, bo wersje YYCompiler zawsze tak działały, więc musieliby nagle dopisać nowy kod, a oni po prostu wszędzie go tak naprawdę uprościli (bo każda wersja, czy YYC czy VM korzysta w pewnym sensie z C++).

Konrad-GM (śro., 06 Mar. 19, 01:24)
#3

Nie rozumiem, co do tego ma C++, przecież to statycznie typowany język. Wprowadzają tylko zamieszanie, będzie jak z JS czy PHP, niby spoko, dla laików będzie to "oczywiste", ale gdy się zrobi nieumyślny błąd z dodawaniem stringa do liczby, to będzie go trudno potem znaleźć.

gnysek (śro., 06 Mar. 19, 10:04)
#4

No własnie korzystają z "atof", żeby nie waliło errorami.

Konrad-GM (Czw., 07 Mar. 19, 13:53)
#5

Raczej chodziło mi o fragment "bo wersje YYCompiler zawsze tak działały, więc musieliby nagle dopisać nowy kod" ale już chyba rozumiem, w YYC wprowadzili taką funkcję, ale w VM już nie, co zmusiło ich do ujednolicenia działania obu runtime-ów.

gnysek (Pią., 08 Mar. 19, 09:13)
#6

Szkoda, ze nie chciało im się w drugą stronę, ale jak rozumiem obecna zmiana powoduje mniej bugów do szukania (tzn. będą to bugi w grach, nie w runnerze). Zrzucili z siebie odpowiedzialność.

n
nowy_user (Pią., 08 Mar. 19, 10:21)
#7

Biorąc pod uwagę masową krytykę na forum YoYo w temacie GML consistency, ( widziałem Gnysek, że dorzuciłeś też swoje 3 grosze :-) . ) , obstawiam, że jednak zmiękną i poprawią to w najnowszej aktualizacji.

gnysek (Nie., 10 Mar. 19, 01:30)
#8

Nie, dla nich to rozwiązanie jest prostsze w utrzymaniu.

Najnowsze wersje GameMakera:

LTS
2026.0.0.16 • 2022.0.3.99
wydana 154 dni temu
Beta
2026.100.0.1182 •
2026.100.0.1126
•
 GMRT beta 0.22.4

wydana 7 dni temu
= IDE, = Runtime, = GMRT
Użytkownicy online
1 użytkownik aktywny:
gości: 1,
(~ostatnie 15 minut)
Discord
19 użytkowników online na discordzie:
🧁Cupcake🧁, MorDan, Carl-bot, Fox, GibkiKaktus, Sporek, GMRussell, 𝕯𝖎𝖆𝖓𝖆, RogerDodg3r, Murrri, Dyno, szmalu, Marco, Danieo, bagno, RuLing, l..., g..., Krzysiek1250
Shoutbox
Borek (15:13, 26.10.26)
Nie narzekam na ruch (sam napisałem, że przynajmniej jakiś ruch jest), ale martwi mnie jakość "gier", które nagle zaczynają się pojawiać z dupy. "Catch the clown" przynajmniej był stworzony przez człowieka, tak samo jak opis na forum :)
Wojo (11:49, 26.10.26)
Nie ma ruchu - narzekacie, jest ruch - narzekacie. Nie są to gry z najwyższej półki, ale każdy robi tak jak potrafi. Za starych gmclanowych czasów było wiele produkcji amatorskiej jakości, ale dzięki temu forum tętniło życiem.
Borek (16:08, 25.10.26)
Chodzi mi o ten INPUT, jedna linia, ciężko się tutaj pizse :) Ja wiem, że retro, ale trochę QoL nie zaszkodzi :D
gnysek (16:00, 25.10.26)
A co jest nienormalnego? :D Jest takie jak zawsze było, pełne retro ;) Zerknę, w następny weekend planuję lekki update strony. 3 wpisy to nie tragedia, ale jak będzie wiecej AI slopu to pewnie zacznę kasować.
Borek (19:01, 24.10.26)
Kurde, forum zaczyna zalewać gówno z Claude twórców... :/ ale w sumie jakiś ruch jest :D. P.S. gnysek weź ogarnij tu jakieś normalne okno do pisana shoutów, bo to jakaś masakra jest...
gnysek (23:05, 08.10.26)
Były takie próby, widać co z tego wyszło ;)
Kuzyn (17:06, 08.10.26)
może forum musi rozszerzyć działalność mocniej i skupiać ogólnie polski gamedev hihi
S
Sutikku (18:26, 05.10.26)
zapytaj onet zamknęło działalność, wizaz zamknęło działalność, krajobraz nie jest łatwy
Wojo (16:30, 28.09.26)
To świadczy o tym, że gmclan ma jeszcze duży potencjał, ale niestety nie jest on wykorzystywany tak jak należy.
Adriann (12:33, 28.09.26)
No włąśnie kurcze..nic tu się nie dzieje od lat a i tak wchodzę prawie coddziennie :D
Starsze wpisy znajdziesz w Archiwum.
Ankieta
Ile zarobiłeś do tej pory na grach stworzonych w GM?