Staredit Network > Forums > SC1 UMS Mapmaking Assistance > Topic: A few questions...
A few questions...
May 10 2008, 7:13 pm
By: Madroc  

May 10 2008, 7:13 pm Madroc Post #1



1. So I have a trigger where Player A is constantly allying Player B with hyper triggers. This makes it so that player cannot attack that player at all, even if he clicks attack and clicks on Player B's unit. However I also have a trigger where Player A is constantly allying Player C. Is there any way to make it so that player A can attack player C if he clicks attack and clicks on Player C's unit, but is not able to attack player B at all?

2. As for hyper triggers, I'm using that version that says this:
Players:
Player 8
Conditions:
Player 8 has at least 1 death of mineral chunk
Actions
Wait 0 seconds
Subtract 1 death of mineral chunk for player 8
Wait 0 seconds
Preserve Trigger

And this

Players:
Player 1
Conditions:
Player 8 has at most 0 death of mineral chunk
Actions
Wait 0 seconds
Add 1 death of mineral chunk for player 8
Wait 0 seconds
Preserve Trigger

However this requires more than 1 player to work, and my only computer player is player 8. I have 4 different possible players (players 1-4) in force 1 and there will always be at least one player in force 1. If no one occupies player 1's space, then the hypers won't work. Is there any way to make them work if there is a single player in force one?

Thanks :)



None.

May 10 2008, 7:33 pm fritfrat Post #2



1. First off, constantly allying another player does not stop a lot of faster melee attacks from getting off (such as zerglings' attacks), but it does stop most attacks.
As far as being able to constantly ally someone without interrupting their attacks goes, just only re-ally when they unally that player. Set up something in the corner of the map where the players have a unit and a Player C unit right next to it with 1 hp. If Player C brings 0 unit to that location, remake the unit, and re-ally the player.

2. Just do hypers the normal way with 4 triggers of 62 waits, preserve, and comment on the bottom of player 8's trigger list. It's flawless this way as well as the way you mentioned.

You're welcome :)



None.

May 10 2008, 10:03 pm NudeRaider Post #3

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

In short: Constantly ally A with B but only ally A with C once. Also use Fritfrats auto-really system in case of player changes alliances manually.




May 10 2008, 11:10 pm Wormer Post #4



Quote from name:fritfrat(U)
Set up something in the corner of the map where the players have a unit and a Player C unit right next to it with 1 hp. If Player C brings 0 unit to that location, remake the unit, and re-ally the player.
Make a unique unit for player C anywhere.
Code
Trigger
Condidions:
   Foes command at least 1 UniqueUnit.
Actions:
   Preserve trigger.
   Set Player C to Ally.

:bleh:



Some.

May 11 2008, 12:53 am Madroc Post #5



Quote from name:fritfrat(U)
2. Just do hypers the normal way with 4 triggers of 62 waits, preserve, and comment on the bottom of player 8's trigger list. It's flawless this way as well as the way you mentioned.

The problem with that method is wait blocks - I do have some wait triggers in my map.

Is there any way to do it my way with the 4 triggers? Would the hypers work if I put Player 1's trigger under "force 1"?

Quote from Wormer
Quote from name:fritfrat(U)
Set up something in the corner of the map where the players have a unit and a Player C unit right next to it with 1 hp. If Player C brings 0 unit to that location, remake the unit, and re-ally the player.
Make a unique unit for player C anywhere.
Code
Trigger
Condidions:
   Foes command at least 1 UniqueUnit.
Actions:
   Preserve trigger.
   Set Player C to Ally.

:bleh:

That is an excellent solution, thank you!

EDIT: Not quite as excellent as I thought, see post #7

Post has been edited 1 time(s), last time on May 11 2008, 5:51 pm by madroc.



None.

May 11 2008, 1:26 am fritfrat Post #6



Wait blocks can occur with the normal way of doing hyper triggers or with yours... it shouldn't make a difference. You can still use 1 wait trigger at a time per player with normal hypers as well. And ya, wormer's solution is definitely the way to go if you're supposed to always be allied to everyone.



None.

May 11 2008, 2:54 am Madroc Post #7



Quote from name:fritfrat(U)
Wait blocks can occur with the normal way of doing hyper triggers or with yours... it shouldn't make a difference. You can still use 1 wait trigger at a time per player with normal hypers as well. And ya, wormer's solution is definitely the way to go if you're supposed to always be allied to everyone.

No these triggers don't cause the crazy wait blocks like the other method does. Instead of like waiting a minute whenever there's like a 1000 millisecond wait action, these ones just disable themselves whenever for the duration of that wait action (I'm pretty sure at least...)

Oh and as for the ally preserve trigger thing, after some experimentation, I found that if you are allied to someone, and you become allied to a different player, you stop attacking the person you were originally allied to (at least I think this is how it works). This is a big problem if you are constantly being allied to someone, since with slow - attacking units, you can't click attack then click on the unit you want to be killed and it be killed. Is there a solution to this so that I can not attack one player's units but I can attack another player's unit but only if I click attack and click on that unit?

Thanks again for all the posts, I think this map will turn out real good.



None.

May 11 2008, 3:13 am fritfrat Post #8



To the first part, I've never experimented with the other way of hyper triggers, but the fact that I haven't heard of it being used very widely and people always still talk about wait blocks made me assume that wait blocks still wouldn't happen there. Test it out for me :P

And to the second part: what? Just have it so you're constantly allying one player (always: ally player B, preserve) and only allying the vulnerable player when they unally (with wormer's method or mine if his does not apply). You can of course with conditions change who you can and cannot attack at any time using the same triggers.



None.

May 11 2008, 6:20 am Falkoner Post #9



Quote
Wait blocks can occur with the normal way of doing hyper triggers or with yours... it shouldn't make a difference. You can still use 1 wait trigger at a time per player with normal hypers as well. And ya, wormer's solution is definitely the way to go if you're supposed to always be allied to everyone.

The method he is using will turn off immediately if another wait is hit, no matter where it is in the trigger list, the normal method must be at the bottom of the trigger list in order to turn off when another wait is hit.



None.

May 11 2008, 7:31 am Wormer Post #10



Quote from Madroc
Oh and as for the ally preserve trigger thing, after some experimentation, I found that if you are allied to someone, and you become allied to a different player, you stop attacking the person you were originally allied to (at least I think this is how it works). This is a big problem if you are constantly being allied to someone, since with slow - attacking units, you can't click attack then click on the unit you want to be killed and it be killed. Is there a solution to this so that I can not attack one player's units but I can attack another player's unit but only if I click attack and click on that unit?
frifrat(U) this is true. All orders attacking your allies are cleared when you set alliance status (no matter ally or enemy)... This is wired :><:



Some.

May 11 2008, 8:04 am Wormer Post #11



Quote from Madroc
However this requires more than 1 player to work, and my only computer player is player 8. I have 4 different possible players (players 1-4) in force 1 and there will always be at least one player in force 1. If no one occupies player 1's space, then the hypers won't work. Is there any way to make them work if there is a single player in force one?

Quote from Madroc
Is there any way to do it my way with the 4 triggers? Would the hypers work if I put Player 1's trigger under "force 1"?

Placeing Player 1's trigger under force 1 won't hurt and will make hypers work when there is at least 1 player in the force 1. BTW, what is with players 5-7?

You can even make that hypers work if you definetly know there are at least two players in the game but you don't know what players they are (for example two teams filled with players, you know there is at least 1 player in each team).

I belive you can even simplify them a bit:
Trigger
Players:
Force 1
Conditions:
Player 8 has at most 0 death of mineral chunk
Actions
Wait 0 seconds
Add 1 death of mineral chunk for player 8
Preserve Trigger

Trigger
Players:
Player 8
Conditions:
Player 8 has at least 1 death of mineral chunk
Actions
Subtract 1 death of mineral chunk for player 8
Wait 0 seconds
Preserve Trigger



Some.

May 11 2008, 8:35 am JaBoK Post #12



Well, it's possible to use the enemy players remaining condition (I think) to detect how many enemy players there are, and if that number increases, just reset the alliances.



None.

May 11 2008, 5:50 pm Madroc Post #13



Hey wormer thanks for your comment about the ally thing, that solves that problem. I could also put the trigger down as "force 2" which includes P 5-7, but whatev yo.
Quote from Wormer
Quote from Madroc
Oh and as for the ally preserve trigger thing, after some experimentation, I found that if you are allied to someone, and you become allied to a different player, you stop attacking the person you were originally allied to (at least I think this is how it works). This is a big problem if you are constantly being allied to someone, since with slow - attacking units, you can't click attack then click on the unit you want to be killed and it be killed. Is there a solution to this so that I can not attack one player's units but I can attack another player's unit but only if I click attack and click on that unit?
frifrat(U) this is true. All orders attacking your allies are cleared when you set alliance status (no matter ally or enemy)... This is wired :><:
So you know what I'm saying. I'm assuming there's no trick or anything to bypass this symptom?



None.

May 11 2008, 10:22 pm Wormer Post #14



Quote from Madroc
Hey wormer thanks for your comment about the ally thing, that solves that problem. I could also put the trigger down as "force 2" which includes P 5-7, but whatev yo.
It's useless as far as you have the issule with constant allying... :| Yes, you could, but as far as you always have at least one person in force 1 it is not necessary. You know, I just dont see a big reason of creating self-disableable hyper triggers, because usually map's systems are relying on hyper triggers (of course this may vary but usually) and disableing them may lead to an error in the work of the other triggers. If so, I suggest using simple hypers for P8 and just dont use wait for him or vice versa use hypers for force 1 and dont use them for P8 if you need waits for P8... This is just my opinion.
Quote from Madroc
Quote from Wormer
Quote from Madroc
Oh and as for the ally preserve trigger thing, after some experimentation, I found that if you are allied to someone, and you become allied to a different player, you stop attacking the person you were originally allied to (at least I think this is how it works). This is a big problem if you are constantly being allied to someone, since with slow - attacking units, you can't click attack then click on the unit you want to be killed and it be killed. Is there a solution to this so that I can not attack one player's units but I can attack another player's unit but only if I click attack and click on that unit?
frifrat(U) this is true. All orders attacking your allies are cleared when you set alliance status (no matter ally or enemy)... This is wired :><:
So you know what I'm saying. I'm assuming there's no trick or anything to bypass this symptom?
At least I can't think of any by now... :ermm:



Some.

May 12 2008, 2:04 am Madroc Post #15



Quote from Wormer
Quote from Madroc
Hey wormer thanks for your comment about the ally thing, that solves that problem. I could also put the trigger down as "force 2" which includes P 5-7, but whatev yo.
It's useless as far as you have the issule with constant allying... :| Yes, you could, but as far as you always have at least one person in force 1 it is not necessary. You know, I just dont see a big reason of creating self-disableable hyper triggers, because usually map's systems are relying on hyper triggers (of course this may vary but usually) and disableing them may lead to an error in the work of the other triggers. If so, I suggest using simple hypers for P8 and just dont use wait for him or vice versa use hypers for force 1 and dont use them for P8 if you need waits for P8... This is just my opinion.
All my wait triggers are like "wait 50 milliseconds" and such so that the triggers don't overlap or change places or whatever like they sometimes do. I'm already like 350 triggers in and almost done and I can't remember if way back when I didn't know about hyper triggers if I made a wait trigger accidentally, so I use these just in case. They work just fine anyways so I don't see a reason to change them.
As for the constant ally, thing, I will make a death counter for it which is an OK solution, because it works but you can attack your allies.

Thanks for all the posts! This is an awesome site, I'm so glad I discovered it! I'll post my map as soon as I'm done with everything and done testing! Here's what it is: Mafia Kings and Knights, it's just like regular but there are quite a few changes.

Instead of having just one King, you start out with 2 Diplomats (dark archons) and you can bring 15 probes/scvs/drones to one of the shops (I'll get to that) to get one more(up to 5). When all your diplomats are gone, you lose. Also the knights have different weapons they can switch off with once they buy them.

Also there are weapons the knights can buy: one is the Sniper, which has 10 life and you can buy for 5000 minerals: you position an observor over the target you want to kill and it makes sure there is nothing in the way (you can't shoot through walls) and kills the unit. You can also shoot from long distances with the Sniper, and from the tops of buildings too. This is useful for killing Diplomats, cops (I'll get to that, and shop owners (ill get to that). You start with 3 ammo, can have up to 4 at a time, and each ammo costs like 1000 or something like that.

Then there's the pistol, which you start out with for free. This is just a ghost with 10 life that uses the ammo system like in the Shadow Experiment. The only thing you can kill with this are civilians junkyard patrolling around, which give you 500 minerals each and have 1 life. (the pistol only does 3 damage per shot) Also you can buy ammo for it for like 500 minerals for 5 ammo i think.

Then there's another weapon you can buy for 5000 - the Backpack. It's a siege tank with 10 life that you can siege next to a king's unit and then you "put it in your backpack" and you can give it to your king or just kill it if you go back to where you were spawned. You can't steal diplomats. You can only hold 1 guy in your backpack to start, but for a 5000 mineral upgrade, you can hold 2, and for another 5000 mineral upgrade, you can hold 3. Oh and I just remembered - you are allied to all the kings (unless you are using your special weapon, ill get to that) so the kings need to attack you manually instead of auto targeting.

Another weapon is the civilian. In civilian form, you are allied to Player 8 as well as the kings so the cops won't kill you.
You can also sneak into the opponent with this weapon, but if they catch an orange civilian sneaking around, they better kill it.

The last weapon is different for all 3 knights, but they share the same principals. They are all like level 5 of regular kings and knights, the assault weapon. They all have an average of 2000 life and you can buy them for 10000 minerals (maybe more or less, I still have to test) and you can upgrade them. Also they each have a different special area of effect additional weapon that you can use every 30 seconds. Player 5 can buy the goliath, 6 can buy the hydralisk, can 7 can buy the archon.

Then instead of a middle area where the kings can bring 5 units or whatever for a hero, there are 14 special shops that occupy the middle area, which each "sell" 3 different heroes, one for each race. So one of them you can bring 5 marine for a hero marine, 5 zergling for a hero zergling, or 5 zealot for a hero zealot. There are only 8 or 9 of those types of shops and 5 or so shops that have special items to sell, like healing and such. Each one has a shop owner that has like 1500 life and 50 armor, so they are hard to kill (except with the sniper rifle), but when they do get killed, that shop is unable to function any more. Also if a knight kills one, he receives 5000 minerals. This allows for shenanigans like if a king is using one of the shops, another king can hire a knight with a sniper rifle to kill the shop owner. Also all the shops are randomly placed every game, so some exploring is necessary. When you go into a shop, it will tell you what the shop does with text running across the screen.

If a knight kills a civilian or shop owner, a few police (jim raynors) will come after that person from the police station. They have 1000 life and do like 100 damage, so it is near impossible to make a stand unless the player has one of the powerful 10,000 costing weapons.

And I put some small sound effects in the map too, like walking sounds for the knights.
Otherwise it's almost the same as regular kings and knights, but there are a few more clever things of mine :)



Sorry for all the text, I guess I could have just summarized it! :blush: Well I'll post it soon. :)
tx again !!



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[2024-5-06. : 5:02 am]
Oh_Man -- whereas just "press X to get 50 health back" is pretty mindless
[2024-5-06. : 5:02 am]
Oh_Man -- because it adds anotherr level of player decision-making where u dont wanna walk too far away from the medic or u lose healing value
[2024-5-06. : 5:01 am]
Oh_Man -- initially I thought it was weird why is he still using the basic pre-EUD medic healing system, but it's actually genius
[2024-5-06. : 3:04 am]
Ultraviolet -- Vrael
Vrael shouted: I almost had a heart attack just thinking about calculating all the offsets it would take to do that kind of stuff
With the modern EUD editors, I don't think they're calculating nearly as many offsets as you might imagine. Still some fancy ass work that I'm sure took a ton of effort
[2024-5-06. : 12:51 am]
Oh_Man -- definitely EUD
[2024-5-05. : 9:35 pm]
Vrael -- I almost had a heart attack just thinking about calculating all the offsets it would take to do that kind of stuff
[2024-5-05. : 9:35 pm]
Vrael -- that is insane
[2024-5-05. : 9:35 pm]
Vrael -- damn is that all EUD effects?
[2024-5-04. : 10:53 pm]
Oh_Man -- https://youtu.be/MHOZptE-_-c are yall seeing this map? it's insane
[2024-5-04. : 1:05 am]
Vrael -- I won't stand for people going around saying things like im not a total madman
Please log in to shout.


Members Online: C(a)HeK, Roy