Mitä uutta?
Game Makerin versiossa 7 on useita tärkeitä muutoksia versioon 6.1 nähden. Erityisesti
uusi laajennusmekanismi on mainitsemisen arvoinen.
Seuraavaksi on selostettuna tärkeimmät muutokset.
Yhteensopimattomuudet
Versio 7 käyttää mukautettua tiedostomuotoa. Seurauksena tiedostonimillä on nyt pääte
.gmk. Uusi versio voi silti vielä lukea edellisellä versiolla luotuja
.gm6-tiedostoja ja on täysin yhteensopiva näiden tiedostojen kanssa.
Huonesiirtymissä on pieni yhteensopimattomuus. Edellisessä versiossa siirtymiä oli mahdollista
käyttää myös saman huoneen kuvaruutujen välillä. Enää tämä ei ole mahdollista. Siirtymiä
voidaan käyttää vain huoneiden välillä.
Erilaisten siirtymien määrä on kuitenkin lisääntynyt huomattavasti.
Laajennuspaketit (Extension packages)
Game Makerin version 7 suurin parannus on vasta esitelty laajennuspakettimekanismi.
Laajennuspaketit voivat joko lisätä Game Makeriin uusia toimintokokoelmia tai ne voivat lisätä
uusia funktioita käyttäen DLL:iä tai GML-tiedostoja. Resurssilistaan on lisätty uusi kohta,
jossa käyttäjä voi määrittää, mitä laajennuspaketteja käytetään. Nämä yhdistetään sitten
automaattisesti järjestelmään. Toiminnot näkyvät objekti-ikkunassa, funktiot on värikoodattu
skriptieditorissa ja ne näkyvät funktiolistassa. Laajennuspaketeissa voi olla ohjetiedostoja,
jotka lisätään automaattisesti Help (Ohje) -valikkoon.
Lisäksi kaikki tarvitut tiedostot lisätään automaattisesti pelin suoritettavaan versioon.
Game Makerin mukana tulee oletuksena kolme laajennuspakettia.
- GM Printing. Lisää suuren määrän erilaisia funktioita, joilla voidaan tulostaa muotoja,
tekstiä, kuvia, kuvakaappauksia, yms. ja sisältää mahdollisuuden valita tulostimen ja asettaa
tulostimen ominaisuudet.
- GM Transitions. Lisää yli 60 huonesiirtymää ohjelmaan.
- GM Windows Dialogs. Lisää funktioita, joilla voidaan luoda useimpia yleisiä Windows-ikkunoita,
kuten ilmoituksia, syöttöikkunoita, tiedostonvalintaikkunoita jne.
Laajennuspakettien luominen on melko helppoa. Tähän tarkoitukseen on olemassa oma ohjelmansa.
Katso osoitteesta
http://www.yoyogames.com/extensions
lisätietoa aiheesta.
Laajennusmekanismi tavallaan korvaa entisen DLL-mekanismin (jota voidaan vielä käyttää)
ja tekee sen kätevämmäksi.
Pelien julkaiseminen
Työkaluriviin on lisätty julkaisemispainike. Tämä vie sinut sivullemme, jossa voit helposti
saattaa valmiin pelisi avoimesti saataville.
Väliruudut (Splash screens)
Väliruutumekanismia on paranneltu huomattavasti. Väliruudut, kuten videot ja kuvat näytetään
nyt oletuksena pelin pääikkunassa. Uusia asetusmahdollisuuksia, kuten skaalauksen muuttaminen, on
lisätty, Nyt on lisäksi mahdollista käyttää muita kuvaformaatteja ja RTF (Rich Text File) -tiedostot
voivat nyt sisältää kuvia.
Game information (Pelitiedot)
Pelin tietoikkuna näytetään nyt oletuksena pelin ikkunassa ja se voidaan sulkea sulkemispainikkeesta.
Erillinen sulkemispainikkeen (close button) tapahtuma
Nyt on mahdollista määrittää, toimiiko pelin yläkulman sulkemispainike kuten Escape-näppäin vai ei.
Jos ei, tapahtumien Other-kohtaan lisätty uusi tapahtuma määrittelee mitä tapahtuu, kun käyttäjä
painaa sulkemispainiketta. Voit siis määrätä sulkemispainikkeelle ja Escape-näppäimelle erilaisen
käyttäytymisen.
Huonesiirtymät
Huonesiirtymämekanismia on muutettu ja laajennettu antamaan sinulle enemmän valtaa vaikuttaa
siirtymiin. Monia uusia siirtymiä, kuten häivyttämisiä, kuvien työntämisiä, huoneiden kuvien
sekoittamisia, kiertämisiä, ym., on lisätty. Nyt on myös mahdollista määrittää omia skriptejä
siirtymien toteuttamiseksi (tämä on kuitenkin jotakuinkin edistyneempää asiaa).
Tarjolla on laajennuspaketti, jossa on lisähuonesiirtymiä.
Tietorakenteet
Käytettävissä on useita lisäfunktioita tietorakenteiden käsittelyyn. Tietorakenteita voidaan nyt
esimerkiksi kopioida, tietorakenteiden kirjoittamiseksi merkkijonoon ja niiden lukemiseksi on nyt
myös funktioita. Tätä merkkijonoa voidaan sitten käyttää esim. tietorakenteen tallentamiseksi
tiedostoon. Ruudukkotietorakenteiden käsittelyyn on lisäksi uusia funktioita, mm. ruudukoiden osien
kopiointiin ja lisäämiseen.
Tiedostojen sisällyttäminen
Mekanismia tiedostojen sisällyttämiseksi pelin suoritettavaan versioon on laajennettu huomattavasti.
Jokaista tiedostoa kohti voidaan nyt määrittää tiedostonimi ja kohde, johon se tallennetaan.
Vaihtoehtona voidaan valita, sisällytetäänkö tiedostot pelin muokattavaan versioon. Lisäksi
on funktioita, joiden avulla tiedostot voidaan viedä muulloinkin kuin pelin alussa.
Kuvien ja taustojen lisääminen alfakanavan (alpha channel) avulla
Nyt on olemassa funktiot sprite_add_alpha() ja sprite_replace_alpha() kuvan lisäämiseksi
tai vaihtamiseksi tiedostosta, jossa on alfakanava (kuten png-tiedostoissa). Näiden avulla
voidaa luoda hienompia läpinäkyvyystehosteita. Taustoille on olemassa samanlaiset funktiot.
Uusi rekisteröintimekanismi
Versio 7 käyttää uutta rekisteröintimekanismia. Ilmaista ja rekisteröityä versiota kutsutaan nyt Lite-
ja Pro-versioksi. Uusi paranneltu suora ostoprosessi päivittää ohjelman heti, kun maksu on suoritettu.
Vanhojen versioiden 5 ja 6 rekisteröintiavaimet voidaan vaihtaa version 7 aktivointikoodeihin.
Muita muutoksia
Lisäksi on useita muita muutoksia ja lisäyksiä. Tässä on lista joistakin tärkeimmistä.
- Valitut suunnat Move Fixed -toiminnossa ovat nyt punaisen värisiä.
- Suoritettaessa peliä latauspalkki näytetään huomattavasti aiemmin, jotta on selvää,
että peli on käynnissä.
- Kaikki toiminnot on nimetty uudelleen, jotta niihin on helpompi viitata
(kirjan kanssa yhteensopivasti).
- Monia eri tiedostomuotoja voidaan nyt käyttää lisättäessä tai vaihtaessa kuvia ja taustoja
tai käytettäessä välikuvia. Näihin sisältyvät jpg, tif, bmp, gif, png, jne.
- Kuvaeditorissa on nyt komento (Ctrl-A) koko kuvan valitsemiseen.
- Ohjelman työkaluriviin on lisätty painike pelin tallentamiseksi suoritettavaan (.exe)
muotoon.
- Pelin asetusten Constants-listaan on lisätty painikkeet vakioiden siirtämiseksi ylös tai alas
listassa ja vakion lisäämiseksi valitun yläpuolelle.
- message_position(-1,-1) -funktio asettaa nyt viestilaatikon ruudun keskelle.
- Tulostuspainikkeet on lisätty skripti- ja koodieditoriin.
- Tallennus- ja tulostuspainikkeet on lisätty debuggerin tietoikkunaan.
- On lisätty tapahtumia, jotka tapahtuvat, kun instanssi sijaitsee näkymän ulkopuolella tai kohtaa
näkymän reunan.
- Pelin virheet osoittava ikkuna sallii nyt virheiden kopioimisen leikepöydälle.
- Funktiot random_set_seed(seed), random_get_seed(), ja randomize() lisättiin.
- Kuvaeditorissa on nyt mahdollista liikkua seuraavaan/edelliseen kuvan alikuvaan.
- Globaalit muuttujat voidaan nyt esitellä käyttämällä avainsanaa globalvar. Tämän esittelyn
jälkeen ei ole enää tarpeellista lisätä sanaa global ja pistettä muuttujan eteen.
- Pelin aikana F9 ottaa nyt kuvakaappauksen, ellei tätä ole otettu pois päältä pelin
asetuksista.
- Funktiot draw_line_width(x1,y1,x2,y2,w) ja draw_line_width_color(x1,y1,x2,y2,w,col1,col2)
on lisätty viivojen, joilla on paksuus, piirtämiseen.
- d3d_start() ja d3d_end() palauttavat nyt totuusarvon onnistumisen mukaan.
- Voit nyt asettaa muuttujan cursor_sprite piirtääksesi automaattisesti kuvan hiiren osoittimen
sijaintipaikkaan.
- DLL-funktioiden argumenttien enimmäismäärä on kasvatettu 16:een.
- Pelin asetusten Other-kohdassa voit nyt määrittää pelin versiotietoa, joka sulautetaan
suoritettavaan versioon.
- Lisätty sprite_save(ind,subimg,fname)- ja background_save(ind,fname)-funktiot resurssien
tallentamiseksi bittikartoiksi.
- Lisätty muuttuja nimeltä program_directory, joka sisältää pelin exe-tiedoston sijainnin.
- Lisätty vakio nimeltä c_orange.
- ...
Korjatut virheet
Seuraavat virheet on korjattu.
- Ongelma, joka ajoittain johti korruptoituneisiin tiedostoihin, on korjattu.
Versio 7 lukee tiedostoja, jotka aiemmin merkittiin korruptoituneiksi.
- Rajoitetun reaalilukutarkkuuden ongelma on selvitetty. Tämän pitäisi myös ratkaista päivämäärää
ja aikaa käsittelevien funktioiden ongelmat.
- Virhe aikajanoissa, joka aiheutui, kun monistettiin aikaisempaan hetkeen, on korjattu.
- Bittitason operaattoreiden sijoitukset toimivat nyt oikein, eivätkä anna syntaksivirheitä.
- show_message() -toiminnot ja -funktio pitävät nyt viestiruudun ruudun keskellä.
- Lumisade- ja räjähdystehosteet yhdessä käytettynä toimivat nyt oikein.
- Haavoittuvuus, joka mahdollisti tietojen saamisen käynnissä olevasta pelistä, on poistettu.
- Debuggerin tietoruudut eivät enää automaattisesti siirry yläreunaan.
- Game Maker ja sillä luodut pelit toimivat nyt moitteettomasti Windows Vistassa. Tästä
johtuen kuitenkin pelien tiedostokoko on kasvanut suuresti.
- Kun koodieditoriin kopioidaan jotakin, tekstin fontti näkyy nyt oikein ja värikoodaus tulee
näkyviin.
- Taustat eivät enää menetä asetuksiaan, kun uusi kuva ladataan.
- Virhe, joka aiheutti heiton yhdellä kuvapisteellä piirrettäessä täytettyjä suorakulmioita,
on korjattu.
- Peli-ikkuna tehdään nyt näkyväksi jo ennen Create-tapahtumien suorittamista.
- median()-funktion virhe on korjattu.
- Korjattu ongelma, joka johti pelin kaatumiseen ruudukon kokoa muutettaessa.
- Ruudukon arvojen vertailu ja etsiminen toimii nyt moitteetta myös merkkijonoarvojen
tapauksessa.
- Ei-läpinäkyvää kuvaa muokatessa kuva ei enää välillä muutu läpinäkyväksi esikatselussa.
- Skaalattujen instanssien yhteentörmäyksen tarkistamisessa tapahtuva virhe on korjattu.
- Korjattu virhe mm. viivojen ja suorakulmioiden (joiden koordinaatit eivät ole kokonaislukuja)
yhteentörmäyksessä.
- Funktio file_bin_open luo nyt tiedoston, jos sitä ei ole olemassa.
- Funktioon object_set_parent on lisätty tarkistus, jotta vältetään kierrot.
- Bounce-toiminnon virhe viistoissa kimpoamisissa on korjattu.
- Sadetehosteen virhe, joka aiheutui huoneen ollessa yli 1000 kuvapistettä korkea,
on korjattu.
- Korjattu virhe, joka aiheutti kuvattomien instanssien aiheuttavan jatkuvasti Outside room
-tapahtumansa.
- Korjattu virhe, joka aiheutui vedettäessä toimintoja objekti- ja aikajanaikkunoiden
välillä (se ei ole enää mahdollista).
- Taustaikkunan vähimmäiskorkeutta on kasvatettu tehden näin mahdottomaksi
OK-painikkeen piilottamisen.
- Korjattu virhe muuttujiin viittamisessa instanssissa sen jälkeen, kun se on vaihtanut
objektia saman askeleen aikana.
- Virhe kuvattomien instanssien (de)aktivoinnissa, mikä aiheutti virheellistä toimintaa,
on korjattu.
- Korjattu virhe 0 pikseliä pituisen polun piirtämisessä.
- Korjattu virhe, joka aiheutti sen, että Exit Event -toiminto Repeat-toiminnon sisällä ei
johtanut tapahtumasta poistumiseen.
- Pelin latauspalkin sijainti on korjattu.
- Huone-editorissa huoneen ulkopuolella sijaitsevan instanssin poistamisessa aiheutuva virhe
on korjattu.
- ...