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
Nettipelin optimointikysymys
-
- Advanced Member
- Posts: 485
- Joined: Tue Aug 28, 2007 3:53 pm
- Location: Suomi, Finland
- Contact:
Re: Nettipelin optimointikysymys
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.
Re: Nettipelin optimointikysymys
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.
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
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com
Re: Nettipelin optimointikysymys
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ä.