ChrisND Posted June 20, 2006 Share Posted June 20, 2006 Thus far have set the framework for the global variables and have streamlined the Axis Early Conquests Scripts (1939 - Fall of France). Here's the global variables are working: 1. Greenland and part of Canada (The snowy islands) are now German. Placed on them are 5+ German corps (Build limits increased to accommodate). Each corps represents a certain global variable: - The 3,3 corps represents the Date-Based Global Variables. At position 3,3 it is the 1939 To Fall of France Variable. Thus scripts meant to be done within this time frame will have ACTIVATE_POSTIONs set for 3,3. And of course scripts that should NOT activate in this timeframe have a 3,3 CANCEL_POSITION. And vice versa for other time frames, each has its own tile. The diplomacy global variable also has its own corps. This corps will move to the tile of the diplo target nation, and thus activate a diplo script for that nation. Since only one corps is avaiable for most global variables, only one option will be picked (usually) ; Diplomacy Trigger Tiles: Spain: 4,7 Sweden: 3,6 Iraq: 2,7 Turkey: 1,7 ; ; Date-Based Trigger Tiles: 1939 to Fall of France 3,3 Fall of France to Barbarossa Build-Up 2,3 ; Barbarossa Build-Up 1,3 Barbarossa 2,4 1942-1943 3,4 1943+ 5,4 ; ; Research Trigger Tiles: Standard Axis Balance 8,10 Land Combat Emphasis 9,9 Land/Air Emphasis 10,10 ; Land/Sea Emphasis 9,10 Land/Development Emphasis This here shows how the scripts work in action. Note that now the AI on Turn 1 will decide to build-up for France or do a Turn 2 Belgium Rush. Another corps is designated for strategic positions such as these. This means that one strategic position may "lock in" that corps, which converesely takes the AI down an entire road of appropriate scripts. SO if the AIK decides to play a rush game, ahving the apporpriate trigger tile locked in will ensure the proper scripts are activated. So far testing shows that the AI can take France by April with the "Fast France" option. Current % I have set up is 25% fast attack, 75% wait and build-up ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; AXIS SCRIPTS - 1939 TO FALL OF FRANCE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; { #NAME= Date Based Global Variable - 1939 to Fall of France #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 3,3 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 0,0 [0,0] [0,0] [0] #CANCEL_POSITION= 3,3 [0,0] [1,1] [1] } ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; { #NAME= Initial Check - Random Diplomacy - Spain #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 60 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 4,7 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 0,0 [0,0] [0,0] [0] #CANCEL_POSITION= 4,7 [0,0] [1,1] [1] #CANCEL_POSITION= 3,6 [0,0] [1,1] [1] #CANCEL_POSITION= 1,7 [0,0] [1,1] [1] } { #NAME= Initial Check - Random Diplomacy - Sweden #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 30 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 3,6 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 0,0 [0,0] [0,0] [0] #CANCEL_POSITION= 3,6 [0,0] [1,1] [1] #CANCEL_POSITION= 4,7 [0,0] [1,1] [1] #CANCEL_POSITION= 1,7 [0,0] [1,1] [1] } { #NAME= Initial Check - Random Diplomacy - Turkey #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 10 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 1,7 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 0,0 [0,0] [0,0] [0] #CANCEL_POSITION= 1,7 [0,0] [1,1] [1] #CANCEL_POSITION= 4,7 [0,0] [1,1] [1] #CANCEL_POSITION= 3,6 [0,0] [1,1] [1] } ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; { #NAME= Time Line Global Variable - France: Fast or Slow? - Fast #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 25 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 16,1 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 3,3 [0,0] [1,1] [1] #CANCEL_POSITION= 16,1 [0,0] [1,1] [1] #CANCEL_POSITION= 16,2 [0,0] [1,1] [1] } { #NAME= Time Line Global Variable - France: Fast or Slow? - Slow #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 75 #LEVEL= 0 #PLAN_ID= 0 #SIZE= 0 #LENGTH= 1 #GOAL_POSITION= 16,2 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 3,3 [0,0] [1,1] [1] #CANCEL_POSITION= 16,1 [0,0] [1,1] [1] #CANCEL_POSITION= 16,2 [0,0] [1,1] [1] } ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; { #NAME= Germany Build Up Offensive - Warsaw - Fast France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 1 #SIZE= 4 #LENGTH= 0 #GOAL_POSITION= 95,15 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,1 [0,0] [1,1] [1] #CANCEL_POSITION= 0,0 [0,0] [1,1] [0] } { #NAME= Germany Build Up Offensive - Brussels - Fast France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 1 #SIZE= 5 #LENGTH= 1 #GOAL_POSITION= 72,16 #DATE= 1939/09/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,1 [0,0] [1,1] [1] ; Axis unit already in Brussels (due to possible Allied DoW) #CANCEL_POSITION= 72,16 [0,0] [1,1] [1] } { #NAME= Germany Build Up Amphibious - Copenhagen - Fast France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 2 #SIZE= 1 #LENGTH= 1 #GOAL_POSITION= 81,12 #DATE= 1940/03/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 #VARIABLE_CONDITION= 5 [1] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,1 [0,0] [1,1] [1] ; Axis unit already in Copenhagen (due to possible Allied DoW) #CANCEL_POSITION= 81,12 [0,0] [1,1] [1] } { #NAME= Germany Build Up Offensive - Paris - Fast France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 1 #SIZE= 5 #LENGTH= 0 #GOAL_POSITION= 69,18 #DATE= 1939/09/03 #STEAL= 2 ; Brussels #FRIENDLY_POSITION= 72,16 ; France politically aligned with Allies and not surrendered #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,1 [0,0] [1,1] [1] #CANCEL_POSITION= 0,0 [0,0] [1,1] [0] } ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; { #NAME= Germany Build Up Offensive - Brussels - Slow France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 1 #SIZE= 8 #LENGTH= 1 #GOAL_POSITION= 72,16 #DATE= 1940/01/03 #STEAL= 3 #FRIENDLY_POSITION= 84,16 ; Poland politically aligned with Allies and surrendered #VARIABLE_CONDITION= 33 [2] [100] [1] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,2 [0,0] [1,1] [1] ; Axis unit already in Brussels (due to possible Allied DoW) #CANCEL_POSITION= 72,16 [0,0] [1,1] [1] } { #NAME= Germany Build Up Amphibious - Copenhagen - Slow France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 2 #SIZE= 1 #LENGTH= 1 #GOAL_POSITION= 81,12 #DATE= 1940/01/03 #STEAL= 3 ; Konigsberg #FRIENDLY_POSITION= 94,12 #VARIABLE_CONDITION= 5 [1] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,2 [0,0] [1,1] [1] ; Axis unit already in Copenhagen (due to possible Allied DoW) #CANCEL_POSITION= 81,12 [0,0] [1,1] [1] } { #NAME= Germany Build Up Offensive - Paris - Slow France Offensive #POPUP= #FLAG= 1 #TYPE= 1 #COUNTRY_ID= 5 #TRIGGER= 100 #LEVEL= 0 #PLAN_ID= 1 #SIZE= 9 #LENGTH= 0 #GOAL_POSITION= 69,18 #DATE= 1939/09/03 #STEAL= 2 ; Brussels #FRIENDLY_POSITION= 72,16 ; France politically aligned with Allies and not surrendered #VARIABLE_CONDITION= 2 [2] [100] [0] #TACTICAL_CONDITION= 84,16 [3] #ACTIVATE_POSITION= 16,2 [0,0] [1,1] [1] #CANCEL_POSITION= 0,0 [0,0] [1,1] [0] } 0 Quote Link to comment Share on other sites More sharing options...
ChrisND Posted June 26, 2006 Author Share Posted June 26, 2006 Progress So Far: - Scripting is complete. Now in the process of ironing out kinks and ensuring all scripts activate properly. - Axis diplomacy is now HIGHLY variable. The Axis may press Spain, Sweden, Turkey, Switzerland, USA, USSR, or even put a chit or two into Iraq in 1939 to counter the common Brit Iraq diplo move. It will also take advantage of % rises in Spain, Turkey, etc due to scripted events. - Sealion scripts overhauled big time. AI is much less likely to Sealion, should only do it when Russia is almost whipped (and by then most players would quit anyways). - More possible invasions for Axis added/ - Purchases and research scripts tweaked, I regularily get games where 5-6 tanks w/ tech lvl 3 or 4 start Barbarossa! :eek: - Global variables added and direct all AI behavior. 0 Quote Link to comment Share on other sites More sharing options...
Edwin P. Posted June 26, 2006 Share Posted June 26, 2006 Thanks for the updates. Looking forward to seeing your scripts. Have you found a fast way to test the AI scripts, all of my testing takes an hour or longer or requires me to build special campaigns. 0 Quote Link to comment Share on other sites More sharing options...
ChrisND Posted June 26, 2006 Author Share Posted June 26, 2006 No, testing is a MAJOR pain in the ass! It takes me up to 20-45 minutes to change one digit in the editor and then test it. 0 Quote Link to comment Share on other sites More sharing options...
Edwin P. Posted June 26, 2006 Share Posted June 26, 2006 I know the feeling, especially, using 1 when I should use 2, and then finding out that the French units I scripted to go to Cairo via The Loop, can't do it. Didn't realize my problem until I looked at the Loop event scripts. Ugh, and so stayed in place. PS: I thought that since Naval untis have a higher chance of going Free French I would place the French corps from Tunis and Beruit on Transports and send them via the Loop to Cairo, to ensure they were still at sea when France surrendered. 0 Quote Link to comment Share on other sites More sharing options...
Timskorn Posted June 26, 2006 Share Posted June 26, 2006 ND: Why does it take 20-45 minutes to make a single change? Is it from the script re-compiling every time? 0 Quote Link to comment Share on other sites More sharing options...
Edwin P. Posted June 26, 2006 Share Posted June 26, 2006 Currently the Editor recompiles and verifies all of the scripts with each update and save. With rather large AI files this can be a lengthy process. 0 Quote Link to comment Share on other sites More sharing options...
Timskorn Posted June 26, 2006 Share Posted June 26, 2006 Ah yeah, I forgot ND has some pretty lengthy scripts. I try to test a whole session and write down everything that needs changing so I can do them in batches. It's tempting to stop at the 1st sign of something, change it and then test again but unless it's major I'll keep playing through it. 0 Quote Link to comment Share on other sites More sharing options...
ChrisND Posted June 26, 2006 Author Share Posted June 26, 2006 Yes it is not a major problem with a small script set, but my scripts for the Axis AI alone are currently almost 300. Add in the fact that since the scripts interact with one another, I can't delete the rest to test a few. I usually try to test changes in batches, but if it is a problem that stops the rest of my variables from triggering, then I have to test after every change. 0 Quote Link to comment Share on other sites More sharing options...
ChrisND Posted June 30, 2006 Author Share Posted June 30, 2006 Update: New version will be released before the weekend. 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.