Jump to content

Stimo

Members
  • Posts

    142
  • Joined

  • Last visited

Everything posted by Stimo

  1. When I click on the game icon the updater starts, then I click "Play" and the updater is closed then re-opened. I have to click again on "Play" for the game itself to start. When infantry is ordered to move to a spot, it reaches its destination, then turns backwards and moves back for a short distance. This resulting in infantry looking in the oposite direction I want them to. I also had a freeze after a few minutes on the tutorial mission, this happened just after I ordered the tank crew to man the empty tank.
  2. I'd rather give you money than to a shipper, so I'll wait. By the way, as for the ToW1 release, I'll change PC's for a better experience. I'm a fan.
  3. Could it be possible to pre-order the game with "download only" ?
  4. I bought the Centauro add-on two days ago as a pre-christmas-auto-gift (w/marital agreement) I tried it yesterday evening with a lot of fun, I really enjoyed it. I seriously started over the italian campaign tonight. I really enjoyed the 3 battles I played, despite a little fear I couldn't get rid off, about italian armored vehicles reliability. I must admit my fears were almost prejudices (I'm french...). And I also must admit I still believe Italians vehicles aren't what they are claimed to be : italian tanks just fit armored cars standards, semovente aren't stugs. The point is that this add-on is a real thrill, some kind of a defy for PzIV/Sherman experts. I believe it shows WW2 as it was, before or out of full-power offensives we use to play : Tigers nor panzers weren't there at the begining, neither weren't they everywhere anytime. I 'm addicted to ToW for it is the best (the only) realistic ww2 game, and i really and deeply thank its devs : they are courageous and righteous. For God's sake, I do hope my bad english doesn't harms the game, for it's the best I ever played, I swere !
  5. I deleted this post for it was a petit merdage.
  6. I had the same problem with a Balance mod mission : River delta (balanced). When a player's order of battle includes too many units, they spawn in 2 separated areas (see screenshot). This screenshot has been taken on a multiplayer mission vs computer in order to show the problem, but on a real multiplayer game for which I don't have no screenshot, enemy army had immediate LOF on one of my groups. Anyone can figure my disappointment : what can you do when your inf and guns appear just under the barrel of a Tiger ?
  7. On almost every mission I tried in multiplayer, games starts with armies seeing each other, firing immediately. This ruins any attempt to have a pleasant game. If other players experienced the same, maybe we could ask the Balance mod team to fix those missions with concealled spawn zones ?
  8. @GlenLivet4Me : no offense meant, but I guess none of us would jump a wall under fire. And I guess pro soldiers would find such an order pretty inconsistent. Good commanding tends to zero risk. At war such as in our lives, we'd rather walk -or crawl- 10 meter than jump a fence, especially when there are MGs on the other side. About soldiers behaviour in such situations, I insist on keeping flesh and blood soldiers using windows and doors. And anyone calling me a racist just because I strictly refuse to lead an army of zombies and ghosts taking on tons of bullets and passing through walls, would be right.
  9. This post is about to be something like my two cents, as I really enjoy ToW2 and didn't had any disappointment with it. Really, I just didn't figured it would be so well thought and done. But I'd like to point two things a little disturbing, as I want my ToW as realistic as it can be. First, I think there should be a limitation in what a soldier can carry. When a man grabs an heavy weapon on the ground, such as an AT rifle, a MG or a bazooka, he should also drop some of its previous carriage, in order to avoid things like a wounded soldier carrying an MG42 plus 2 ammo belts, a bazooka and 26 grenades... I also would like to point something about indirect fire. As I understand that a bunch of regular soldiers could use an AT gun in direct fire against a threat, I can't believe that they could use a foreign gun in indirect fire and be so effective : In this test, british soldiers without any gunner skill performed really well, using a german 75mm IG18, targeting at 1000m, without spotter. I wish that in the future, soldiers that don't have really high gunner skill couldn't use arty guns in indirect fire. What do you think about that ?
  10. Options.exe doesn't work for me either. I run my computer as administrator, it's on WinXP, everything up-to-date. Are there any log files to send or clues to look for ? By the way, 1C did a really great game, far better than what I could imagine. This has to be said !
  11. I just couldn't wait for an answer I copied "ambient_2009_01_19_22_42.xml", "mission_2009_01_19_22_42.xml" and "trigger_2009_01_19_22_42.ini" from .../history and pasted them up to my mission folder and renamed them as ambient.xml; mission.xml and trigger.ini and started my mission. It worked, I recovered my work! Kids, remember to backup your files !
  12. Help ! My mission, its map and its units are just like a mod, and it can be enabled with the GME. I was working on a mission for several days, when I received a new version of the map it uses. So I disabled my mission mod. I changed maps in the MODS folder and re-enabled my mod with the GME. I started the mission to look at it on the new map. Then I saw that I lost all my work since the last time I saved it, weeks ago : the mission I enabled wasn't the one I was working on two days ago, it was the one I was working on weeks ago !!! In the "C:\Program Files\Battlefront\Theatre of War\Missions\SINGLE_MISSIONS\Le pont de Gorre v2\history" folder I can see some files stamped yesterday : "mission_2009_01_19_22_42.xml" and "trigger_2009_01_19_22_42.ini" Is there any way to use those files to recover my recent work ?
  13. Very clever. Can I try to adapt your script to my system ?
  14. I already faced that problem. It may be linked to the one I'm talking about, but in my current mission, I have only set one army. Sometimes, an unit just forgets it's order and stops. Sometimes, it happens with members of a group. Some of them go on with the order I issued, some ignore it. I'm trying to solve this by automatically re-issuing the order as long as it's not performed, but arrays make things difficult.
  15. I use a personnal mission system that launches many trigger instances. Used one by one, units act as I want them to. When my system works at full power and many triggers run at the same time, some units start acting on their own. So I figure every running trigger weight something in the game engine and may slow it or work oddly. A HALT just stops a trigger, it doesn't erase it from the mission script. So it should be the same with a trigger INSTANCE, even after a HALT, it must be hidden somewhere in the memory, isn't it ? So I want to get completely rid of useless trigger instances.
  16. Hello, I have a few questions about DestroyTriggerInstance ( TriggerInstanceName , ID ) My own tests shown that this functions doesn't accept local nor global variables as TriggerInstanceName ( but it does handles them as ID ). Do you agree with me or am I wrong ? How many TriggerInstances can run at the same time ? Can a TriggerInstance destroy itself ? I think it can, but I want to be sure...
  17. I'm working on a new mission including towed guns. I start by creating the gun, its crew, and the tractor. When I set my gun as "UnitToAttach" in tractor's properties, the gun crew isn't included in tractor passengers list. When I test my mission in game, the gun crew just vanished. Do I forgot something or do you all face the same bug ?
  18. Sorry for answering only now, but I changed ISP and lost connection for a week. Your resistants will be perfect when mixed with polish ones. I'll include them in my mission, thank you very much !
  19. I don't have tested it yet, maybe today. I'll tell you what happens.
  20. I found it by myself : I'll use Polish partisans. (Too bad French ones have an FFI armband !)
  21. I'm working with Tartari on a new semi-historical mission happening in northern France, May 1940 : SS fight against British and French troops to cross a channel near Bethune. On this occasion, nazis used civilians as human shield. I want to include this in the mission : does the game already include civilian-looking units ?
  22. Two new scripts, to add a little more thrill in your missions. First one, [Mud], is about vehicle entering mud, forest or other areas where the might get immobilized, or even break a track. When you create your mission, you have to set some values : - how many vehicles moving in the area could be stuck at the same time - how many chance those vehicles have to be immobilized - how long won't they be able to move - how many chances do they have to break a track Please note that in this version, humans also can have their boots trapped in mud. It works by simply assign a "PositionMode : Hold" every second, for a random period of time at stuck vehicles, so the player can't make them move. Here it is : ------------------------------------------------------------- SetWorkArmy ( Army , 1 ) Label Is_someone_in_the_mud Set @N = GetNunitsInArea ( Army , 1 , All , "Rect_Mud" , OK_Engine , Not_Empty ) If ( @N = 0 ) Then Delay ( 2000 ) Goto Is_someone_in_the_mud Endif //5 units max can be stuck. Set @N = RND ( ) Div ( @N , 20 ) CreateGroupByRect ( Group , "Immobilized" , Army , 1 , All , @N , Rect , "Rect_Mud" ) //Dice decides if vehicles are stuck Set @RND = RND ( ) If ( @RND < 50 ) then Delay ( 1000 ) Goto Is_someone_in_the_mud Endif //Vehicles are stuck for 0 < T < 100 seconds Set @T = RND ( ) //Bad luck If @T > 95 Then Goto Track_Broke Endif Set @i = 0 Label Stuck PositionMode ( Group , "Immobilized" , Hold ) SendMessage ( "Unit stuck in the mud !" , 3000 ) If ( @i < @T ) then Delay ( 1000 ) Add ( @i , 1 ) Goto Stuck Endif PositionMode ( Group , "Immobilized" , Free ) SendMessage ( "The unit stuck in the mud made it out !" , 3000 ) Delay ( 20000 ) Goto Is_someone_in_the_mud Halt Label Track_Broke DestroyObject ( Group , "Immobilized" , Tracks ) Goto Is_someone_in_the_mud ------------------------------------------------------------- Second script, [breakdown], checks from time to time, randomly, if a particular vehicle's engine does have a failure. If so, the vehicle may simply be immobilized, or can burn and even explode. This can be used with B1bis or other temperamental vehicles : ------------------------------------------------------------- SetWorkArmy ( Army , 1 ) Label Test //Dice decides when motor will be tested for breakdown Set @RND = RND ( ) If ( @RND < 10 Then Delay ( 10000 ) Else If ( @RND < 20 Then Delay ( 20000 ) Else If ( @RND < 30 Then Delay ( 30000 ) Else If ( @RND < 40 Then Delay ( 40000 ) Else If ( @RND < 50 Then Delay ( 50000 ) Else If ( @RND < 60 Then Delay ( 60000 ) Else If ( @RND < 70 Then Delay ( 70000 ) Else If ( @RND < 80 Then Delay ( 80000 ) Else If ( @RND < 90 Then Delay ( 90000 ) Else Delay ( 100000 ) Endif Endif Endif Endif Endif Endif Endif Endif Endif //Dice decides if motor has a failure Set @RND = RND ( ) If ( @RND < 33 ) then DestroyObject ( Unit , 7 , Engine ) SendMessage ( "Motor failure ! Bailing out !" , 15000 ) RunCommand ( Unit , 7 , Out_Crew , Crew ) DestroyTrigger ( "Breakdown" ) Else Delay ( 60000 ) Endif Goto Test Halt -------------------------------------------------------------
  23. A new version is ready. You'll find it here : http://perso.wanadoo.fr/stimo-online/Depot/Test_2.zip I added those controls : - a "safety exit" : it's a timer that will close active step and launch next one after it's obvious it lasted too long. This is to avoid game "running in round". - a test that watches if all units are able to perform the orders they received. If one can't, it cancel its action and the script goes on with the others. So the mission won't be stopped because of an immobilized tank or a wasted squad.
  24. You'll find my example here : http://www.battlefront.com/community/attachment.php?attachmentid=56&stc=1&d=1219783844 It's not a playable mission, just something to load in the game and look at. You can also open it in the Editor to see how it's built. You'll see, it's user friendly In the mission, there are 2 armies : French and German. 1st step for germans : all vehicles move to different positions using points or arrays. 1st step for frenchs : squads and car move using various formations and modes. When 1st step for german is achieved, 2nd starts and BMW moves to another place using a Rect. When 1st french step is over, the central squad changes from Wedge to Gather while sneaking eastwards. Please note that 2nd steps for french and german doesn't start at the same time, but when their previous steps are done. 3rd german step is just a SendMessage. It could be replaced by anything, like an attack order or a mortar barrage. With this script, you will for example easily plan movements with stopped groups covering moving ones then switching, or be able to synchronize wide movements and artillery fires...
  25. Our missions often depend on timing, and choosing good Delays is always difficult when you want to make IA a good opponent. What makes a good opponent ? Synchronisation and planing are good clues. Here is a generic script that intends to make missions design easier. It has three purposes. First : ordering several simultaneous actions using very little script, mostly copy/paste and form filling. Second : if IA battle plan can be divided in 2 or more steps, it checks that step #1 is fully accomplished before ordering step #2, etc... Third : it automatically controls everything about IA units movements : formations and attitudes (Position, Body & FireMode) while moving and when arrived on objective. It can use Points, Rects or Arrays as destinations. This first version only deals with movements, but an area-attack trigger can be easily written using [Movement] as template. So, how to use it ? Your [init] trigger must include those lines amongst your own lines : [init] Set @@MovementNumber = 1 RunTrigger ( "Army_1_Step_1" ) //this will start the 1st serie of actions you planed for IA //RunTrigger ( "Army_2_Step_1" ) ... //RunTrigger ( "Army_N_Step_1" ) //This script can control as many armies as you want Halt Those "steps", I mean the series of orders that have to be performed at the same time and all accomplished before starting the next serie are all built the same way : Label Action3 Set @Group = "Group_1" Set @InitialBodyMode = "Knee" Set @InitialFireMode = "Hold" Set @Point = "Point_1" Set @Rect = "Rect_1" Set @Array = "" //No array is used here Set @Formation = "Wedge" Set @Angle = 90 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "Lay" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) All you have to do is fill the variables with what you want, and add as many actions as you wish. Of course, we need to add a little bit of code to make it work, but you don't have to pay interest to that. Just copy & paste as show in those examples. ------------------------- [Army_1_Step_1] // ARMY_1_STEP_1 - Check all variables looking like @@army_N_something Set @Army = 1 //Please enter here the Army number Set @@Army_1_Actions = 3 //Please enter here how many actions in this phase SendMessage ( "ARMY_1_STEP_1 started" , 5000 ) Set @@Army_1_Actions_Completed = 0 //Don't change this Label Action1 Set @Group = "Ger_Car_1" //required Set @InitialBodyMode = "Knee" //facultative, leave "" if not used. Can be "Stay", "Knee" or "Lay", anything else will be considered as "Free". Set @InitialFireMode = "Free" //required. Can be "Hold" or "Free", anything else will be considered as "Free". Set @Point = "Ger_Car_1_1" //facultative, leave "" if not used Set @Rect = "Ger_Car_1_1" //required : this Rect is used to check if Group reached its position. It should be at least a 10m square around the final destination point. Set @Array = "" //facultative, leave "" if not used Set @Formation = "Wedge" //facultative, leave "" if not used. Anything else than the regular formations will be considered as "Custom". Set @Angle = 90 //facultative, leave "" if not used Set @FinalPositionMode = "Hold" //facultative, leave "" if not used. Can be "Hold" or "Free", anything else will be considered as "Free". Set @FinalBodyMode = "Knee" //facultative, leave "" if not used. Can be "Stay", "Knee" or "Lay", anything else will be considered as "Free". Set @FinalFireMode = "Free" //facultative, leave "" if not used. Can be "Hold" or "Free", anything else will be considered as "Free". RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) //Don't change this Add ( @@MovementNumber , 1 ) //Don't change this Label Action2 Set @Group = "Ger_Flak_1" // you simply fill the form using your own names and modes Set @InitialBodyMode = "" Set @InitialFireMode = "" Set @Point = "Ger_Flak_1" // the Flak truck will go to the point named "Ger_Flak_1" Set @Rect = "Ger_Flak_1" // the script will watch when the flak truck reached the Rect named "Ger_Flak_1" Set @Array = "" Set @Formation = "" Set @Angle = 90 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Action3 Set @Group = "Ger_Tank_1" Set @InitialBodyMode = "" Set @InitialFireMode = "Hold" Set @Point = "" Set @Rect = "Ger_Tank_1" Set @Array = "Ger_Tank_1" //The tank will follow an array of waypoints named "Ger_Tank_1" Set @Formation = "" Set @Angle = 90 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Counts_Actions_Completed If ( @@Army_1_Actions_Completed < @@Army_1_Actions ) Then Delay ( 5000 ) Goto Counts_Actions_Completed Else RunTrigger ( "Army_1_Step_2" ) // The next serie of actions will start only when this one will be achieved EndIf Halt ------------------------- At the same time, the 1st step for Army 2 will be running. It could look like this : ------------------------- [Army_2_Step_1] // ARMY_2_STEP_1 - Check all variables looking like @@army_N_something Set @Army = 2 //Please enter here the Army number Set @@Army_2_Actions = 3 //Please enter here how many actions in this phase SendMessage ( "ARMY_2_STEP_1 started" , 5000 ) Set @@Army_2_Actions_Completed = 0 //Don't change this Label Action1 Set @Group = "Fr_Inf_1" Set @InitialBodyMode = "Knee" Set @InitialFireMode = "Free" Set @Point = "Fr_Inf_1" Set @Rect = "Fr_Inf_1" Set @Array = "" Set @Formation = "Wedge" Set @Angle = 270 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "Lay" Set @FinalFireMode = "Hold" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Action2 Set @Group = "Fr_Inf_2" Set @InitialBodyMode = "Stay" Set @InitialFireMode = "Free" Set @Point = "Fr_Inf_2" Set @Rect = "Fr_Inf_2" Set @Array = "" Set @Formation = "LineTankHuman" Set @Angle = 270 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "Knee" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Action3 Set @Group = "Fr_ArmCar_1" Set @InitialBodyMode = "" Set @InitialFireMode = "Free" Set @Point = "Fr_ArmCar_1" Set @Rect = "Fr_ArmCar_1" Set @Array = "" Set @Formation = "" Set @Angle = 270 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "" Set @FinalFireMode = "" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Counts_Actions_Completed If ( @@Army_2_Actions_Completed < @@Army_2_Actions ) Then Delay ( 5000 ) Goto Counts_Actions_Completed Else RunTrigger ( "Army_2_Step_2" ) EndIf Halt ------------------------- The next step for army #1 can be like : ------------------------- [Army_1_Step_2] // ARMY_1_STEP_2 - Check all variables looking like @@army_N_something Set @Army = 1 //Please enter here the Army number Set @@Army_1_Actions = 1 //Please enter here how many actions in this phase SendMessage ( "ARMY_1_STEP_2 started" , 5000 ) Set @@Army_1_Actions_Completed = 0 //Don't change this Label Action1 Set @Group = "Ger_Car_1" Set @InitialBodyMode = "" Set @InitialFireMode = "Hold" Set @Point = "" Set @Rect = "Ger_Car_1_3" //The car will move to a Rect named "Ger_Car_1_3" Set @Array = "" Set @Formation = "" Set @Angle = 90 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Counts_Actions_Completed If ( @@Army_1_Actions_Completed < @@Army_1_Actions ) Then Delay ( 5000 ) Goto Counts_Actions_Completed Else RunTrigger ( "Army_1_Step_3" ) EndIf Halt [Army_1_Step_3] // ARMY_1_STEP_3 - Check all variables looking like @@army_N_something SendMessage ( "You can program anything you want, it will only be ordered when step 2 is done." , 5000 ) Halt ------------------------- For army #2 : ------------------------- [Army_2_Step_2] // ARMY_2_STEP_2 - Check all variables looking like @@army_N_something Set @Army = 2 //Please enter here the Army number Set @@Army_2_Actions = 1 //Please enter here how many actions in this phase SendMessage ( "ARMY_2_STEP_2 started" , 5000 ) Set @@Army_2_Actions_Completed = 0 //Don't change this Label Action1 Set @Group = "Fr_Inf_1" Set @InitialBodyMode = "Lay" Set @InitialFireMode = "Free" Set @Point = "Fr_Inf_1_2" Set @Rect = "Rect_Fr_Inf_1" Set @Array = "" Set @Formation = "Gather" Set @Angle = 0 Set @FinalPositionMode = "Hold" Set @FinalBodyMode = "Stay" Set @FinalFireMode = "Free" RunTriggerInstance ( "Movement" , @@MovementNumber , @Army , @Group , @InitialBodyMode , @InitialFireMode , @Point , @Rect , @Array , @Formation , @Angle , @FinalPositionMode , @FinalBodyMode , @FinalFireMode ) Add ( @@MovementNumber , 1 ) Label Counts_Actions_Completed If ( @@Army_2_Actions_Completed < @@Army_2_Actions ) Then Delay ( 5000 ) Goto Counts_Actions_Completed Else // RunTrigger ( "Army_2_Step_3" ) EndIf Halt ------------------------- The third step for army 1 : [Army_1_Step_3] // ARMY_1_STEP_3 - Check all variables looking like @@army_N_something SendMessage ( "You can program anything you want, it will only be ordered when step 2 is done." , 5000 ) Halt ------------------------- Of course, there's a big machinery to make it work. But you don't even have to read it. Just copy and past the next [Movement] trigger : [Movement] PARAM IN @Army PARAM IN @Group PARAM IN @InitialBodyMode PARAM IN @InitialFireMode PARAM IN @Point PARAM IN @Rect PARAM IN @Array PARAM IN @Formation PARAM IN @Angle PARAM IN @FinalPositionMode PARAM IN @FinalBodyMode PARAM IN @FinalFireMode SetWorkArmy ( Army , @Army ) PositionMode ( Group , @Group , Free ) If ( @InitialBodyMode = "Stay" ) Then BodyMode ( Group , @Group , Stay ) Else If ( @InitialBodyMode = "Knee" ) Then BodyMode ( Group , @Group , Knee ) Else If ( @InitialBodyMode = "Lay" ) Then BodyMode ( Group , @Group , Lay ) Else BodyMode ( Group , @Group , Free ) Endif Endif Endif If ( @InitialFireMode = "Hold" ) Then FireMode ( Group , @Group , Hold ) Else FireMode ( Group , @Group , Free ) Endif If ( @Formation = "Gather" ) then SetGroupFormation ( @Group , Gather ) Else If ( @Formation = "Wedge" ) then SetGroupFormation ( @Group , Wedge ) Else If ( @Formation = "TrenchFormation" ) then SetGroupFormation ( @Group , TrenchFormation ) Else If ( @Formation = "LineTankHuman" ) then SetGroupFormation ( @Group , LineTankHuman ) Else If ( @Formation = "Column" ) then SetGroupFormation ( @Group , Column ) Else If ( @Formation = "Disperse" ) then SetGroupFormation ( @Group , Disperse ) Else SetGroupFormation ( @Group , Custom ) EndIf EndIf EndIf EndIf EndIf EndIf If ( @Point != "" AND @Array = "" ) Then RunCommand ( Group , @Group , Move , Point , @Point , Angle , @Angle ) Else If ( @Array != "" AND @Point = "" ) Then RunCommand ( Group , @Group , Move , Array , @Array , Angle , @Angle ) Else RunCommand ( Group , @Group , Move , Rect , @Rect , Angle , @Angle ) Endif Endif Label Check Delay ( 10000 ) //Sendmessage ( "Checking if unit has finished moving." , 5000 ) Set @Test = GetNUnitsInArea ( Group , @Group , All , @Rect , No_Panic ) If ( @Test = 0 ) then Goto Check Endif //Sendmessage ( "Movement completed, adopting P, B & F modes" , 5000 ) If ( @Army = 1 ) Then Add ( @@Army_1_Actions_Completed , 1 ) Else If ( @Army = 2 ) Then Add ( @@Army_2_Actions_Completed , 1 ) //Else //If ( @Army = N ) Then // Add ( @@Army_N_Actions_Completed , 1 ) //Endif EndIf EndIf Delay ( 10000 ) If ( @FinalPositionMode = "Hold" ) Then PositionMode ( Group , @Group , Hold ) Else PositionMode ( Group , @Group , Free ) Endif If ( @FinalBodyMode = "Stay" ) Then BodyMode ( Group , @Group , Stay ) Else If ( @FinalBodyMode = "Knee" ) Then BodyMode ( Group , @Group , Knee ) Else If ( @FinalBodyMode = "Lay" ) Then BodyMode ( Group , @Group , Lay ) Else BodyMode ( Group , @Group , Free ) Endif Endif Endif If ( @FinalFireMode = "Hold" ) Then FireMode ( Group , @Group , Hold ) Else FireMode ( Group , @Group , Free ) Endif Halt I will upload my test mission ASAP, so you'll see Frankenstein walking. I hope you'll find that mess usefull PS, for Sneaksie or 1C : I do wish a new version of the scripting system was planed, in which the following points would be made available - For ... To ... Next - Functions that use constants such as "Hold", "Free", "Knee" could use variables too. For example, BodyMode ( @Variable1 , @Variable2 , @Variable3 ) would be legal according to @Variable1 being set to Army, Group or Unit, etc... - SendMessage and Goto could use variables as arguments - Distance () could handle groups - Variables names could be incremented by triggers themselves, ie they could create @Variable(1), @Variable(2)... @Variable(n) - Triggers such as RunCommand returns a signal when their instructions are completed.
×
×
  • Create New...