PROJEKT

Veebimänguplatvormi arendus reaalajas mitmikmänguks

Kohandatud tarkvaraarendus, Brauserimängude platvorm, Reaalajas mitmikmäng, Mängijate sobitamise süsteem, Mängijakontod, Mängude majutus, Edetabelid

  • Valdkond: Veebimängud
  • Kreeka Asukoht: Kreeka
  • Tarneaeg: 16 nädalat
  • Tehnoloogiad: JavaScript / TypeScript (Node.js), Python
4+ kuud

Selle kliendi veebimänguplatvorm toob mängijad brauseripõhistesse mängudesse, kuid reaalajas seansid, mängude majutus ja mängija identiteet peavad toimima ühes usaldusväärses kohas. Tarkvara on veebimänguplatvorm, mis haldab mängude pealkirju ja mängijakontosid. See pakub mängijatele kataloogi, mitmikmänguruume ja reaalajas mänguseansse. See on mõeldud platvormi mängijatele ja mängukogemust haldavale meeskonnale.

Kokkuvõte

Probleem

Platvorm vajab mängude sirvimist, mängija identiteeti ja reaalajas mängimist ühes tootes.

Lahendus

Lahendusest sai modulaarne veebimänguplatvorm kataloogi, reaalajas mitmikmänguseansside ja ühiste kontodega.

Tulemus

Platvorm on loodud andma mängijatele selge tee mängude avastamisest mitmikmänguni.

Kliendi lugu

Klient on Kreekast pärit veebimänguplatvorm. See toob mängijad brauseripõhistesse mängudesse ning toetab mitmikmängu, mängijakontosid ja kogukonnafunktsioone.

Mängude pealkirjad, ruumid ja mängijate identiteedid peavad jääma ühendatuks, kui mängijad sirvivad, ruumidega liituvad ja koos mängivad.

Soov oli lihtne: pakkuda väikese viivitusega reaalajas mitmikmänguvõrku, tundlikku ligipääsu mängijate seadmetes, ühiseid identiteediteenuseid ning turvalist tausttaristut koos dokumentatsiooni ja juurutustoega.

Lahendus kujundati modulaarse platvormina, millel on mängukataloog ja fuajee. See sisaldas ka sünkroonitud mänguvaadet, mängijate sobitamist, ruumi seadistamist, tulemuste ja edetabeli mooduleid.

Erilist tähelepanu pöörati selgetele etappidele, varastele eelvaadetele ja dokumentatsioonile, et kliendi meeskond saaks süsteemi iseseisvalt hallata.

Klient soovis

  1. Toetada väikese viivitusega mitmikmängu WebSocketi või võrreldava protokolli abil
  2. Võimaldada mängijatele ligipääs brauserist, mobiiliveebist, mobiilirakendusest või mitme platvormi kaudu
  3. Pakkuda kontosid, autentimist, profiile ja ühist identiteeti
  4. Pakkuda turvalist taristut, juurutustuge ja selget dokumentatsiooni

Miks valmislahendus ei sobinud

Valmislahendused mängijate toetamiseks keskenduvad mängustuudiote ja väljaandjate klienditoele, mitte mängude sirvimise, ruumide, sünkroonitud mängimise ja võistluste ühendamisele ühes tootes. Mänguteenuse reeglitega sobitamiseks oli vaja kohandatud platvormi, mis ühendaks mängimise kontode, mängijate sobitamise, edetabelite ja muude funktsioonidega.

Projekti ülevaade

Lahendus kavandati ümber mängukataloogi ja fuajee, mis annab mängijatele ühe lähtekoha saadaolevate mängude, kirjelduste ja ruumidega liitumise jaoks. Kataloog näitab mängude üleslaadimisi ja ruumide olekut, samal ajal kui avalikud ja privaatsed ruumid hoiavad liitumise selgena.

Reaalajas mängimise toetamiseks loodi sünkroonitud mitmikmänguvaade. socket.io (Node.js-i reaalajas võrgundusraamistik) ja WebSocketi tugi edastavad mängu olekut, mängijate asukohti, mänguüksusi ja vestlussõnumeid seansi ning selle mängijate vahel.

Platvorm struktureeriti ühiste kontode, autentimise ja profiilide ümber. Nii on mängija identiteet ühes kohas kogu sirvimise, mängijate sobitamise, reaalajas mängude ja tulemuste jaoks.

Mängijate sobitamine ja ruumide seadistamine kujundati eraldi moodulina, mis haldab mängijate reitinguid, sobitatud mängijaid, ruumide nähtavust ja mängijate nimekirju. Seega toetab platvorm nii avatud seansse kui ka privaatseid ruume.

Platvorm sisaldab võistlusfunktsioone. Pärast mängu kuvatakse tulemused, mängijate statistika ja edetabelid.

Saavutustel ja preemiatel on võistlusajaloo kõrval kindel koht, samal ajal kui dokumentatsioon ja juurutustugi annavad kliendi meeskonnale selge viisi süsteemi haldamiseks.

Valminud põhifunktsioonid

  • Brauserimängude kataloog ja fuajee
  • Reaalajas sünkroonitud mitmikmänguseansid
  • Avalikud ja privaatsed ruumid
  • Mängijakontod ja autentimine
  • Profiilid ja ühised identiteediteenused
  • Reitingupõhine mängijate sobitamine
  • Mängusisene vestlus ja taasühenduse olek
  • Mängijate statistika ja edetabelid
  • Saavutused ja preemiad

Lisatavad funktsioonid

+ Turniirid + Väljalangemisvõistlused + Digitaalne valuuta + KYC + Maksed + Reklaam + Sisuhaldus + Koefitsientide arvutamine

Kes saavad seda lahendust veel kasutada

Sama lahendust saab kohandada teistele sarnase ülesandega ettevõtetele: tuua mängijad, mängud, ruumid ja võistlused ühte veebikogemusse.

Mängude majutuse ja mängukogukonna platvorm

Ülesanne See peab ühendama mängude teegid, mängijate profiilid, vestluse ja mitmikmänguruumid.
Kuidas lahendus aitab Lahendus ühendab mängude sirvimise, identiteedi, ruumid ja kogukonnaaktiivsuse ühel platvormil.

Pokkeri- ja oskuspõhiste mängude teenus

Ülesanne See vajab mitmikmängu, mängijate sobitamist, turniire ja mängijate edetabeleid.
Kuidas lahendus aitab Lahendus pakub reaalajas seansse, mängijate reitinguid, tulemusi, statistikat ja edetabeleid.

Pärisraha mängude teenus

Ülesanne See vajab võistlusmängu koos maksete, identiteedikontrolli või digitaalse valuutaga.
Kuidas lahendus aitab Modulaarne platvorm hoiab reaalajas mängu ja mängijate identiteedi valmis sellisteks lisadeks nagu KYC, maksed ja preemiad.

Tehnoloogiakomplekt

JavaScript / TypeScript (Node.js)

Serveri- ja brauseriloogika

See keelekomplekt haldab veebiplatvormi ja selle serveripoolseid teenuseid.

Python

Dokumentatsiooni genereerimine

Python toetab platvormi dokumentatsiooni töövoogu.

socket.io

Reaalajas mängijate suhtlus

socket.io edastab reaalajas sündmusi mängijate ja mänguserveri vahel.

websocket

WebSocketi võrgundus

WebSocketi teegid pakuvad püsivate reaalajaühenduste jaoks kasutatavat protokolli.

mongodb

Mängijate ja mängude andmed

mongodb (ametlik MongoDB draiver Node.js-i jaoks) ühendab platvormi MongoDB andmetega.

mysql

Relatsiooniline andmejuurdepääs

mysql (Node.js-i draiver MySQL-i jaoks) ühendab platvormi MySQL-iga, kui kasutatakse relatsioonilist andmebaasi.

postgresql

PostgreSQL-i andmejuurdepääs

postgresql (Node.js-i ümbris PostgreSQL-i jaoks) ühendab platvormi PostgreSQL-iga.

Sphinx

Tehniline dokumentatsioon

Sphinx (Pythoni dokumentatsioonigeneraator) loob süsteemi struktureeritud dokumentatsiooni.

Game files

Mängusisu üleslaadimised

Mängude üleslaadimised pakuvad kataloogis kuvatavaid pealkirju ja sisu.

Integratsioonid

MongoDB

Mängijate, mängude, ruumide ja seansside andmed võivad liikuda ametliku Node.js-i MongoDB draiveri kaudu.

MySQL

Platvorm saab Node.js-i draiveri kaudu MySQL-iga relatsioonilisi andmeid vahetada.

PostgreSQL

Platvorm saab PostgreSQL-iga ühenduse luua PostgreSQL-i Node.js-i ümbrise kaudu.

WebSocket services

Reaalajas mänguolek, mängijate asukohad, vestlussõnumid ja seansi olek liiguvad WebSocketi ühenduste kaudu.

Tulemus

Mängijad leiavad mängu ja sisenevad ruumi kiiremini

Kataloog annab platvormile selge lähtekoha mängude avastamiseks. Mängijad näevad enne avalikku või privaatsesse mitmikmänguruumi sisenemist mängude pealkirju, kirjeldusi ja ruumi olekut.

Kuidas see töötab

  1. Kataloog näitab mängude kaarte ja kirjeldusi.
  2. Platvorm loeb saadaolevate mängude üleslaadimisi ja ruumide olekut.
  3. Fuajee kuvab avalike ja privaatsete ruumide valikud koos sisenemisnuppudega.
Mängukataloog ja fuajee

Mängukataloog ja fuajee

Selle ekraani funktsioonid
Mängude pealkirjade sirvimine

Reaalajas seansid hoiavad mängijad sünkroonis

Reaalajas mänguvaade toob mängumaailma, mänguüksused ja juhtnupud ühte seanssi. socket.io ja WebSocketi ühendused edastavad mänguolekut, vestlust ja ühenduse olekut mängijate ning serveri vahel.

Serveri juhitud mänguloogika hoiab seansi oleku koordineerituna, kui mängijad suhtlevad reaalajas.

Kuidas see töötab

  1. socket.io ja WebSocketi teegid edastavad mänguolekut ja mängijate asukohti.
  2. Platvorm uuendab mänguüksusi ja mänguobjekte ühises mängumaailmas.
  3. Seanss näitab vestlussõnumeid ning ühenduse või taasühenduse olekut.
Märkus: Reaalajas vaade põhineb sünkroonitud mänguolekul, mitte iga mängija eraldi vaatel.
Reaalajas mitmikmäng

Reaalajas mitmikmäng

Selle ekraani funktsioonid
Mitmikmängurežiimi lubamine Mitmikmängu sünkroonimise haldamine Mängu reaalajas uuendused

Mängijate sobitamine toob õiged mängijad kokku

Mängijate sobitamise vaade ühendab mängijate reitingud, ruumi nähtavuse ja mängija identiteedi ühes kohas. Mängijaid saab sobitada seanssi või nad võivad siseneda nähtava nimekirjaga privaatsesse ruumi.

See ülesehitus toetab nii avatud sobitamist kui ka kontrollitud ruumide seadistamist võistlusmänguks.

Kuidas see töötab

  1. Platvorm loeb mängijate reitinguid ja saadaolevate ruumide teavet.
  2. Sobitamismoodul sobitab mängijad ja salvestab nende identiteedid.
  3. Ruumi vaade näitab nähtavust ja praegust mängijate nimekirja.
Mängijate sobitamine ja ruumi seadistamine

Mängijate sobitamine ja ruumi seadistamine

Selle ekraani funktsioonid
Mitmikmängijate sobitamise lubamine Mängijate sobitamine

Tulemused muudavad mängu selgeks võistlusajalooks

Pärast seanssi koondab tulemuste vaade mängutulemused, mängijate statistika ja reitinguväärtused. Saavutustel ja preemiatel on võistlusajaloo kõrval kindel koht.

Edetabel annab mängijatele ühise ülevaate reitingutest ja muudab võistlusliku arengu jälgimise lihtsamaks.

Kuidas see töötab

  1. Platvorm salvestab mängutulemused ja mängijate statistika.
  2. Edetabelimoodul arvutab ja kuvab reitinguväärtused.
  3. Tulemuste vaade näitab saavutusi ja preemiaid koos võistlusajalooga.
Nõuanne: Turniiri- ja preemiafunktsioone saab mängureeglite vajaduse korral lisada eraldi moodulitena.
Tulemused ja edetabel

Tulemused ja edetabel

Selle ekraani funktsioonid
Mängijate statistika jälgimine Edetabelisüsteemi rakendamine

Mida lahendus pakub

Selle lahendusega saab platvorm:

  • Majutada brauseripõhiseid mänge ühises kataloogis
  • Käivitada sünkroonitud reaalajas mitmikmänguseansse
  • Sobitada mängijaid reitingute alusel
  • Pakkuda kontosid, profiile ja ühiseid identiteediteenuseid
  • Näidata tulemusi, statistikat ja edetabeleid ühes kohas
  • Lisada eraldi moodulitena turniire, makseid või preemiaid

Kokkuvõtteks

Tulemuseks oli modulaarne veebimänguplatvorm, mis annab mängijatele ühe tee mängude sirvimisest reaalajas mitmikmänguni.

KKK

Mõtlete sarnase süsteemi loomisele? Lugege allolevaid vastuseid, et näha, kuidas platvormi mitmikmängu, kontode ja dokumentatsiooni nõuded kokku sobituvad.