Poimintapeli

Versio 2019-01-20

Sivut:


Jotta voit testata omaa tekoälyäsi, tallenna tämä sivu ja avaa se omalta koneeltasi. Oman tekoälyn testaamista varten lataa KilpailuProxy, lue sen ohjeet mukana tulevasta HTML-tiedostosta ja käynnistä tekoälysi sen avulla. Saat tekoälyn osoitteen, jonka voit syöttää tähän. Jos haluat käyttää useaa eri tekoälyä, voit käynnistää jokaiselle oman kappaleen KilpailuProxy-ohjelmasta, ja saat jokaiselle oman osoitteen.

Pelaajat

Asetukset

Pelin nopeus: siirtoa sekunnissa

Pelilaudan siemen: (0 = satunnainen pelilauta)

Pelin säännöt

Pelissä on 25×25 ruudun pelilauta. Ruuduissa on lukuja 0–9. Kaikki pelaajat aloittavat pelilaudan keskimmäisestä ruudusta. Alkuruudussa on luku 0. Pelin jokaisella kierroksella tapahtuu kolme asiaa: Kaikki pelaajat siirtyvät samanaikaisesti uuteen ruutuun nykyisen ruudun viereen. Jokainen pelaaja saa sitten pisteitä sen mukaan, mikä luku uudessa ruudussa on. Lopuksi pelaajien olinpaikkoihin tulee luku 0.

Pelaaja voi liikkua ylös (w), alas (s), vasemmalle (a) tai oikealle (d). Laudan reunalta voi liikkua vastakkaiselle reunalle, eli esimerkiksi vasemmanpuoleisimmasta ruudusta vasemmalle liikkumalla päätyy vastaavaan kohtaan laudan oikeassa reunassa. Samassa ruudussa voi olla monta pelaajaa, ja he kaikki saavat ruudusta samat pisteet.

Peli päättyy, kun kaikki positiiviset luvut on kerätty. (Peli päättyy myös, jos 100 vuoron kuluessa ei kerätä yhtään lukua.) Pelin voittaa se, joka kerää luvuista suurimman summan. Jos tekoäly kaatuu tai tekee muun virheen, sen peli päättyy eikä se liiku enää.

Tekoälylle syötetään ensimmäisellä rivillä pelaajien määrä ja tämän jälkeen pelilaudan sisältö eli 25 riviä, joilla on 25 numeroa ilman välejä. Tekoälyn pitää tulostaa aluksi oma nimensä. Tämän jälkeen joka kierroksella tekoälyn pitää tulostaa oma siirtonsa (yksi kirjain ja rivinvaihto). Pelaaja voi liikkua ylös (w), alas (s), vasemmalle (a) tai oikealle (d). Oman siirron jälkeen tekoälylle syötetään (ilman välejä) muiden pelaajien samanaikaiset siirrot. Pelistä pudonneen pelaajan siirroksi ilmoitetaan 0. Pelin päättyessä tekoälylle syötetään pelkkä viiva (-).

Pelin nopeus: siirtoa sekunnissa

Vuorossa oleva ihmispelaaja on merkitty: X. Ihmispelaajaa voi ohjata nuolinäppäimistä tai kirjaimista WASD, ja pelaajan saa lopettamaan näppäimestä 0.


Voit katsella aiempaa peliä. Tähän tarvitaan JSON-data, joka näkyy pelisivun alareunassa ottelun päättyessä.

Pelin nopeus: siirtoa sekunnissa

Tiedosto:

Data:

Tästä voit lisätä valikkoon JavaScript-tekoälyjä (esim. muiden kilpailijoiden antamia harjoitusvastuksia). Tähän syötettävän tekoälyn pitää olla yksi JavaScript-funktio, joka käynnistää tekoälyn. Funktiolle annetaan parametrina tulostusfunktio, ja funktion pitää palauttaa uusi funktio, joka vastaanottaa kisaohjelman viestit. JavaScriptissa funktion sisällä voi olla muita funktioita ja näitä varten ”globaaleja” muuttujia. Laatikossa on tästä yksinkertainen esimerkki.

Nimi:

OK!