Szerző Téma: Szerver és Kliens oldal  (Megtekintve 1594 alkalommal)

Nem elérhető Jason

Szerver és Kliens oldal
« Dátum: 2018. Június 29. - 10:54:07 »
0
Sziasztok!
Nagyon rég foglalkoztam már a LUA-val, akkor is max editeléssel \"foglalkoztam\", most azonban van több időm és szeretném normálisan megtanulni a LUA nyelvet. Kisebb scriptek írásával szeretném kezdeni, azonban nem tudom, hogy hogyan induljak el. Mármint nagyjából emlékszem dolgokra, de azt sose értettem, hogy egy scriptet miért kell cliens vagy épp server oldalra készíteni. Valaki tudna segíteni ebben, hogy mikor mit milyen oldalra kell írni ?
Előre is köszönöm a segítséget.

Szerver és Kliens oldal
« Válasz #1 Dátum: 2018. Június 29. - 17:41:24 »
+1
Marci? :D Tulajdonképp szerver oldalra azt szokás írni, ami mindenkinek lefut, amit minden kliens lát, és befolyásolja a szervert, vagy nem is tudom hogy fejezzem ki magam. Kliens oldalra meg azt, ami a klienseknek/játékosoknak jelenik meg. Használni tudom, magyarázni nem, szóval ha nem érthető, bocsi. :D

Nem elérhető Jason

Szerver és Kliens oldal
« Válasz #2 Dátum: 2018. Június 29. - 21:19:12 »
0
Haha :D Köszike az infót :D Igazából azzal nem vagyok tisztában, hogy egyes resource-okat melyik oldalra kellene írni..pl job systemben mit hova, ilyenek.

Szerver és Kliens oldal
« Válasz #3 Dátum: 2018. Június 29. - 22:30:55 »
0
Úgy hallottam, hogy a legtöbb dolgot amit tudsz, érdemesebb kliens oldalra írni, hogy ne a szervert terhelje. Nem tudom Job system alatt mit értesz, magát a munka felvételt, vagy a munkákat. De nézzünk csak egy alap CP-s melót. Ha kocsival mész, szerver oldalon lehívsz egy autót. Kliens oldalon lerakod a CP-ket, hogy csak az lássa, aki éppen a munkát végzi. Tulajdonképp szerver oldalon ilyen esetben csak a spawn-olásokat, a destroy-okat, és a mentéseket érdemes.

Szerver és Kliens oldal
« Válasz #4 Dátum: 2018. Június 30. - 21:31:30 »
+1
Nem tom...szerintem ha az embernek bitang szervergépe van, felesleges mindennel a klienst terhelni. Van aki potato géppel MTA-zik, ha mindent kliens oldalra írsz, egy nagyobb, összetettebb (vagy akár szimplán igénytelen, optimalizálatlan) mód konkrétan játszhatatlan is tud lenni.

Szerver és Kliens oldal
« Válasz #5 Dátum: 2018. Július 01. - 12:51:53 »
0
Ebben is van igazság. De akinek nincs erős szervergépe, annak javasoltabb inkább kliens oldalra írni. Jobb az, hogy pár embernek szaggat a szerver, minthogy mindenkinek. :D

Nem elérhető Jason

Szerver és Kliens oldal
« Válasz #6 Dátum: 2018. Július 02. - 12:30:32 »
+1
Köszönöm mindenkinek a válaszát, zárható a téma!

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Szerver és Kliens oldal
« Válasz #7 Dátum: 2018. Július 02. - 23:42:43 »
0
Ha egy szervert akarsz csinálni, akkor valószínűleg a közösségért, és az élményért teszed. Ha ezt az elvet követjük, akkor szerver van a kliensért, vagy a kliens a szerverért? Egyik sincs meg a másik nélkül.
 
Programozók első íratlan törvénye, hogy sose bízz a felhasználóban. Semmi olyan dolgot nem szabad a kliens oldalt tárolni, amiből esetleg plusz információhoz juthat, vagy esetleg felhasználhatja azokat. A szervergép azért szervergép, hogy lehessen terhelni, a kiszolgálókért van és nem fordítva.
 
Másrészről a kliens oldalt legtöbb esetben design elemek megjelenítésére és utasítások kiadására használatosak, de ettől függetlenül még szerver oldalon le kell kezelni minden eshetőséget (ha a játékos hamis adatokat adna meg valamely úton módon (bug, vagy valahogyan hackelt klienssel játszik)). Természetesen vannak kivételek, van amit jobb megírni kliens oldalon.
 
Sokan az SQL lekérdezéseket is félnek használni szerver oldalon, pedig azok aszinkron megoldással vannak tervezve, és egy bonyolultabb lekérdezés is lefut 0,3ms alatt.
 
 
 



   
      Úgy hallottam, hogy a legtöbb dolgot amit tudsz, érdemesebb kliens oldalra írni, hogy ne a szervert terhelje. Nem tudom Job system alatt mit értesz, magát a munka felvételt, vagy a munkákat. De nézzünk csak egy alap CP-s melót. Ha kocsival mész, szerver oldalon lehívsz egy autót. Kliens oldalon lerakod a CP-ket, hogy csak az lássa, aki éppen a munkát végzi. Tulajdonképp szerver oldalon ilyen esetben csak a spawn-olásokat, a destroy-okat, és a mentéseket érdemes.
   

[/quote]
 
Mi van akkor, ha a játékos hozzáfér a játék memóriájához, funkcióihoz, és áttudja rakni a CP-ket a saját pozíciójára, így érzékelve azt, hogy elvégezte a munkát? (nem sok az esély rá természetesen, de kitudja mikor lesz egy rosszakaró)
« Utoljára szerkesztve: 2018. Július 02. - 23:53:15 írta DrAkE »

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
Szerver és Kliens oldal
« Válasz #8 Dátum: 2018. Július 03. - 07:52:48 »
0
Én nem foglalkoztam MTA-val, viszont sima logikával egy egyszerű példát hoznék SAMP ismeretekkel.
 
SA-MP-ben Lehet szerver oldalon létrehozni textdrawot ugye.
 
A játékosoknál mindnél van alap SA HUD ami tartalmaz pár infót: élet, pajzs, oxigén, fegyver, töltény, pénz, idő.
 
Na ha ezt SA-MP textdraw-al kell megoldani, akkor a szerver ezeket az infókat tárolhatja, de minek tárolja, hogy hol van egy a HUD, melyik csík mekkora?
 
A szerver tárolja a számokat, hogy miből mennyi van, esetleg mennyi a max, a kliens meg azt, hogy hol hogyan jelenik meg ez az infó.
 
Vagy például a chat. A szerver elküldi az üzenetet a kliensnek onnantól a kliens felel a megjelenítésért és a tárolásért. Gyorsan meg lehetne tölteni a szerver memóriáját, ha minden chat üzenetet tárolna.
 
Lehetnek kliens és szerver oldali parancsok. Például HUD bekapcsolás és kikapcsolás kliens oldali, de esetleg a szerver is elérheti ezt a funkciót, ha szükséges.
 
A kliens magától írhat ki chat üzenetet, vagy épp módosíthatja az üzenetet (lásd interaktív chat), viszont nem állíthatja a HP-t, pajzsot...
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Szerver és Kliens oldal
« Válasz #9 Dátum: 2018. Július 03. - 15:24:43 »
0
Idézetet írta: Kovacs_Richard date=1530597168


   
      Én nem foglalkoztam MTA-val, viszont sima logikával egy egyszerű példát hoznék SAMP ismeretekkel.
   
   
      SA-MP-ben Lehet szerver oldalon létrehozni textdrawot ugye.
   
   
      A játékosoknál mindnél van alap SA HUD ami tartalmaz pár infót: élet, pajzs, oxigén, fegyver, töltény, pénz, idő.
   
   
      Na ha ezt SA-MP textdraw-al kell megoldani, akkor a szerver ezeket az infókat tárolhatja, de minek tárolja, hogy hol van egy a HUD, melyik csík mekkora?
   
   
      A szerver tárolja a számokat, hogy miből mennyi van, esetleg mennyi a max, a kliens meg azt, hogy hol hogyan jelenik meg ez az infó.
   
   
      Vagy például a chat. A szerver elküldi az üzenetet a kliensnek onnantól a kliens felel a megjelenítésért és a tárolásért. Gyorsan meg lehetne tölteni a szerver memóriáját, ha minden chat üzenetet tárolna.
   
   
      Lehetnek kliens és szerver oldali parancsok. Például HUD bekapcsolás és kikapcsolás kliens oldali, de esetleg a szerver is elérheti ezt a funkciót, ha szükséges.
   
   
      A kliens magától írhat ki chat üzenetet, vagy épp módosíthatja az üzenetet (lásd interaktív chat), viszont nem állíthatja a HP-t, pajzsot...
   


Hát igazság szerint SA-MPban a textdrawok értékei (hol legyen a maga a textdraw, szöveg, szín, stb) azt szerver oldalon tárolja ugyanúgy. Ettől eltekintve jól látod a dolgokat. A szerver tárolja a főbb adatokat, a kliens meg a megjelenítő. A chatnél természetesen a szerver ilyenkor csak közvetítő szerepet lát el, nem tárolja a chat szövegét, hiszen a szerverre nézve felesleges adatnak számít.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal