Netzwerk Übertragung

  • GM 6

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Netzwerk Übertragung

    also ich habe ein kleines problem mit dem erstellen von multiplayergames.
    es geht um das senden von gleichen IDs.
    z.b. ich will einen spaceshooter bauen , man spielt zu zweit gegen eine flotte von gegnern.
    Nehmen wir an, da sind 2 gegnerische Raumschiffe, mit der selben object_id , da ich die gegner spawnen lasse.
    Wie will man bitte deren Position übergeben?
    Wenn das dann so gemacht wird, würden beim Client beide die selbe Position bekommen oder nicht ?


    wie müsste ich das umsetzen , damit sowas nicht passiert ?
    Der Hammer fällt manchmal vom Tisch.
  • Der eine Spieler ist "Spielleiter" und spawn die Gegener. Diese werden dann übertragen an den zweiten Spieler und fertig.

    GML-Quellcode

    1. var i;
    2. i=instance_create(random(room_width)+1,0,obj_gegner)
    3. mplay_message_send(0,"gegner",string(i.x)+"|"+string(i.y))

    Zum empfangen:

    GML-Quellcode

    1. var i;
    2. i=mplay_message_receive(0)
    3. instance_create(real(string_delete(string(i),string_pos("|",string(i)),string_length(string(i)))),real(string_delete(string(i),0,string_pos("|",string(i)))),obj_gegner)

    Puhh das ist ja mal ein Befehl.
    MfG Henrik1235
    PS. kA ob da jeztz Fehler drin sind.
    #edit
    Alle Fehler behebt.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von henrik1235 ()

  • Aua, für sowas sollte man aber wirklich nicht Strings benutzen.

    Also die internen IDs (was du wolltest waren wahrscheinlich die instance ids, nicht object id) sind (soweit ich weiß) dafür unbrauchbar, da sie bei den beiden Spielern unterschiedlich sind. Ich mach für sowas immer einfach eigene IDs, die ich beim spawnen der Objekte mit übertrage und dann später zum ansprechen verwende.