i'm working on a broodwar map for FFA purposes, but with triggers. These triggers will swap players' units and bases at different intervals in the game. Thanks to the good people here at staredit, i managed to get the map working. Though the map works and is playable, there are limitations due to the editor and broodwar's ol' engine. Now I'd like to make an sc2 version, but the trigger system is so intimidating. I can do basic things with it, but i just don't know where to start with this.
I'd like to ask your help.
The concept:
-The map will be a standard melee style map to be played in Free For all format. Every 3 minutes or so , your units and base will be swapped with someone elses.
-The swap occurs for every player, so each player finds himself with a new base and a new army.
-After you've played with everyone's base, you'll eventually play your original army/base again.
-Minerals/gas gathered should not transfer over: resources gathered with base A remain with base A even when you swap over to base B (then you get base B's gathered resources).
-Same rule above applies should apply to researches and upgrades as well.
-Just like in melee, when you lose all your buildings, you are out. However I would like to give the option of observer mode to the defeated players.
-The victor is not determined by the last man standing, but by a score system rewarding the players who build/expand/fight/etc. This is to prevent gimmicky strategies, such as killing off your own army and most of your base just before the swap timer hits 0, then swapping over to someone who has an army and simply kill off the remainder of that base.
Any help with the triggers would be much appreciated. I think this could make for a fun melee style arcade map.
None.
I do stuff and thingies... Try widening and reducing the number of small nooks and crannies to correct the problem.
SC2's triggers are event based opposing to SCBW only having periodic triggers. That means that you always start with an event, then filter for conditions (to check for example the triggering player, triggering unit's unit type, etc), if required, and execute the actions you want to do.
1. To give units to different players, you change the owner of each unit:
For each unit VAR in (Any units in (Whole Map) excluding ...)
- change owner of (VAR) to ...
2. You need to detect the defeat conditions yourself. That means, after each death of a unit that is a structure, you need to check if there are more structures for the player on the map that prevent defeat. Beware that there are structures that don't prevent that like creep turmors. These structures have the "Prevent Defeat" flag set in their unit flags in data. You can check it using the catalog field value function or list the unit types directly.
Also, I'm not sure if the base revealing mechanic still works then or if you need to trigger that, too.
3. When the game ends (= at most one player has structures left), you should compare the score system should be determine the winner.
4. SC2 has no direct way to make someone spectate. So, altering the alliance settings with the remaining players and giving the remaining units to hostile or killing those, should suffice.