| 06-20-2004, 05:43 AM | #1 |
I am getting myself seriously confused when I try to work out how alliances work in war3. This problem is only magnified by the fact that it is a multiplayer map that I am trying to create! PLAN My idea was to play around with the Chaos Gods in Warhammer in order to make a multiplayer god sim (for those of you who havn't heard of Warhammer, It's a highly addictive table top stratergy game played with small models). The four gods (player controled) cannot ally with each other but mortal barbarians (player controled) are allowed to choose one of the four to worship. The idea is that the gods' mana pools will be filled using a periodic trigger depending on the amount of altar built for them by thier worshippers. Without worship, a god will run out of mana and though his spells are un-believably powerful (I was thinking of using Darky's volcano with his permission), without pathetic mortals fuelling them, they are defencless! PROBLEM: The problem is that many many alliance changes occur as tribes are crushed into submission or are lured into the service of a different god. While all this is going on, the gods' buffing-up spells should only help their worshippers while their de-buffing spells shouldn't hurt their friends. Can anybody help me out? *** Here are some of the spell I am working on at the moment only using the object editor, these will be used from a temple like in black and white: KHORNE: god of battle, bloodthirst and anti-magic: -dispel magic* -silence* -(mass) anti-magic shield* (silence, changed buff) (spell to protect worhipper from magic) NURGLE: god of sickness and plagues: -destroyer hive (locast swarm, locasts replaced with flies, larger area, more units in swarm). -plague (don't know how I will do this. Targets one unit who loses health over time while infecting other nearby units who infect others...) (magic for killing or weakening) SLAANESH: god of luxury, pain and pleasure: -(mass) sleep* (magic for confusing the enemy and being a nuissance) TZEENTCH: god of magic, mutations and being sneaky: -volcano? (magic that blows everything on the screen to pieces) *name will be changed *** If this idea has already been taken or you want to find out more please tell me! |
| 06-20-2004, 03:01 PM | #2 |
Well, to keep things from effecting allies, all you have to do is use targets effected box in the ability editor and make sure that enemies or allies is checked, whichever is needed for the particular spell. I have set up two potential triggers for your mana. if you want it to gice so m uch mana per player allied, use the first one. If you want it to be so much mana per alter allied, use the second one. Deity1 is an integer variable. Code:
Trigger 1
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
If ((Player 1 (Red) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity1 = (Deity1 + 1)) else do (Do nothing)
If ((Player 2 (Blue) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity1 = (Deity1 + 1)) else do (Do nothing)
If ((Player 3 (Teal) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity1 = (Deity1 + 1)) else do (Do nothing)
If ((Player 4 (Purple) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity1 = (Deity1 + 1)) else do (Do nothing)
Unit - Set mana of FirstDeity to (5.00 x (Real(Deity1)))Code:
Trigger 2
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Altar of Kings)) and do (Actions)
Loop - Actions
If (((Owner of (Picked unit)) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity[1] = (Deity[1] + 1)) else do (Do nothing)
If (((Owner of (Picked unit)) is an ally of Player 2 (Blue)) Equal to True) then do (Set Deity[2] = (Deity[2] + 1)) else do (Do nothing)
-------- And repeat for each deity --------
Unit - Set mana of FirstDeity to (5.00 x (Real(Deity[1])))
Unit - Set mana of SecondDeity to (5.00 x (Real(Deity[2])))Triggers one and two are only set up for the first and first and second deities, respectively. All you have to do is change the variable, player, and unit to what is necessary for the other deities and you should be set. |
| 06-21-2004, 10:18 AM | #3 |
I wasn't totally sure what I was going to do for the mana pool so thank you. I know know that it would have probably been harder than I had thought and taken up a lot more guess works and trigger re-use (trigger re-use, where would I be without it). I had a good idea for the problem about allies: Instead of allowing the player to manually change his alliances at will and him having to wait for the deity to accept, it could go somthing like this (this is a very simple version) TRIGGER 3: event: unit (townhall) uses ability "convert to deity1" action: -ally player (owner of casting unit) to player (deity1) -ally player (deity1) to player (owner of casting unit) -pick every player in player group (worshipper of deity1) and do actions: -ally player (picked player) to player (owner of casting unit) -ally player (owner of casting unit) to player (picked player) -add player (owner of casting unit) to player group (worshippers of deity1) -pick every unit (shrine of undivided*) owned by player (owner of casting unit) and do action: -replace unit (picked unit) with unit (shrine of deity1*) This trigger is probably seriously flawed but I will perfect it over time. The idea is that at each "townhall" for the barbarians, there are a few abilities/upgrades (abilities in the example above) corresponding to the choices they have in terms of which god to worship. They start off worshipping undivided, making them neutral (not sure how this will work) but can choose one of the gods to worship, affording protection and help. *shrines of undivided give each god 1 mana every "x" seconds while shrines of a specific god give that god 4 mana every "x" seconds, using Shimrra's second trigger. |
| 06-22-2004, 01:09 AM | #4 |
About my second trigger, I just find a small problem with it. All you have to change is the last part. The correct trigger is this: Code:
Trigger 2
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Altar of Kings)) and do (Actions)
Loop - Actions
If (((Owner of (Picked unit)) is an ally of Player 1 (Red)) Equal to True) then do (Set Deity[1] = (Deity[1] + 1)) else do (Do nothing)
If (((Owner of (Picked unit)) is an ally of Player 2 (Blue)) Equal to True) then do (Set Deity[2] = (Deity[2] + 1)) else do (Do nothing)
-------- And repeat for each deity --------
Unit - Set mana of FirstDeity to ((Mana of FirstDiety) + ((Real(Deity[1])) x 5.00))
Unit - Set mana of SecondDeity to ((Mana of SecondDiety) + ((Real(Deity[2])) x 5.00))The old one had it so the diety's mana would be set to the what should be additional mana gained. Sorry for the inconveinance. As for shrines of the undevided... Code:
Trigger 3
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Shrine of the Undivided)) and do (Actions)
Loop - Actions
Unit - Set mana of FirstDiety to ((Mana of FirstDiety) + 1.00)
Unit - Set mana of SecondDiety to ((Mana of SecondDiety) + 1.00)
Unit - Set mana of ThirdDiety to ((Mana of ThirdDiety) + 1.00)
Unit - Set mana of FourthDiety to ((Mana of FourthDiety) + 1.00) |
| 06-23-2004, 08:43 AM | #5 |
hadn't noticed myself. Thx. |
| 06-23-2004, 08:43 AM | #6 |
hadn't noticed myself. Thx. could the allys thing be done with forces, adding the player to "deity1" race or somthing? |
