Hi,
ich habe echt ein Problem.
Habe bisher folgende Aufstellung unter Player Property eingestellt.
TEAM 1
Player 1 Computer
Player 2-7 User
TEAM 2
Player 8 Computer
Player 9-14 User
Wie schaffe ich es jetzt dass Spieler die in die Lobby kommen auch ingane richtig verwendet werden.
Wenn jmd. meine Map joint und dann in das andere Team wechselt, ist er irgendwie mit mir dann verbündet obwohl er im anderen Team wie ich bin. Und die Computer sind auch verbündet obwohl die ja in 2 unterschiedlichen Teams sind. Scheint irgendwie verbuggt zu sein oder ich blick es nicht.
Wäre euch für einen guten Rat sehr verbunden.
Grüße
M0rt3
Lobby und ingame Player. Wie mache ich das richtig!
Moderatoren: Exekutor[NHF], Deathwing, GarfieldKlon, G A F, SaVi
- Jack
- Belagerungspanzer
- Beiträge: 900
- Registriert: 26.07.2007, 10:39
- Battle.net ID: Fangwold.599
- Liga 1vs1: Diamant
- Liga 2vs2: Diamant
- Mainrace: Protoss
- Wohnort: Baden Würtemberg
Re: Lobby und ingame Player. Wie mache ich das richtig!
Es wundert mich,wo hier unsere ganzen Galaxy-Editor Profis sind,sowenige haben wir doch garnicht....ich selbst kenne mich leider garnicht mit dem Thema aus (hab nur in Sc1 Maps gemacht).
Mich würde aber interessieren,was du schon alles probiert hast?
Vielleicht können wir dann gemeinsam rätseln!
Schönen Gruß!
Jack
Mich würde aber interessieren,was du schon alles probiert hast?
Vielleicht können wir dann gemeinsam rätseln!
Schönen Gruß!
Jack
-
- Moderator des Zwielichts
- Beiträge: 616
- Registriert: 21.05.2008, 16:53
- Battle.net ID: SaVi.509
- Liga 1vs1: Diamant
- Liga 2vs2: Platin
- Mainrace: Protoss
Re: Lobby und ingame Player. Wie mache ich das richtig!
Ich empfehle es dir die Teams so zu gliedern:
Dann im Auslöser mit dem Ereignise "Karteninitialisierung"
Somit wird alles über Auslöser geregelt.
Tut mir Leid dass es so lange gedauert hat, ich habe einfach momentan so ziemlich garkeine Zeit, wobei jetzt endlich Wochenende ist.
Mfg SaVi
- Team 1
Player 1 - 6 User
Team 2
Player 7 - 12
Team 3
Player 13 Computer
Team 4
Player 14 Computer
Dann im Auslöser mit dem Ereignise "Karteninitialisierung"
Code: Alles auswählen
### Setzt den Wert der Variable
--> Jeden Integer von 1 bis 12 auswählen und aktionen ausführen
Aktionen: --> Wenn dann sonst
Wenn: --> Status von Spieler (Auslösender Spieler) == spielt
Dann: --> Modifiziere (Variable) + 1 (Nenn sie SpielerAmStart)
Sonst: --> (Leer)
Code: Alles auswählen
### Macht Team 1 untereinander zu Verbündeten
--> Für Jeden Integer (Locale Variable_A) von 1 bis ((SpielerAmStart)) / 2)
Aktionen: --> Wähle Jeden Integer von 1 bis ((SpielerAmStart)) - 1)
Aktionen: --> Wenn dann sonst
Wenn: --> (LocaleVariable_A) + (Ausgewählter Integer)) < 7
Dann: --> Mach Spieler (Locale Variable_A) und Spieler ((Locale Variable_A + Ausgewählter Integer)) zu Verbündeten
Sonst: --> Leer
Code: Alles auswählen
### Macht Team 1 mit Team 2 feindlich
--> Für jeden Integer (Locale Variable_A) von 1 bis ((SpielerAmStart / 2))
Aktionen: --> Wähle jeden Integer von ((SpielerAmStart / 2) + 1) bis (SpielerAmStart)
Aktionen: --> Mach Spieler (Locale Variable_A) und Spieler (Auslösender Spieler) zu Gegner
Code: Alles auswählen
### Macht Team 2 untereinander zu Verbündeten
--> Für Jeden Integer (Locale Variable_A) von (((SpielerAmStart)) / 2) + 1) bis (SpielerAmStart)
Aktionen: --> Wähle Jeden Integer von 1 bis 4
Aktionen: --> Wenn dann sonst
Wenn: --> (LocaleVariable_A) + (Ausgewählter Integer)) < 13
Dann: --> Mach Spieler (Locale Variable_A) und Spieler ((Locale Variable_A + Ausgewählter Integer)) zu Verbündeten
Sonst: --> Leer
Code: Alles auswählen
### Regelt Allianzen von Computer 13 und 14
Aktionen: --> Wähle jeden Integer von 1 bis 6
Aktionen: --> Mache Spieler 13 mit (Ausgewählter Integer) zu Verbündeten
Mache Spieler 13 mit ((Ausgewählter Integer + 6)) zu Feinden
Mache Spieler 14 mit ((Ausgewählter Integer) + 6) zu Verübündeten
Mache Spieler 14 mit ((Ausgewählter Integer) zu Feinden
Tut mir Leid dass es so lange gedauert hat, ich habe einfach momentan so ziemlich garkeine Zeit, wobei jetzt endlich Wochenende ist.
Mfg SaVi
Re: Lobby und ingame Player. Wie mache ich das richtig!
Danke Savi,
doch ich finde das kann ja nicht die Lösung sein. Was ist wenn zB 4 Freunde in die Map gehen und durch den trigger dann getrennt werden. Das ist ja blöd. Warum geht das nicht wie in WC3 direkt in der Lobby?
Da muss es doch eine Möglichkeit geben oder machen das die anderen Custommaps Sotis Nexus usw auch über trigger.
Schönes Wochenende
M0rt3
doch ich finde das kann ja nicht die Lösung sein. Was ist wenn zB 4 Freunde in die Map gehen und durch den trigger dann getrennt werden. Das ist ja blöd. Warum geht das nicht wie in WC3 direkt in der Lobby?
Da muss es doch eine Möglichkeit geben oder machen das die anderen Custommaps Sotis Nexus usw auch über trigger.
Schönes Wochenende
M0rt3
Re: Lobby und ingame Player. Wie mache ich das richtig!
Habe für mich jetzt eine Lösung gefunden und möchte diese kurz anreisen für die, die das selbe Problem haben.
Ich habe in der Lobby 2 Teams mit je 5 Slots erstellt.
Das Trigger-System muss ganz neuaufgebaut werden, da wir nicht mehr mit TriggeringPlayer arbeiten können. zumindest nicht mehr im eigentlichen Sinne.
Vorsicht: Ich benutze den englischen Editor
Ich setze eine Record Variable mit Array von 10 ein
Das heißt LobbySlot1 = PLAYER[1]LobbyPlayer usw.
Jetzt habe ich noch unter den richtigen Spielernummern die obige Variablenzahl gespeichert.
Beispiel: Wenn In PLAYER[1].lobby player = Spieler 8 ist dann Speichere ich nun unter PLAYER[8]lobbyslot die Zahl 1.
Somit kann ich dann aus einem Event mit TriggeringPlayer auf den Slot zu greifen, falls man zB ein Leaderboard hat usw.
Ich hoffe das hilft ein wenig weiter. Ist zwar nur eine Kurzerklärung, doch für Ansätze um das Problem in Griff zu bekommen sollte es genügen.
Greets
M0rt3
Ich habe in der Lobby 2 Teams mit je 5 Slots erstellt.
Das Trigger-System muss ganz neuaufgebaut werden, da wir nicht mehr mit TriggeringPlayer arbeiten können. zumindest nicht mehr im eigentlichen Sinne.
Vorsicht: Ich benutze den englischen Editor
Ich setze eine Record Variable mit Array von 10 ein
- PLAYER[10]
- LobbyPlayer
- lobbyslot
Das heißt LobbySlot1 = PLAYER[1]LobbyPlayer usw.
Code: Alles auswählen
Events
Game - Map initialization
Local Variables
Conditions
Actions
// TEAM 1
Variable - Set PLAYER[1].lobbyplayer = (Player 1 from (Players on team 1))
Variable - Set PLAYER[2].lobbyplayer = (Player 2 from (Players on team 1))
Variable - Set PLAYER[3].lobbyplayer = (Player 3 from (Players on team 1))
Variable - Set PLAYER[4].lobbyplayer = (Player 4 from (Players on team 1))
Variable - Set PLAYER[5].lobbyplayer = (Player 5 from (Players on team 1))
// Team 2
Variable - Set PLAYER[6].lobbyplayer = (Player 1 from (Players on team 2))
Variable - Set PLAYER[7].lobbyplayer = (Player 2 from (Players on team 2))
Variable - Set PLAYER[8].lobbyplayer = (Player 3 from (Players on team 2))
Variable - Set PLAYER[9].lobbyplayer = (Player 4 from (Players on team 2))
Variable - Set PLAYER[10].lobbyplayer = (Player 5 from (Players on team 2))
Beispiel: Wenn In PLAYER[1].lobby player = Spieler 8 ist dann Speichere ich nun unter PLAYER[8]lobbyslot die Zahl 1.
Somit kann ich dann aus einem Event mit TriggeringPlayer auf den Slot zu greifen, falls man zB ein Leaderboard hat usw.
Code: Alles auswählen
General - For each integer p from 1 to 10 with increment 1, do (Actions)
Actions
General - For each integer slot from 1 to 5 with increment 1, do (Actions)
Actions
General - If (Conditions) then do (Actions) else do (Actions)
If
p == PLAYER[slot].lobby player
Then
Variable - Set PLAYER[p].lobby slot = slot
Greets
M0rt3