Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
satik
Založen: 06. 05. 2010 Příspěvky: 161 Bydliště: Krkonose
|
Zaslal: 1. červenec 2011, 00:01:02 Předmět: sitovy model - strategie |
|
|
Ahoj, chci si jentak cvicne zkusit napsat jednoduchouckou strategii (prozatim dejme tomu budu jen pres gdi kreslit kolecka a ctverecky), zatim je budu moct jen ruzne oznacovat (i vic najednou) a posilat na jinou pozici.
Jakym zhruba zpusobem byste to postavili, aby byla "hra" na obou stranach ve stejnem case ve stejnem stavu, moc se to nekousalo a pri tom to jelo treba i s pingem kolem 100?
Nejaky napad uz mam, napadlo me to pri hrani starcrafta , kdyztak ho sem pak i hodim, ale chci to pokud mozno videt z vice uhlu, aby to bylo co nejpouzitelnejsi |
|
Návrat nahoru |
|
|
Vilem Otte
Založen: 18. 09. 2007 Příspěvky: 462 Bydliště: Znojmo - Sedlesovice, Kravi Hora
|
Zaslal: 1. červenec 2011, 01:55:03 Předmět: |
|
|
Nejsem sice expert a s networkingem jsem dlouho nedělal, a taky už jsou 3 ráno (takže zkusím nějaký rychlý návrh takového systému)
Ve standardním modelu Peer-2-peer (tedy přímé napojení PC na sebe) musí navzájem sdílet všechna herně podstatná data (tj. pozice jednotek, stavy jednotek, apod.) - což není zrovna dobré pokud je více než 2 hráči, u 2 to ještě půjde (pokud jich bude tak 4, 5 ... tak na P2P raději zapomenout), takže se použije jiný model...
Client-server je pro toto ideální (může být a bývá i rychlejší než P2P pro 2), server počítá hru a posílá data klientovi, ten je jen čte a zobrazí, jednoduché ... bohužel pořád je zde problém s trháním hry u klienta (updaty nejsou zpravidla dostatečně rychlé) - co s tím? Nejjednodušší řešení je počítat na obou, na klientovi i serveru hru nezávisle na sobě, a server jen postupně posílá jeho data, klient poté provede korekce svých dat, a pokračuje v nezávislém počitání (tedy klient se neustále synchronizuje se serverem). Klient samozřejmě serveru neustále odesílá svou herní činnost, a server ji zpracovává (klient samozřejmě taky), klientovi se herní činnost posílat nemusí, protože server mu posílá veškerá korekční data (nicméně i herní činnost se může posílat). _________________ Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration. |
|
Návrat nahoru |
|
|
satik
Založen: 06. 05. 2010 Příspěvky: 161 Bydliště: Krkonose
|
Zaslal: 1. červenec 2011, 06:42:54 Předmět: |
|
|
z voleb P2P vs C-S asi spis vyberu C-S, hlavne protoze to klade na klienty mensi naroky na propustnost linky (poslou to jednou serveru a nemuseji to posilat vsem) a server muze vzdycky bezet na necem rychlejsim
prave ty korekce se mi do strategie moc nelibi, vim, ze se pouzivaji v 3D hrach, ale kdyz pingy budou hodne divoke a hraci budou zrovna tu jednotku ovladat a divoce menit smer, tak by jednotky ruzne poskakovaly po bojisti, coz se prave napriklad ve strategiich od blizardu nedeje ani kdyz mi pingy litaji nad 1000ms |
|
Návrat nahoru |
|
|
Yossarian
Založen: 28. 07. 2007 Příspěvky: 274 Bydliště: Šalingrad
|
Zaslal: 1. červenec 2011, 18:22:32 Předmět: |
|
|
http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php
na toto tema jsem mel bakalarku, bohuzel me s ni vyrazili, neb v ni byly cancy, takze ji zverejnovat nebudu.
idealni reseni je udrzovat na serveru i klientech aktualni herni stav, komunikovat pouze rozdily
T: 1s jednotka A se rozhodla, ze jde nahoru
T: 5s jednotka A se zastavila
a sem tam to prolozit synchronizaci, jednotka A je na pozici [10, 10] |
|
Návrat nahoru |
|
|
satik
Založen: 06. 05. 2010 Příspěvky: 161 Bydliště: Krkonose
|
Zaslal: 4. červenec 2011, 17:15:56 Předmět: |
|
|
neco jako je to v tom aoe jsem mel na mysli, to by snad mohlo byt ono |
|
Návrat nahoru |
|
|
kidd.sadam
Založen: 11. 06. 2009 Příspěvky: 18
|
|
Návrat nahoru |
|
|
adragon
Založen: 23. 08. 2007 Příspěvky: 72 Bydliště: Praha
|
|
Návrat nahoru |
|
|
|