Kirjautuminen

Haku

Tehtävät

Keskustelu: Projektit: Java-Nightfall

fergusq [09.08.2015 15:18:03]

#

Kieli: Java
Tekijät: stravant, fergusq
Lisenssi: MIT
Kotisivu: http://www.kaivos.org/pelit/nightfall.html
Lähdekoodi: https://github.com/fergusq/java-nightfall

Java-Nightfall on vanhan klassikkopulmapelin SPYBOT: The Nightfall Incident klooni. Pelin tarkoituksena on toimia S.M.A.R.T.-agenttina ja tarkistaa sekä siivota yritysten palvelimia haittaohjelmista. Peli on vuoropohjainen, ja sen pääosassa ovat "datataistelut", joissa pelaaja ohjaa omia "ohjelmiaan" palvelimen tietoturvaohjelmistoja vastaan. Ohjelmat esitetään ruudukossa liikkuvina symboleina, joilla on perässään "häntä" hieman matopelien tapaan. Vastustajiin kohdistuvat hyökkäykset pienentävät häntää ja tuhoavat lopulta kohteen kokonaan.

Alkuperäinen Nightfall Incident on Shockwave-ohjelma, joten se ei toimi Linuxilla. Siitä on vain vähän klooneja ja useimmat niistä ovat puutteellisia. Java-Nightfall oli eräs tämänlainen hylätty klooni. Koska se oli avointa lähdekoodia, kehitin siihen uusia ominaisuuksia, kuten erilaisia hyökkäyksiä, krediitit, kaupat ja viestit. Se tukee nyt lähes kaikkia alkuperäisen pelin tärkeimpiä ominaisuuksia.

Pelimoottori on rakennettu laajennettavaksi, ja kaikki tieto käytetyistä ohjelmista, kentistä, tarinasta jne. on erillisissä paketeissa, joita voi helposti luoda ja lisätä AddOns-kansioon. Kotisivuiltani on ladattavissa mm. alkuperäisen Nightfallin ohjelmat sisältävä NightfallPack sekä pari tasopakettia. Otan mielelläni vastaan kaikki uudet paketit, jos niitä kehitetään.

Metabolix [09.08.2015 19:20:31]

#

Täytyy sanoa, että itse pelistä en saanut paljonkaan selvää. Hädin tuskin pääsin tutoriaalin läpi muutamalla kokeilulla. Selvästi peli on siis tällä hetkellä suunnattu vain niille, jotka ennestään tietävät, mistä on kyse ja miten pelilogiikka toimii. Ylipäänsä ihmetyttää alkuperäisenkin pelin kohderyhmä, kun tällä tavalla ”hakkeroidaan”.

Teknisiä huomioita: Miksi peli lataa tiedostot käyttäjän kotihakemistosta eikä esimerkiksi työhakemistosta? (Onneksi tähän on kiertotie, -Duser.home=$PWD.) Miksei paketti sisällä manifestia, joka mahdollistaisi ajamisen suoraan komennolla java -jar paketti.jar?

fergusq [09.08.2015 19:57:32]

#

Metabolix kirjoitti:

Täytyy sanoa, että itse pelistä en saanut paljonkaan selvää. Hädin tuskin pääsin tutoriaalin läpi muutamalla kokeilulla. Selvästi peli on siis tällä hetkellä suunnattu vain niille, jotka ennestään tietävät, mistä on kyse ja miten pelilogiikka toimii. Ylipäänsä ihmetyttää alkuperäisenkin pelin kohderyhmä, kun tällä tavalla ”hakkeroidaan”.

Pitää siis varmaan tehdä tutoriaalista selvempi. Alkuperäisessä pelissä oli interaktiivinen tutoriaali, joka näytti nuolilla mistä pitää painaa että pääsee läpi, ehkä sellainen olisi hyvä tähänkin.

Mitä "hakkeroimiseen" tulee, niin ohjelmistojen esittäminen realistisesti olisi varmaan melko vaikea. Ei kai hakkerointiteema pelin hauskuutta vähennä?

Metabolix kirjoitti:

Teknisiä huomioita: Miksi peli lataa tiedostot käyttäjän kotihakemistosta eikä esimerkiksi työhakemistosta? (Onneksi tähän on kiertotie, -Duser.home=$PWD.) Miksei paketti sisällä manifestia, joka mahdollistaisi ajamisen suoraan komennolla java -jar paketti.jar?

Lataushakemisto lienee mielipidekysymys: ajan ohjelmaa välillä eri hakemistoissa, joten yksi tietty paikka on hyödyllinen. Mikä olisi hyvä käytäntö?

En tajunnut lisätä manifestia, teen sen mitä pikimmiten.

Metabolix [09.08.2015 20:32:26]

#

fergusq kirjoitti:

Ei kai hakkerointiteema pelin hauskuutta vähennä?

Saahan sitä peliä sanoa, miksi haluaa. Tarkoitan vain sanoa, että kuvauksesi oli täysin harhaanjohtava siihen nähden, mitä pelissä oikeasti tapahtui.

fergusq kirjoitti:

Pelin tarkoituksena on toimia S.M.A.R.T.-agenttina ja tarkistaa sekä siivota yritysten palvelimia haittaohjelmista. Peli on vuoropohjainen, ja sen pääosassa ovat "datataistelut", joissa pelaaja ohjaa omia ohjelmiaan palvelimen tietoturvaohjelmistoja vastaan.

Nämä tietokonetermit eivät näy pelin mekaniikassa (tai edes missään kantavassa juonessa) vaan ainoastaan nimistössä. Kuvaavampaa olisi sanoa, että pelissä käydään muutamalla (maksullisella tai kerättävällä?) pelinappulalla pieniä taisteluja eräänlaisilla alkeellisilla roolipelisäännöillä.

Yhtä hyvin voitaisiin vaihtaa räiskintäpelin viholliset ötököiksi ja laittaa taustakuvaksi koodia ja antaa aseille nimiksi Emacs ja Vim, jolloin ”pelissä täytyy poistaa koodin seasta bugeja mahdollisimman nopeasti; toinen pelaaja käyttää Emacsia ja toinen Vimiä”. (Mahtava peli, täytyypä toteuttaa. :D) Kuuluisaan QWOP-peliin voitaisiin laittaa taustalle taikametsää ja radan päähän kahlittu prinsessa, niin peliin sopisi kuvaus ”lähde huimalle seikkailulle taikametsän halki pelastamaan kaunista neitoa”.

Tähän mennessä varsinaisten pelien joukosta vakuuttavin näkemäni hakkerointipeli on Uplink, jossa edes esitetään hakkerointia, vaikka menetelmät siinäkin ovat elokuvista peräisin.

fergusq kirjoitti:

Lataushakemisto – – Mikä olisi hyvä käytäntö?

Mielestäni looginen ratkaisu olisi käyttää ensisijaisesti JARin sijaintia tai työhakemistoa ja antaa mahdollisuus ohittaa tämä jollain parametrilla tai ympäristömuuttujalla. Voisi tulla kyseeseen myös hakea tiedostot kummastakin sijainnista.

fergusq [09.08.2015 21:19:23]

#

No nyt on selitystä päivitetty. Pelissä käytetään tosiaan tietokonetermejä todella väärin, mikä on osa pelin hauskuutta. Esimerkiksi koirateemaisilla "ohjelmilla" on hyökkäyksenä Byte tai Megabyte, mikä ei mitenkään liity sanojen varsinaisiin merkityksiin, vaan puremiseen.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta