You must be logged in to post messages.
Please login or register

Scenario Design
Moderated by MosheLevi, Mister SCP

Hop to:    
Welcome! You are not logged in. Please Login or Register.849 replies, Sticky
Age of Empires III Heaven » Forums » Scenario Design » Have a Trigger Request? Post it here!
Bottom
Topic Subject:Have a Trigger Request? Post it here!
« Previous Page  1 ··· 12 13 14 15 16 ··· 20 ··· 30 ··· 34  Next Page »
Mister SCP
Scenario Reviewer
posted 05-22-09 02:11 AM EDT (US)         
So you have a trigger request?

You can post it here!

    ------------------------------------------------------------ --------------------

    Hello and welcome to the Trigger Request Thread (TRT). This thread's purpose is only to place trigger requests and discuss them.


    ------------------------------------------------------------ --------------------

    Before posting your request, it's always good to read the so-called FAQ.

    How do I install a trigger?

    When we have finished making your trigger, we'll post the required code here. To install this code you will first of all need to find your way to the AOEž installation folder. C:\Program Files\Microsoft Games\Age of Empires3 by default).
    Now open the trigger folder if you use vanilla -trigger1, if you use TWC -trigger2, and finally if you use TAD go to -trigger3.
    Next, open the file called typetest.xml. The only thing left to do is copy the code at the right position and save. If you requested a condition, then place the line above ,
    if you requested an effect paste it right above . Note the "s" at the end of both tags.

    Notes:

  • When copying the trigger from someone please click first and only then copy the required code.

  • If you're still uncomfortable with installing triggers please backup the original typetest file, i.e. copy the original to another folder.

    How do I uninstall a trigger?
    If a trigger happens to be faulty or if it generates errors you better remove it. Just do as if you were installing a new trigger, but instead of copy-pasting new code, remove the code corresponding with the chosen trigger. Make sure to remove it completely, including the starting < effect > or < condition > tag and the corresponding < /effect > or < /condition > closing tag. Failure to do so properly will cause XML errors in the file making ALL triggers in that file inaccessbile for AoM.


    Help! My triggers have stopped working! If this doesnt help you can send an email including your scenario to mister.scp@gmail.com.


    ------------------------------------------------------------ --------------------

    Recommended Downloads:
    -Advanced Trigger Set
    -My Trigger Set
    -Gunner`s Trigger Set
    -Random22`s Trigger Set
    -Hedanito`s Trigger Set
    -Kolt`S Trigger Set
    -SH Trigger
    -M925's Trigger Set

    ------------------------------------------------------------ --------------------


    Posting a Request

    So you have read the FAQ and want to post a request? OK, go for it, just be sure to use the following format:

    Name - This should be as straightforward as possible. Try to comply with today's standards.Description - Always describe the actions that you want the trigger to perform. An example can be a great help when requesting complex triggers.

    [b]Name[/b]
    [b]Description[/b]
    [b]Params[/b]
    (A List of Params. If you are pretty nice you set them in the context with your request.)


    Unfinished Requests

    -a lot

    Finished Requests
    -even more (list isnt up to date)

    Not Possible:
    -Fixing Modify Protounit
    -Fixing Chat Contain
    -Change name of the protounit which affect also the name when you train it
    ------------------------------------------------------------ --------------------
    Additional: XS - Basics (mostly based on pftq's guide for XS - Effects + Conditions)

    XS - Triggers are a bit different from other triggers, since they use strings instead for e.g. PlayerID, Unit Select...
    The key highlight of these effects/conditions is to allow Unit Selections to be specified by number or QV. This makes great use of the effects which set QV to an OBJECT ID and opens up a whole new world of possibilites.

    This includes all original and new effects/conditions with ALL appliable fields set to use ANY form of data, including but not limited to:
  • -- Quest Var Code: enter trQuestVarGet("QVNAME")
  • -- Player Stats: enter trGetStatValue(PLAYER, STATID_NUMBER) e.g. trGetStatValue(1, 2)-> count "Enemy Units Killed" for Player 1
  • -- Math Operations: (5*PlayerStat) ...allowed are + - * / as Math Operations
  • -- Any XS Code: (just open the typetest.xml and start digging!)

    typical strings: (strings with * have additional informations on the bottom)
  • Amount (of resources), Radius, Headings, Duration, Damage Percent, Count (e.g. in Army Deploy), Rate (e.g. of Construction), Value
  • the table of PlayerID┤s is a string
  • Operators* (don't use any numbers for them!)
  • Center Unit OBJECT ID/Source Unit OBJECT ID/Target Unit OBJECT ID **
  • Unit Type ID /ProtounitID ***



  • *Operators you can use are:
    == equal to
    >= equal to or higher
    <= equal to or lower
    > higher
    < lower
    != is not equal to

  • **The Unit Selections require an OBJECT ID. This is NOT the same as a NAME ID (like in Reyk's triggers). To find an OBJECT ID, use the supplied "QV Set.. OBJECT ID" effects OR select a unit and open the "Object Info" window. Open the Object Debug Info Window if you are using Age of Empires III and the ID is not readily available in the "Object Info".


    The first amount show you the Unit ID, every unit have a unique one. The third amount show you the Unit Type ID/ Protounit ID. Every MercJaeger have the ProtounitID -387-. Note that you can select ALL Units with Unit ID's but not even all with Protounit ID like cinematic blocks.

    1. ***TO USE NAME IDS: If you have the Name ID of a unit, you can convert it to OBJECT ID by using the kbGetBlockID("") function.
    2. ***For string (text) IDs, example: kbGetBlockID("ThisIsMyUnit")
    3. ***For QV, example: kbGetBlockID(""+trQuestVarGet("ThisIsMyQV"))
    4. ***For # NAME ID, example: kbGetBlockID("NUMBER")
      *** Generally, you can use kbGetBlockID(""+ID) for all, except text. As said above, enclose the text entirely with the quotes.


~MisterSCP


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 08-21-2011 @ 03:07 AM).]

AuthorReplies:
Mister SCP
Scenario Reviewer
posted 09-05-10 09:23 AM EDT (US)     326 / 849       
it is no constant value it is changing value. It can differ from time to time (whatever the factor is (you can e.g. calculate it every 5/20/60 seconds))


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 09-05-2010 @ 09:24 AM).]

nodgene1
Skirmisher
posted 09-05-10 10:29 AM EDT (US)     327 / 849       
Ah, I see! Very good.

...EDIT:

How would I do this, exactly? Or at least, put it into triggers? There's a QV trigger for using mathematics, isn't there?
Unit killed/Unit Lost+1*(Unit lost cost from enemy/amount of enemies)/Unit Lost Cost+1

(+1 because you cant divide with 0, could be also 0.00001)

1/result (from the above operation)

This would be pretty simple and might balance your game better

[This message has been edited by nodgene1 (edited 09-08-2010 @ 04:06 AM).]

Mister SCP
Scenario Reviewer
posted 09-09-10 12:08 PM EDT (US)     328 / 849       
  <Effect name="QV Factor Unit Kill/loss">
<Param name="PlayerID" dispName="Player" VarType="player">1</Param>
<Param name="QV" dispName="QV" varType="string">QV1</Param>
<Param name="Percent" dispName="Range (max,min)" varType="string">0.2</Param>
<Command>for(enemylost=0;>=1){}</Command>
<Command>for(enemycount=0;>=1){}</Command>
<Command>for(enemy=cNumberPlayers-1;>=1){</Command>
<Command>if (enemy!=%PlayerID%){</Command>
<Command>if(trPlayerGetDiplomacy(%PlayerID%, enemy) == "enemy")</Command>
<Command>enemylost=enemylost+trGetStatValue(enemy, 8);enemycount=enemycount+1;}}</Command>
<Command>enemylost=enemylost/enemycount;</Command>
<Command>trQuestVarSet("%QV%",1.0*trGetStatValue(%PlayerID%, 8)*trGetStatValue(%PlayerID%, 6));</Command>
<Command>trQuestVarSet("%QV%",trQuestVarGet("%QV%")/(trGetStatValue(%PlayerID%, 2)*enemylost+1));</Command>
<Command>if (trQuestVarGet("%QV%")>1.0+%Percent%/2.0) trQuestVarSet("%QV%",1.0+%Percent%/2.0);</Command>
<Command>if (1.0-%Percent%/2.0>trQuestVarGet("%QV%")) trQuestVarSet("%QV%",1.0-%Percent%/2.0);</Command>
</Effect>
youu shouldnt use that from the beginning ((100)/200+ kills should be good. Also it has some automatic enemy count inside. If you have a two player combat but you have set the game to e.g. 8 players the counter will increase really fast.
Range: set how much the player could max get e.g. 0.4->his max rate would the be 1.2. his lowest 0.8
0.8 range would have a range from 0.6-1.4


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 09-09-2010 @ 12:27 PM).]

Mister SCP
Scenario Reviewer
posted 09-12-10 05:00 AM EDT (US)     329 / 849       
Trig pack update to 5.0

remember to use typeloader for all the *TL* effects before launch them. Also some of musks effects require typeloader (side note). You should remove older packs or store them in another folder else you will still have th older effects like the old typeloader which is incompatible with some new effects

http://aoe3.heavengames.com/downloads/showfile.php?fileid=2419


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack
As_Saffah
Scenario Reviewer
posted 09-12-10 11:01 AM EDT (US)     330 / 849       
Does the new typeloader work with some of the original TL-dependent effects?

I will update the wiki once I have the details sorted out.

Crunkatog on ESO
Bart331 balance suggestion: aztec: remove civ
Voltiguer: Ender, Sioux in 1.04 will be a top civ, no matter how many layers of Sioux goggles you put on
schildpad on Elephants: ...their mansabdar unit sucks so hard it looks like a black hole
Crunkatog on Steam.
Mister SCP
Scenario Reviewer
posted 09-12-10 12:07 PM EDT (US)     331 / 849       
sure it's just much longer

old typeloader (3.0-3.3) had just global variables...
the new one has much more custom functions as
-string support
-math functions as square roots, exponential numbers, angle (sine and cosine support)
-queries
what make it easier to script. It still support the old global variables


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 09-12-2010 @ 12:11 PM).]

c9220
Skirmisher
posted 09-30-10 07:06 PM EDT (US)     332 / 849       
Is it possible to detect key presses with the user UI not showing (like in some of the AOM scenarios http://aom.heavengames.com/downloads/showfile.php?fileid=9691)?
musketeer925
Skirmisher
posted 09-30-10 09:29 PM EDT (US)     333 / 849       
Mister SCP has a Hotkey trigger in his trigger pack that you can make fire any trigger. I would think it would work with no UI.

I believe it's called 'Hotkey Trigger'

EDIT: OMG! I watched the video. That looks awesome.
You making something similar?

[This message has been edited by musketeer925 (edited 09-30-2010 @ 09:32 PM).]

c9220
Skirmisher
posted 09-30-10 10:41 PM EDT (US)     334 / 849       
Or hide the UI, but allow the user to still control the game (by UI I mean the mini-map and unit stats area, basically the lower quarter of the screen).
Problem Resolved (somewhat)
Thanks musketeer925
This is a great way of trapping key presses, but it doesn't work in Cinematic Mode or in User Controls off. Does any one know how to do this (or play the scenario I linked to and look in the trigtemp.xs, I don't have AOM).


P.S. I may do something like that, but it would not be any time soon as that scenario would require a lot of time put into it (something which I am a little short of right now).

[This message has been edited by c9220 (edited 10-08-2010 @ 07:03 PM).]

Mister SCP
Scenario Reviewer
posted 10-10-10 02:22 PM EDT (US)     335 / 849       
yes i worte that before but i didnt saw the video and thought you want to disable the ui instead of using cine mode

I tested that a while ago this should fit what you want

<Effect name="Hotkey Trigger for Cinematic Mode">
<Param name="Key01" dispName="Key" varType="string">a</Param>
<Param name="EventID01" dispName="Trigger" varType="event">-1</Param>
<Command>map("%Key01%","cinematic","trackInsert(); trackAddWaypoint();trackPlay(-1,%EventID01%);");</Command>
</Effect>

(cant answer earlier cause i get very tired from work all the week)

for hiding the UI-it should work the same way as in AOM but i didnt watched the link yet


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 10-10-2010 @ 02:24 PM).]

c9220
Skirmisher
posted 10-11-10 01:44 PM EDT (US)     336 / 849       
Thank you. It works perfectly and is exactly what I wanted.
musketeer925
Skirmisher
posted 10-11-10 08:46 PM EDT (US)     337 / 849       
I'm now very anxious for whatever you come up with that trigger. (Just don't hurry it though, then it won't turn out as well.)

[This message has been edited by musketeer925 (edited 10-11-2010 @ 08:47 PM).]

musketeer925
Skirmisher
posted 10-21-10 03:16 PM EDT (US)     338 / 849       
Quoted from an email to Mister SCP:
I've gotten this one pretty close, it's by far the longest trigger I've coded. And the only one very large without your help.

Essentially, it is supposed to 'store' a even amount of your resources in each building, and when it is killed, they are dropped in the form of crates.

I have two versions of the same trigger here that are very close. They are extremely similar in what happens and in code. I'm not sure what is causing the problem here.

Please test and help!

The first one seems to actually get the right amount of resources in the right place for the first building, but also puts some extra at point 0,0,0, and the following buildings after the first just spew a few resources at 0,0,0.

The second here gives the right amount of resources for every building, every time, but always puts them all at 0,0,0.

Effect V1:

<Effect Name="Buildings Drop Resources on Death">
<Param Name="PlayerID" dispName="Player ID" VarType="string">1</Param>
<Command>for(all=1600;>=-1){ if (kbGetUnitTypeName(all)=="Building") break;}</Command>
<Command>for(Qid=0;>1){}</Command>
<Command>xsSetContextPlayer(%PlayerID%);kbLookAtAllUnitsOnMap();</Command>
<Command>Qid=kbUnitQueryCreate("QDUA_%PlayerID%_Building");</Command>
<Command>kbUnitQuerySetPlayerID(Qid, %PlayerID%, true);</Command>
<Command>kbUnitQuerySetUnitType(Qid, all);</Command>
<Command>kbUnitQuerySetState(Qid, 4);</Command>
<Command>if(kbUnitQueryExecute(Qid)>=1){</Command>
<Command>for(build=trPlayerBuildingCount(%PlayerID%)+1;>=50000){}</Command>
<Command>for(food=trPlayerResourceCount(%PlayerID%, "food")/build;>=50000){}</Command>
<Command>for(wood=trPlayerResourceCount(%PlayerID%, "wood")/build;>=50000){}</Command>
<Command>for(gold=trPlayerResourceCount(%PlayerID%, "gold")/build;>=50000){}</Command>
<Command>gold=gold/100;</Command>
<Command>wood=wood/100;</Command>
<Command>food=food/100;</Command>
<Command>trQuestVarSetFromRand("dlog", gold, gold, true);</Command>
<Command>trQuestVarSetFromRand("doow", wood, wood, true);</Command>
<Command>trQuestVarSetFromRand("doof", food, food, true);</Command>
<Command>gold=trQuestVarGet("dlog");</Command>
<Command>wood=trQuestVarGet("doof");</Command>
<Command>food=trQuestVarGet("doow");</Command>
<Command>for(loopi=wood;>=1){</Command>
<Command>trUnitCreate("CrateofWood", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>for(loopj=gold;>=1){</Command>
<Command>trUnitCreate("CrateofCoin", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>for(loopk=food;>=1){</Command>
<Command>trUnitCreate("CrateofFood", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>food=food*-100;</Command>
<Command>wood=wood*-100;</Command>
<Command>gold=gold*-100;</Command>
<Command>kbUnitQueryResetResults(Qid);</Command>
<Command>kbUnitQueryExecute(Qid);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "food", food);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "wood", wood);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "gold", gold);}</Command>
</Effect>

Effect V2:

<Effect Name="Buildings Drop Resources on Death">
<Param Name="PlayerID" dispName="Player ID" VarType="string">1</Param>
<Command>for(all=1600;>=-1){ if (kbGetUnitTypeName(all)=="Building") break;}</Command>
<Command>for(Qid=0;>1){}</Command>
<Command>xsSetContextPlayer(%PlayerID%);kbLookAtAllUnitsOnMap();</Command>
<Command>Qid=kbUnitQueryCreate("QDUA_%PlayerID%_Building");</Command>
<Command>kbUnitQuerySetPlayerID(Qid, %PlayerID%, true);</Command>
<Command>kbUnitQuerySetUnitType(Qid, all);</Command>
<Command>kbUnitQuerySetState(Qid, 4);</Command>
<Command>kbUnitQueryResetResults(Qid);</Command>
<Command>if(kbUnitQueryExecute(Qid)>=1){</Command>
<Command>trUnitSelectClear();</Command>
<Command>trUnitSelect(""+1*kbUnitQueryGetResult(Qid, 0));</Command>
<Command>trUnitChangeProtoUnit("CinematicBlock");</Command>
<Command>for(build=trPlayerBuildingCount(%PlayerID%)+1;>=50000){}</Command>
<Command>for(food=trPlayerResourceCount(%PlayerID%, "food")/build;>=50000){}</Command>
<Command>for(wood=trPlayerResourceCount(%PlayerID%, "wood")/build;>=50000){}</Command>
<Command>for(gold=trPlayerResourceCount(%PlayerID%, "gold")/build;>=50000){}</Command>
<Command>gold=gold/100;</Command>
<Command>wood=wood/100;</Command>
<Command>food=food/100;</Command>
<Command>trQuestVarSetFromRand("dlog", gold, gold, true);</Command>
<Command>trQuestVarSetFromRand("doow", wood, wood, true);</Command>
<Command>trQuestVarSetFromRand("doof", food, food, true);</Command>
<Command>gold=trQuestVarGet("dlog");</Command>
<Command>wood=trQuestVarGet("doof");</Command>
<Command>food=trQuestVarGet("doow");</Command>
<Command>for(loopi=wood;>=1){</Command>
<Command>trUnitCreate("CrateofWood", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>for(loopj=gold;>=1){</Command>
<Command>trUnitCreate("CrateofCoin", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>for(loopk=food;>=1){</Command>
<Command>trUnitCreate("CrateofFood", "default", xsVectorGetX(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetY(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))),xsVectorGetZ(kbUnitGetPosition(kbUnitQueryGetResult(Qid, 0))), 0, %PlayerID%);}</Command>
<Command>food=food*-100;</Command>
<Command>wood=wood*-100;</Command>
<Command>gold=gold*-100;</Command>
<Command>kbUnitQueryResetResults(Qid);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "food", food);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "wood", wood);</Command>
<Command>trPlayerGrantResources(%PlayerID%, "gold", gold);}</Command>
</Effect>
Can anyone else by chance help out; SCP seems to have disapeared.

[This message has been edited by musketeer925 (edited 10-21-2010 @ 03:19 PM).]

Mister SCP
Scenario Reviewer
posted 10-21-10 04:26 PM EDT (US)     339 / 849       
he has not dissapeard but read that in IT lessons where he had no access to aoe3 and forgot it later xD

btw: how do i set up this trigger?

edit: trigger1 seem to lock the triggers, number 2 dont do anything (but dont lock triggers)

edit 2:

you have not for example defined the variable gold
<Command>gold=gold/100;</Command>->is your first call

well, g n8 i see what i can do tomorrow


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 10-21-2010 @ 04:49 PM).]

musketeer925
Skirmisher
posted 10-21-10 05:50 PM EDT (US)     340 / 849       
I did forget to explain that :P

You gotta put them one a loop with always. Then kill some buildings of the specified player -- and remember to give him some resources if you wish to see results.

I've also been using typeloader but I'm not sure if it is necessary.

It seemed that neither killed my triggers though.

And I did define the varible gold in both:


<Command>for(food=trPlayerResourceCount(%PlayerID%, "food")/build;>=50000){}</Command>
<Command>for(wood=trPlayerResourceCount(%PlayerID%, "wood")/build;>=50000){}</Command>
<Command>for(gold=trPlayerResourceCount(%PlayerID%, "gold")/build;>=50000){}</Command>



Btw, I am rather glad you have not left us.

[This message has been edited by musketeer925 (edited 10-21-2010 @ 05:56 PM).]

QWW123
Skirmisher
posted 10-22-10 01:45 AM EDT (US)     341 / 849       
Could someone make just one condition for me?

If the unit has "set tactic" say to "Stand Ground" then "effect" happens?
Mister SCP
Scenario Reviewer
posted 10-22-10 02:07 PM EDT (US)     342 / 849       
the trigger is basicly too slow. When a unit dies it forget automaticly the vetor so it creates at -1,-1,-1 in some cases

well i tried to speed it up but it still is like 20-40% fail.
You might use some vector arrays to save the position so that you are able to have the vector as long avaiable as required... or find another solution

edit: in case you want to transform you have to transfrom to a hero unit NOT to cin block (as this unit dies as well)

~Consti


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack

[This message has been edited by Mister SCP (edited 10-22-2010 @ 02:17 PM).]

musketeer925
Skirmisher
posted 10-22-10 02:51 PM EDT (US)     343 / 849       
@ QWW I don't think that is possible. Sorry.

But if you are just trying to detect if say the Unit Set Tactic trigger has been used, you could of course set a quest var to 1 when you set the tactic, and just use QV Check condition.

If you want to see if someone has manually done it, I don't think that is possible at all.

[This message has been edited by musketeer925 (edited 10-22-2010 @ 02:53 PM).]

QWW123
Skirmisher
posted 10-23-10 07:30 PM EDT (US)     344 / 849       
Okay thanks.
musketeer925
Skirmisher
posted 10-24-10 02:00 PM EDT (US)     345 / 849       
Erherm. Just linking to this post from the downloads section...

<Effect name="Unit Set Tactic Artillery">
<Param name="PlayerID" dispName="Player ID" VarType="string">1</Param>
<Param name="Obj" dispName="$$22295$$Source Units" VarType="unit">default</Param>
<Param name="Note" dispName="Note" VarType="string">Because of the nature of this trigger, it can only change the Tactic of one Unit at a time. </Param>
<Param name="A" dispName="Bombard" VarType="bool">true</Param>
<Param name="B" dispName="Limber" VarType="false">false</Param>
<Command>trUnitSelectClear();</Command>
<Command>uiClearSelection();</Command>
<Command>trBlockAllSounds(true);</Command>
<Command>for(FP=0;>1){}</Command>
<Command>FP=trCurrentPlayer();</Command>
<Command>trackInsert(); trackAddWaypoint();</Command>
<Command>if(FP==%PlayerID%) {</Command>
<Command>trPlayerSetActive(%PlayerID%);</Command>
<Command>trUnitSelect("%Obj%");</Command>
<Command>for(oldPlayer=xsGetContextPlayer();>99){}</Command>
<Command>xsSetContextPlayer(%PlayerID%);kbLookAtAllUnitsOnMap();</Command>
<Command>for(err=0;>1){} for(id=0;>1){} id = kbGetUnitBaseTypeID(kbGetBlockID("%Obj%")); </Command>
<Command>if(trUnitIsOwnedBy(%PlayerID%)){if(trUnitAlive()){</Command>
<Command>while(trUnitIsSelected()!=true) {err=err+1; </Command>
<Command>uiFindType(kbGetProtoUnitName(id));</Command>
<Command>if(err>200) {break;}}}}</Command>
<Command>xsSetContextPlayer(oldPlayer);</Command>
<Command>trPlayerSetActive(FP);}</Command>
<Command>trackPlay(1,-1);</Command>
<Command>trUnblockAllSounds();</Command>
<Command>if (%A%==true) unitSetTactic("Bombard");</Command>
<Command>else if (%B%==true) unitSetTactic("Normal");</Command>
<Command>uiClearSelection();</Command>
</Effect>
QWW123
Skirmisher
posted 10-24-10 06:25 PM EDT (US)     346 / 849       
Okay, should I do something with that? Not good with this stuff.
musketeer925
Skirmisher
posted 10-24-10 06:27 PM EDT (US)     347 / 849       
How do I install a trigger?

When we have finished making your trigger, we'll post the required code here. To install this code you will first of all need to find your way to the AOEž installation folder. C:\Program Files\Microsoft Games\Age of Empires3 by default).
Now open the trigger folder if you use vanilla -trigger1, if you use TWC -trigger2, and finally if you use TAD go to -trigger3.
Next, open the file called typetest.xml. The only thing left to do is copy the code at the right position and save. If you requested a condition, then place the line above ,
if you requested an effect paste it right above . Note the "s" at the end of both tags.

Notes:

When copying the trigger from someone please click first and only then copy the required code.

If you're still uncomfortable with installing triggers please backup the original typetest file, i.e. copy the original to another folder.
Instead of using the typetest.xml, put it in the M925 TriggerSet 1.24.xml Replace the old version of the same trigger (about 3-4 triggers up, if I recall; the name is the first line, ofc.)

[This message has been edited by musketeer925 (edited 10-24-2010 @ 06:29 PM).]

loard of peace
Skirmisher
posted 12-04-10 02:41 PM EDT (US)     348 / 849       
hey i made with a friend(pegasus77) a trigger (set) for a easier shop but he dosn't work really...
so pls help me

<?xml version = "1.0"?>
<trigger version="3">

<Conditions>
<condition name="Easy Colloseum Shop">
<Param name="Player" dispName="$$22301$$Player" varType="player">1</Param>
<Param name="SrcArmy" dispName="$$22348$$Army" VarType="group">default</Param>
<Param name="DstPoint" dispName="" varType="area">0</Param>
<Param name="Op" dispName="$$22297$$Operator" VarType="operator">==</Param>
<Param name="Dist" dispName="$$22298$$Distance" VarType="float">0</Param>
<Param name="CostGold" dispName="Gold cost" varType="long">0</Param>
<Param name="CostWood" dispName="Wood cost" varType="long">0</Param>
<Param name="CostFood" dispName="Food cost" varType="long">0</Param><Command>trArmySelect("%SrcArmy%");</Command>
<Command>{</Command>
<Command> if(trUnitDistanceToPoint(%DstPoint%) %Op% %Dist%</Command>
<Command> {</Command>
<Command> if((((trPlayerResourceCount(%FromPlayerID%, "gold")>=%CostGold%) != true)||((trPlayerResourceCount(i, "wood")>=%CostWood%) != true)||((trPlayerResourceCount(i, "food")>=%CostFood%) != true)) != true)</Command>
<Command> if(%CostGold% > 0)</Command>
<Command> {</Command>
<Command> trPlayerTribute(%FromPlayerID%,"gold",%CostGold%,0);</Command>
<Command> }</Command>
<Command> if(%CostWood% > 0)</Command>
<Command> {</Command>
<Command> trPlayerTribute(%FromPlayerID%,"wood",%CostWood%,0);</Command>
<Command> }</Command>
<Command> if(%CostFood% > 0)</Command>
<Command> {</Command>
<Command> }</Command>
<Command> }</Command>
<Command> trPlayerTribute(%FromPlayerID%,"food",%CostFood%,0);</Command>
<Expression>trUnitDistanceToUnit("%DstObject%") %Op% %Dist%</Expression>
</condition>

</Conditions>

<Effects>

<Effect name="Easy Colloseum Shop Unit Create Multi">
<Param name="PlayerID" dispName="$$22301$$Player" varType="player">1</Param>
<Param name="ProtoName" dispName="$$22434$$ProtoName" varType="protounit">Villager</Param>
<Param name="Location" dispName="" varType="area">0,0,0</Param>
<Param name="Count" dispName="$$22435$$Count" varType="long">0</Param>
<Param name="Heading" dispName="$$22432$$Heading" varType="long">0</Param>
<Command>for (i=0; <%Count%)</Command>
<Command> trUnitCreate("%ProtoName%", "default", %Location%, %Heading%,, %PlayerID%);</Command>
</Effect>




</Effects>
</trigger>

thx

load of peace & pegasus77
Mister SCP
Scenario Reviewer
posted 12-05-10 03:59 AM EDT (US)     349 / 849       
   <condition name="Easy Colloseum Shop">
<Param name="Player" dispName="$$22301$$Player" varType="player">1</Param>
<Param name="SrcArmy" dispName="$$22348$$Army" VarType="group">default</Param>
<Param name="DstPoint" dispName="" varType="area">0</Param>
<Param name="Op" dispName="$$22297$$Operator" VarType="operator">==</Param>
<Param name="Dist" dispName="$$22298$$Distance" VarType="float">0</Param>
<Param name="CostGold" dispName="Gold cost" varType="long">0</Param>
<Param name="CostWood" dispName="Wood cost" varType="long">0</Param>
<Param name="CostFood" dispName="Food cost" varType="long">0</Param>
<Command>trArmySelect("%SrcArmy%");</Command>

<Command>for(ikx=0;>1){}</Command>
<Command> if(trUnitDistanceToPoint(%DstPoint%) %Op% %Dist%)</Command>
<Command> {</Command>
<Command><![CDATA[if((trPlayerResourceCount(%Player%, "gold")>=%CostGold%)&&]]></Command>
<Command><![CDATA[(trPlayerResourceCount(%Player%, "wood")>=%CostWood%)&& (trPlayerResourceCount(%Player%, "food")>=%CostFood%))]]></Command>
<Command>{trPlayerTribute(%Player%,"gold",%CostGold%,0);</Command>
<Command>trPlayerTribute(%Player%,"wood",%CostWood%,0);</Command>
<Command>trPlayerTribute(%Player%,"food",%CostFood%,0);</Command>
<Command>ikx=1;}}</Command>
<Expression>ikx==1</Expression>
</condition>

changes:
-Fill in the player param in Command lines
-Expression line makes sense now
->before the trigger was true when the unit is in area
-made a pos statement from your neg one (+splitted it in two lines)


ESO2 Name:Sir_ConstantinESO Name:Sir_Pacman
Trigger Freak and Modder for AOE3

SCP Editor Tools---my map pack---Some incomplete stuff
My trigger Pack
loard of peace
Skirmisher
posted 12-05-10 04:14 AM EDT (US)     350 / 849       
thx

EDIT:hm the thing with the tribute dosn't work =(
<condition name="Easy Colloseum Shop">
<Param name="Player" dispName="$$22301$$Player" VarType="player">1</Param>
<Param name="SrcArmy" dispName="$$22348$$Army" VarType="group">default</Param>
<Param name="DstPoint" dispName="" varType="area">0</Param>
<Param name="Op" dispName="$$22297$$Operator" VarType="operator">==</Param>
<Param name="Dist" dispName="$$22298$$Distance" VarType="float">0</Param>
<Param name="CostGold" dispName="Gold cost" varType="long">0</Param>
<Param name="CostWood" dispName="Wood cost" varType="long">0</Param>
<Param name="CostFood" dispName="Food cost" varType="long">0</Param>
<Command>trArmySelect("%SrcArmy%");</Command>

<Command>for(ikx=0;>1){}</Command>
<Command> if(trUnitDistanceToPoint(%DstPoint%) %Op% %Dist%)</Command>
<Command> {</Command>
<Command>if((trPlayerResourceCount(%Player%, "gold")>=%CostGold%) !=true)|| ((trPlayerResourceCount(%Player%, "wood")>=%CostWood%) !=true) || ((trPlayerResourceCount(%Player%, "food")>=%CostFood%) !=true) </Command>
<Command> {</Command>
<Command> if(%CostGold% > 0)</Command>
<Command> {</Command>
<Command> trPlayerTribute(%Player%,"gold",%CostGold%,0);</Command>
<Command> }</Command>
<Command> if(%CostWood% > 0)</Command>
<Command> {</Command>
<Command> trPlayerTribute(%Player%,"wood",%CostWood%,0);</Command>
<Command> }</Command>
<Command> if(%CostFood% > 0)</Command>
<Command> {</Command>
<Command> trPlayerTribute(%Player%,"food",%CostFood%,0);</Command>
<Command> }</Command>
<Command>ikx=1;}}</Command>
<Expression>ikx==1</Expression>
</condition>


loard of peace

[This message has been edited by loard of peace (edited 12-07-2010 @ 01:18 PM).]

« Previous Page  1 ··· 12 13 14 15 16 ··· 20 ··· 30 ··· 34  Next Page »
You must be logged in to post messages.
Please login or register

Hop to:    

Age of Empires III Heaven | HeavenGames