-
Fototrend

Új hozzászólás Aktív témák
-
Sanyix
őstag
Hi!
Adott egy mmo játék protokollja. Valahogy úgy néz ki, hogy egy tcp adatfolyamon belül olyan logikai csomagok vannak.
A csomagok változó hosszúságúak, van max 10 féle login csomag, és még vagy 40 ingame csomag, de az nem érdekes, azt ahhoz nem kell nyúlni.
A csomagok elején rögtön egy byte van, ez azonosítja a csomag típusát (mit tartalmaz) vannak benne stringek, intek, byte-ok, boolean-ek.
A lényeg annyi lenne, hogy loginkor a kliens bejelentkezik felhasználónév/jelszót küld, szerver válaszol hogy rendben van, küld egy gameszerver listát, majd a kliens küldi a választást, amire a szerver jó esetben küld egy visszaigazolást, majd innentől már csak a játékrésszel kommunikál, amihez ugye nem kell nyúlni. A lényeg, hogy a login szerverrel való kommunikációnál, a kliens által küldött csomagokat le kellene menteni, majd máskor a szerver által küldött megfelelő csomagra válaszul be kéne helyettesíteni a megfelelő mentett csomagot, a normál kliens csomagjainak helyére.
A kérdés az lenne, hogy a csomag értelmezést hogyan lehetne egyszerűen megcsinálni? Java-ban csinálnám, mert ehhez értek, de gondolom lenne gond az adattípusok közti kompatibilitással, mivel a szerver valószínűleg c-ben lett írva.
Bár igazából az is elég lenne, ha a szerver által küldött csomagnak csak a típusát tudjam (és a hosszát persze, hogy tudjam hol a vége), mert ennél már lehet tudni mi a válasz. De a kliens válaszcsomagját is úgy kellene lementeni, hogy pontosan ugyanúgy vissza lehessen helyettesíteni majd később.Jó lenne ha nem ilyen readbyte, readint, és így tovább sorozatokkal kéne olvastatni. Objektumként nem lehet sehogy? Mert ugye javaban lehet küldeni objektumot is hálózaton, de gondolom úgy alapon tökmás lenne a kódolása ennek mint azoknak az adatcsomagoknak..
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- ASUS ROG Zephyrus G16 (2024) RTX 4090 (!!) / Ultra 9 / GAR 2027 brutál erős, csúcs modell
- Cooler Master CK550 RGB mechanikus billentyűzet (Gateron Brown, HU)
- Elgato Stream Deck 15 gombos (MK.1) + állvány
- Gamer PC Ryzen 7 5800X + RTX 3060 12GB / 32GB RAM / vízhűtés / RGB
- ThinkPad X1 Extreme Gen 3 (i7, 32GB, GTX1650Ti, 4K) Magyar, szép állapot
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB DDR5 RAM RTX 5070 12GB GAMER termékbeszámítással
- 27% - LG UltraGear 32GS75QX-B Monitor! 2560x1440 / 180Hz / 1ms / G-Sync / FreeSync
- Bontatlan! Playstation Portal 2 év garancia 2028.04.09-ig számlával!
- CÉGEK FIGYELEM!! iPhone 11 64GB Black -1 ÉV GARANCIA - 27% ÁFA-S SZÁMLA Kártyafüggetlen, 100% Akksi
- HIBÁTLAN iPhone 14 Pro Max 512GB Silver -1 ÉV GARANCIA - Kártyafüggetlen
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

