Project Perfect Mod Forums
:: Home :: Get Hosted :: PPM FAQ :: Forum FAQ :: Privacy Policy :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in ::


The time now is Mon Jun 01, 2026 7:23 pm
All times are UTC + 0
Translated AI.ini request
Moderators: Global Moderators, Red Alert 2 Moderators
Post new topic   Reply to topic Page 1 of 1 [16 Posts] Mark the topic unread ::  View previous topic :: View next topic
Author Message
tekka warrior
Stealth Laser Trooper


Joined: 21 May 2012
Location: Beirut,Lebanon

PostPosted: Tue Aug 20, 2013 4:44 pm    Post subject:  Translated AI.ini request Reply with quote  Mark this post and the followings unread

Hello.

Im editing the Ai again(in my new mod), however im tired of guessing around the task forces...etc

Does anyone have a translated ai.ini, or these task forces cannot be translated?

Thanks.

Back to top
View user's profile Send private message
Nikademis Von Hisson
General


Joined: 05 Sep 2007
Location: Wilkes Barre PA

PostPosted: Tue Aug 20, 2013 6:21 pm    Post subject: Reply with quote  Mark this post and the followings unread

translated?

_________________
I am authorized to send out the TMP Studio, PM ME IF YOU WANT IT And check this out, these were sent to me for help with terrain and zdata help along with TMP Studio/Builder

http://www.ppmsite.com/forum/viewtopic.php?t=27714

Back to top
View user's profile Send private message Send e-mail Skype Account
tekka warrior
Stealth Laser Trooper


Joined: 21 May 2012
Location: Beirut,Lebanon

PostPosted: Tue Aug 20, 2013 9:06 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yes. For example:  

The task forces are named like this:[0D082CFC-G] for example.

What im asking for is the meaning of these task forces' names.

You know what i mean?

Back to top
View user's profile Send private message
Nikademis Von Hisson
General


Joined: 05 Sep 2007
Location: Wilkes Barre PA

PostPosted: Tue Aug 20, 2013 9:24 pm    Post subject: Reply with quote  Mark this post and the followings unread

From the original AI

[TaskForces]
0=05C60C4C-G                                in the list


[05C60C4C-G]                                  defines what units are in the taksforce
Name=3 GIs, 3 Guards
0=3,E1
1=3,GGI
Group=-1


[ScriptTypes]
0=0C9C878C-G                                      in the list

[0C9C878C-G]                                   this tells the action to preform
Name=Allied Refinery Guard
0=58,1
1=5,10
2=58,196609
3=5,10
4=58,196609
5=5,10
6=6,1


[TeamTypes]
0=06175EFC-G                               in the list

[06175EFC-G]                                           defines the teamtype
Name=Allied Base Guard - Refine
VeteranLevel=1
MindControlDecision=0
Loadable=no
Full=no
Annoyance=no
GuardSlower=no
House=<none>
Recruiter=no
Autocreate=yes
Prebuild=no
Reinforce=yes
Droppod=no
UseTransportOrigin=no
Whiner=yes
LooseRecruit=no
Aggressive=yes
Suicide=no
Priority=5
Max=2
TechLevel=0
Group=-1
OnTransOnly=no
AvoidThreats=no
IonImmune=no
TransportsReturnOnUnload=no
AreTeamMembersRecruitable=no
IsBaseDefense=yes
OnlyTargetHouseEnemy=no
Script=0C9C878C-G                                   this tell which script to use                  
TaskForce=05C60C4C-G                                this is the taskforce




[AITriggerTypes]

0CDF8EDC-G=Allied Base guard - Tech,0CE4CEFC-G,<all>,2,1,GATECH,0100000003000000000000000000000000000000000000000000000000000000,40.000000,10.000000,40.000000,1,0,1,0,<none>,0,1,1



the "names" given to the task/scrip/team/trigger are what ever you want

_________________
I am authorized to send out the TMP Studio, PM ME IF YOU WANT IT And check this out, these were sent to me for help with terrain and zdata help along with TMP Studio/Builder

http://www.ppmsite.com/forum/viewtopic.php?t=27714

Back to top
View user's profile Send private message Send e-mail Skype Account
OmegaBolt
President


Joined: 21 Mar 2005
Location: York, England

PostPosted: Tue Aug 20, 2013 9:45 pm    Post subject: Reply with quote  Mark this post and the followings unread

They're hexadecimal numerical values but as Nikademis said you can name them whatever you like.

Back to top
View user's profile Send private message Send e-mail
DarkVen9109
Pyro Sniper


Joined: 02 Nov 2012
Location: Philippines

PostPosted: Wed Aug 21, 2013 3:06 am    Post subject: Reply with quote  Mark this post and the followings unread

OK I will do my best to translate the Script Types to AI Trigger types and define the definition as well. Taskforce needs no translation anymore to me.

Below are the descriptions for Scripts in Script Types.

0,n = Attack Target Type, n = target type to attack
This instructs the TeamType to use the TaskForce to approach and attack the target specified by the second parameter. The following are the target types which can be used;-

0 N/A cancel attack mission
1 Anything anything (usually the first enemy object they encounter) - utilizes threat rating logic
2 Structures any enemy [BuildingTypes]
3 Ore Miners any enemy [VehicleTypes] with Harvester=yes set
4 Infantry any enemy [InfantryTypes]
5 Vehicles any enemy [VehicleTypes]
6 Factories any enemy [BuildingTypes] with a Factory= setting
7 Base Defenses any enemy [BuildingTypes] with IsBaseDefense=yes set
8 Base Threats any enemy objects approaching (or already in) its base and which are in an attack mission
9 Power Plants any enemy [BuildingTypes] with positive Power= values set
10 Occupiable any [BuildingTypes] with CanBeOccupied=yes set (usually neutral structures)
11 Tech Buildings any [BuildingTypes] with NeedsEngineer=yes set (usually NeutralTechBuildings=)

NOTE: in Yuri's Revenge, Occupiable structures are defined by having CanOccupyFire=yes set instead of CanBeOccupied=yes.

1,n = Attack Waypoint, n = waypoint number to attack
This instructs the TeamType to use the TaskForce to attack the waypoint number specified by the second parameter. If any members have Infiltrate=yes set they will enter the structure at the waypoint. Members with Engineer=yes set will capture the structure provided it does not have Capturable=no set or if it has NeedsEngineer=yes set. Members with Agent=yes set will spy on the structure if it has Spyable=yes set. Members that do not have Assaulter=no set will garrison the structure if it has CanBeOccupied=yes set. Members with C4=yes set will blow up the structure if does not have CanC4=no set. If there is no building at the specified waypoint, the TaskForce will move to the waypoint and will just remain in their last mission. Waypoints are used to define specific places (cells) on the map - see the Map Editing Guide for a detailed explanation of waypoints. At this point however, its worth noting that Red Alert 2 usually assigns waypoint number 98 to define the place where the player starts in single player games (also known as the 'home cell'), waypoint number 99 for the center of the map, and waypoint numbers 0 - 7 to define the starting places for the 8 players.

2,0 = Go Berzerk
Forces infantry units with Cyborg=yes set to go berserk (they consider all objects, including friendly units, equally in their threat scan).

3,n = Move To Waypoint, n = waypoint number to move to
This instructs the TeamType to use the TaskForce to move to the waypoint number specified by the second parameter. Waypoints are used to define specific places (cells) on the map - see the Map Editing Guide for a detailed explanation of waypoints. At this point however, its worth noting that Red Alert 2 usually assigns waypoint number 98 to define the place where the player starts in single player games (also known as the 'home cell'), waypoint number 99 for the center of the map, and waypoint numbers 0 - 7 to define the starting places for the 8 players. TIP: you could use this script action to get a TeamType to move to Waypoint= number 99 (just about every map has this defined as the center point) - that will mean it will always strive to get to the center of the map, providing a good vantage point from which to perform further script actions and giving the impression that the computer is scouting for enemies.

4,n = Move Into Specific Celltag, n = celltag to move into
This instructs the TeamType to use the TaskForce to move into the CellTag specified by the second parameter. This is used when you want the TeamType to trigger a specific Action (when the game tests for the CellTag being entered). CellTags are attached to cells and are used to trigger Events and thus fire Actions when that cell is entered by a unit (or any unit from the TaskForce). The CellTag parameter should be the waypoint parameter for that CellTag from the [CellTags]listing in the map file, hence this script action is only of use on specific map files. See the Map Editing Guide for a detailed explanation of CellTags and their use.

5,n = Guard Area, n = time to guard area in tenths of a minute (multiples of 6 seconds)
This instructs the TeamType to put the TaskForce into Guard Mode (same effect as selecting a group of units and pressing the Guard Mode key as defined in KEYBOARD.INI or clicking the relevant button on the Advanced Command Bar). Units will move to attack enemy units that fall within their Sight= range.

6,n = Jump To Script Action, n = number of script action to jump to
This is used to repeat actions within the ScriptType. The second parameter is the action number of the ScriptType that you want to jump to. Remember that the first action of a ScriptType is numbered 0 so if you jump to this (by using n=6,0 for example) you get the TaskForce to repeat all the commands it has, looping forever. This is used by the waypoint system in the game for setting up patrols. You don't have to repeat all the actions as you could jump to say action 3, which would ignore the first three action commands (remember, the numbering starts at 0) and just go to the fourth.

7,0 = Force Player Win
Forces a game win condition for the owner of the TeamType (they win the game).

8,n = Unload, n = type of unloading
If the TaskForce contains a unit or units that have a valid Passengers= value set, and those units contain passengers, this command will make the units inside the transport(s) disembark. Note that once the passengers have disembarked, the transport itself is suspended until given a new mission and is therefore no longer considered a part of this TaskForce - this means that you cannot, for example, get units to disembark, do something, then get back into the transport in the same script. The second parameter can be used to control what happens to the transport after it 'deploys' its cargo;-

0 Keep transports and units - all remain in the team and execute the remainder of the script
1 Keep transport and lose the units - only the transport will execute the remainder of the script
2 Lose transport and keep units - only the units will execute the remainder of the script
3 Lose transports and lose units - nothing executes the remainder of the script

9,0 = Deploy
If the TaskForce contains a unit or units that are able to deploy (for example a unit which DeploysInto= a [BuildingType] or has any of Deployer=yes, DeployFire=yes, DeployToFire=yes set) then this action causes them to deploy at the current cell they are occupying (same effect as selecting a unit and pressing the Deploy key as defined in KEYBOARD.INI or clicking the relevant button on the Advanced Command Bar).

10,0 = Follow friendlies
This command causes the TaskForce to follow the nearest friendly unit when it moves although it will not function as if it is 'guarding' the unit. The following is not permanent, when the TaskForce is assigned another mission it abandons the following. TIP: If the support TeamType has this as the first line in its ScriptType, then it will escort the first TeamType.

11,n = Assign New Mission, n = new mission type
The objects in the TaskForce are all assigned the new mission defined by the second parameter. Not all of them work, some are made obsolete by other action commands, some do not work because an object in the TaskForce may not support that action. Because these are the same 'behaviours' to which objects can be assigned when initially placed on the map some apply only to structures. The following are valid settings for the second parameter, you should refer to the Mission Control section of the RULES.INI Guide for a more detailed explanation of the missions and how they work;-

0 Sleep object sits around and plays dead, will not acquire targets
1 Attack special attack mission used by AI team types (utilizes threat rating logic)
2 Move simply moving to destination
3 QMove special move to destination after other queued moves occur
4 Retreat object runs away (may even leave the map)
5 Guard object sits around and will engage an enemy that falls within its weapon range
6 Sticky just like guard mode, except the object will engage enemies but not pursue them
7 Enter enter building or transport
8 Capture engineer entry logic used by MultiEngineer
9 Eaten when object is being repaired (applies only to structures)
10 Harvest the loop controlling harvesting of Ore and dumping at a Refinery
11 Area Guard guard the general area where the object starts at
12 Return return to co-ordinating object (e.g. spawned object returns to the spawner)
13 Stop stop moving or firing at the first available opportunity
14 Ambush force fire (units with Infiltrate=yes will enter target if possible)
15 Hunt scan for and attack enemies wherever they may be on the map
16 Unload while dropping off cargo (e.g. Landing Craft unloading passengers)
17 Sabotage unit runs to place C4 on a building or Ivan goes to place bomb on object
18 Construction structures use this when building up after initial placement
19 Selling structures use this for deconstruction after being sold
20 Repair used when repairing an object (e.g. Service Depot)
21 Rescue special team over-ride mission
22 Missile Nuke Silo special launch missile mission
23 Harmless object doesn't fire and is not considered in any threat scan
24 Open while opening or closing a gate to allow passage
25 Patrol patrol a series of waypoints
26 Paradrop Approachobject is approaching the paradrop site
27 Paradrop Overfly object is flying over the paradrop site (i.e. dropping the paratroopers)
28 Wait paused and awaiting next mission
29 Move (special duplicate) used when Chrono units are moving to destination
30 Attack (special duplicate) used when units are deployed to fire (e.g. weapons with an area fire effect)
31 Spyplane Approachobject is flying towards target (YR)
32 Spyplane Overfly object is flying over the target (YR)

NOTE: there is a difference when using Area Guard as opposed to Guard. Units with an Area Guard mission are more aggressive and will pursue enemy units that fall within their Sight= range and continue that pursuit until they can attack the target. Then the units will return to their original position unless they catch the target within their initial guard zone (in which case they will attempt to destroy it). Units in an Area Guard mission are not recruited 'from the field' when a create team Action is executed, although units in a standard Guard mission will be gathered to create the new team if they are required.

12,n = Set Global, n = global number to be set
The global number specified in the second parameter is defined as being 'set' (it is allocated a value of '1' or 'true'). This should be employed in specific map files only. This is part of the boolean logic employed by the global variables system in the game engine - refer to the Map Editing Guide for a more detailed explanation of global and local variables. The Global Variables are defined in RULES.INI - see the RULES.INI Guide.

13,n = Play Idle Anim Sequence, n = sequence number
If the TaskForce contains a unit or units that are SHPs (i.e. infantry) then the relevant idle SHP sequence is displayed as defined by the frame numbering system in ART.INI.

14,0 = Load Onto Transport
If the TaskForce contains a unit or units that have a valid Passengers= value set, and units whose Size= and PhysicalSize= settings allow them to be carried by that transport, this command will make the units enter the transport.

15,n = Spy On Structure At Waypoint, n = waypoint number
Should be used only for units with Infiltrate=yes and Agent=yes set. This instructs the TaskForce to enter the structure at the waypoint number specified by the second parameter and spy on the structure if it has Spyable=yes set. If there is no building at the specified waypoint, the TaskForce may not activate correctly and will just remain in their last mission. Waypoints are used to define specific places (cells) on the map - see the Map Editing Guide for a detailed explanation of waypoints. At this point however, its worth noting that Red Alert 2 usually assigns waypoint number 98 to define the place where the player starts in single player games (also known as the 'home cell'), waypoint number 99 for the center of the map, and waypoint numbers 0 - 7 to define the starting places for the 8 players.

16,n = Patrol to waypoint, n = waypoint number
This is similar to Move to waypoint. This instructs the TeamType to use the TaskForce to move to the waypoint number specified by the second parameter. The difference is that the units in the TaskForce will move out of their patrol route to actively go and engage any enemy objects that are within their Sight= as they move to the waypoint. NOTE: this action eats up processor time, because the TaskForce will scan for enemy objects with each movement. If you have a lot of TaskForces (or lots of units in them) engaged in this action, you will experience slowdown in the game - this is one reason why the single player missions are comparatively slow, they use this action a lot. The rate at which the scanning for targets whilst in this mission is controlled by the PatrolScan= statement in the [AI]section of RULES.INI (see the RULES.INI Guide). Waypoints are used to define specific places (cells) on the map - see the Map Editing Guide for a detailed explanation of waypoints. At this point however, its worth noting that Red Alert 2 usually assigns waypoint number 98 to define the place where the player starts in single player games (also known as the 'home cell'), waypoint number 99 for the center of the map, and waypoint numbers 0 - 7 to define the starting places for the 8 players.

17,n = Change Script, n = script number to execute
Very handy and under utilized - this instructs the TaskForce to execute another ScriptType. The second parameter specifies the number of the ScriptType to execute as listed in the [ScriptTypes]table (consider the table as being numbered starting at 0 for this purpose).

18,n = Change Team, n = team number to join
This instructs the TaskForce to join another TeamType. The second parameter specifies the number of the TeamType to join as listed in the [TeamTypes]table (consider the table as being numbered starting at 0 for this purpose).

19,0 = Panic
If the TaskForce contains a unit or units that have Fraidycat=yes set then they will run around aimlessly, using the Panic= animation from their sequence as defined in ART.INI. Normally used for the civilian units. Units that do not fulfil this criteria lie down and act as if prone.

20,n = Change House Ownership, n = house number of new owner
Used in single player missions on specific map files only, this changes ownership of the entire TeamType to the House= number specified by the second parameter. See the Map Editing Guide for details of [Houses] and their numbering.

21,0 = Scatter
This instructs the TaskForce to scatter (same effect as selecting a group of units and pressing the Scatter key as defined in KEYBOARD.INI).

22,0 = Afraid & Run To Shroud
This instructs the TaskForce to behave in a scared manner and it will run to the nearest shrouded cell. The TaskForce will not actively engage in combat, will not acquire targets and will not retaliate (it will scatter instead if attacked).

23,0 = Force Player Loss
Forces a game loss condition for the owner of the TeamType (they lose the game).

24,n = Play Speech From EVA.INI, n = number of speech to play
This instructs the TaskForce to play one of the Sofia or EVA voices (depending upon the ParentCountry= or the owner of this TaskForce). The second parameter is the number of the sound to be played from the [DialogList] in the EVA.INI file (note that you should consider this list as being numbered from 0 instead of 1 to get the correct numbering convention).

25,n = Play Sound From SOUND.INI, n = number of sound to play
This instructs the TaskForce to play one of the generic in game sounds from the [SoundList] in the SOUND.INI file (note that for all in game Action and Trigger purposes this number is from an internal table - see the Map Editing Guide).

26,n = Play Movie
This instructs the TaskForce to play one of the movies from the [Movies] list in the ART.INI file (note that for all in game Action and Trigger purposes this number is from an internal table - see the Map Editing Guide).

27,n = Play Theme From THEME.INI, n = number of theme to play
This instructs the TaskForce to play one of the game soundtracks from the [Themes] list in the THEME.INI file (note that for all in game Action and Trigger purposes this number is from an internal table - see the Map Editing Guide).

28,0 = Reduce Ore
Reduces the amount of Ore in the cell that the TeamType is occupying. Used by the special 'weapon' that is inherent with Ore Miners.

29,0 = Begin Production
Forces the owner of the TeamType to begin the auto-production process (the AI's behaviour in skirmish games). Should only be used on AI controlled houses.

30,0 = Force Sale
Forces the 'fire sale' of all remaining structures owned by the House= to which the TeamType belongs.

31,0 = Suicide
This instructs the TaskForce to destroy itself. In effect it commits suicide, usually accompanied by an explosion.

32,n = Start Weather Storm In...
This initiates the Weather Storm intro effect (when the screen goes dark prior to the clouds appearing) and is set to be delayed by the number of seconds specified by parameter 2.

33,0 = End Weather Storm
This forces an end to the Weather Storm intro effect (when the screen goes dark prior to the clouds appearing).

34,n = Center Map On Team
This will center the screen on the TeamType. The same effect as hitting the Home key as defined in KEYBOARD.INI when the screen centers on your MCV (or the unit defined by the BaseUnit= statement in RULES.INI). The second parameter determines the speed at which the 'camera' switches view to the TaskForce with 0 being instant.

35,n = Shroud Map For Time Interval, n = time to remain shrouded
This action will shroud the entire map except for the area around the players MCV's (if they have one). The second parameter determines the number of frames for which the map should remain shrouded (1 second = approximately 15 frames) after which the explored areas are revealed again.

36,n = Reveal Map For Time Interval, n = time to remain revealed
This action will reveal the entire map. The second parameter determines the number of frames for which the map should remain revealed (1 second = approximately 15 frames) after which the map is shrouded again.

37,0 = Delete Team Members
This forces dissolved members of the TaskForce to leave the map after which they are deleted (for example aerial transports after their passengers have disembarked).

38,n = Clear Global, n = Global number to be cleared
The global number specified in the second parameter is defined as being 'clear' (it is allocated a value of '0' or 'false'). This should be employed in specific map files only in which the global variable has been defined. This is part of the boolean logic employed by the global variables system in the game engine - refer to the Map Editing Guide for a more detailed explanation of global and local variables. The Global Variables are defined in RULES.INI - see the RULES.INI Guide.

39,n = Set Local, n = Local number to be set
The local variable number specified in the second parameter is defined as being 'set' (it is allocated a value of '1' or 'true'). This should be employed in specific map files only in which the local variable has been defined. This is part of the boolean logic employed by the local variables system in the game engine - refer to the Map Editing Guide for a more detailed explanation of local and global variables.

40,n = Clear Local, n = Local number to be cleared
The local variable number specified in the second parameter is defined as being 'cleared' (it is allocated a value of '0' or 'false'). This should be employed in specific map files only in which the local variable has been defined. This is part of the boolean logic employed by the local variables system in the game engine - refer to the Map Editing Guide for a more detailed explanation of local and global variables.

41,n = Unpanic
If the TaskForce contains a unit or units that have Fraidycat=yes set which are currently assigned the Panic= mission then this action nullifies that effect and the unit(s) adopt their default behaviour.

42,n = Change Facing, n = new direction to face
This instructs the TaskForce to turn and face the new direction specified by the second parameter. The facings are as follows;-

0 North
1 North East
2 East
3 South East
4 South
5 South West
6 West
7 North West

43,0 = Wait Until Fully Loaded
This is always used after members of the TaskForce have entered a transport in the same TaskForce and serves two purposes. The effect of this is that the transport will be used to carry out any subsequent movement or deploy actions but after that it is no longer considered a part of this TaskForce and as such is available to be recruited into new TeamTypes. It is this action which enables use of the TransportsReturnOnUnload=yes statement in the corresponding TeamType entry. The second purpose is to flag the transport as being 'loaded' with passengers and thus is considered in the AI's targeting logic as a potential threat (see the ContentScan= entry in the RULES.INI Guide). This action also orders the transport to wait until it is fully loaded before executing any subsequent script actions.

44,0 = Unload TRUCKB > TRUCKA
Used purely for a graphical effect and applicable uniquely to the [TRUCKB] unit, this has the effect of converting [TRUCKB] into [TRUCKA] to give the impression that the unit has unloaded its cargo. NOTE: this is residual from Tiberian Sun and as such may not work correctly since [TRUCKA] refers to the Demo Truck image in Red Alert 2 which has no 'unloaded' image. Changing the image for the Demo Truck and assigning new units to [TRUCKA] and [TRUCKB] enables use of this logic.

45,0 = Load TRUCKA > TRUCKB
Used purely for a graphical effect and applicable uniquely to the [TRUCKA] unit, this has the effect of converting [TRUCKA] into [TRUCKB]to give the impression that the unit has been loaded with cargo. NOTE: this is residual from Tiberian Sun and as such may not work correctly since [TRUCKA] refers to the Demo Truck image in Red Alert 2 which has no 'unloaded' image. Changing the image for the Demo Truck and assigning new units to [TRUCKA] and [TRUCKB] enables use of this logic.

46,n = Attack Enemy Structure, n = structure number (see note below)
Members of this TaskForce attack the enemy structure specified by the second parameter. This action depends upon the type of units in the TaskForce and if certain members have Infiltrate=yes set. Members with Engineer=yes set will capture the structure provided it does not have Capturable=no set or if it has NeedsEngineer=yes set. Members with Agent=yes set will spy on the structure if it has Spyable=yes set. Members that do not have Assaulter=no set will garrison the structure if it has CanBeOccupied=yes set. Members with C4=yes set will blow up the structure if does not have CanC4=no set.

47,n = Move To Enemy Structure, n = structure number (see note below)
Members of this TaskForce move and stay adjacent to the enemy structure specified by the second parameter.

48,0 = Scout
Causes members of this TaskForce to move to a pre-determined point on the map in an attempt to scout an area. The effect is that the TaskForce will move in one randomly chosen direction until it is no longer able to do so which can make it very useful or a waste of time depending on the direction chosen. If you want to continually scout the map, you should loop this script action.

49,0 = Repeat Until Success
This is typically used after an Attack Target instruction. This forces the TaskForce to carry out its previous action in the script continually until all of the target types specified by that previous instruction no longer exist, at which point the TaskForce moves on to the next instruction after this one. The action is continually executed until any condition on its use can no longer be met (for example if the previous action was Attack Vehicles and all vehicles have been destroyed, the script moves on to the next action). In other words, this can be used to set a 'success' condition on the script.

50,n = Flash (visual effect), n = number of flashes
This causes the TaskForce to 'flash', the visual effect you get on an object when you order something to attack it. The second parameter is the number of times to flash the unit 'white'.

51,n= Play Animation, n = animation number
This instructs the TaskForce to play one of the animations from the [Animations] in the RULES.INI.INI file (note that for all in game Action and Trigger purposes this number is from an internal table - see the Map Editing Guide).

52,n = Display Talk Bubble, n = talk bubble number
Should be used for single-unit TaskForces only, this causes a 'talk bubble' to appear above the unit. The second parameter determines which type of talk bubble to display;-

1 * general speech
2 ? question
3 ! shouting or statement

Note that the length of time for which the talk bubble is displayed is controlled through the TalkBubbleTime= statement in RULES.INI - refer to the RULES.INI Guide for details of this and the steps to take to enable its inclusion in Red Alert 2 as this remains residual from Tiberian Sun:Firestorm.

53,0 = Gather (at enemy base)
This causes the TaskForce to gather together (sometimes used when members of the TaskForce move at different speeds and you want the faster ones to stop while the slower ones catch up) after the previous action has been executed. If the TaskForce is in an attack mission and moving towards an enemy base, this command is usually executed when the first member of the TaskForce reaches the distance from that base defined by the AISafeDistance= statement in RULES.INI - see the RULES.INI Guide.

54,0 = Regroup (at friendly base)
This causes the TaskForce to regroup, if for example any of its members have become engaged in a base defense mission or strayed away whilst in guard mode, or even the TeamType itself has been suspended for whatever reason. The members regroup directly next to each other leaving no 'gaps' at the nearest available point with sufficient space, and is used, for example, prior to activating the Iron Curtain so that all applicable members are affected (i.e. they fall within its range of effect).

55,0 = Activate Iron Curtain on TaskForce
If the owner of the TaskForce to which this ScriptType is attached also has the Iron Curtain fully charged then it will be fired at this TaskForce. Note that the use of the Iron Curtain in this manner depends on the percentage chance of the AI incorporating them into its actions as defined by the AIMinorSuperReadyPercent= statement in RULES.INI - see the RULES.INI Guide for more details.

56,n = ChronoSphere TaskForce, n = structure number to be Chronoshifted to (see note below)
If the owner of the TaskForce to which this ScriptType is attached also has the Chronosphere fully charged then it will be used on the TaskForce before moving on to the next action. Note that the use of the Chronosphere in this manner depends on the percentage chance of the AI incorporating them into its actions as defined by the AIMinorSuperReadyPercent= statement in RULES.INI - see the RULES.INI Guide for more details.

57,n = ChronoWarp TaskForce, n = target number to be Chronoshifted to (see note below)
If the owner of the TaskForce to which this ScriptType is attached has been Chronosphered then it will be used on the same TaskForce to shift them to the enemy structure number specified in the second parameter before moving on to the next action. Note that the use of the Chronosphere in this manner depends on the percentage chance of the AI incorporating them into its actions as defined by the AIMinorSuperReadyPercent= statement in RULES.INI - see the RULES.INI Guide for more details.

58,n = Move To Friendly Structure, n = structure number (see note below)
Members of this TaskForce move and stay adjacent to the friendly structure specified by the second parameter. The structure can be one owned by the owner of the TaskForce or any of its allies.

59,n = Attack Structure At Waypoint (Yuri's Revenge only)
Members of this TaskForce attack the structure at the Waypoint= specified by the second parameter. This action is very similar to action number 43 although this action does not test for ownership of the structure itself - thus the inclusion of this action allows, for example, InfantryTypes with Engineer=yes set to enter structures owned by the same side for the purposes of repair. This would be the most appropriate action to use to get the AI to repair bridges. Use of this also means that the TaskForce will attack the structure with one of its weapons meaning, for example, that units with C4=yes set will not C4 the building but shoot at it instead. This is useful if you want to get a TaskForce to destroy a nearby occupiable structure instead of entering it in a bid to prevent the enemy getting old of it - a tactic used in the Yuri's Revenge AI.

60,0 = Enter Grinder (Yuri's Revenge only)
Members of this TaskForce will enter the nearest structure with Grinding=yes set if it is owned by the owner of the TaskForce or any of its allies.

61,0 = Occupy Tank Bunker (Yuri's Revenge only)
Any VehicleType members of this TaskForce which do not have Bunkerable=no set will enter the nearest vacant structure with Bunker=yes set if it is owned by the owner of the TaskForce or any of its allies.

62,0 = Enter Bio Reactor (Yuri's Revenge only)
Any InfantryType members of this TaskForce will enter the nearest structure with InfantryAbsorb=yes set if it is owned by the owner of the TaskForce or any of its allies and has space available.

63,0 = Occupy Battle Bunker (Yuri's Revenge only)
Any InfantryType members of this TaskForce with Occupier=yes set will enter the nearest structure (which they own) with CanOccupyFire=yes set.

64,0 = Garrison Structure (Yuri's Revenge only)
Any InfantryType members of this TaskForce with Occupier=yes set will enter the nearest (neutral) structure with CanOccupyFire=yes set. This action is used specifically for this purpose due to action #59 (see above) since the logic in Yuri's Revenge has changed so that the units weapon is transferred to the structure. Use of this action also allows the computer to repair those structures by sending an InfantryType with Engineer=yes set into them and also allows the AI to differentiate between attacking such a structure and entering it, which is useful if you want the AI to use infantry to destroy an occupiable structure thus preventing its enemy from using it.

• A Note On Structure Numbers

When used in ScriptTypes, the structure number takes any of several formats and is derived by finding the structure in the [BuildingTypes] list of RULES.INI and subtracting ONE from this structures' number in that list (equivalent to renumbering the list from 0) - this is the explicit number of that structure and is the number to use as the second parameter of the action. Any one of several amendments can be made to this number;-

• add 131072 to the number, so GAPOWR (number 1 in RULES.INI thus number 0 for this purpose) becomes 131072
• add 196608 to the number, so GAPOWR (number 1 in RULES.INI thus number 0 for this purpose) becomes 196608
• add 65534 to the number, so GAPOWR (number 1 in RULES.INI thus number 0 for this purpose) becomes 65534

It has not been determined what significance or effect the different numbering systems have (if any). Changing them at random appears to have no effect although it is thought that there is additional logic attached to them.

This section will tell you every single definition for team types.

Name - This can be anything.

VeteranLevel - Tells if Veteran (1) or Elite (2).

MindControlDecision - This tells what will the AI do to a mind controled unit. If the value is 0, the mind controlled unit will sit still and do nothing. 1 makes the mind controlled unit added to the associated taskforce who has a MindControlDecision=1 tag. Assume that this taskforce is present (this is just an example only)
(e.g)
Code:

[00000002-G]
Name=2, Disruptors, 2 Sheppard Tanks, 2 Mammoth tanks, 4 Triton Mechs, 4 Disc Launchers, 1 Mastermind
0=2,SONIC
1=2,SHEPTANK
2=2,4TNK
3=4,TRITON
4=4,E2
5=1,MIND
Group=-1


Assume that lets say 2 Grizzlies, and 1 Prism Tank where mind control and this taskforce felled in a team type with MindControlDecision=1 tag. So once they successfully mind control those units, they will be added to the taskforce. If a team type who has a MindControlDecision=2 tag, any mind controlled unit will be sent into the grinder. For 3, Infantry Purpose only. Any infantry who will be mind controlled will be surrendered and stationed inside a Power Facility with boosting capability using infantries as a source of energy, if set to 4 a mind controlled unit will hunt down the nearest enemy. 5 will do nothing.

The percentage chances of each of those actions as well as the parameters used to assist the decision can be customized through the AICaptureNormal=, AICaptureWounded=, AICaptureLowPower=, AICaptureLowMoney=, AICaptureLowMoneyMark=, and AICaptureWoundedMark= statements in RULESMD.INI (see the RULES.INI Guide).

Loadable - Tells if the unit needs to reload or not, as if they really ran out of ammo.

Full - Should be used only in map files, this can be set to 'yes' or 'no' and determines if any units within the associated TaskForce should be initially 'full' as determined by the PipScale= statement in their RULES.INI entry - this applies only to Ore Miners and transport type units in Red Alert 2. If the TaskForce contains a Transport and other units, the units are automatically placed in the Transport for reinforcement purposes.

Annoyance - Can be set to 'yes' or 'no' and is used to determine if destroyed members of the associated TaskForce are automatically replaced by the AI and allocated the same ScriptType, the supposed effect being that this TeamType annoys the player with its persistence.

GuardSlower - Can be set to 'yes' or 'no' and has the effect of increasing the default value of BaseDefenseDelay= as defined in RULES.INI specific to this TeamType so that members of the associated TaskForce in a base defense mission take longer to respond to any threats to themselves or any objects they are guarding. The factor by which that value is increased has not been determined.

House - Which house will build this? (Allied, Soviet, etc. AFAIK it must be expressed in numbers)

Recruiter - Can be set to 'yes' or 'no' and determines if this TeamType can be created by using any objects required to assemble the associated TaskForce that already exist on the map

Autocreate - Can be set to yes or no and it specifies if the desired teamtype will be created based on time and not on any type of trigger.

Prebuild - Can be set to yes or no. If set to yes, the AI will build an inactive copy of the taskforce

Reinforce - Can be set to yes or no. This makes the AI replace all lost members of the Taskforce.

Droppod - Tells if this teamtype should be reinforced by a Drop Pods as used in TS.

UseTransportOrigin - Can be set to 'yes' or 'no' and determines whether or not this TeamType should be created at the point of origin of its transport, if the transport itself already exists and has been recruited into this TeamType. This is used in map files to create reinforcement teams from off the map that will arrive on a transport.

Whiner - Can be set to yes or no. This determines if the teamtype is only used for base defense or not. If destroyed, the AI will automatically replaced them. This is because 'pool' TeamTypes are normally assigned to base defense missions or generic missions such as guarding, hunting or scouting and their members are always made available for recruitment into further teams (a mechanism which ensures that the AI doesn’t always have to produce every team from scratch since it will have a pool of units from which to assemble future teams).

LooseRecruit - Tells if the associated teamtype will be dissolved and can be recruited by another taskforce, setting it to yes will dissolve members in it and can be recruited by another one. Otherwise, no.

Aggressive - This tells if set to yes, any member in the taskforce associated with this tag will attack any oppressors on its way or if they're attacked, they will retaliate. Otherwise Set to no.

Suicide - The TeamType will execute orders regardless of enemy action and will not stop to engage in combat with enemy objects and will not retaliate or return fire. It will ignore Sight= ranges and the GuardRange= of any enemy objects and will not be recruited into any subsequently created TeamTypes on the presumption that its associated ScriptType will invariably lead to the destruction of the associated TaskForce.

Priority - This is used to determine the priority of this TeamType being chosen for creation when the AI is deciding what to do next. The lower the number, the greater the likelihood of the AI using this TeamType above others. For simplicity, Red Alert 2 uses multiples of 5 for this setting (Tiberian Sun used multiples of 4) so it is best to stick with this convention although other values between 1 and 50 can be used. Note that the setting of the SuspendPriority= statement in RULES.INI uses this value to determine whether or not this TeamType will be suspended during base defense missions (see the RULES.INI Guide for more details).

Max - This serves two purposes. Firstly, it serves as a trigger to create the TeamType - when set to '1', it will automatically be created by the AI regardless of whether or not it is already triggered for creation through an AITriggerType or otherwise only if IsBaseDefense=no is set for this TeamType (see below). Secondly, it serves to indicate the maximum number of instances of this TeamType that can exist at the same time only if Autocreate=yes has been set for this TeamType (see above).

TechLevel - This tag is Obsolete in RA2, in TS it restricts the AI to create this teamtype to the minimum Tech Level.

Group - This defines a specific grouping for the units in this TaskForce which is used when executing its ScriptType. This over-rides the Group= setting in the associated TaskForce. The following values can be used;-

-1 Lose Transports - any transports are dissolved and do not execute the script
?? Lose Units, Lose Transports - all units dissolved, nothing executes the script
?? Keep Units, Keep Transports - all units retained and all execute the script
?? Lose Units, Keep Transports - only transports retained to execute script
?? Keep Units Farthest - only units furthest away are retained
?? Keep Units Nearest - only nearest units are retained
?? Greatest Threat - group together at object posing greatest threat
-40094 Least Threat - group together at object posing least threat

Tag - Used in map files only, this is used to determine which of the [Tags] is attached to this TeamType if there is a map-specific Event and Action attached to it (e.g. it gets destroyed or should be created). See the Map Editing Guide for further details on [Tags] and their use. This is not ordinarily used in AI.INI.

Waypoint - Used in map files only, this is used to determine the waypoint at which the TeamType is to appear. You should ensure that the waypoint you specify here is included in the [Waypoints]section of the map file. See the Map Editing Guide for a detailed explanation of waypoints. This is not ordinarily used in AI.INI although its worth noting that Red Alert 2 assigns waypoint number 99 for the center of the map and waypoint numbers 0 - 7 to define the starting places for the 8 players in multiplayer maps.

OnTransOnly - Can be set to 'yes' or 'no' and determines whether or not this TeamType should only execute its associated ScriptType if that ScriptType contains a 'load on transports' action. If that action is not successfully completed, the TeamType is dissolved and the members of the associated TaskForce are made available for recruitment into further TeamTypes . This is used to ensure that the TaskForce only carries out its mission if it has a transport or can be transported (as it may depend upon it).

TransportWaypoint - Used in map files only. Can be set to 'yes' or 'no' and specifies the waypoint at which the transport for this TeamType is created if its at a separate place to the rest of the TeamType.

AvoidThreats - Can be set to 'yes' or 'no' and determines whether or not this TeamType should take evasive action, meaning it will avoid, where possible, Sight= ranges and the GuardRange= of any enemy objects. If set to 'no', the TeamType will engage and return fire on any enemy objects it encounters during execution of its ScriptType (if, of course, it is able to do so).

IonImmune - Can be set to 'yes' or 'no' and determines whether or not members of the associated TaskForce are immune to the effects of Weather Storms. This is probably obsolete in Red Alert 2 as it is residual from Tiberian Sun, where the occurrence of an Ion Storm would instantly destroy any airborne objects - this tag would nullify that effect for this TeamType.

TransportsReturnOnUnload - Can be set to 'yes' or 'no' and determines whether or not any transports within the associated TaskForce should return to their point of origin upon deployment of their contents provided they have been released from that TaskForce by use of the 'dissolve transport' action or using an appropriate second parameter on the 'unload transports' action (see above). The purpose of this is primarily due to the fact that most transports are unarmed and thus unable to carry out any other mission, so by returning to their point of origin they are made immediately available for recruitment into further TeamTypes.

AreTeamMembersRecruitable - Can be set to 'yes' or 'no' and determines whether or not members of the associated TaskForce are available to be recruited into further TeamTypes when they have completed the actions detailed in the associated ScriptType. This is used because you can't actually recruit units that are already in a TeamType.

IsBaseDefense - This tag is exclusive for pool teamtypes and it tells that a taskforce with this tag will execute a base defense mission. Meaning they will protect their base or any vital structure.  A TeamType which has IsBaseDefense= set to 'yes' will also rush to the aid of any units owned by the same House= which have ToProtect=yes set (the only examples of this in Red Alert 2 are the Ore Miners).

OnlyTargetHouseEnemy - Can be set to yes or no and tells if it will also attack Neutral Houses or not.

Script - the script type it uses.

TaskForce - the taskforce you want to use in this teamtype.

Moving on we have the AI trigger types. Let's try to define Nikademis's trigger.
Code:

0CDF8EDC-G=Allied Base guard - Tech,0CE4CEFC-G,<all>,2,1,GATECH,0100000003000000000000000000000000000000000000000000000000000000,40.000000,10.000000,40.000000,1,0,1,0,<none>,0,1,1


0CDF8EDC-G - Internal name

Allied Base guard - Tech - Name used by the editor can be anything.

0CE4CEFC-G - Primary Task Force used

<all> - Determines which House or Country is associated with using this trigger. This is to ensure, for example, that Soviet armies do not use TeamTypes containing Allied units and vice versa as this serves as an override to the Owner= statement for each object in RULES.INI.

2 - Tech Level. The trigger will only be used when the AI has reached this TechLevel= setting through construction of the required structures in its tech tree - setting this value below that required for a particular unit can often lead to the AI using units for which it has not met the Prerequisite= requirements.

1 - Condition Type. Specifies a number to use as a Condition. This, along with "ComparisonObject" and "Comparator" desribed below, defines a logical comparison like "enemy house has more than 0 rhino tanks". In this example, "more than 0" is the Comparator, "rhino tanks" is the ComparisonObject, and "enemy house has ?????" is the Condition.
Possible values
Value Meaning
-1         Special case - Pool team (see below ↓)
0         "Enemy house owns ????"
1         "Owning house owns ????"
2         "Enemy house in low power (yellow)"
3         "Enemy house in low power (red)"
4         "Enemy house has ??? credits"
5         "OwnerHouse has an Iron Curtain charged to at least [General]→AIMinorSuperReadyPercent= percentage"
6          "OwnerHouse has a ChronoSphere charged to at least [General]→AIMinorSuperReadyPercent= percentage"
7          "Neutral/civilian1 house owns ????"

GATECH - Comparison Object. Specifies the objects that will be subjected to the Condition Type. Building Types, Infantry Types, Vehicle Types, and Aircraft Types can be used as a Comparison Object.

0100000003000000000000000000000000000000000000000000000000000000 - Defines the comparator for the ConditionType. A normal comparison contains two operands and a comparison operator. The first operand is dependant on the ConditionType (typically amount of objects owned, or credits owned). The second operand is encoded in this argument. The comparison operator is one of (less, less-or-equal, equal, more-or-equal, more, not equal) and is also encoded in this argument. This argument is composed of eight chunks of eight hexadecimal characters each (64 characters in total). Each octet contains a textual representation of a little-endian hexadecimal number. The first octet contains the second argument, the second octet contains the operator (0 stands for "<", 1 - "<=", 2 - "=", 3 - ">=", 4 - ">", 5 - "!="), the next six octets are unused.

40.000000 - Starting Weight. Specifies a floating point value that will be set as this AI Trigger's Starting Weight when the game starts.

10.000000 - Minimum Weight. Specifies a floating point value that will be interpreted as this AI Trigger's Minimum Weight.

40.000000 - Maximum Weight. Specifies a floating point value that will be interpreted as this AI Trigger's Maximum Weight.

1 - Tells if this for skirmish 0 if not.

0/[b] - Unkown. This is an obsolete but required tag to be placed. Always set this to 0.

[b]1
- Side. This indicates which side will build this (1 Allied, 2 Soviet, 3 Yuri).

0 - Base Defense - Is this for base defense? 1 for yes, 0 for no.

<none> - Secondary Teamtype. This is the second teamtype that will be formed when the AI trigger is fired.

0 - Enabled in Easy? 0 no, 1 yes.

1 - Enabled in Medium? 0 no, 1 yes.

1 - Enabled in Brutal? 0 no, 1 yes.

Back to top
View user's profile Send private message Send e-mail
tekka warrior
Stealth Laser Trooper


Joined: 21 May 2012
Location: Beirut,Lebanon

PostPosted: Wed Aug 21, 2013 8:03 am    Post subject: Reply with quote  Mark this post and the followings unread

Thanks alot guys   Very Happy

So instead of the hexadecimal numbers, i can replace them with a real name like allied refinery guard?

Back to top
View user's profile Send private message
Nikademis Von Hisson
General


Joined: 05 Sep 2007
Location: Wilkes Barre PA

PostPosted: Wed Aug 21, 2013 9:18 am    Post subject: Reply with quote  Mark this post and the followings unread

Darkven you didnt explain nothing, that info is from the attached file that has been out since 9/24/2004.

I believe the max length you can have is 8.



AI.rar
 Description:

Download
 Filename:  AI.rar
 Filesize:  25.16 KB
 Downloaded:  58 Time(s)


_________________
I am authorized to send out the TMP Studio, PM ME IF YOU WANT IT And check this out, these were sent to me for help with terrain and zdata help along with TMP Studio/Builder

http://www.ppmsite.com/forum/viewtopic.php?t=27714

Back to top
View user's profile Send private message Send e-mail Skype Account
DarkVen9109
Pyro Sniper


Joined: 02 Nov 2012
Location: Philippines

PostPosted: Wed Aug 21, 2013 9:24 am    Post subject: Reply with quote  Mark this post and the followings unread

what do you mean I explained nothing Nik?

Back to top
View user's profile Send private message Send e-mail
Nikademis Von Hisson
General


Joined: 05 Sep 2007
Location: Wilkes Barre PA

PostPosted: Wed Aug 21, 2013 9:40 am    Post subject: Reply with quote  Mark this post and the followings unread

download what I posted and you will see you copied and pasted the words

_________________
I am authorized to send out the TMP Studio, PM ME IF YOU WANT IT And check this out, these were sent to me for help with terrain and zdata help along with TMP Studio/Builder

http://www.ppmsite.com/forum/viewtopic.php?t=27714

Back to top
View user's profile Send private message Send e-mail Skype Account
OmegaBolt
President


Joined: 21 Mar 2005
Location: York, England

PostPosted: Wed Aug 21, 2013 10:52 am    Post subject: Reply with quote  Mark this post and the followings unread

Oh my gawd, moving swiftly on...

tekka warrior wrote:
So instead of the hexadecimal numbers, i can replace them with a real name like allied refinery guard?
Yes but don't use gaps of course and it seems like convention to keep the -G extension, though I can't remember if there is really any benefit or if it was just an aged Deezire theory.

Back to top
View user's profile Send private message Send e-mail
tekka warrior
Stealth Laser Trooper


Joined: 21 May 2012
Location: Beirut,Lebanon

PostPosted: Wed Aug 21, 2013 11:13 am    Post subject: Reply with quote  Mark this post and the followings unread

OmegaBolt wrote:
Oh my gawd, moving swiftly on...

tekka warrior wrote:
So instead of the hexadecimal numbers, i can replace them with a real name like allied refinery guard?
Yes but don't use gaps of course and it seems like convention to keep the -G extension, though I can't remember if there is really any benefit or if it was just an aged Deezire theory.


Ok thx bolt!

Back to top
View user's profile Send private message
Graion Dilach
Defense Minister


Joined: 22 Nov 2010
Location: Iszkaszentgyorgy, Hungary

PostPosted: Wed Aug 21, 2013 12:18 pm    Post subject: Reply with quote  Mark this post and the followings unread

OmegaBolt wrote:
Oh my gawd, moving swiftly on...

tekka warrior wrote:
So instead of the hexadecimal numbers, i can replace them with a real name like allied refinery guard?
Yes but don't use gaps of course and it seems like convention to keep the -G extension, though  it was just an aged Deezire theory.


Fixed for you. It is a DeeZire theory.

_________________
"If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more...

Back to top
View user's profile Send private message Visit poster's website ModDB Profile ID
mevitar
Missile Trooper


Joined: 31 Dec 2010

PostPosted: Wed Aug 21, 2013 12:54 pm    Post subject: Reply with quote  Mark this post and the followings unread

The -G thing looks more like something WW did not to confuse local teams, task forces etc. with global ones (G for Global).

Back to top
View user's profile Send private message
RP
Commander


Joined: 12 Jul 2012
Location: Mapping God Heaven

PostPosted: Wed Aug 21, 2013 12:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

Correct, as you can add map specific (local) AI Triggers too.

As for the fucklist of AI stuff, it's heavily outdated, you'll find a lot of stuff not working as they are explained there. I'm not sure when the list on ModEnc is getting an update, but the research is done and many things show inconsistencies.

_________________


Mental Omega 3.0 Mission creator - Creator of FinalOmega: APYR 3.0 Map Editor

/ppm/'s stupidity

Back to top
View user's profile Send private message
AlexB
Commander


Joined: 31 May 2010
Location: Germany

PostPosted: Wed Aug 21, 2013 6:56 pm    Post subject: Reply with quote  Mark this post and the followings unread

Everybody can change the ModEnc pages. That's why you have a wiki in the first place.

I recently looked up a few things regarding scripts and almost everywhere I saw things that didn't match what the game does. If anybody finds this thread in, say, 20 years, please note: it was outdated when it was posted already. #Silly

_________________

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Page 1 of 1 [16 Posts] Mark the topic unread ::  View previous topic :: View next topic
 
Share on TwitterShare on FacebookShare on Google+Share on DiggShare on RedditShare on PInterestShare on Del.icio.usShare on Stumble Upon
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © phpBB Group

[ Time: 0.8975s ][ Queries: 13 (0.5412s) ][ Debug on ]