^Tartalom^- - - Következő oldal »

1. fejezet


Változások

A GM 7-ben számos fontos változás van a 6.1-es változathoz képest, különösen egy új bővítő mechanizmus tekintetében. Alább a legfontosabb változásokról lesz szó.

Összeférhetetlenség

A GM 7 egy átalakított állományformátumot használ. Ennek következtében a fájlnevek kiterjesztése most .gmk. Az új változat ennek ellenére még beolvassa az előző verzióval készült .gm6 fájlokat és teljesen kompatibilis az ilyen állományokkal.

Bővítő csomagok

A legfőbb változás a GM 7-ben a bővítő csomagok mechanizmusa. A bővítő csomagok adhatnak új akciógyűjteményeket a GM-hez vagy új függvényeket, használva DLL vagy GML állományokat. Egy új elem adódott az erőforráslistához, melyben a felhasználó bejelölheti, hogy mely bővítőcsomagokat használja, melyek aztán önműködően beépülnek a rendszerbe. Az akciók objektum alakban vannak mutatva, a függvények pedig színkódolva a szkriptszerkesztőben, mutatva a függvénylistában. A bővítőcsomagoknak lehetnek súgófájljai, melyek önműködően beépülnek a súgó menübe. Ezenkívül az összes szükséges állomány önműködően hozzáadódik az EXE-re fordított játékhoz. Három bővítőcsomag az alapfelszereltség:
GM Printing: számos függvény az alakzatok (shape), szövegek, sprite-ok, screenshot-ok, stb. nyomtatásához és tartalmaz párbeszédablakokat a nyomtató kiválasztásához és beállításaihoz.
GM Transitions: több, mint 60 pályaátmenet van hozzáadva a programhoz.
GM Windows Dialogs: függvények a legtöbb alapvető Windows párbeszédablakhoz az üzenetek, adatbeviteli dobozok, állománykiválasztás, stb. részére.
Elég könnyű elkészíteni a saját bővítőcsomagjaidat. Van egy külön erre használható program. További tájékoztatásért nézd meg a http://www.yoyogames.com/extensions oldalt. A bővítő mechanizmus afféle lecserélése és kiemelése a jelenlegi DLL mechanizmusnak (amely elérhető maradt).

A játékok közzététele

Egy "Megjelentet" (Publish) gomb adódott az eszköztárhoz. Ez a honlapunkra vezet, ahol elkészült játékodat elérhetővé teheted a közönség számára.

Felbukkanó ablakok

A felbukkanó ablak mechanizmus jelentősen továbbfejlődött. A felbukkanó képernyők, mint videók és képek, alapértelmezésben most a fő játékablakban jelennek meg. Számos új beállítás van, pl. a méretezés változtatása. Más képformátumok is használhatók és a rich text állományok most már tartalmazhatnak képeket.

Játék információ

A játék tájékoztatója most alapértelmezésben a játékablakban jelenik meg és a bezárás gombbal zárható.

Elkülönített bezárás gomb esemény

Most beállítható, hogy a Bezárás gomb úgy viselkedjen, mint az Escape gomb vagy sem. Ha nem, van egy új esemény az Other eseményekben, amely akkor történik meg, amikor a felhasználó a bezárás gombra kattint. Tehát most különböző viselkedés állítható be a bezárás gombhoz és az Escape billentyűhöz.

Pálya átmenetek

A pálya átmenetek mechanizmus megváltozott és kibővült, nagyobb szabályozási lehetőséget adva az átmenetek fölött és hozzáadásra került sok új átmenet, mint fokozatos előtűnések, képek összenyomása, pályaképek keverése, forgatások, stb. Lehetőség van saját szkriptek meghatározására is az átmenetek elvégeztetésére (bár ez elég bonyolult dolog). Egy bővítőcsomag is rendelkezésre áll további átmenetekkel.

Adatszerkezetek

Számos további, adatszerkezetekkel foglalkozó függvény van. Például az adatszerkezetek most másolhatók, vannak függvények az adatszerkezetek szövegbe (stringbe) írására és visszaolvasásukra. Ezt a szöveget lehet aztán használni pl. az adatszerkezet fájlba mentésére. Vannak még függvények a rács adatszerkezetekhez is, pl. rácsok részeinek másolása és hozzáadása.

Állományok beemelése

A fájloknak a futtatható programba való beemelésének mechanizmusa meglehetősen kibővült. Most van választási lehetőség arra, hogy a játék szerkeszthető változata magába foglalja-e a fájlokat vagy sem. Vannak függvények a fájlok kimentésére különböző időpontokban, mint a játék kezdete.

Képek és hátterek hozzáadása alfa csatornával

Most vannak a sprite_add_alpha() és sprite_replace_alpha() függvények egy kép hozzáadásához vagy cseréjéhez egy fájlból, aminek van egy alfa csatornája (mint a png fájlok), mely szebb átlátszósági hatást eredményez. Hasonló függvények léteznek a hátterekhez.

Új regisztrációs mechanizmus

A 7-es változat egy új regisztrációs mechanizmust használ. Az ingyenes és a regisztrált változatot most Lite és Pro kiadásnak nevezik. Van egy tökéletesített online vásárlási eljárás, amely azonnal felminősíti Pro-ra a programot, mihelyt a megvásárlása megtörtént. A régebbi, 5-ös és 6-os verziók regisztrációs kulcsai felcserélhetők a 7-es változat aktiválási kódjaira.

További változások

Számos további változás és kiegészítés van. Itt van néhány legfontosabb.
- A kiválasztott irány(ok) a Move Fixed akcióban most pirossal van jelölve.
- Mikor fut egy játék, a betöltési csík meglehetősen korábban van mutatva, hogy aztán tisztán a játék fusson.
- Az összes akció át van nevezve a könnyebb tájékoztatásért.
- Képek és hátterek hozzáadásakor vagy cseréjekor vagy felbukkanó képek használatakor sok különféle fájlformátum használható, beleértve a jpg, tif, bmp, gif, png, stb.
- A képszerkesztőben most van parancs (CTRL-A) az egész kép kijelölésére.
- Egy eszköztár gomb lett hozzáadva a fő lapon a játék önállóan futtatható formában történő mentésére.
- A játék beállítások állandók listájában gombok lettek hozzáadva a fel és le mozgatásukhoz a listában és egy állandó beszúrásához a pillanatnyi fölé.
- A message_position(-1,-1) függvény most beállítja az üzenetdobozt a képernyő közepére.
- Nyomtatás gombok lettek hozzáadva a szkript- és kódszerkesztőhöz.
- Mentés és nyomtatás gombok lettek hozzáadva a hibakereső infó laphoz.
- Események lettek hozzáadva, melyek megtörténnek, mikor egy példány egy nézeten kívül van, vagy keresztezi a nézet határát.
- A hibamutató lap a játékban továbbfejlődött, és megengedi a másolását a vágólapra.
- random_set_seed(seed), random_get_seed(), és randomize() függvények lettek hozzáadva.
- A képszerkesztőben most már lehet ugrani egy kép következő/előző alképére.
- A globális változók most meghatározhatók a globalvar kulcsszóval. Ezután már nem szükséges megadni a global szót és egy pontot eléjük.
- A játék alatt az F9 csinál egy képlopást (screenshot-ot), hacsak ki nincs kapcsolva a globális játékbeállításokban.
- Hozzáadódtak a draw_line_width(x1,y1,x2,y2,sz) és draw_line_width_color(x1,y1,x2,y2,sz,col1,col2) vonalak rajzolásához egy szélességértékkel.
- A d3d_start() és d3d_end() most visszaadja, hogy sikeres volt-e.
- Most beállítható a cursor_sprite változó, hogy önműködően rajzoljon egy sprite-ot a kurzor helyére.
- A DLL függvények argumentumainak legnagyobb száma 16-ra lett növelve.
- Az Other beállításoknál most megadható verziótájékoztatás a játéknak, ami beépül a futtatható változatba.
- Hozzáadódtak a sprite_save(ind,alkep,fnev) és background_save(ind,fnev) függvények az erőforrások bitmapként mentéséhez.
- Hozzáadódott egy program_directory változó, amely tárolja a futtatható játék helyét.
- Hozzáadódott egy c_orange állandó.
- ...

Javított hibák

A következő hibák kerültek javításra.
- Megoldódott a probléma, amely néha sérült fájlokhoz vezetett. A 7-es változat olvassa azokat az állományokat, amelyek előzőleg hibásnak voltak jelölve.
- Egy probléma a valós (real) pontossággal megoldódott. Ez a dátumot és időt kezelő függvényekkel kapcsolatos gondot is megoldotta.
- Egy hiba az idővonalakban javításra került, mikor kettőzés történik egy előző pillanathoz.
- A bitenkénti értékadás most megfelelően működik és nem ad nyelvtani hibákat.
- A show_message() akciók és függvény most a képernyő közepén tartja az üzenetablakot.
- A hó és robbanás effektek együttes használata most megfelelően működik.
- Egy sebezhetőség a futó játékból való információ kinyerését illetően eltávolítódott.
- A hibakereső információs űrlap már nem ugrik a felső helyzetbe.
- A GM és a vele készült játékok most megfelelően működnek Windows Vista alatt, bár ennek következtében a játékok fájlmérete meglehetősen megnőtt.
- Mikor másolunk valamit a kódszerkesztőben, a betűtípus most megfelelő, és színkódolás van alkalmazva.
- A háttereknek már nem zavarosak a beállításai, mikor egy új kép betöltődik.
- Egy "off-by-one" hiba kitöltött téglalapok rajzolásánál megoldódott.
- A játékablak most látható, mielőtt végrehajtódik a Létrehozás esemény.
- Megoldódott egy hiba a function median() függvényben.
- Megoldódott egy összeomlás, mikor átméreteződik egy rács.
- Az értékek összehasonlítása és keresése a rácsokban most megfelelően működik sztring értékeknek.
- Egy nem átlátszó sprite szerkesztése már nem fogja néha átlátszóvá alakítani az előzetes képben.
- Megoldódott egy hiba az ütközésellenőrzésnél méretezett példányokkal.
- Megoldódott egy hiba az ütközésellenőrzésnél, amikor pl. vonalak és téglalapok nem egészszámú koordinátákon vannak.
- A file_bin_open függvény most létrehozza az állományt, ha még nem létezik.
- Ellenőrzések lettek hozzáadva az object_set_parent függvényhez a ciklusok elkerülése érdekében.
- Megoldódott egy hiba a pattogás (bounce) akciónál az átlós pattogással.
- Javítódott egy hiba az eső effektusban, mikor a szoba 1000 képpontnál magasabb volt.
- Megoldódott egy hiba, hogy a kép nélküli példányok állandóan Outside Room eseményt kaptak.
- Megoldódott egy hiba az Objektumok és Idővonalak közti akcióhúzással (ez már nem lehetséges).
- Megnövelődött a háttérűrlap minimális legkisebb magassága, hogy ne takarhassa az OK gombot.
- Javítódott egy hiba változók címzésénél egy példányban.
- Javítódott egy hiba, hogy (de)aktiválta a példányokat, ami nélkül egy sprite rosszul működhet.
- Javítódott egy hiba 0 hosszúságú nyomvonal rajzolásában.
- Megoldódott egy hiba, hogy az Ismétlés (Repeat) blokkon belüli Exit Event akció nem tudott kilépni az eseményből.
- Pontosítódott a betöltési csík helyzete.
- Javítódott egy hiba a példányok eltávolításában a szobán kívül a szobaszerkesztőben (Room editor-ban).
- ...