Gamestudio Links
Zorro Links
Newest Posts
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (7th_zorro), 1,390 guests, and 2 spiders.
Key: Admin, Global Mod, Mod
Newest Members
Hanky27, firatv, wandaluciaia, Mega_Rod, EternallyCurious
19051 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 2 1 2
[GSTNet] Events #158561
10/03/07 20:27
10/03/07 20:27
Joined: Jul 2004
Posts: 52
Vienna
H
Hawk Offline OP
Junior Member
Hawk  Offline OP
Junior Member
H

Joined: Jul 2004
Posts: 52
Vienna
Hallo, ich experimentiere jetzt auch im Multiplayer mit GSTNet herum. Ich frage mich aber wie ich das connect event auf dem Server aufrufen kann wenn ein Client verbindet. Ich habe es mit GSTNet_Events(4,clientJoined) in der main() ausprobiert und die Funktion "clientJoined" erhöht dann numberClients+=1, aber nichts tut sich.
Was mache ich falsch bzw. wie mache ichs richtig?

übrigens:
ich habe auch Probleme mit GSTNet_Connection() bei der Überprüfung des Verbindungsmodus. Mit "connection" von 3dgs funktioniert die Überprüfung wunderbar, zB:
Code:

if(connection==3) //client + server
{
numberClients=1;
ent_createlocal(str_thunder,vector(900,0,0),move_thunder);
}


aber bei folgendem tut sich nichts:
Code:

if(GSTNet_Connection()==3) //client + server
{
numberClients=1;
ent_createlocal(str_thunder,vector(900,0,0),move_thunder);
}



Ich habe keine Errors, GSTNet.dll ist in acknex_plugins und die wdl im Script included.
Wer will mir helfen?


Commcercial A6.60
Re: [GSTNet] Events [Re: Hawk] #158562
10/03/07 21:14
10/03/07 21:14
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline
Serious User
nfs42  Offline
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
Code:

GSTNet_Events(4,clientJoined)



müßte so aussehen

Code:

GSTNet_Events(4,"clientJoined")



Quote:


if(GSTNet_Connection()==3) //client + server
{
numberClients=1;
ent_createlocal(str_thunder,vector(900,0,0),move_thunder);
}





builtin mp und GSTNet NICHT mischen.

GSTNet läuft völlig unabhängig, server und clients müssen/können per funktionsaufruf gestartet werden.

z.B. ein user script als basis


ich muß die demo auf den aktuellen plugin stand bringen




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] Events [Re: nfs42] #158563
10/10/07 19:45
10/10/07 19:45
Joined: Jul 2004
Posts: 52
Vienna
H
Hawk Offline OP
Junior Member
Hawk  Offline OP
Junior Member
H

Joined: Jul 2004
Posts: 52
Vienna
also das mit GSTNet_Connection() funktioniert jetzt. Aber GSTNet_Events(4,"clientJoined") bringe ich noch immer nicht zum laufen.

Ich möchte haben, dass eine Variable um 1 erhöht wird wenn ein Client verbindet.
Momentan sieht das bei mir so aus:
Code:
var numberClients=0;

function main()
{
level_load(str_game);
sleep(.5);


ifdef srv;
GSTNet_StartServer(2301,-0.1);
GSTNet_Events(4,"clientJoined");
endif;

GSTNet_StartClient("localhost",2301,-0.1);
...
}
function clientJoined()
{
numberClients+=1;
}



was mache ich falsch bzw. wie wende ich GSTNet_Events(4,"") richtig an?


Commcercial A6.60
Re: [GSTNet] Events [Re: Hawk] #158564
10/10/07 19:54
10/10/07 19:54
Joined: Jul 2005
Posts: 1,930
Austria
Dark_samurai Offline
Serious User
Dark_samurai  Offline
Serious User

Joined: Jul 2005
Posts: 1,930
Austria
Das Event wird nicht automatisch aufgerufen. Das musst du per GSTNet_ClientSend(4," "); clientseitig tun, sobald sich dieser mit dem Server verbunden hat.

Achja, es ist außerdem unnötig eine Variable zu machen, die die aktuelle Clientanzahl speichert, denn GSTNet_ClientsConnected() gibt dir die anzahl der eingeloggten Clients zurück. Aber ich denke das du das nur gemacht hast, um die Events mal auszuprobieren

Dark_Samurai


ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)!
get free version
Re: [GSTNet] Events [Re: Dark_samurai] #158565
10/10/07 20:12
10/10/07 20:12
Joined: Jul 2004
Posts: 52
Vienna
H
Hawk Offline OP
Junior Member
Hawk  Offline OP
Junior Member
H

Joined: Jul 2004
Posts: 52
Vienna
wow danke das war ja ne schnelle antwort!
Es klappt jetzt mit GSTNet_ClientSend(0,4,"");
Die Anzahl schießt zwar aufgrund einer while-Schleife sofort auf 99 Spieler hinauf obwohl es nur ein Client ist, aber vom Prinzip her funktionierts jetzt

edit: jetzt bin ich sogar auch Junior Member geworden *g

Last edited by Hawk; 10/10/07 20:14.

Commcercial A6.60
[GSTNet] fixed: Events [Re: Hawk] #158566
10/10/07 20:50
10/10/07 20:50
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline
Serious User
nfs42  Offline
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
this is a bug > fixed in next release 0.5.16

workaround

definiere stattdessen einen standard server event:
Code:

GSTNet_Events(GSTNet_EventServer, "evServer");



und werte den eventtype in dieser event function aus:
Code:


//----------------------------------------------------------------------------------------
// function: evServer
// purpose: this function is called by GSTNet,
// when an incoming message for the client occurs
// this event has to be registered with
// GSTNet_Events(GSTNet_EventServer,"evServer");
// input: vTyp : var any type of event, that are not registered
// input: sMsg : string data
//------------------------------------------------------------------
function evServer(vType, sData, vSender, vReceiver)
{
var id;
diag("\nReceive server event:");
if (vType == GSTNet_EvTypeConnect ) {
diag("\nNew client connected. ClientId:");
diag(sData);
}
// if (vType == GSTNet_EvTypeDisconnect ) {
// diag("\nClient has disconnected. ClientId:");
// diag(sData);
// id = str_to_num(sData); // remove all global entities created by this client
// you = ent_next(null);
// while(you!=null){
// temp = you;
// if (GSTNet_CreatorId(you)==id){ GSTNet_ent_remove(you);}
// you = ent_next(temp);
// }
// }
return(0);
}



Last edited by nfs42; 10/10/07 21:11.

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] fixed: Events [Re: nfs42] #158567
10/11/07 09:16
10/11/07 09:16
Joined: Jul 2005
Posts: 1,930
Austria
Dark_samurai Offline
Serious User
Dark_samurai  Offline
Serious User

Joined: Jul 2005
Posts: 1,930
Austria
Wann wird denn die nächste Version veröffentlicht?
Wird eigentlich irgend wann dieses ClientJoined-Event mal automatisch aktiviert, oder bleibt das so, dass man es per Hand aufrufen muss?

Dark_Samurai

Last edited by Dark_samurai; 10/11/07 09:17.
Re: [GSTNet] fixed: Events [Re: Dark_samurai] #158568
10/11/07 10:03
10/11/07 10:03
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline
Serious User
nfs42  Offline
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
der event wird ja schon automatisch abgearbeitet, wenn eine zentrale eventfunktion 1 oder 2 definiert sind.
Code:

GSTNet_Events(GSTNet_EventServer, "evServer");



über if-abfragen können die events bereits jetzt unterschieden werden. es ist lediglich überischtlicher, wenn du für verschiedene events eigene funktionen definieren kannst.


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] fixed: Events [Re: nfs42] #158569
10/14/07 17:34
10/14/07 17:34
Joined: Jul 2005
Posts: 1,930
Austria
Dark_samurai Offline
Serious User
Dark_samurai  Offline
Serious User

Joined: Jul 2005
Posts: 1,930
Austria
Wenn ich die Engine im Client+Servermode laufen lasse, und diese Zeile: GSTNet_Events(GSTNet_EventServer, "evServer"); benutze, so crashed die Engine beim Ausführen von ClientPoll...
Kann ich dieses Event nur verwenden, wenn die Engine im Servermode läuft?

Dark_Samurai


ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)!
get free version
Re: [GSTNet] fixed: Events [Re: Dark_samurai] #158570
10/14/07 18:50
10/14/07 18:50
Joined: Jun 2001
Posts: 1,004
Dossenbach
N
nfs42 Offline
Serious User
nfs42  Offline
Serious User
N

Joined: Jun 2001
Posts: 1,004
Dossenbach
sollte nicht sein.
hast du einen client event definiert ?

Code:

GSTNet_Events(GSTNet_EventClient, "evClient");




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
Page 1 of 2 1 2

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