Järjestelmäkäsikirja



Pelinkirjoitus-moduli




Yleistä

Pelinkirjoitus-moduli (Writers-module) huolehtii pelin kirjoittamis osuudesta. Sen avulla käyttäjät voivat luoda ja käsitellä pelin eri komponentteja; paikkaoja tavaroita ja ominaisuuksia, sekä määritellä näiden välisiä riippuvuuksia. Riippuvuuksien määrittely tapahtuu määrittelemällä pelille tapahtumia.

Vaatimuksena oli että peliä on mahdollista muokata mistä päin maailmaa tahansa. Niimpä pelin muokkaus tapahtuukin WWW-pohjaisen editorin kautta. Moduli- lähettää käyttäjälle hänen WWW-selailijaan HTML-sivuja, joita tässä dokumentissa kutsutaan muokkaussivuiksi. Näiden muokkaussivujen avulla käyttäjä rakentaa peliä. Jokaisen muokkaussivulla on vakio yläosa, jonka avulla käyttäjä pääsee liikkumaan eri muokkaussivulta toiselle. Sivujen runko osalla pelaaja määrittelee haluamansa tiedot ja lähettää ne systeemillemme joka suorittaa halutut toimenpiteet.

Toteutus

Jokaiselle eri seikkailun komponentille on oma muokkaussivunsa.

Jokaisella sivulla on vakio yläosa, jossa olevia buttoneita käyttämällä pelin kirjoittaja pääsee liikkumaan muokkausivulta toiselle.

Sivun "runko osalla" määritellään ko komponentin tiedot ja käytettävissä on SAVE- ja DELETE- buttonit, jotka suorittavat nimensä mukaisen toiminnan.

Runko osan alapuolella ovat NEW- ja OPEN-buttonit, sekä SELECT-form, jolla valitaan muokkausta varten avattava komponentti.

Seikkailun muokkaussivu on siinä mielessä erikoisessa asemassa että käyttäjällä on mahdollisuus käyttää sitä ainoastaan mikäli hänellä on riittävästi oikeuksia. Käytännössö write_all-, teacher- tai administration-oikeudet.


Liittymät systeemin muihin osiin

Moduli käynnistyy kutsuttessa start_we-scriptiä.

Writer-moduli käyttää Authorise- ja DatabaseManagement-moduleiden funktioita.

Liittymät esteisiin


Writers-modulin jako alimoduleihin


Generate-pages-moduli

Yleistä

Generate-pages-moduli luo kaikki käyttäjälle lähetettävät muokkaussivut. Muokkaussivuilla on vakio yläosa, jonka avulla liikutaan muokkaussivulta toiselle. Huomioitavaa on että ko liikkuminen EI-talleta ko sivun tietoja. Lopulla muokkaussivulla on ko sivun runko osa, jonka avulla käsitellään ko sivun komponenttia (paikkaa, esinettä...).

Toteutus

Vakio yläosa
Muokkausivujen yläosa on yksi formi, jossa painonappeina seuraavat napit; "LOCATION"-, "ITEM"-, "PROPERTY"-, "ACTION"-, "PICTURE"- tai "HELP".

Painettaessa joyain näistä kutsutaan top_buttons-scriptiä

Loppuosa
Yläosan jälkeen tulee jokaiselle muokkaussivulle ominaiset asiat. Ko asiat on sisällytetty yhden formin sisälle ja aina kun muokkaussivulla halutaan tehdä jotakin kutsuu formi ko sivun scrriptiä.
Muokkaussivujen ulkoasut:
Funktiot, jotka luovat ko muokkaussivuja ja joita muut writers interfacen modulit kutsuvat.

Location-moduli

Yleistä

Location-moduli huolehtii kaikesta paikkojen käsittelyyn liittyvistä asioista. Pelaajalla on mahdollisuus luoda uusia paikkoja, muuttaa paikan nimeä, kopioida paikan informaatio toiselta WWW-serveriltä, poistaa paikka ja listata tietoja pelin paikoista. Paikka on perusrakenteeltaan HTML-tiedosto. Paikkaan voidaan liittää toimintoja. Toiminnot ovat kuitenkin itsenäisiä komponentteja ja niiden luominen tapahtuu tapahtuman-muokkaussivun kautta. Paikan muokkaussivulla on kuitenkin linkit jo määriteltyihin tapahtumiin ja mahdollisuus kutsua suoraan uuden tapahtuman lisäys-funktiota.

Toteutus

Moduli on toteutettu siten että käyttäjälle lähetetään HTML-muodossa oleva paikan muokkaussivu, jonka avulla hän voi käsitellä eri paikkoja ja niiden tietoja. Kun käyttäjä on valmis hän painaa haluamaansa submit-nappulaa. Painettaessa mitä tahansa nappulaa kutsutaan aina location-scriptiä, joka huolehtii varsinaisesta toteutuksesta.

Paikan -muokkaussivulla on:


Item-moduli

Yleistä

Item-moduli huolehtii kaikesta esineiden käsittelyyn liittyvästä. Esineitävoidaan luoda, poistaa, uudelleen nimetä ja lisäksi käyttäjä voi listata pelin esineet. Esineellä on neljä ominaisuutta, sillä on; paikka missä se sijaitsee, nimi , kuvatiedosto (optionaalinen) ja kuvaus.

Toteutus

Käyttäjälle lähetetään esineen muokkaussivu, jossa hän määrittelee esineen tiedot haluamallaan tavalla. Täytettyään haluamansa tiedot hän kutsuu item-scriptiä, joka huolehtii käyttäjän haluamasta toimenpiteestä. Esinneen muokkaussivulla on: Liitteenä esineen muokkaussivun ulkoasu.

item-scripti


Property-moduli

Yleistä

Property-moduli huolehtii kaikesta ominaisuuksien käsittelyyn liittyvästä. Ominaisuuksia voidaan luoda, poistaa, uudelleen nimetä ja lisäksi käyttäjä voi listata pelin ominaisuudet. (tarkoittaa tietenkin ominaisuuksi joita pelaajala on pelissä) Ominaisuudella on neljä "ominaisuutta" :-), sillä on; arvo, nimi , kuvatiedosto (optionaalinen) ja kuvaus.

Toteutus

Käyttäjälle lähetetään ominaisuuden muokkaussivu, jossa hän määrittelee ominaisuuden tiedot haluamallaan tavalla. Täytettyään haluamansa tiedot hän kutsuu property-scriptiä, joka huolehtii käyttäjän haluamasta toimenpiteestä. Ominaisuuden muokkaussivulla on: Liitteenä ominaisuuden muokkaussivun ulkoasu.

property-scripti


Picture-moduli

Yleistä

Picture-moduli huolehtii kaikesta kuviatiedostojen käsittelyyn liittyvästä. Kuvatiedostoja voidaan kopioida toisesta WWW-palvelijasta, uudelleen nimetä ja poistaa. Pelin kitjoittaja voi käyttää kuvia ominaisuuksien ja esineiden kuvaajana sekä sijoittaa kuvia paikan HTML-sivulle. (LocationData).

Toteutus

Käyttäjälle lähetetään kuvien muokkaussivu, jossa hän valitsee toiminnon jonka haluaa suorittaa. Painettuaan haluamaansa submit-nappulaa kutsutaan picture-scriptiä, joka huolehtii käyttäjän haluamasta toimenpiteestä. Kuvan muokkaussivulla on: Liitteenä ominaisuuden muokkaussivun ulkoasu.

picture-scripti


Actions-moduli

Yleistä

Action moduli huolehtii nimensä mukaisesti tapahtumien muokkauksesta.

Kuytsuttaessa ko modulia ilman ActionID:tä palautetaan käytäjälle sivu, jolta hänen pitää ensin valita minkä paikan tapahtumia hän haluaa muokata. Valittuaan haluamansa paikan käyttäjä voi joko luoda uusia tapahtumia tai vaihtoehtoisesti avata jo olemassa olevan tapahtuman muokkausta varten.

Kun pelaajalla on tapahtuma muokattavanaan hänellä on käytössään seuraavat mahdollisuudet:

Toteutus

Sivulla on piilotettuina objekteina seuuraavat tiedot:

Seuraavat submit-buttonit:

Lisäksi sivulla on lukuisa joukko SELECT-formeja joita käytetään teon ehtojen ja teon osien määrittelyyn.

Liitteenä tapahtuman muokkausivun ulkoasu



top_buttons-scripti

Top_buttons on scripti jota kutsutaan painettaessa writer interfacen yläosassa olevia buttoneita. Scripti palauttaa käyttäjälle ko buttonin määritelemän editoimissivun.

Buttonit jotka tunnistetaan ovat:

Lisäksi scipt olettaa löytävänsä seuraavat hidden objektit:


olink_done-script

Olink_done on scripti jota kutsutaan link_obsctacle modulista käsin.

Script liittää inputtina saamansa obstaclen tiedot ko actioniin ja luo actionin editoimis sivun.

Script olettaa löytävänsä seuraavat inputit.