Wird das so was?-UDP Multiplayer [NOCHMAL EIN NEUES PROBLEM]
Übersicht

![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Och MAS... das ist doch ne ganz einfache sache ![]() Zitat: string$=""
For c.client=Each client string$=string$+c\name next WriteString(udp,string$) ;dem neuen spieler alle spieler zuschicken SendUDPMsg udp,neuerplayerip,neuerplayerport ;UDP Message senden |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm ich habs jetzt so gemacht:
Code: [AUSKLAPPEN] If newplayer=1 Then WriteByte(udp,4) For c.client=Each client pp$=pp$+c\name WriteString(udp,pp$) ;dem neuen spieler alle spieler zuschicken Next SendUDPMsg udp,neuerplayerip,neuerplayerport ;UDP Message senden EndIf wenn ich den code reintu, bemerkt der server nichmehr wenn ein neuer spieler reinkommt. Wenn ich ihn raustue dannn schon. Was könnte an diesesm code blockieren? |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kann es sein, dass du nach dem Schicken der Spieler die Variable newplayer nicht mehr auf null setzt? | ||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
nee, daran lags nich, hab das problem aber behoben.
So, ich hab ein neues Problem und zwar läuft das prog zu 2. ohne probleme. Wenn es aber mehr spieler sind und alle laufen, wird immer ein spieler nicht angezeigt. Könnt ihr sagen warum?? Ich hab die dateien einfach mal hochgeladen. Wäre nett wenns ihr einfach mal 3-mal auf m PC starten könntet und mir evt. weiterhelfen könntet. mfg marius https://www.blitzforum.de/upload/file.php?id=1639 |
||
![]() |
jj2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jo,also ich programmiere ja mit marius zusammen und wir kommen einfach nicht weiter.
Habt ihr keine idee woran das liegt?? mfg jj2 |
||
...:::ICH WOHNE IN DER GESÜNDESTEN STADT DEUTSCHLANDS:::...
Meine Pages : www.lpbase.de mein projekt :Authority von Impulse Soft User posted image |
![]() |
Progger93Betreff: writeshort nehmen |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich würde writeshort anstatt writebyte nehmen da writy byte nur ein byte versendet und eure x pos nicht in ein byte passt (1 Byte=Zahlen von 0-255)
für euer Problem weiß ich eigentlich auch nicht weiter. |
||
MfG Pascal
Win 7|T7250@2.0Ghz|3GB RAM|M8600GT |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
so, was mir auffällt:
1. der Clinent sieht sich selbst nicht als client sodass er sich doppelt darstellt ~weitere folgen mit EDIT~ EDIT 2. Code: [AUSKLAPPEN] Case 1
name$ = ReadString(udp) ;Name des sendenden Clients For c.client=Each client c\x = ReadByte(udp) ;Nachricht des sendenden Clients c\y = ReadByte(udp) Next da fehlt eine Namensabfrage: welcher c\name hat eigendlich gesendet und muss an die neue position?? besser: Code: [AUSKLAPPEN] Case 1
name$ = ReadString(udp) ;Name des sendenden Clients For c.client=Each client If c\name=name;ist der client-name der name des senders c\x = ReadByte(udp) ;Nachricht des sendenden Clients c\y = ReadByte(udp) EndIf Next EDIT 3. SO nun nochmal zum Server die sache mit variablen und new player war ne gute idee ich hab das allerding nochmal zusammengefasst und zwar wenn der server einem anderem spieler(c2) bescheid sagt das ein neuer (c) hinzukommt kann er auch gleich danach dem neuen (c) sagen dass es diesen anderen (c2) auch gibt. was ein satz.... so sieht das dann aus Code: [AUSKLAPPEN] For c2.client = Each client
If Not c2 = c WriteByte(udp,2) ;Nachrichtentyp 2 senden = Client beigetreten WriteString(udp,name$) ;Name weiterleiten SendUDPMsg udp,c2\ip,c2\port ;UDP Message senden WriteByte(udp,2) WriteString(udp,c2\name) ;dem neuen spieler alle spieler zuschicken SendUDPMsg udp,c\ip,c\port ;UDP Message senden EndIf Next Acso und nochwas: E HAT GEKLAPPT MIT 3 CLIENTS... |
||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ahh,cool vielen dank!!
So is das alles viel besser!! Gute idee mit dem beitrtetndem spielr alle anderen zuschicken. DANKE! hat wunderbar funktioniert Nur gibts n neues problem^^ Also, ich hab jetzt, da das udp online grungerüst funktioniert hat, mal versucht das in das eigentliche bis jetzt kleine game einzubauen. Es kommt auch keine Fehlermeldung usw. nur habe ich, so sieht es aus, irgend ne variable doppeltbelegt oder falschverwendet, da irgendwas mit der bewegung vom gegner + spieler nicht stimmt. Sie bewegen sich zwar, nur etwas komisch. Wäre nett wenn sich nochmal einer opfern würde und sich das anschaun könnte. Ich such jetzt echt schon ewig rum, finde aber den fehler nich. Ich hab die Datei wieder upgeloadet: https://www.blitzforum.de/upload/file.php?id=1651 mfg Marius Wäre nett wenn ihr mir nochmal helfen würdet |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
du musst deinen eigenen spieler als myplayer.client definieren so kannst du mit For c=each client ... drawimage.... next alle clients anzeigen | ||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
aber wo und warum soll ich den so definieren??
Für meinen spieler verwende ich doch garkein type |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich hab inzwischen herausgefunden woran dein ffehler ist:
Code: [AUSKLAPPEN] For p.client= Each client
so entweder:
DrawImage gegnerpic,p\ppx,p\ppy Next DrawImage spieler,ppx-scrollx,ppy-scrolly ppx-scrollx oder p\ppx und die richtige antwort ist Code: [AUSKLAPPEN] For p.client= Each client
DrawImage gegnerpic,p\ppx-scrollx,p\ppy-scrollx Next DrawImage spieler,ppx-scrollx,ppy-scrolly Das war alles^^ |
||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm, kannst du mal dein code pasten??
Weil ich habs geändert stimmt aber immer noch nicht. Wäre nett mfg marius |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
jetz awa mal ich hab mir dein zeug runtergeleaden und hab aus dem Code: [AUSKLAPPEN] For p.client= Each client
DrawImage gegnerpic,p\ppx,p\ppy Next diesen Code: [AUSKLAPPEN] For p.client= Each client
DrawImage gegnerpic,p\ppx-scrollx,p\ppy-scrolly Next beim NewClient.bb gemacht habs 2 mal gestartet und dann läuft das immer etwas zeitverzögert.... aber es läuft.... siehe dasda: https://www.blitzforum.de/upload/file.php?id=1672 |
||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
cool thx, hab vorher irgendwas falsch vertauscht jetzt gehts
Vielen dank! Wenn das spiel was wird stehst du in den credits FTC und das ganze blitzforum^^ Also danke. ICh meld mich wenn ich wieder ne frage hab^^ |
||
www.lpbase.de
Meine Linkin Park Fanseite[Noch im Aufbau] |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group