• Welcome to Freedom Reborn Archive.
 

Probably a simple AI question

Started by Swingman, July 06, 2007, 06:32:50 PM

Previous topic - Next topic

Swingman

"TRanged('knife throw',time=2.6,pct=90,subtype='flying')",

What am I doing wrong here since the character keeps using this power on non-flying foes?
Isn't the "subtype='flying' part" supposed to determine the use of this power as only towards flying foes?

Bear with me if this is newb question, I don't have a lot of experience on this field

M25

It looks ok.

Do you have another line in the AI that uses that power?


TaskMasterX

I'm not sure if it's the same issue, but I've seen the AI still use powers that I have only one tactic line for and the subtype='not flying' and it's for a power that is set to Ground Targets Only, but the AI will still try to use the power on flying targets.

Swingman

Hmm, as far as I can see I'm not using the power anywhere else. Nonetheless something is definitely wrong, but I just can't figure out what it is. Taskmasters problem sounds like it could be similar to mine. I'm not sure what that means though...

Here is the full script in all its glory, just for checking purposes. Perhaps it's just me who made a mistake, I wouldn't be that surprised...

Quote['Payday',
   ["target enemy",
      'weakness_melee_crushing',
      'weakness_area_crushing',
      ],
   ["timer", 'auto',
      'TUseRemedy()',
      'TFleeMelee(type="any",subtype="emitting_damage",time=0.96)',
      "TArea('Area ball',time=1.75,pct=100,situation=['swarmed','not nearfriend'])",
      "TMeleeArea('Swing',time=6.51,situation='swarmed',pct=100)",
      "TRanged('knife throw',time=2.6,pct=90,subtype='flying')",
      "TMelee('Punches',time=1.4,pct=80)",
      "TMelee('Punch',time=2.0)",
      "TMelee('Punch 2',time=2.72)",
      'TMoveTo(mindist=\'medium\',time=0.96,subtype=["not emitting_damage","flying"])',
      'TMoveTo(mindist="melee",subtype=["not emitting_damage","not flying"],time=0.96)',
   ],
]

by the way I am of course using FFX 3.2, in fact I'm using 3.2.1 come to think of it (thanks to both you guys)

Swingman

I have noticed that the ai also has a frequent tendency to cut around the situation='swarmed' part. I tested it with several different characters and they all seem to use powers labeled situation=swarmed though theres only one enemy around (and for testing purposes even in one on one sessions).

I'm beginning to doubt if it's even using the ai files...Well, I think it does, but it seems like it's not dealing with all of the information

I guess I would like to know if I'm either doing something wrong in the scripting, if it sounds like I could have messed something up during the installation of FFX or if these are issues others besides myself are experiencing?

(perhaps this is starting to sound like it belongs in another forum, I don't know)

M25

Python is picky and you may have misplaced a comma or a quote somewhere.  Have a look at the script.log file to see if there is an error.  If there isn't, then go into m25config.py and set M25_USE_REPORTS=1  and then run a mission and check the script.log file again.  You should be able to see what the AI is doing, or if it is even kicking in at all.


Swingman

Hey I'm back.  :huh:

I kind of had a break from the game, mostly because of this problem. I thought I would give it another try though. I still haven't been able to solve my problem or even muster any theories to why. The AI still seems to ignore at least some situations and subtypes. I have looked at the script.log, but I'm not completely sure what I'm looking at. My untrained eye can't pinpoint any problems; on the other hand I hardly know what I'm talking about. If one of you could help me out, it would be great.

example of a script log:

[spoiler]>>> system/init.py executed
>>> system/localinit.py executed
>>> system\tredir.py executed
Loading m25ai.py v. 3.2.0 build 10; branch = beta 2: m25 branch 2
importing missionobjvar.py v1.18
loading datfiles version 0.251000
importing MLOG Reader 1.0.18 release
Starting General Utilities 1.0
missionobjvar(FixLongs): Fixing overflow issue with <SCSTATE_BUOYANT>
missionobjvar defining functions for Campaign play.
Starting ffx.py v. 3.2.0 build 11; branch = Gold / Release
Starting System Utilities 1.4
FFX Mission Plugin 'firehydrant' imported
FFX Mission Plugin 'zombie' imported
Loading freeroam_keepbuildingdamage.py v.1.0.0 build 0; branch = main
FREEROAM_KBD: initialized
FFX Mission Plugin 'freeroam_keepbuildingdamage' imported
Starting Height Check module 1.4
OBJECTS_HEIGHT: 604 entries
NIF_OBJECTS: 482 entries
BUILDINGS_IN_OBJECTS_DAT: 30 entries
BUILDING_DIMENSIONS: 30 entries
Starting skXMapInfo.py  v 0.79 beta
skXMapInfo: m25ai available
FFX Mission Plugin 'm25ai_lowjumper' imported
FFX Mission Plugin 'm25ai_realitymanipulation' imported
CustomHeadCurrentTime 1199902790.843000
FFX Mission Plugin 'cutscene_power' imported
Loading     m25enc_OPENDOOR.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_opendoor' imported
Loading     m25enc_simplechoice.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_simplechoice' imported
Starting Built-In Function Wrapper 1.5
('Object_CalcPrestige', 'js')
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\danger.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> OnReceiveSelectedEnemies(('custom_vil_0', ))
SkirmishSpawnEnemy: custom_vil_0 (Testguy, 1420)
AI: SetupAI() - setting ai for custom_vil_0_1 ('Testguy')
CUSTOMPOWERS: using power slot 1 for Testguy : area energy
CUSTOMPOWERS: using power slot 2 for Testguy : punch
CUSTOMPOWERS: using power slot 3 for Testguy : punches
CUSTOMPOWERS: using power slot 4 for Testguy : Fireballs
GROUP: 'team2' set to []
GROUP: 'custom_vil_0_1' added to group 'team2'
GROUP: 'team2' set to ['custom_vil_0_1']
! GetMapInfo
MLOG_Init(keepRunningModules=0): starting up
mlogreader.MLOG_Init: current mission = 'MP_AIRFIELD'
initialising FFX: skirmish=1
mapinfocaliper0 is not a valid explosion object
mapinfocaliper1 is not a valid explosion object
mapinfocaliper2 is not a valid explosion object
mapinfocaliper3 is not a valid explosion object
numberStr=46
storing hero_0: id_1,-46
AI: SetupAI() - setting ai for hero_0 ('Testgirl')
CUSTOMPOWERS: using power slot 5 for Testgirl : kick
CUSTOMPOWERS: using power slot 6 for Testgirl : punch
CUSTOMPOWERS: using power slot 7 for Testgirl : energy shots
CUSTOMPOWERS: using power slot 8 for Testgirl : energy release
GROUP: 'team1' set to []
GROUP: 'hero_0' added to group 'team1'
GROUP: 'team1' set to ['hero_0']
GROUP: 'hero_0' automatically promoted to leader of group 'team1'
GROUP: 'hero_0' made leader of group 'team1'
GROUP: 'team1' set to guard 'hero_0'
GOAL: Adding goal Goal_StayWithTeam(1000,20) to character hero_0
team1 leader set
GOAL: Adding goal Goal_HuntEnemy(1001,20) to character hero_0
GROUP: 'team1' set to hunt enemies
GROUP: 'team1' set to hunt enemies
GROUP: 'custom_vil_0_1' automatically promoted to leader of group 'team2'
GROUP: 'custom_vil_0_1' made leader of group 'team2'
GROUP: 'team2' set to guard 'custom_vil_0_1'
GOAL: Adding goal Goal_StayWithTeam(1002,20) to character custom_vil_0_1
team2 leader set
GOAL: Adding goal Goal_HuntEnemy(1003,20) to character custom_vil_0_1
GROUP: 'team2' set to hunt enemies
GROUP: 'team2' set to hunt enemies
initialising FFQ_initialiseExtras()
FFX_UpdateSun: getting default sun
FFX_UpdateSun: setting = (-40.0, 30.0, 1.20000004768, 1.0, (0.800000011921, 0.5, 0.20000000298))
AI: custom_vil_0_1:'Testguy' hunting 'hero_0'
AI: hero_0:'Testgirl' hunting 'custom_vil_0_1'
initAttribsForChar: working on custom_vil_0_1 (Testguy)
initAttribsForChar (Testguy): looking at attribute flier
initAttribsForChar (Testguy): looking at attribute ffqlongjumper
execInitAttrib: init ffqlongjumper attribute
    on custom_vil_0_1 of template custom_vil_0 (Testguy)
initAttribsForChar: working on hero_0 (Testgirl)
initAttribsForChar (Testgirl): looking at attribute flier
Plugin 'firehydrant' OnPostInit() called
Plugin 'zombie' has no OnPostInit()
Plugin 'freeroam_keepbuildingdamage' OnPostInit() called
Plugin 'm25ai_lowjumper' has no OnPostInit()
Plugin 'm25ai_realitymanipulation' has no OnPostInit()
Plugin 'cutscene_power' has no OnPostInit()
Plugin 'm25enc_opendoor' has no OnPostInit()
Plugin 'm25enc_simplechoice' has no OnPostInit()
AI: custom_vil_0_1:'Testguy' hunting 'hero_0'
AI: hero_0:'Testgirl' hunting 'custom_vil_0_1'
AI: custom_vil_0_1:'Testguy' hunting 'hero_0'
AI: hero_0:'Testgirl' hunting 'custom_vil_0_1'
AI: hero_0 overpowers his/her/its attack!
AI: hero_0:'Testgirl' zzz7 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testguy' zzz4 attack on 'hero_0'
AI: hero_0 overpowers his/her/its attack!
AI: hero_0:'Testgirl' zzz7 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 no tactic chosen this cycle.
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testguy' zzz4 attack on 'hero_0'
AI: hero_0 overpowers his/her/its attack!
AI: hero_0:'Testgirl' zzz7 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testguy' zzz4 attack on 'hero_0'
AI: hero_0 overpowers his/her/its attack!
AI: hero_0:'Testgirl' zzz7 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testguy' zzz4 attack on 'hero_0'
AI: hero_0:'Testgirl' zzz7 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testguy' zzz4 attack on 'hero_0'
GROUP: 'team1' member koed
GROUP: 'team1' leader koed
AI: custom_vil_0_1:'Testguy' power effect_m25ai_powerup using remedy
cshelper: Cutscene [gameover_cs] submitted for playing
cshelper: Now playing cutscene [gameover_cs]
Step 1 of 3
AI: Had to recover AI for custom_vil_0_1
Step 2 of 3
Step 3 of 3
cshelper: Cutscene [gameover_cs] has ended
[/spoiler]

and also how come the ai keeps overpowering their powers though M25_AI_PUSH_ENERGY is set for 0?

M25

The PUSH_ENERGY setting is intended to mirror a setting in FFX called Overspend Energy with stun risk.  The AI will use powers even if they don't have enough energy.  It doesn't change whether or not they overpower their attacks.

I'll look into the problem with 'swarmed'.


Swingman

QuoteThe PUSH_ENERGY setting is intended to mirror a setting in FFX called Overspend Energy with stun risk.  The AI will use powers even if they don't have enough energy.  It doesn't change whether or not they overpower their attacks.

Okay, I was mostly fishing anyway, I thought maybe this indicated something wrong with my installation/game which could explain the rest. :wacko:

I haven't tested my problem on all subtypes and situations. The ones I have noticed never works, at least in my game, is the subtype "flying" and the situation "swarmed", but it may be the case for other instances too. It is hard for me to tell without any proper programming skills, I am mostly limited to lots and lots of observing...

Thank you for looking into it, M25


M25

I've tested swarmed (and flying) and they appear to be working in the 3.2 release version. 

Swingman, try a re-install of FFX 3.2 without the 3.2.1 update for now.


Swingman

well, I have re-installed and without the 3.2.1 update, but it does not seem to make a difference.

Perhaps I have misunderstood something, when I use a line in the ai script like;

"TRanged('energy shots',time=2.31,subtype='flying')",

Am I then right to assume this interprets as fire ONLY when the enemy is flying?

If I AM right then something else is wrong and I'm pretty sure it's not in my installation now. Could I be messing up the ai file in notepad in some other obvious way or would that normally result in an error?

I have tried with other subtypes also and the ai seems to ignore them all...

Just tell me if I need to post a script file, m25ai file or something else...





M25

No, you understand correctly.  It certainly sounds like subtypes are flat out not working for you.

What's your setup?  What operating system do you use, is it the US version of the game and where is it installed?

Also, if you can, go into debug mode (press the ~ key), and type

print m25aiopt.stcodedict

Then post your script.log


Swingman

I'm using XP with service pack 2 and as far as I can gather it's the US version of the game. The game is installed as by default in
C:\Programmer\Irrational Games\Freedom Force vs The 3rd Reich (or as I believe it's called in English C:\Programs\Irrational Games\Freedom Force vs The 3rd Reich).

I have a little trouble entering the debug mode...the game keeps freezing when I use the ~ key in watch mode...

Xenolith

Hi,

The M25 AI document states that pct should appear before time in the tactic line.  Try:

"TRanged('knife throw',pct=90,time=2.6,subtype='flying')",

If that doesn't work, then I'm not sure.

Swmarmed observations:

I normally only play in watch mode.  I always select my characters from the second, or "opponent", screen.  The AI has problems in some situations, and I believe swarmed is one of them, distinguishing friends from foe.  IIRC, if I use TArea then the AI never uses the power because it thinks its surrounded by friends.  However, I think by switching to TAreaAttack, it will work.  I'm not 100% sure of the circumstances or situations right now because its been a while since I looked into this. 

The second selection screen causes some confusion to the AI.  I think this is why hypnosis doesn't work very well when characters from the same selection screen try to hypnotize each other.  Not sure about this, but it seems that way.     

M25

If debug mode is freezing the game, then it's likely that you need to reinstall the entire game (or it may be an issue with your graphics card - which one are you using?)

If that doesn't fix it, you send me a private message with your email address in it, I can send you some modified AI files to help diagnose the problem.



Xenolith - the order of pct and time doesn't matter. 

Xenolith

d'oh...well, it was worth a shot.  sorry.

Swingman

Xenolith - Nothing to be sorry about :) I'm just glad someone takes the time to help. Actually I've been around your theory concerning the characters all being put on the "opponents side myself, but I have found that, as far as subtypes goes, it doesn't make a difference. Well, at least not in my game anyway. I figure that concerns "situations" also, but perhaps I'll do a little testing.

M25 - I'm gonna do myself some reinstallation and return. By the way I'm using a GeForce 7600 GS graphics card...and once again thanks for your time and help. I wish I had the skills and knowledge to solve this myself, so I didn't have to bother people here with my infernal questioning, but alas...

GogglesPizanno

With as much tweaking and hacking of the game we all do, Im amazed any of us can still make the thing work at all sometimes, so none of your (or anyone else's) "infernal questions" are a bad thing...

Swingman

Okay the cat is out of the bag, it's me who's doing something wrong :blink:. I tried to install the game on another computer and the result was the same (including the freeze when I try to go into debug). If no one else seems to experience these problems and I now face them on two different computers the inevitable conclusion must be that it is me who's the weak link. So then, what am I doing wrong? Probably something stupid if I know myself right. As I see it the problem either lies in the way I install the game or in my AI scripting.

My installation procedure goes:

1/ FFVT3R (in default installation path)
2/ ezfx 6
3/ FFVT3R Modtools
4/ FFX 3.2
5/ Start up ffx control center

6/ Start game...

Is something missing here...?

M25

Just to double-check.  You need to have these lines in your localinit.py file to go into debug mode.

import js
import ff
ff.CON_ENABLE=1

The file is in the System directory:

C:\Program Files\Irrational Games\Freedom Force vs The 3rd Reich\System\localinit.py


Swingman

The game kept freezing up when I pressed ~(I added the missing lines to my localinit.py), but then I tried the ½ key and got some kind of console open. I'm not sure if that has anything to do with the debug mode, but tried to type in the line you told me (do I press enter after typing the line?)

I pressed enter:
[spoiler]>>> system/init.py executed
>>> system/localinit.py executed
>>> system\tredir.py executed
loading datfiles version 0.251000
loading cshelper ...
Starting ffx.py v. 3.2.0 build 11; branch = Gold / Release
Loading m25ai.py v. 3.2.0 build 10; branch = beta 2: m25 branch 2
importing missionobjvar.py v1.18
importing MLOG Reader 1.0.18 release
Starting General Utilities 1.0
missionobjvar(FixLongs): Fixing overflow issue with <SCSTATE_BUOYANT>
missionobjvar defining functions for Rumble Room play.
CustomHeadCurrentTime 1200602091.859000
Starting Height Check module 1.4
Starting System Utilities 1.4
OBJECTS_HEIGHT: 604 entries
NIF_OBJECTS: 482 entries
BUILDINGS_IN_OBJECTS_DAT: 30 entries
BUILDING_DIMENSIONS: 30 entries
Starting skXMapInfo.py  v 0.79 beta
skXMapInfo: m25ai available
FFX Mission Plugin 'firehydrant' imported
FFX Mission Plugin 'zombie' imported
Loading freeroam_keepbuildingdamage.py v.1.0.0 build 0; branch = main
FREEROAM_KBD: initialized
FFX Mission Plugin 'freeroam_keepbuildingdamage' imported
FFX Mission Plugin 'm25ai_lowjumper' imported
FFX Mission Plugin 'm25ai_realitymanipulation' imported
FFX Mission Plugin 'cutscene_power' imported
Loading     m25enc_OPENDOOR.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_opendoor' imported
Loading     m25enc_simplechoice.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_simplechoice' imported
Starting Built-In Function Wrapper 1.5
('Object_CalcPrestige', 'js')
ffx3\sk.py importing FFX
ffx3\missions\scripts\sk.py loaded
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\danger.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> OnReceiveSelectedEnemies(('custom_vil_0', '------------', 'custom_vil_1', ))
SkirmishSpawnEnemy: custom_vil_0 (Testgirl, 1039)
AI: SetupAI() - setting ai for custom_vil_0_1 ('Testgirl')
CUSTOMPOWERS: using power slot 1 for Testgirl : kick
CUSTOMPOWERS: using power slot 2 for Testgirl : punch
CUSTOMPOWERS: using power slot 3 for Testgirl : energy shots
CUSTOMPOWERS: using power slot 4 for Testgirl : energy release
GROUP: 'team2' set to []
GROUP: 'custom_vil_0_1' added to group 'team2'
GROUP: 'team2' set to ['custom_vil_0_1']
SkirmishSpawnEnemy: custom_vil_1 (Testguy, 1040)
AI: SetupAI() - setting ai for custom_vil_1_2 ('Testguy')
CUSTOMPOWERS: using power slot 5 for Testguy : area energy
CUSTOMPOWERS: using power slot 6 for Testguy : punch
CUSTOMPOWERS: using power slot 7 for Testguy : punches
CUSTOMPOWERS: using power slot 8 for Testguy : Fireballs
GROUP: 'team3' set to []
GROUP: 'custom_vil_1_2' added to group 'team3'
GROUP: 'team3' set to ['custom_vil_1_2']
! GetMapInfo
MLOG_Init(keepRunningModules=0): starting up
mlogreader.MLOG_Init: current mission = 'MP_AIRFIELD'
initialising FFX: skirmish=1
mapinfocaliper0 is not a valid explosion object
mapinfocaliper1 is not a valid explosion object
mapinfocaliper2 is not a valid explosion object
mapinfocaliper3 is not a valid explosion object
numberStr=46
storing hero_0: id_1,-46
GROUP: 'team1' set to []
GROUP: 'custom_vil_0_1' automatically promoted to leader of group 'team2'
GROUP: 'custom_vil_0_1' made leader of group 'team2'
GROUP: 'team2' set to guard 'custom_vil_0_1'
GOAL: Adding goal Goal_StayWithTeam(1000,20) to character custom_vil_0_1
team2 leader set
GOAL: Adding goal Goal_HuntEnemy(1001,20) to character custom_vil_0_1
GROUP: 'team2' set to hunt enemies
GROUP: 'team2' set to hunt enemies
GROUP: 'custom_vil_1_2' automatically promoted to leader of group 'team3'
GROUP: 'custom_vil_1_2' made leader of group 'team3'
GROUP: 'team3' set to guard 'custom_vil_1_2'
GOAL: Adding goal Goal_StayWithTeam(1002,20) to character custom_vil_1_2
team3 leader set
GOAL: Adding goal Goal_HuntEnemy(1003,20) to character custom_vil_1_2
GROUP: 'team3' set to hunt enemies
GROUP: 'team3' set to hunt enemies
initialising FFQ_initialiseExtras()
FFX_UpdateSun: getting default sun
FFX_UpdateSun: setting = (-40.0, 30.0, 1.20000004768, 1.0, (0.800000011921, 0.5, 0.20000000298))
AI: custom_vil_0_1:'Testgirl' hunting 'custom_vil_1_2'
AI: custom_vil_1_2:'Testguy' hunting 'custom_vil_0_1'
initAttribsForChar: working on custom_vil_0_1 (Testgirl)
initAttribsForChar (Testgirl): looking at attribute flier
initAttribsForChar: working on custom_vil_1_2 (Testguy)
initAttribsForChar (Testguy): looking at attribute ffqlongjumper
execInitAttrib: init ffqlongjumper attribute
    on custom_vil_1_2 of template custom_vil_1 (Testguy)
initAttribsForChar: working on hero_0 (------------)
initAttribsForChar (------------): looking at attribute density control
Plugin 'firehydrant' OnPostInit() called
Plugin 'zombie' has no OnPostInit()
Plugin 'freeroam_keepbuildingdamage' OnPostInit() called
Plugin 'm25ai_lowjumper' has no OnPostInit()
Plugin 'm25ai_realitymanipulation' has no OnPostInit()
Plugin 'cutscene_power' has no OnPostInit()
Plugin 'm25enc_opendoor' has no OnPostInit()
Plugin 'm25enc_simplechoice' has no OnPostInit()
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
GROUP: 'team2' member koed
GROUP: 'team2' leader koed
AI: custom_vil_1_2 no tactic chosen this cycle.
cshelper: Cutscene [gameover_cs] submitted for playing
cshelper: Now playing cutscene [gameover_cs]
Step 1 of 3
AI: AISetRunning custom_vil_1_2 to 0
Step 2 of 3
Step 3 of 3
cshelper: Cutscene [gameover_cs] has ended
[/spoiler]

I didn't:
[spoiler]
>>> system/init.py executed
>>> system/localinit.py executed
>>> system\tredir.py executed
loading datfiles version 0.251000
loading cshelper ...
Starting ffx.py v. 3.2.0 build 11; branch = Gold / Release
Loading m25ai.py v. 3.2.0 build 10; branch = beta 2: m25 branch 2
importing missionobjvar.py v1.18
importing MLOG Reader 1.0.18 release
Starting General Utilities 1.0
missionobjvar(FixLongs): Fixing overflow issue with <SCSTATE_BUOYANT>
missionobjvar defining functions for Rumble Room play.
CustomHeadCurrentTime 1200602343.890000
Starting Height Check module 1.4
Starting System Utilities 1.4
OBJECTS_HEIGHT: 604 entries
NIF_OBJECTS: 482 entries
BUILDINGS_IN_OBJECTS_DAT: 30 entries
BUILDING_DIMENSIONS: 30 entries
Starting skXMapInfo.py  v 0.79 beta
skXMapInfo: m25ai available
FFX Mission Plugin 'firehydrant' imported
FFX Mission Plugin 'zombie' imported
Loading freeroam_keepbuildingdamage.py v.1.0.0 build 0; branch = main
FREEROAM_KBD: initialized
FFX Mission Plugin 'freeroam_keepbuildingdamage' imported
FFX Mission Plugin 'm25ai_lowjumper' imported
FFX Mission Plugin 'm25ai_realitymanipulation' imported
FFX Mission Plugin 'cutscene_power' imported
Loading     m25enc_OPENDOOR.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_opendoor' imported
Loading     m25enc_simplechoice.py v.1.0.0 build 0; branch = main
FFX Mission Plugin 'm25enc_simplechoice' imported
Starting Built-In Function Wrapper 1.5
('Object_CalcPrestige', 'js')
ffx3\sk.py importing FFX
ffx3\missions\scripts\sk.py loaded
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\danger.py executed
>>> C:\Documents and Settings\Christian\Lokale indstillinger\Application Data\Irrational Games\Freedom Force vs the 3rd Reich\temp\cM25 Skirmish Watch Mode.py executed
>>> OnReceiveSelectedEnemies(('custom_vil_0', '------------', 'custom_vil_1', ))
SkirmishSpawnEnemy: custom_vil_0 (Testgirl, 1039)
AI: SetupAI() - setting ai for custom_vil_0_1 ('Testgirl')
CUSTOMPOWERS: using power slot 1 for Testgirl : kick
CUSTOMPOWERS: using power slot 2 for Testgirl : punch
CUSTOMPOWERS: using power slot 3 for Testgirl : energy shots
CUSTOMPOWERS: using power slot 4 for Testgirl : energy release
GROUP: 'team2' set to []
GROUP: 'custom_vil_0_1' added to group 'team2'
GROUP: 'team2' set to ['custom_vil_0_1']
SkirmishSpawnEnemy: custom_vil_1 (Testguy, 1040)
AI: SetupAI() - setting ai for custom_vil_1_2 ('Testguy')
CUSTOMPOWERS: using power slot 5 for Testguy : area energy
CUSTOMPOWERS: using power slot 6 for Testguy : punch
CUSTOMPOWERS: using power slot 7 for Testguy : punches
CUSTOMPOWERS: using power slot 8 for Testguy : Fireballs
GROUP: 'team3' set to []
GROUP: 'custom_vil_1_2' added to group 'team3'
GROUP: 'team3' set to ['custom_vil_1_2']
! GetMapInfo
MLOG_Init(keepRunningModules=0): starting up
mlogreader.MLOG_Init: current mission = 'MP_AIRFIELD'
initialising FFX: skirmish=1
mapinfocaliper0 is not a valid explosion object
mapinfocaliper1 is not a valid explosion object
mapinfocaliper2 is not a valid explosion object
mapinfocaliper3 is not a valid explosion object
numberStr=46
storing hero_0: id_1,-46
GROUP: 'team1' set to []
GROUP: 'custom_vil_0_1' automatically promoted to leader of group 'team2'
GROUP: 'custom_vil_0_1' made leader of group 'team2'
GROUP: 'team2' set to guard 'custom_vil_0_1'
GOAL: Adding goal Goal_StayWithTeam(1000,20) to character custom_vil_0_1
team2 leader set
GOAL: Adding goal Goal_HuntEnemy(1001,20) to character custom_vil_0_1
GROUP: 'team2' set to hunt enemies
GROUP: 'team2' set to hunt enemies
GROUP: 'custom_vil_1_2' automatically promoted to leader of group 'team3'
GROUP: 'custom_vil_1_2' made leader of group 'team3'
GROUP: 'team3' set to guard 'custom_vil_1_2'
GOAL: Adding goal Goal_StayWithTeam(1002,20) to character custom_vil_1_2
team3 leader set
GOAL: Adding goal Goal_HuntEnemy(1003,20) to character custom_vil_1_2
GROUP: 'team3' set to hunt enemies
GROUP: 'team3' set to hunt enemies
initialising FFQ_initialiseExtras()
FFX_UpdateSun: getting default sun
FFX_UpdateSun: setting = (-40.0, 30.0, 1.20000004768, 1.0, (0.800000011921, 0.5, 0.20000000298))
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testgirl' zzz1 attack on 'custom_vil_1_2'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz7 attack on 'custom_vil_0_1'
initAttribsForChar: working on custom_vil_0_1 (Testgirl)
initAttribsForChar (Testgirl): looking at attribute flier
initAttribsForChar: working on custom_vil_1_2 (Testguy)
initAttribsForChar (Testguy): looking at attribute ffqlongjumper
execInitAttrib: init ffqlongjumper attribute
    on custom_vil_1_2 of template custom_vil_1 (Testguy)
initAttribsForChar: working on hero_0 (------------)
initAttribsForChar (------------): looking at attribute density control
Plugin 'firehydrant' OnPostInit() called
Plugin 'zombie' has no OnPostInit()
Plugin 'freeroam_keepbuildingdamage' OnPostInit() called
Plugin 'm25ai_lowjumper' has no OnPostInit()
Plugin 'm25ai_realitymanipulation' has no OnPostInit()
Plugin 'cutscene_power' has no OnPostInit()
Plugin 'm25enc_opendoor' has no OnPostInit()
Plugin 'm25enc_simplechoice' has no OnPostInit()
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
AI: custom_vil_0_1 overpowers his/her/its attack!
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
GOAL: Adding goal Goal_Throw(1004,'mobj_17','move',1.0,21) to character custom_vil_1_2
AI: custom_vil_1_2:'Testguy' preparing to throw
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
GOAL: Removing goal Goal_Throw from character custom_vil_1_2
GOAL: Adding goal Goal_Throw(1005,'_impobj_306','move',1.0,21) to character custom_vil_1_2
AI: custom_vil_1_2:'Testguy' preparing to throw
AI: custom_vil_1_2:'Testguy' move to throwable '_impobj_306'
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
AI: custom_vil_0_1:'Testgirl' zzz3 attack on 'custom_vil_1_2'
AI: custom_vil_1_2:'Testguy' move to throwable '_impobj_306'
AI: custom_vil_1_2 overpowers his/her/its attack!
AI: custom_vil_1_2:'Testguy' zzz8 attack on 'custom_vil_0_1'
GROUP: 'team2' member koed
GROUP: 'team2' leader koed
AI: custom_vil_1_2:'Testguy' move to throwable '_impobj_306'
AI: custom_vil_1_2 picking up _impobj_306
GOAL: Removing goal Goal_Throw from character custom_vil_1_2
cshelper: Cutscene [gameover_cs] submitted for playing
cshelper: Now playing cutscene [gameover_cs]
Step 1 of 3
AI: AISetRunning custom_vil_0_1 to 0
AI: custom_vil_1_2 pickup failed on _impobj_306
AI: Had to recover AI for custom_vil_1_2
Step 2 of 3
Step 3 of 3
cshelper: Cutscene [gameover_cs] has ended
[/spoiler]

M25

Yes, you should press enter, but apparently nothing showed up in the log anyway.

I suspect there is some regional differences affecting the setup of the AI. 

I've sent you an email at the address you have linked to your account here.