| 10-01-2004, 01:06 PM | #1 |
i have a problem: when my map is started (4 player map, tested with 2 players) the second player gets disconnected. i have some ideas whats causing it: my WE Unlimited (not likely i think) my initialization triggers my hero selection dialog can any of these cause discs? if yes i'll post them here, for trouble shooting. if no, what else is causing it? |
| 10-01-2004, 04:30 PM | #2 |
WEU doesn't cause disconnects. Post all of your "possibly involved" triggers. (Mainly initialization and hero selection triggers). |
| 10-01-2004, 05:22 PM | #3 |
does it give an errors? if so, list them.. Oh, and I need a team fr my new map http://www.wc3campaigns.com/showthread.php?t=65922 |
| 10-01-2004, 07:11 PM | #4 |
i sugest putting a message before each trigger that is fired in the begginig, when you disconect you should see a message, find the matching message in your triggers and you have found your problem. |
| 10-01-2004, 09:38 PM | #5 |
can you print a game - message in map initialization triggers? k, i'm posting my triggers, but this is going to be a bit longer... i would really appreciate it, if someone could look them through. init triggers: Code:
Initialisieren
Events
Map initialization
Conditions
Actions
Advanced - Initialize advanced triggers
-------- Startvariablen --------
Set ExperiencePenalty = 240.00
Set ExperienceRate = 60.00
Set AcquisitionRange = 300.00
Set Sprengradius = 350.00
Set HeldenauswahlSpielerNr = 1
Set AnzahlSpieler = 4
Game - Hide creep camps on the minimap
Game - Enable ally color button and Disable creep camp button
Player - Disable sleeping for all creeps
Cinematic - Turn subtitle display override On
Player - Turn Gives bounty On for Player 9 (Gray)
For each (Integer A) from 1 to AnzahlSpieler, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Player((Integer A))) slot status) Equal to Is playing
Then - Actions
Player - Set (Player((Integer A))) Current gold to 150
Player - Set (Player((Integer A))) Food used to 1
Else - Actions
-------- Allianzen und Gegner --------
For each (Integer A) from 1 to AnzahlSpieler, do (Actions)
Loop - Actions
Player - Make (Player((Integer A))) treat Player 11 (Dark Green) as an Enemy
Player - Make Player 11 (Dark Green) treat (Player((Integer A))) as an Enemy
Player - Make (Player((Integer A))) treat Player 10 (Light Blue) as an Ally
Player - Make Player 10 (Light Blue) treat (Player((Integer A))) as an Ally
Player - Make (Player((Integer A))) treat Neutral Hostile as an Enemy
Player - Make (Player((Integer A))) treat Player 9 (Gray) as an Enemy
Player - Make Player 9 (Gray) treat (Player((Integer A))) as an Enemy
Player - Make Player 10 (Light Blue) treat Neutral Hostile as an Enemy
Player - Make Player 9 (Gray) treat Player 10 (Light Blue) as an Enemy
Player - Make Player 9 (Gray) treat Player 11 (Dark Green) as an Enemy
Player - Make Player 11 (Dark Green) treat Player 9 (Gray) as an Enemy
Player - Make Player 11 (Dark Green) treat Neutral Hostile as an Enemy
Player - Make Neutral Hostile treat Player 11 (Dark Green) as an Enemy
Player - Make Player 9 (Gray) treat Neutral Hostile as an Ally
Player - Make Neutral Hostile treat Player 9 (Gray) as an Ally
Player - Make Player 10 (Light Blue) treat Player 11 (Dark Green) as an Ally
Player - Make Player 11 (Dark Green) treat Player 10 (Light Blue) as an Ally
Player - Make Player 11 (Dark Green) treat Neutral Passive as an Ally
Player - Make Neutral Passive treat Player 11 (Dark Green) as an Ally
Player - Hide Player 10 (Light Blue) in the post-game score screen
Player - Hide Player 11 (Dark Green) in the post-game score screen
-------- Helden und Erfahrung --------
For each (Integer A) from 1 to AnzahlSpieler, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Player((Integer A))) slot status) Equal to Is playing
Then - Actions
Hero - Make (Player((Integer A))) Heroes gain ExperienceRate% experience from future kills
Else - Actions
-------- Sicht --------
Visibility - Enable black mask
Visibility - Enable fog of war
For each (Integer A) from 1 to AnzahlSpieler, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Player((Integer A))) slot status) Equal to Is playing
Then - Actions
Visibility - Create an initially Enabled visibility modifier for (Player((Integer A))) emitting Visibility from (Center of Stadt Sicht <gen>) to a radius of 3200.00
Set StadtSicht[(Integer A)] = (Last created visibility modifier)
Else - Actions
-------- Tag & Nacht --------
Game - Set the time of day to 12.00
Game - Set time of day speed to 25.00% of the default speed
Animation - Play the death animation for all doodads of type Post Lantern within (Playable map area)
-------- Einheiten und Gebäude --------
Advanced - Add hero glow to Ranger 0289 <gen>
Advanced - Add hero glow to Berserker 0287 <gen>
Advanced - Add hero glow to Bischof 0088 <gen>
Unit - Order Holzfäller 0017 <gen> to Harvest Summer Tree Wall 0338 <gen>
Unit - Order Holzfäller 0019 <gen> to Harvest Summer Tree Wall 0348 <gen>
Unit Group - Pick every unit in (Units in Wald Units <gen> owned by Player 9 (Gray)) and do (Actions)
Loop - Actions
Unit - Pause (Picked unit)
Unit Group - Add (Picked unit) to WaldUeberfallEinheiten
-------- Doodads --------
Destructible - Set max life of Summer Tree Wall 0338 <gen> to 50000.00
Destructible - Set max life of Summer Tree Wall 0348 <gen> to 50000.00
-------- Items --------
Set RingDerMagier[1] = Ring of the Archmagi
Set RingDerMagier[2] = Ring of the Archmagi
Set RingDerMagier[3] = Ring of the Archmagi
Set RingDerMagier[4] = Ring of the Archmagi
-------- Trigger --------
Trigger - Destroy (This trigger)Code:
Banditen Variablen
Events
Map initialization
Conditions
Actions
Unit - Create 1 Rogue for Neutral Hostile at (Random point in Banditen Bruecke <gen>) facing (Random angle) degrees
Unit - Create 1 Assassin for Neutral Hostile at (Random point in Banditen Bruecke <gen>) facing (Random angle) degrees
Unit - Create 1 Assassin for Neutral Hostile at (Random point in Banditen Bruecke <gen>) facing (Random angle) degrees
Set BanditenRegionen[1] = Banditen Oststrasse <gen>
Set BanditenRegionen[2] = Banditen Weg zum Camp <gen>
Set BanditenRegionen[3] = Banditen Bruecke <gen>
Set BanditenRegionen[4] = Banditen hinter der Bruecke <gen>
For each (Integer A) from 1 to 4, do (Actions)
Loop - Actions
Unit Group - Pick every unit in (Units in BanditenRegionen[(Integer A)]) and do (Actions)
Loop - Actions
Unit Group - Add (Picked unit) to BanditenGruppen[(Integer A)]
Unit - Set (Picked unit) acquisition range to AcquisitionRange
Trigger - Destroy (This trigger)Code:
Set GischtForceWalls[1] = ForceWall 3165 <gen>
Set GischtForceWalls[2] = ForceWall 3166 <gen>
For each (Integer A) from 1 to 2, do (Actions)
Loop - Actions
Destructible - Kill GischtForceWalls[(Integer A)]the hero selection triggers look like this (using dialog arrays): Code:
Heldenauswahl Dialog
Events
Time - Elapsed game time is 0.25 seconds
Conditions
Actions
Set StartRegion = Spieler Start <gen>
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Player(HeldenauswahlSpielerNr)) slot status) Equal to Is playing
Then - Actions
Dialog - Change the title of Heldenauswahl[HeldenauswahlSpielerNr] to Wähle deinen Held!
Dialog - Create a dialog button for Heldenauswahl[HeldenauswahlSpielerNr] labelled Krieger
Set KriegerButton[HeldenauswahlSpielerNr] = (Last created dialog Button)
Dialog - Create a dialog button for Heldenauswahl[HeldenauswahlSpielerNr] labelled Magier
Set MagierButton[HeldenauswahlSpielerNr] = (Last created dialog Button)
Dialog - Create a dialog button for Heldenauswahl[HeldenauswahlSpielerNr] labelled Waldläufer
Set WaldlaeuferButton[HeldenauswahlSpielerNr] = (Last created dialog Button)
Dialog - Create a dialog button for Heldenauswahl[HeldenauswahlSpielerNr] labelled Kleriker
Set KlerikerButton[HeldenauswahlSpielerNr] = (Last created dialog Button)
Dialog - Create a dialog button for Heldenauswahl[HeldenauswahlSpielerNr] labelled Nekromant
Set NekromantButton[HeldenauswahlSpielerNr] = (Last created dialog Button)
Dialog - Show Heldenauswahl[HeldenauswahlSpielerNr] for (Player(HeldenauswahlSpielerNr))
Else - Actions
Set HeldenauswahlSpielerNr = (HeldenauswahlSpielerNr + 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HeldenauswahlSpielerNr Less than or equal to 4
Then - Actions
Trigger - Run (This trigger) (ignoring conditions)
Else - Actions
Trigger - Destroy (This trigger)
Trigger - Destroy Heldenauswahl Redone <gen>Code:
Heldenauswahl Redone
Events
Dialog - A dialog button is clicked for Heldenauswahl[1]
Dialog - A dialog button is clicked for Heldenauswahl[2]
Dialog - A dialog button is clicked for Heldenauswahl[3]
Dialog - A dialog button is clicked for Heldenauswahl[4]
Conditions
Actions
Set PlayerA = (Player(HeldenauswahlSpielerNr))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Clicked dialog button) Equal to KriegerButton[HeldenauswahlSpielerNr]
Then - Actions
Unit - Create 1 Krieger for PlayerA at (Random point in StartRegion) facing (Random angle) degrees
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Clicked dialog button) Equal to MagierButton[HeldenauswahlSpielerNr]
Then - Actions
Unit - Create 1 Magier for PlayerA at (Random point in StartRegion) facing (Random angle) degrees
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Clicked dialog button) Equal to WaldlaeuferButton[HeldenauswahlSpielerNr]
Then - Actions
Unit - Create 1 Waldläufer for PlayerA at (Random point in StartRegion) facing (Random angle) degrees
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Clicked dialog button) Equal to KlerikerButton[HeldenauswahlSpielerNr]
Then - Actions
Unit - Create 1 Kleriker for PlayerA at (Random point in StartRegion) facing (Random angle) degrees
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Clicked dialog button) Equal to NekromantButton[HeldenauswahlSpielerNr]
Then - Actions
Unit - Create 1 Nekromant for PlayerA at (Random point in StartRegion) facing (Random angle) degrees
Else - Actions
Unit Group - Add (Last created unit) to Heroes
Set HeroOfPlayer[(Player number of PlayerA)] = (Last created unit)
Set StartRegion = Spieler Start <gen>
Game - Display to (Player group(PlayerA)) the text: Du startest mit 150...
Set HeldenauswahlSpielerNr = (HeldenauswahlSpielerNr + 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HeldenauswahlSpielerNr Less than or equal to 4
Then - Actions
Trigger - Run Heldenauswahl Dialog <gen> (ignoring conditions)
Else - Actions
Trigger - Destroy (This trigger)
Trigger - Destroy Heldenauswahl Dialog <gen>sorry for the german variables, hope that doesn't irritate -.-' |
| 10-01-2004, 11:02 PM | #6 |
Only thing I can think at this moment is the huge hit points the destructables get |
| 10-02-2004, 09:04 AM | #7 |
thx, i'll try reducing them, to see if that helps. EDIT: i just reduced the hitpoints to 1000, players now stay in the game! thx for the help vexorian! do you happen to know what the "safe" limit for such values is? |
