Kasinopelin kehittäminen poikkeaa tavallisesta ohjelmistoprojektista yhdessä olennaisessa suhteessa: valmis tuote ei mene tuotantoon kehittäjän päätöksellä, vaan vasta riippumattoman testauslaboratorion ja lupaviranomaisen hyväksynnän jälkeen.
Tässä artikkelissa käydään läpi, miten kasinopeli syntyy, miten se testataan ja miksi julkaistua peliä ei voi vapaasti päivittää. Teksti on puolueeton tietopaketti eikä kehotus pelaamiseen.
Pelin kaksi puolta: matematiikka ja toteutus
Kasinopeli koostuu kahdesta erillisestä osasta, jotka kehitetään eri tavoin.
Matemaattinen malli määrittää, miten peli maksaa. Siihen kuuluvat symbolien todennäköisyydet, maksutaulukko, bonusominaisuuksien laukeamistiheys sekä palautusprosentti. Malli rakennetaan ja simuloidaan ennen kuin riviäkään peligrafiikkaa on tehty.
Toteutus on se, minkä pelaaja näkee: grafiikka, animaatiot, äänet ja käyttöliittymä.
Nämä ovat toisistaan riippumattomia. Sama matemaattinen malli voidaan julkaista useana eri teemaisena pelinä, ja päinvastoin – näyttävä toteutus ei kerro mitään pelin maksurakenteesta.
Kaksi lukua, jotka menevät sekaisin
Tämä erottelu on syytä tehdä huolellisesti, koska aiheesta esitetään paljon epätarkkuuksia.
RNG eli satunnaislukugeneraattori määrittää yksittäisen kierroksen tuloksen. Se takaa, että tulos on satunnainen, riippumaton edellisistä kierroksista eikä sitä voi ennustaa tai manipuloida.
RTP eli palautusprosentti kertoo, kuinka suuri osuus panoksista palautuu pelaajille pitkällä aikavälillä. Se on rakennettu maksutaulukkoon.
Olennainen huomio: RNG ei tee pelistä tasapuolista pelaajan ja kasinon välillä. Se tekee siitä ennustamattoman. Jokaisessa kasinopelissä on talon etu, joka on sisäänrakennettu matemaattiseen malliin. Täydellisesti sertifioitu satunnaislukugeneraattori voi olla pelissä, jonka palautusprosentti on esimerkiksi 88 prosenttia.
Reiluus tarkoittaa tässä yhteydessä sitä, että peli toimii ilmoitetulla tavalla – ei sitä, että pelaajalla ja kasinolla olisi yhtäläiset mahdollisuudet.
| RNG | RTP | |
|---|---|---|
| Mitä määrittää | Yksittäisen kierroksen tuloksen | Pitkän aikavälin palautuksen |
| Missä sijaitsee | Algoritmissa | Maksutaulukossa |
| Miten todennetaan | Tilastollisilla satunnaisuustesteillä | Simuloimalla valtava määrä kierroksia |
| Takaako tasapuolisuuden? | Ei – takaa ennustamattomuuden | Ei – on aina alle 100 % |
Sertifiointiprosessi
Tämä on kasinopelien kehityksen erottava piirre verrattuna muuhun ohjelmistokehitykseen.
1. Matemaattinen dokumentaatio. Kehittäjä toimittaa testauslaboratoriolle pelin matemaattisen mallin, maksutaulukon ja lasketun palautusprosentin.
2. Lähdekoodin tarkastus. Laboratorio tarkastaa toteutuksen ja varmistaa, että se vastaa dokumentoitua mallia.
3. RNG:n testaus. Satunnaislukugeneraattorin tuottamaa jakaumaa testataan tilastollisilla menetelmillä sen varmistamiseksi, että se on aidosti satunnainen eikä sisällä toistuvia kuvioita.
4. Palautusprosentin todentaminen. Peliä ajetaan valtava määrä kierroksia, ja toteutunutta palautusta verrataan ilmoitettuun. Simulaatiokierrosten määrä lasketaan tyypillisesti miljoonissa tai miljardeissa.
5. Versiolukitus. Hyväksytty peli lukitaan tiettyyn versioon. Tuotannossa ajettavan pelin on vastattava testattua versiota tarkalleen, ja tämä varmennetaan yleensä tarkistussummalla.
6. Lupaviranomaisen hyväksyntä. Testausraportti toimitetaan sille lupaviranomaiselle, jonka markkinalla peli julkaistaan.
Alalla toimii useita akkreditoituja testauslaboratorioita, ja lupaviranomaiset määrittelevät, minkä laboratorioiden raportit ne hyväksyvät.
Kasinopelin matka koodista tuotantoon
- Matemaattinen malli – maksutaulukko ja palautusprosentti suunnitellaan ja simuloidaan ennen toteutusta.
- Toteutus – grafiikka, käyttöliittymä ja pelilogiikka rakennetaan mallin päälle.
- Dokumentaatio laboratoriolle – matemaattinen malli ja laskettu RTP toimitetaan testattavaksi.
- Lähdekoodin tarkastus – laboratorio varmistaa, että toteutus vastaa dokumentoitua mallia.
- RNG-testaus – satunnaisuus todennetaan tilastollisin menetelmin.
- RTP:n todentaminen – peliä ajetaan miljoonia tai miljardeja kierroksia.
- Versiolukitus – hyväksytty versio lukitaan ja varmennetaan tarkistussummalla.
- Lupaviranomaisen hyväksyntä – testausraportti toimitetaan kohdemarkkinan viranomaiselle.
Muutos matematiikkaan tai RNG:hen edellyttää lähtökohtaisesti uutta testausta. Siksi kasinopelien julkaisusykli on hidas.
Miksi päivittäminen on vaikeaa
Tässä on kasinopelien kehityksen suurin ero tavalliseen ohjelmistokehitykseen.
Tavallisessa ohjelmistoprojektissa korjaus voidaan julkaista samana päivänä. Sertifioidussa kasinopelissä ei voi.
Jos pelin matematiikkaan, satunnaislukugeneraattoriin tai maksurakenteeseen tehdään muutos, peli on lähtökohtaisesti testattava uudelleen. Käytännössä muutokset jaotellaan sen mukaan, koskevatko ne pelin toiminnallista ydintä vai pelkkää ulkoasua – jälkimmäiset voidaan usein käsitellä kevyemmin.
Tämä selittää, miksi kasinopelien julkaisusykli on hidas ja miksi sama peli voi olla eri markkinoilla eri versiona: kullakin lupamarkkinalla on omat vaatimuksensa ja oma hyväksyntäprosessinsa.
Se selittää myös, miksi operaattori ei voi säätää pelin tuottoa. Operaattori ei aja pelin koodia vaan integroi tuottajan pelin alustaansa. Osassa pelejä tuottaja tarjoaa useita palautusprosenttiversioita, joista operaattori valitsee yhden – mutta kukin versio on erikseen sertifioitu, eikä valintaa voi tehdä kesken pelin.
Tekninen alusta
Nykyiset kasinopelit rakennetaan HTML5-tekniikalla ja JavaScriptillä, usein WebGL-pohjaisia grafiikkakirjastoja käyttäen. Tämä korvasi aiemman Flash-pohjaisen toteutuksen, jonka tuki päättyi vuoden 2020 lopussa.
Käytännön seuraus on, että sama peli toimii selaimessa tietokoneella ja mobiililaitteella ilman erillistä asennusta. Kehityksessä tämä tarkoittaa, että käyttöliittymä on suunniteltava toimimaan hyvin eri kokoisilla näytöillä ja eri syöttötavoilla.
Palvelinpuolella olennaista on tapahtumien käsittelyn luotettavuus: pelikierros, panos ja lopputulos on kirjattava niin, että ne voidaan jälkikäteen todentaa. Tämä on myös lupaehtojen vaatimus.
Ohjelmistoista yleisemmin kerromme tietokoneohjelmistot-sivullamme.
Tekoäly ja koneoppiminen
Tekoälyä käytetään alalla kolmeen selvästi erilaiseen tarkoitukseen, ja ne on syytä erottaa toisistaan.
Väärinkäytösten tunnistus. Poikkeavien tapahtumakuvioiden havaitseminen, esimerkiksi tilien väärinkäyttö tai rahanpesuun viittaava toiminta. Tämä on sääntelyn edellyttämä toiminto.
Riskikäyttäytymisen tunnistus. Samaa dataa voidaan käyttää tunnistamaan pelaamisen ongelmallistumista: tappioiden takaa-ajoa, sessioiden pidentymistä, panosten äkillistä kasvua tai talletusten tiheytymistä. Toimilupamarkkinoilla tämä on yhä useammin velvoite, ei vapaaehtoinen lisä.
Sisällön personointi. Suosittelualgoritmit, jotka ehdottavat pelaajalle pelejä hänen aiemman käyttäytymisensä perusteella.
Kolmas kohta ansaitsee kriittisen huomion. Sitoutumista maksimoiva suosittelu on teknisesti sama mekanismi kuin riskikäyttäytymisen tunnistus – vain tavoite on vastakkainen. Rahapelien yhteydessä tämä ei ole neutraali ominaisuus, ja se on yksi syy siihen, miksi sääntely on kiinnostunut juuri datan käyttötarkoituksesta.
Yhteenveto
Kasinopeli koostuu matemaattisesta mallista ja sen toteutuksesta. RNG määrittää yksittäisen kierroksen satunnaisuuden, RTP pitkän aikavälin palautuksen – nämä ovat eri asioita, eikä satunnaisuus tee pelistä tasapuolista pelaajan ja kasinon välillä.
Sertifiointi erottaa alan tavallisesta ohjelmistokehityksestä: peli testataan riippumattomassa laboratoriossa, lukitaan versioon ja hyväksytetään lupaviranomaisella. Siksi päivittäminen on hidasta ja operaattori ei voi säätää pelin tuottoa.
Alan rakenteesta ja pelintuottajista kerromme tarkemmin kasinopeliohjelmistoja käsittelevässä artikkelissamme.
Lähteet
Sertifiointi varmistaa, että peli toimii ilmoitetulla tavalla. Se ei tee pelaamisesta kannattavaa. Jokaisessa kasinopelissä on talon etu, joka on rakennettu maksutaulukkoon, eli pelit on matemaattisesti suunniteltu tuottamaan pelaajalle tappiota pitkällä aikavälillä. Rahapelaaminen on sallittua vain täysi-ikäisille.
Jos pelaaminen huolestuttaa sinua tai läheistäsi, apua on saatavilla maksutta:
- Peluuri – maksuton tuki- ja neuvontapalvelu pelaajille ja läheisille
- Peliklinikka – tukea ja palveluita peliongelmiin
- THL – Rahapelit ja rahapelihaitat
Usein kysytyt kysymykset
Mitä eroa on RNG:llä ja RTP:llä?
RNG määrittää yksittäisen kierroksen satunnaisen tuloksen. RTP kertoo, kuinka suuri osuus panoksista palautuu pelaajille pitkällä aikavälillä. Ne ovat eri asioita.
Tekeekö RNG pelistä tasapuolisen?
Ei. RNG tekee tuloksesta ennustamattoman ja manipuloimattoman. Jokaisessa kasinopelissä on silti talon etu, joka on rakennettu maksutaulukkoon.
Voiko kasino säätää pelin tuottoa?
Ei kesken pelin. Operaattori integroi tuottajan sertifioidun pelin alustaansa. Osassa pelejä tuottaja tarjoaa useita erikseen sertifioituja palautusprosenttiversioita, joista operaattori valitsee yhden.
Miten kasinopeli sertifioidaan?
Riippumaton testauslaboratorio tarkastaa matemaattisen mallin ja lähdekoodin, testaa satunnaislukugeneraattorin tilastollisesti ja todentaa palautusprosentin suurella määrällä simuloituja kierroksia. Hyväksytty peli lukitaan versioon.
Miksi kasinopelien päivittäminen kestää?
Pelin matematiikkaan tai satunnaislukugeneraattoriin tehdyt muutokset edellyttävät lähtökohtaisesti uutta testausta ja hyväksyntää. Ulkoasumuutokset voidaan usein käsitellä kevyemmin.
Millä tekniikalla kasinopelit tehdään?
Nykyiset pelit rakennetaan HTML5:llä ja JavaScriptillä, usein WebGL-grafiikkaa käyttäen. Aiempi Flash-toteutus poistui käytöstä Flashin tuen päätyttyä vuoden 2020 lopussa.
Mihin tekoälyä käytetään kasinoalalla?
Väärinkäytösten tunnistukseen, riskikäyttäytymisen tunnistukseen ja sisällön personointiin. Kaksi ensimmäistä ovat sääntelyn edellyttämiä; kolmas on kaupallinen ja rahapelien yhteydessä kriittistä tarkastelua vaativa.
