So I have triggers that give a player minerals if he has a marine. The map doesnt involve killing any buildings:
Trigger 1:
Always.
Modify score for current player: add 1 razings
Preserve trigger
Trigger 2:
Current player razings score is at least 10.
Modify score for current player: set to 0 razings.
Preserve trigger
Trigger 3
Current player commands at least 1 marine.
Current player razings score is at most 1.
Actions: modify resources for current player: add 1 ore.
Preserve trigger.
These set of triggers exist for players 1-8. These triggers work well to give minerals when player 8 is Computer. However when I set player 8 as Human, amount of minerals added per second become extremely slow or stops all together. Can you help me?
could this happen because I put hyper trigger on player 8? I somewhat doubt it because all players 1-8 have hyper triggers and ACTION refers to current player to add 1 razings instead of player 8
None.
Do you have the map?
I'm not seeing anything here that would cause the problem you've described.
Hyper triggers should be checked under "all players". It isn't necessary to write them for each player.
None.
So your problem is that you're getting a wait block.
You have a single trigger for force 1 running sounds. While you can have a wait action run for one player while using hypers, another player, who isn't running waits, must also be running the hypers. When you move player 8 to force 2 and switch over to computer control, the player is no longer running the wait from force 1, so the hypers can run without blocks.
The solution is to not use waits for your map and instead use a
DC timer. While the general rule is that 12 HT cycles equal one real second on fastest game speed, this isn't completely accurate. The figure is closer to 11.9 cycles. So there is a bit of trickery to get it to accurately keep track of the precise length needed for sound files,
The exact figure is calculated using the time SC spends on a single frame (42 ms on fastest), multiplying it by two, and then reciprocating it. This is because HTs run once every other frame. So we get 1/84 = 0.01190476 executions per ms or 11.90476 executions per second. For a wait of 120 seconds, we would take 120 and multiply it by this number to get a final value of 1428. This is how long your DC timer should be set for. In summary:
Condition:
DC = 0
Actions:
Play sound stuffs.
Set DC to 1428.
Preserve trigger.
---
Condition:
Always
Actions:
Subtract 1 from DC.
Preserve trigger.
Post has been edited 1 time(s), last time on Jun 6 2014, 10:28 am by Sacrieur.
None.