Nettipelin optimointikysymys

CoolBasiciin yleisesti liittyvä keskustelu.
Post Reply
Lazyanttu
Newcomer
Posts: 29
Joined: Sat May 16, 2009 10:18 pm

Nettipelin optimointikysymys

Post by Lazyanttu »

Hei!

Olen tekemässä ensimmäistä pelikokeilua cbnetworkillä. Tällä hetkellä valmiina on yksinkertainen (cb:n mukanatulleella medialla) räiskintäpeli, mitä voi pelata netin yli (olen testannut kahdella koneella). Tosin vielä täysin kesken... Tässä vaiheessa pitäisi tehdä seuraavanlainen päätös: Dedicated vai ei?

Eli lyhyesti, kannattaako (optimointimielessä) serveristä tehdä irrallinen, millä ei voi pelata (ja siten poistaa siitä drawscreen)? Tällä hetkellä serverillä on ykköspelaaja ja muut ovat clienttejä, mutta kannaattako tämä muuttaa optimointia ajatellen. Eli toisin sanoen se, että serverillä pyörii myös peli graafisesti, niin hidastaako se peliä mitenkään merkittävästi?

Kiitos jo etukäteen
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: Nettipelin optimointikysymys

Post by tuhoojabotti »

Neuvoisin sinua katsomaan esimerkkiä NetMatchista. Siinä on sisäänrakennettu palvelin, jossa ei ole DrawScreeniä. DrawScreenin kanssa peli on aika varmasti liian hidas. CoolBasicin tehot tulevat muutenkin aika nopeasti vastaan, joten aloitettiin tekemään palvelinta Node.js:n päälle node-NetMatchin muodossa, jolloin ainoastaan klientti on CoolBasicia. Siis serverikin on mahdollinen CB:llä, mutta siltä on turha odottaa kauheasti. Oman kokemuksen perusteella se riitti hyvin LANissa pelaamiseen, mutta netin kautta aikaa kului vaan liikaa.
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”
User avatar
valscion
Moderator
Moderator
Posts: 1599
Joined: Thu Dec 06, 2007 7:46 pm
Location: Espoo
Contact:

Re: Nettipelin optimointikysymys

Post by valscion »

Kyllä pienehkön pelin palvelimen pystyy tekemään cbNetworkilla, joka toimisi kohtuu hyvin muutamalla pelaajalla. Kannatan ainakin yrittämistä, cbNetworkin kanssa kikkailulla oppii samalla hieman lisää nettivääntelyistä :)

Mutta vastaus varsinaiseen kysymykseesi on seuraava: Jos haluat oikeasti toimivan palvelimen, ei sinulla ole muuta vaihtoehtoa kuin oma dedicated palvelin, jossa ei ole DrawScreeniä. Muuten palvelin ei toimi tarpeeksi nopeasti, vaikka mitä tekisit. Voit korkeintaan koittaa tehdä sellaista että päivittäisit ruudun (eli kutsuisit DrawScreeniä) vain kerran sekunnissa tai vielä harvemmin, mutta pelata et palvelimella pysty.

Kuten tuhoojabotti sanoikin, NetMatchista kannattaa ottaa mallia. Siinäkin voi tosin olla joitakin asioita tehty epäoptimaalisesti. Mutta siitä vain koodailemaan :) jos (kun) tulee ongelmia, kysy ihmeessä foorumeilla neuvoa. IRCistäkin voi saada apua, itse ainakin voin sanoa osaavani jotakin cbNetworkin kanssa kikkailusta. Minut tapaa IRCnetistä tällä nimimerkillä mm. kanavoilta #coolbasic ja #NetMatch. Irkkaamaan pääset Pettiksen munirkki.com-palvelun kautta kaikista nopeiten.
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
Lazyanttu
Newcomer
Posts: 29
Joined: Sat May 16, 2009 10:18 pm

Re: Nettipelin optimointikysymys

Post by Lazyanttu »

Kiitoksia vastauksistanne! Voidaan keskustella lisää #NetMatch-kanavalla! Tästä hommasta saattaa tulla tulee useampiakin kysymyksiä tulevaisuudessa, siitä olen varma ;). Vaikka koodauskokemusta onkin, niin nettijutuilla en ole aiemmin tehnyt mitään millään kielellä.
Post Reply