Gamestudio Links
Zorro Links
Newest Posts
Zorro FIX plugin - Experimental
by flink. 04/21/24 07:12
Data from CSV not parsed correctly
by EternallyCurious. 04/20/24 21:39
M1 Oversampling
by 11honza11. 04/20/24 20:57
Scripts not found
by juergen_wue. 04/20/24 18:51
zorro 64bit command line support
by 7th_zorro. 04/20/24 10:06
StartWeek not working as it should
by jcl. 04/20/24 08:38
folder management functions
by VoroneTZ. 04/17/24 06:52
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (AndrewAMD, VoroneTZ), 396 guests, and 0 spiders.
Key: Admin, Global Mod, Mod
Newest Members
EternallyCurious, howardR, 11honza11, ccorrea, sakolin
19047 Registered Users
Previous Thread
Next Thread
Print Thread
Rating: 5
Page 3 of 17 1 2 3 4 5 16 17
Re: [GSTNet] Pong Demo [Re: Samb] #133806
06/30/07 13:29
06/30/07 13:29
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline OP
Serious User
nfs42  Offline OP
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
Hast die neue dll (30.6.07) ?

GSTNet_TrackEntity(my, GSTNet_TrackPos);
client: nur für die eigenen globalen enitities: plugin versendet die def. Eigenschaften jeden Frame an den server
server: nur alle globalen enitities: system versendet die def. Eigenschaften jeden Frame an alle clients (wird nicht auf dem Erzeuger-Client geändert)

sinnvoller einsatz
jeweils zu beginn der globalen action in client UND server
Code:
action ent_action(){
wait(1); //is needed
GSTNet_TrackEntity(my, GSTNet_TrackPos);
while(1){
wait(1);
}
}



GSTNet_UpdateEntity(my, GSTNet_TrackPos);

wie GSTNet_TrackEntity(my, GSTNet_TrackPos);
Unterschied:
die Daten werden sofort und nur bei diesem Aufruf einmal verschickt


Andreas
GSTools - Home of
GSTScript 0.9.8: lua scripting for A6/7/8
GSTNet 0.7.9.20: network plugin for A6/7/8
GSTsqlite 1.3.7: sql database plugin for A6/7/8
3DGS Codebase: 57 snippets || 3DGS Downloads: 248 files
Re: [GSTNet] Pong Demo [Re: nfs42] #133807
06/30/07 13:52
06/30/07 13:52
Joined: Nov 2000
Posts: 1,534
hamburg
Samb Offline
Serious User
Samb  Offline
Serious User

Joined: Nov 2000
Posts: 1,534
hamburg
eine aktuellere als die 29.06.2007 gibt es nicht zum runterladen.

und was genau meinst mit nur eigenen globaen entities?
heißt das, das ein client nicht die entities verändern kann, wenn sie ein anderer client erstellt hat?

Re: [GSTNet] Pong Demo [Re: Samb] #133808
06/30/07 16:40
06/30/07 16:40
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline OP
Serious User
nfs42  Offline OP
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
zu viele Änderungen in kurzer Zeit

ich bin noch nicht ganz so fit in mp-Anwendungen

globale entities laufen auf allen clients und server und müssen
durch den server verwaltet werden. der server kann auch alle alle globalen entities ändern.

jeder client kann lokale und eigene globale entities ändern.
z.b. die eigene player figur reagiert sofort auf eingaben.

werden durch den programm flow andere globale enities verändert,
muß dies auf dem server passieren, dieser nimmt die änderungen vor und schickt
diese an alle clients.

theoretisch könnte ich diese prüfung auf dem client herausnehmen.

im pong besipiel läuft die ball action nur auf dem server,
die player action auf dem zugehörigen client.
änderungen der player passieren auf dem zugehörigen client und
werden an den server und durch den an alle clients geschickt.

änderungen die dadurch im server am ball passieren werden ebenfalls an alle clients geschickt.

du kannst mir auch mal deinen code schicken webmaster at gstools dot de.


Andreas
GSTools - Home of
GSTScript 0.9.8: lua scripting for A6/7/8
GSTNet 0.7.9.20: network plugin for A6/7/8
GSTsqlite 1.3.7: sql database plugin for A6/7/8
3DGS Codebase: 57 snippets || 3DGS Downloads: 248 files
Re: [GSTNet] Pong Demo [Re: nfs42] #133809
06/30/07 17:19
06/30/07 17:19
Joined: Nov 2000
Posts: 1,534
hamburg
Samb Offline
Serious User
Samb  Offline
Serious User

Joined: Nov 2000
Posts: 1,534
hamburg
mein code besteht noch aus tests
bin noch dabei, dass das level geladen wird ohne probleme. danach konvertiere ich den player script von populace zu GSTNet.
war mir nur unschlüssig ob es überhaupt nicht geht, das jemand anders einfluss auf "fremde" entities hat.

sprich durch:
if(player==me)
{
GSTNet_TrackEntity(my, GSTNet_TrackPos);
}
könnte nur der spieler selbst die position ändern. sollte ein anderer die position ändern, wird diese natürlich überschrieben, sobald sich der spieler bewegt.

wenn es jedoch ohne IF ist, und nun ein anderer client die entity bewegt, müsste dies position auch wirklich geändert werden und zwar auf allen clienten.

mein test sieht so aus:
Code:
 action funtest()
{
wait(1);
GSTNet_TrackEntity(my, GSTNet_TrackPos);
while(1)
{
if(player==me)
{
if(key_cur==1)
{
my.x+=1;
}
}
wait(1);
}
}

action funtest2()
{
wait(1);
if(player==me){GSTNet_TrackEntity(my, GSTNet_TrackPos);}
while(1)
{
if(player==me)
{

if(key_cur==1)
{
my.x+=1;
}
}
wait(1);
}
}



client eins erzeugt einen entity, welche der player ist mit der funktion funtest()
diese sollte jeder verändern können, in der position, da ja auf jeden clienten GSTNet_TrackEntity(my, GSTNet_TrackPos); aufgerufen wird.

der zweite client ruft funtest2() als funktion für seine player entity auf. dieser sollte nur er ändern können, laut code.

jedoch kann client2 nicht die position von der entity von client1 manipulieren.

empfinde es als wichtig entscheiden zu können, ob alle etwas verändern dürfen oder nicht.
beim bomberman spiel wurden z.b. die figuren vom spieler auf ihre startplätze gesetzt. das würde nun nicht gehn, da man die entities nicht verändern kann.


edit:
ich verändere die position der anderen entity mit mouse_ent.x-=100
nur falls die frage aufkommen sollte, wie ich denn die entity des anderen clienten bewegen kann

Re: [GSTNet] Pong Demo [Re: Samb] #133810
06/30/07 20:23
06/30/07 20:23
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline OP
Serious User
nfs42  Offline OP
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
die update funktionen können jetzt durch jeden für alle globalen entities verwendet werden. Diese müssen jedoch periodisch aufgerufen werden.

die track funktionen laufen zyklisch im hintergrund, da diese recht heikel zu nutzen sind (auf allen clients die gleiche action!). sie müßten wie in deinem fall immer ein- und ausgeschaltet werden je nach nutzung. sie gelten
GSTNet.dll+GSTNet.wdl sind als separater download zur verfügung


Andreas
GSTools - Home of
GSTScript 0.9.8: lua scripting for A6/7/8
GSTNet 0.7.9.20: network plugin for A6/7/8
GSTsqlite 1.3.7: sql database plugin for A6/7/8
3DGS Codebase: 57 snippets || 3DGS Downloads: 248 files
Re: [GSTNet] Pong Demo [Re: nfs42] #133811
07/01/07 16:10
07/01/07 16:10
Joined: Nov 2000
Posts: 1,534
hamburg
Samb Offline
Serious User
Samb  Offline
Serious User

Joined: Nov 2000
Posts: 1,534
hamburg
crasht nun bei mehr als 103 mp-entities

achja, ein GSTNet_ent_morph befehl wäre noch gut

Re: [GSTNet] Pong Demo [Re: Samb] #133812
07/02/07 17:55
07/02/07 17:55
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline OP
Serious User
nfs42  Offline OP
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
update: 0.4.3
+ var GSTNet_Connections()
1 = server
2 = client
3 = clientserver
replaces ifdef srv;
+ var GST_ent_morph(entity, filename)

bis zu 1000 globale entities

Download


Andreas
GSTools - Home of
GSTScript 0.9.8: lua scripting for A6/7/8
GSTNet 0.7.9.20: network plugin for A6/7/8
GSTsqlite 1.3.7: sql database plugin for A6/7/8
3DGS Codebase: 57 snippets || 3DGS Downloads: 248 files
Re: [GSTNet] Pong Demo [Re: nfs42] #133813
07/02/07 19:25
07/02/07 19:25
Joined: Nov 2000
Posts: 1,534
hamburg
Samb Offline
Serious User
Samb  Offline
Serious User

Joined: Nov 2000
Posts: 1,534
hamburg
ok, level laden klappt nun tadelos

nur das alle clienten alles beeinflussen können, bekomem ich noch nicht hin.
es ist ein bomberman clon. wenn man eine bombe legt, tracet sie in 4 richtungen und wenn ien block da ist, wird sein skill auf 1 gesetzt und an alle anderen clienten übertragen.
wenn der skill auf 1 ist, geht es halt weiter in der funktion (erscheint ein item oder geht er nur kaputt etc.).
aber momentan kann halt nur der ersteller die skills und positions sachen verändern. nicht mal der server hat kontrolle über sie.
da alle clienten die gleiche funktion aufrufen und auch allen clienten gesagt wird "trackt diesen skill", sollten auch alle clienten ihn verändern dürfen, so das er auch gesendet wird.
ansonsten lassen sich viele sachen nur über umwege realisieren. wie eben das mit den blöcken.

achja
untrack funktion ist nicht inner WDL und wird auch nicht in der DLL gefunden, wenn man es selber einträgt.

Re: [GSTNet] Pong Demo [Re: Samb] #133814
07/02/07 20:40
07/02/07 20:40
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline OP
Serious User
nfs42  Offline OP
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
die prüfung habe ich bei TrackEntity herausgenommen, mach was draus
UntrackEntity() ist jetzt als dllfunction definiert und funktioniert


Andreas
GSTools - Home of
GSTScript 0.9.8: lua scripting for A6/7/8
GSTNet 0.7.9.20: network plugin for A6/7/8
GSTsqlite 1.3.7: sql database plugin for A6/7/8
3DGS Codebase: 57 snippets || 3DGS Downloads: 248 files
Re: [GSTNet] Pong Demo [Re: nfs42] #133815
07/02/07 20:46
07/02/07 20:46
Joined: Nov 2000
Posts: 1,534
hamburg
Samb Offline
Serious User
Samb  Offline
Serious User

Joined: Nov 2000
Posts: 1,534
hamburg
hmpf, wenn mans downloaden will, kommt "You must login and be authorized to access documents."
habe mich sogar extra registriert aaaber das komtm immer noch

sollte dann alles klappen, werde ich wohl ne kleine 3D chatanwendung proggen.
hab noch andere sachen zu machen, daher nur etwas kleines

Page 3 of 17 1 2 3 4 5 16 17

Moderated by  HeelX, Spirit 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1