MLMove osoittaa, että pieni, sovelluskohtainen transformer‑malli voi tehdä FPS‑boteista inhimillisiä ilman pilvilaskentaa – ja avaa uusia mahdollisuuksia suomalaisille pelistudioille.

Tekoäly, Counter-Strike ja suomalainen peliteollisuus
Kun puhutaan generatiivisesta tekoälystä peleissä, keskustelu Suomessa pyörii usein sisällöntuotannon, konseptitaiteen tai dialogin ympärillä. Samaan aikaan suomalaiset FPS‑ ja moninpelistudiot painivat arkisemman mutta kriittisen ongelman kanssa: kuinka tehdä älykkäitä, inhimillisen tuntuisia botteja ilman pilvilaskennan kustannuksia.
MLMove‑projekti, jossa suuri kielimalli‑tyyppinen arkkitehtuuri opetettiin liikkumaan Counter‑Strikessa kuin ammattilaispelaaja, näyttää yhden konkreettisen vastauksen. Ja mikä tärkeintä – ratkaisu on kevyt, ajettavissa yhdellä CPU‑ytimellä, ja siirrettävissä mihin tahansa moninpeliräiskintään, myös suomalaisiin peleihin.
Tässä artikkelissa puretaan auki, miten MLMove toimii, miksi sen idea on merkittävä suomalaiselle peliteollisuudelle, ja miten vastaavaa lähestymistapaa voi alkaa soveltaa omassa peliprojektissa – olipa kyse FPS:stä, co‑op‑selviytymisestä tai taktisesta mobiilipelistä.
Mitä MLMove tekee eri tavalla kuin perinteiset botit?
Perinteinen pelitekoäly nojaa vahvasti kahteen peruspilariin:
- Navmesh: missä kohtaa pelimaailmaa saa liikkua
- Sääntöpohjainen logiikka / behavior tree: miten botti valitsee reitin ja toiminnan
Tämä toimii hyvin, kun halutaan varmoja, kontrolloituja liikkumiskäytäviä. Mutta jos olet koskaan pelannut CS:ää, tiedät, että hyvä pelaaja ei vain kulje navmesh‑polkua. Hän:
- “Halaa” seiniä ja pelin geometriaa minimoidakseen näkyvyyden
- Ottaa haltuun choke pointit juuri oikeasta kulmasta
- Ajoittaa liikkeen tiimikavereiden kanssa, jotta trade‑tappoja syntyy
- Säätää mikroliikettään tähtäyksen tarkkuuden ja ennakoitavuuden välillä
Tällaista käyttäytymistä on tuskallista koodata käsin tagien, funktioiden ja poikkeustapausten viidakoksi. MLMove kääntää asetelman ympäri: se ei yritä mallintaa sääntöjä, vaan oppii suoraan ammattilaisten pelidatasta, miten ihmiset luonnostaan liikkuvat.
Ajatuksena on rakentaa “liikemalli”, joka toimii vähän kuin kielimalli: ei ymmärrä miksi pelaaja tekee päätöksen, mutta osaa erittäin hyvin ennustaa, mitä hän tekee seuraavaksi.
Transformer liikkeelle – miten MLMove oikeasti toimii?
1. Data: tuhansia tunteja ammattilaisten liikettä
MLMove perustuu huolellisesti kuratoituun CSKnow‑datalähteeseen. Siitä poimittiin mm. Dust2‑kartan retake‑tilanteita:
- noin 17 000 retake‑kierrosta
- data mm. jokaisen pelaajan sijainnista, nopeudesta, HP:stä, katsesuunnasta ja tilasta (elossa/kuollut)
- tapahtumat 16 kertaa sekunnissa: laukaukset, vahingot, kuolemat, pommin tila, kellonaika
Tärkeää on rajaus: malli opetettiin vain Dust2‑retakeihin. Tämä on pelisuunnittelun kannalta oivallinen oppi myös suomalaisille studioille:
- kun ongelma rajataan yhteen karttaan / pelitilaan, malli voi olla hyvin pieni
- datan laatu ja yhtenäisyys paranee
- lopputulos riittää silti parantamaan pelaajakokemusta merkittävästi
2. “Kielimalli liikkeelle”: upotteet ja transformer
MLMove jakautuu kahteen vaiheeseen:
- Per‑pelaaja upoteverkko muuttaa kunkin pelaajan tilan (sijainti, nopeus, tiimi, HP jne.) vektoriksi – eli tokeniksi.
- Transformer‑enkooderi lukee kaikkien pelaajien tokenit sekä pelitilan, ja ennustaa seuraavan “näppäimistötilan” jokaiselle botille.
Sen sijaan, että malli ennustaisi koordinaatteja, se valitsee yhdestä 97 mahdollisesta liike‑konfiguraatiosta, joissa on:
- 16 kulmasuuntaa
- 3 liikkumisnopeutta
- vaihtoehto seistä paikallaan tai hypätä
Lisäksi malli ennustaa toimintaa kolmessa ajankohdassa:
- nyt (t)
- 125 ms eteenpäin
- 250 ms eteenpäin
Tämä auttaa välttämään “juuttumista” samaan mikroliikkeeseen ja tuottaa sujuvan, inhimillisen liikevirran.
3. Pieni malli, iso vaikutus
Ehkä yllättävin fakta suomalaiselle pelinkehittäjälle:
- vain noin 5,4 miljoonaa parametria
- mallikoko noin 21 Mt
- inferenssi koko joukkueelle alle 0,5 ms per pelisteppi yhdellä CPU‑ytimellä
Tämä on kriittistä, jos teet:
- konsolipeliä (myös seuraavan sukupolven Switchille)
- mobiilipeliä, jossa jokainen milliwatti ja megatavu lasketaan
- PC‑peliä, jossa et halua uhrata näyttötehoa pilvi‑AI:lle
Suomalaisessa kontekstissa tämä tarkoittaa: tekoälybottien ei tarvitse olla pilvipalvelu, vaan ne voivat pyöriä täysin paikallisesti ilman järjetöntä investointia infraan.
Mitä tästä voi oppia suomalainen pelistudio?
1. Rajaa ongelma rohkeasti
MLMove ei yritä ratkaista “yleistä FPS‑älyä”. Se ratkaisee yksi kartta, yksi pelitila, yksi osa‑ongelma (liike).
Sama ajattelutapa toimii suomalaisissa projekteissa:
- taktisessa co‑op‑selviytymispelissä: opeta malli vain base‑puolustuksen liikeradoille
- mobiili‑MOBAssa: opeta malli vain lanen mikromuuvaukseen, älä koko pelin makrostrategiaan
- ajopelissä: opeta malli vain ohituksen ja mutkaan jarruttamisen dynamiikkaan
Pienikin, tarkkaan rajattu generatiivinen komponentti voi nostaa pelattavuuden ja NPC‑käyttäytymisen tason aivan uudelle tasolle.
2. Yhdistä perinteinen AI ja generatiivinen malli
MLMovessa perinteinen behavior tree hoitaa edelleen:
- taistelupäätökset
- aseiden käytön
- pelitilan korkean tason logiikan
Transformer keskittyy vain liikkeeseen.
Suomalaiselle studiolle tämä tarkoittaa käytännössä:
- älä heitä nykyistä NPC‑järjestelmää romukoppaan
- lisää generatiivinen komponentti sinne, missä sääntöpohjainen malli tuntuu kovimmalta työläältä (esim.
- ryhmäliike
- pakenemis‑ ja suojautumiskäyttäytyminen
- coverista coveriin liikkuminen)
Tällä tavoin vältät myös valtavan riskin: mallin tekemä liike voidaan aina rajata ja yliajaa tarvittaessa behavior treen avulla.
3. Hyödynnä omien pelaajiesi dataa
MLMove oppii ammattilaisten tavasta pelata. Suomalaisten pelien etu on oma, usein globaali pelaajayhteisö.
Käytännön askelmerkit:
- Kerää anonyymiä pelidataa: liikkeet, tapahtumat, pelitila 5–20 Hz tarkkuudella.
- Fokussido datasta tietyt tilanteet: esim. viimeiset 30 sekuntia boss‑taistelussa tai 4v1‑clutch‑tilanteet.
- Opeta pieni transformer‑malli ennustamaan seuraava liikesuunta / näppäimistötila.
- Aja malli offline‑palautteena (valmentaja‑tila, highlight‑analyysi) tai online‑bottien liikkeenä.
Tämä avaa samalla ovet täysin uuteen liiketoiminta‑aihioon: pelaaja‑analytiikka ja valmennus, jossa tekoäly auttaa pelaajia kehittymään, ei vain pelaamaan heitä vastaan.
MLMove ja pelattavuuden personointi
“Tekoäly suomalaisessa peliteollisuudessa” ‑sarjassa olemme korostaneet, että AI ei ole vain kehitystyön automatisointia, vaan ennen kaikkea pelattavuuden personointia ja parempaa pelikokemusta.
MLMove‑henkinen liike‑malli voi tukea tätä usealla tavalla:
Dynaamisesti mukautuvat botit
Sen sijaan, että vaikeustaso olisi vain “enemmän HP:tä ja parempi aimbotti”, botti voisi:
- liikkua samantyyppisesti kuin pelaaja (aggressiivinen, hidas ja varovainen, flankki‑painotteinen)
- säätää tiimikavereiden välistä etäisyyttä ja trade‑käyttäytymistä
- pitäytyä niillä reiteillä, joita ihmispelaajat kyseisellä taitotasolla käyttävät
Tämä tekee yksinpelistä, co‑op‑harjoitusmoodista tai ranked‑valmistautumisesta huomattavasti mielekkäämpää.
Valmentava tekoäly
Transformerin attention‑matriisit kertovat, mihin muihin pelaajiin tai pelitilan osiin botti “kiinnittää huomiota”. Tämä voidaan kääntää pelaajalle näkyväksi:
- miksi botti perääntyi, kun tiimikaveri kuoli midissä
- miksi se valitsi retake‑reitin A‑pitin sijaan CT‑spawnin kautta
- missä tilanteissa botti pelaa paremmin yhteen tiimin kanssa kuin keskivertopelaaja
Samaa ideaa voi käyttää coaching‑työkaluna suomalaisille e‑urheilujoukkueille tai kilpailullisten pelien pelaajille: malli voi näyttää, miten “ammattilainen botti” liikkuisi täsmälleen samassa tilanteessa.
Käytännön checklista: näin viet idean omaan peliin
Jos haluat hyödyntää MLMove‑tyyppistä lähestymistä omassa suomalaisessa peliprojektissasi, voit aloittaa seuraavalla listalla:
-
Valitse yksi tarkasti rajattu osa‑ongelma
Esim. yhden kartan puolustajien rotaatiot, boss‑taistelun väistöliike, NPC‑saattajan liike sokkeloisessa ympäristössä. -
Määrittele tallennettava tila
Pelaajien sijainnit, nopeus, tilat, tärkeimmät tapahtumat ja kellonaika – riittävän tiheällä aikavälillä (esim. 10–20 Hz). -
Siivoa data
Poista warmupit, AFK‑jaksot, selvästi epätyypillinen pelleily. Keskity niihin osioihin, joissa pelaajat oikeasti yrittävät voittaa. -
Rakenna pieni transformer
Ei tarvitse olla jättimalli: muutama miljoona parametria riittää hyvin, kun ongelma on rajattu. -
Pidä perinteinen AI mukana
Anna mallin päättää vain liikkeestä tai pienestä osasta päätöksentekoa. Korkean tason logiikka ja turvallisuusrajat säilyvät behavior treessä. -
Testaa pelaajien kanssa, ei vain teknisesti
Arvioi paitsi suorituksen tehokkuus, myös koettu “inhimillisyys” ja hauskuus. Usein juuri hieman epätäydellinen mutta luonnollinen liike tuntuu parhaimmalta.
Loppusanat: pieniä malleja, isoja vaikutuksia
MLMove näyttää, että tekoäly peliteollisuudessa ei tarkoita automaattisesti jättimäisiä, pilvipohjaisia LLM‑ratkaisuja. Pieni, sovelluskohtainen transformer, joka oppii liikkeen suoraan ihmispelaajilta, voi:
- tehdä boteista uskottavampia
- parantaa harjoitus‑ ja yksinpelikokemusta
- avata uusia mahdollisuuksia pelaaja‑analytiikkaan ja valmennukseen
Suomalaisille studioille tämä on hyvä uutinen. Tekoäly pelkästään tuotantotyökaluna on vasta alkua; seuraava kilpailuetu syntyy siitä, miten hyvin AI palvelee pelaajaa itse pelissä – liikkeessä, päätöksenteossa ja tiimidynamiikassa.
Jos tiimisi kehittää FPS:ää, co‑op‑räiskintää tai kilpailullista moninpeliä, nyt on hyvä hetki pysähtyä kysymään:
Missä yhdessä, tarkkaan rajatussa kohdassa meidän pelimme botti voisi oppia liikkumaan tai reagoimaan kuin ihminen – ja mitä se tekisi pelaajakokemukselle?
Seuraavissa tämän sarjan artikkeleissa syvennymme siihen, miten vastaavia malleja voi yhdistää sisällön generointiin, NPC‑persoonallisuuksiin ja pelaajakohtaiseen personointiin nimenomaan suomalaisen peliteollisuuden näkökulmasta.