Kasinopelien ohjelmointi

Maanantai, elokuu 12. 2019

Suurin osa ihmisistä on joskus pelannut kasinopelejä, mutta harvalla on kuitenkaan minkäänlaista käsitystä siitä, miten pelit toimivat. Ulospäin homma näyttää simppeliltä: aseta panos, paina nappia, odota rullien pysähtymistä ja katso, voititko jotakin. Jokaisen slotin taustalla on kuitenkin monimutkainen ohjelmisto, jonka kehittäminen on vaatinut valtavasti työtä.

Entisaikaan kolikkopelit olivat mekaanisia, jolloin niiden kehittäminen oli hieman yksinkertaisempaa nykyaikaan verrattuna. Nykyisin kasinopelit lähentelevät monimutkaisuudessaan videopelejä, ja niiden kehittämiseen palkataan alan taitavimpia koodareita. Käymme tässä artikkelissa läpi kasinopelien ohjelmoinnin keskeisimpiä käsitteitä.

Kaiken takana on satunnaislukugeneraattori

Kasinopelit ovat kehittyneet valtavasti kuluneen vuosikymmenen aikana: nykyisin suuret pelistudiot tuottavat mahtipontisilla grafiikoilla ja hienoilla videointroilla varustettuja pelejä, joita ei heti mieltäisi sloteiksi. Kolmella rullalla ja yksinkertaisilla hedelmäsymboleilla varustetuista kasinopeleistä on tultu pitkä matka pelien nykyiseen tasoon. Ulkoasun radikaalista kehityksestä huolimatta onlinepelien taustalla pyörivä ohjelmisto on kuitenkin pääosin edelleen samanlainen.

Netissä pelattavien slottien merkittävin ominaisuus on satunnaislukugeneraattori, jota usein kutsutaan lyhenteellä RNG (random number generator). Monelle tuttu esimerkki vastaavasta, yksinkertaistetusta generaattorista on Random.org-sivusto. Kasinopeleissä satunnaislukugeneraattori määrittää, miten todennäköisesti kukin symboli osuu tietylle rullalle. Uhkapeliala on tiukasti säädeltyä ja kontrolloitua, joten pelinkehittäjien täytyy valvoa satunnaislukugeneraattorin toimintaa erittäin tarkkaan. Monilla kasinopelejä kehittävillä yrityksillä on usein jopa erillinen työntekijä, jonka pääasiallinen tehtävä on tarkkailla generaattorin toimintaa.

Painotettu tuloksenarvonta mahdollistaa todennäköisyyksien hienosäädön

Nykypäivänä satunnaislukugeneraattori mahdollistaa yrityksille painotetun tuloksenarvonnan hyödyntämisen. Generaattorin avulla tietyille symboleille voidaan ohjelmoida suurempi todennäköisyys osua rullille, kun taas toisille pienempi. Yhden symbolin todennäköisyys osua rullalle voi olla esimerkiksi 1/64 ja toisen 1/7. Vähäarvoisia, vain pieniä voittoja sisältäviä symboleita painotetaan eniten. Arvokkaimmille symboleille taas ohjelmoidaan pienimmät todennäköisyydet, jolloin pelaajat osuvat suuriin voittoihin hyvin harvoin.

Tällainen säätö mahdollistaa sen, että yritykset voivat asettaa peleihin todella suuria päävoittoja – todennäköisyydet niiden voittamiseen ovat niin pieniä, ettei riskiä valtavien tappioiden syntymiseen ole. Painotetun tuloksenarvonnan ansiosta myös ”läheltä piti” -tilanteita tapahtuu useammin, jolloin pelaaja kokee, että suurvoittojen nappaaminen voi tapahtua hetkenä minä hyvänsä. Painotuksen takia todennäköisyys suurten voittojen saamiseen on usein paljon pienempi, kuin pelaajat luulevat.

Perinteisissä mekaanisissa pelikoneissa vastaava hienosäätö ei ollut mahdollista, vaan kaikilla symboleilla oli yhtä suuri todennäköisyys osua rullille. Pelien kehittäjät eivät tällöin voineet laittaa tarjolle samanlaisia valtavia päävoittoja kuin nykypäivänä, koska todennäköisyyksillä kikkailu ei ollut mahdollista. Uudet kasinot 2019 ovat nykyisin pullollaan satojen tuhansien eurojen päävoittoja mainostavia pelejä. Perinteisissä pelikoneissa myös rullien maksimimäärä oli rajallinen – nykyään rullia ja symboleita voi olla teoriassa kuinka monta tahansa.

Palautusprosentti palvelee aina kasinoa pitkässä juoksussa

Satunnaislukugeneraattorin lisäksi toinen merkittävä tekijä kasinopelien ohjelmoinnissa on palautusprosentti, jota kutsutaan nettikasinoilla lyhenteellä RTP (return to player). Palautusprosentti kertoo sen, kuinka suuren osuuden panoksista peli palauttaa pelaajalle keskimääräisesti. Nettikasinoilla palautusprosentit liikkuvat yleensä 94 ja 98 prosentin välimaastossa. Sataa lähentelevät palautusprosentit ovat mahdollisia, koska niissä pätee suurten lukujen laki. Mitä pidempi otanta, sitä todennäköisimmin tulos vastaa määriteltyä palautusprosenttia. Pelintarjoaja jää siis aina voitolle pitkässä juoksussa.

Käsite ”keskimääräinen” tarkoittaa vähintään 10 000 pelikierrosta, joten lyhyellä aikavälillä sekä suuret voitot että tappiot ovat hyvin mahdollisia. Jos asia olisi toisin, kukaan tuskin pelaisi kasinopelejä – jännitysmomentti kärsisi huomattavasti, jos jokaisesta euron panoksesta saisi aina vaikkapa 95 senttiä takaisin. Pitkällä aikajuoksulla asia on kuitenkin juuri niin: jos pelaat vuoden jokaisena päivänä kolikkopeliä, jonka palautusprosentti on 95, olet mitä todennäköisimmin hävinnyt asettamistasi panoksistasi viisi prosenttia projektin loputtua.

Data-analyysin hyödyntäminen pelialalla

Maanantai, elokuu 12. 2019

Kohdennetusta markkinoinnista ja big datasta on kohistu jo pitkään etenkin sosiaalisen median parissa. Vähemmän tunnettuja, mutta dataa erittäin taitavasti hyödyntäviä yrityksiä ovat myös nettikasinot ja vedonlyöntisivustot. Uhkapeliala on yksi maailman nopeimmin kasvavista aloista; uusia yrityksiä syntyy jatkuvasti ja suuret toimijat kasvavat entisestään. Datan kerääminen, analysointi ja hyödyntäminen markkinoinnissa ovat olennainen osa alalla toimivien menestyvien yritysten toimintaa, mutta miten uhkapeliyritykset toteuttavat sen käytännössä? Avaamme asiaa tässä artikkelissa.

Datan kerääminen alkaa heti pelitilin luomisesta

Nettikasinoilla ei suinkaan ole pääsyä yhtä kattavaan valikoimaan dataa kuin esimerkiksi Facebookilla. Kasinot ja vedonlyöntiyhtiöt kuitenkin hyödyntävät kaikkea niille luovutettua tietoa erinomaisen hyvin. Tietojen kerääminen alkaa siitä hetkestä, kun klikkaat itsesi nettikasinon sivulle ja avaat pelitilin. Sinulle muodostetaan automaattisesti pelaajaprofiili sukupuolesi, ikäsi sekä sijaintisi perusteella. Poikkeuksen tähän käytäntöön tekevät viime vuosina yleistyneet kasinot ilman rekisteröitymistä, jonne asiakkaat kirjautuvat suoraan nettipankkinsa kautta, eivätkä täten luo tavanomaista pelitiliä lainkaan. Usein otetaan huomioon myös se, mitä kautta päädyit sivustolle: kirjoititko domainin suoraan hakukenttään vai klikkasitko kenties ruudulla näkynyttä banneria toisella nettisivulla.

Yrityksen business intelligence -asiantuntijoiden rakentamat algoritmit pystyvät usein jo pelkästään pelitilin luomisen yhteydessä annettujen tietojen perusteella muodostamaan kuvan siitä, millainen asiakas tulet yritykselle olemaan. On yleisesti tiedossa, että kasinoiden ja vedonlyöntifirmojen aktiivisimpia asiakkaita ovat keski-ikäiset miehet. Riippuu kuitenkin kunkin yrityksen tarjoamista palveluista ja kohderyhmästä, minkälaista asiakasprofiilia se pitää kaikista lupaavimpana.

Datan kerääminen ei suinkaan pääty pelitilin luomiseen. Sivustot keräävät tietoa esimerkiksi siitä, minä viikonpäivinä ja mihin aikaan kirjaudut tilillesi useimmiten, mitä laitteita käytät, mitä pelejä pelaat, kuinka kauan pelituokiosi keskimäärin kestää, mitä talletustapoja käytät ja kuinka kauan käytät aikaa nettisivun eri osioissa. Analyytikot eivät tietenkään erikseen tutki yksittäisten pelaajien käyttäytymistä, vaan koostavat kaikista kerätyistä tiedoista yhteenvetoja ja johtopäätöksiä, joita yrityksen on mahdollista hyödyntää moniin eri tarkoituksiin.

Kerättyä dataa hyödynnetään moneen eri käyttötarkoitukseen

Miten kerättyä tietoa sitten käytännössä hyödynnetään? Kuten mainitsimme, käyttötarkoitukset ovat moninaiset ja ulottuvat yrityksen toiminnan jokaiseen osa-alueeseen: markkinointiin, asiakasviestintään, designiin, asiakashankintaan, yhteistyösopimuksiin…

Uhkapeliyhtiöt saavat data-analyysistä merkittävää hyötyä etenkin markkinoinnissa. Erilaiset vilkkuvat bannerit ja muut verkossa pyörivät mainokset ovat yleisiä kyseisille firmoille. Tiesitkö, että kaverisi ruudulla samassa mainoksessa saattaakin ollakin ihan eri teksti? Saman yrityksen mainoksissa voi olla monta eri pohjaa ja se, mitä sinä näet, voi riippua useasta tekijästä: sijainnista, kellonajasta, hakuhistoriastasi, päivästä ja esimerkiksi siitä, oletko vieraillut kyseisen yrityksen sivuilla ennen vai onko se sinulle täysin uusi tuttavuus.

Nettikasinot ja vedonlyöntiyhtiöt voivat lähettää erilaisille asiakasryhmille juuri heidän tarpeisiinsa räätälöityjä viestejä ja tarjouksia. Viestien sisältämät tarjoukset ja niiden lähetysajat on usein optimoitu tarkkaan kohderyhmän mieltymysten ja aktiivisuuden mukaan. Kasinoilla on myös keinoja ehkäistä pelaajien passivoitumista: algoritmien havaitessa pelaajan vähenevän aktiivisuuden, pelisivusto voi lähettää asiakkaalle esimerkiksi erityisen houkuttelevan tarjouksen. Myös A/B-testit ovat yleisiä uhkapelien parissa toimiville yrityksille. Testi tarkoittaa sitä, että yritys luo saman sisällön pohjalta hieman erilaiset versiot ja tutkii, kumpi niistä saa suuremmat avausprosentit tai klikkausmäärät. A/B-testiä voi soveltaa esimerkiksi sähköposteissa ja mainoksissa.

Nettisivujen ulkoasut on myös usein suunniteltu analytiikkaa hyödyntäen. Yritykset voivat tutkia, mitä nettisivun osioita asiakkaat tarkkailevat kauimmin, mitä painikkeita he klikkaavat ahkerimmin ja missä kohdissa he liikuttelevat hiiren kursoreita eniten. Tällaisia tietoja hyödyntämällä yritykset voivat asettaa haluamiaan painikkeita, mainoksia tai tarjouksia ”hot spoteihin” eli niihin paikkoihin, jotka kiinnittävät asiakkaiden huomion kaikista todennäköisimmin.

BMW 328i

Tiistai, syyskuu 25. 2018

Pörssiosakkeiden kaupat aloitin jo 1990-luvulla ja aivan ensimmäisen merkinnän tein Mandatumin osakkeisiin. Vähitellen potti on kasvanut ja vuonna 2017 tuli tehtyä suurin osakesalkun muokkaus omassa sijoitushistoriassa. Parhaimmat voitot pääsin tekemään Finnairilla ja tanskalaisella Vestas Wind Systems tuulivoimala yhtiöllä. Suurin osa myynneistä vaihtui vuoden 2018 aikana elintarvike ja lannoiteyhtiöihin, mutta hieman jäi jo 13-vuoden ikään ehtineen BMW 325i vaihtokauppoihin.


VIN: WBA3A51070FT74735
Type code: 3A51
Model: 328I (EUR)
E-F-R series: F30
Series: 3
Type: LIM
Steering: LL
Doors: 4
Engine: N20
Displacement: 2.00
Power: 180 (245 hp)
Drive: HECK
Transmission: MECH
Paint code: 668 - SCHWARZ 2
Upholstery code: BEL1 - STOFF TRACK/ANTH
Prod.date: 2012-03-09

S1CA	SELECTION COP RELEVANT VEHICLES
S2A5	18"LM RAEDER DOPPELSPEICHE 397
S2PA	Lockable wheel bolt
S3AC	Trailer coupling
S3DZ	ENTFALL LINES-SCHRIFTZUG AUSSEN
S4AD	Interior trim strips, brushed aluminium
S4AE	Armrest front, retractable
S4DL	AKZENTLEISTEN SCHWARZ HOCHGLAENZEND
S4NE	BLOW-BY-HEIZER
S5DA	Passenger airbag deactivation
S5DC	Rear-seat headrests, folding
S6AA	BMW TeleServices
S6AB	Control, Teleservices
S6NK	ERW.ANBIND.MOBILER GERAETE
S6S4	Language version Swedish
P7AC	BMW SPORT LINE
S8KA	OELWARTUNGSINT. 30.000KM/24MONATE
S8SC	Telematics access request,country-spec.
S8SM	Car ident. number visible from outside
S8TG	Thiefproofing device
S8V2	HINWEISSCHILD NCAP NIED/DEAN/SCHWED
S216	HYDRO STEERING-SERVOTRONIC
S230	Extra package, EU-speciifc
S248	Steering wheel heater
S249	Multifunction f steering wheel
S255	Sports leather steering wheel
S258	Tyres with runflat properties
S320	Deleted, model lettering
S428	Warning triangle and first aid kit
S431	Interior rear-view mirror with auto dip
S465	Through-loading system
S481	Sports seat
S493	Storage compartment package
S494	Seat heating driver/passenger
S502	Headlight cleaning system
S507	Park Distance Control (PDC), rear
S520	Fog lights
S521	Rain sensor
S522	Xenon Light
S534	Automatic air conditioning
S544	Cruise control with brake function
S548	Kilometre speedo
S563	Light package
S575	Socket, lugg. comp. incl. 2. batt.
S676	HiFi speaker system
S698	Area-Code 2 for DVD
S704	M Sports suspension
S885	Operating instructions, Swedish

(Sivu 1(30), kaiken kaikkiaan 90 merkintää) » seuraava sivu