View Single Post
Old 11-15-13, 04:48 AM   #51
Rongel
Grey Wolf
 
Join Date: Jan 2009
Location: Finland
Posts: 859
Downloads: 174
Uploads: 0
Default

Yep, you don't need to edit the equipment files, they are all right. It sounds to me that the destroyers weren't firing starshells, only the one merchant in your test.

You could check your IRAI settings (data/scripts/AI/ship-weapons.aix), it should look something like this:

Code:
###################################################################################################
#
#    Ship weapons:
#

strategy ShipFire(Ship)
 {
    precond
    {
        Ship:ContactPresenceIs(PRESENCE_SENSORS, 0) or (Ship:ContactPresenceIs(PRESENCE_LOOSING, 0) and Ship:GetContactLostTime() <= 360.0)
    }
    strategies
    {
        DC,
        Cannons,
        CannonsAtSubmerged,
        #CheckStarshellEnable,
        ShipFireStarShells,
        ShipFireStarShellsDistance
    }
}

strategy DC(Ship)
{
    precond
    {
        Ship:ContactIs(SUBMARINE) or (Ship:ContactIs(UNITUNKNOWN) and Ship:GetContactDepth() <= -4.0)        #SUBISSUBMERGEDDEPTH
    }
    strategies
    {
        DCRacks,
        HHogs,
        DCThrower
    }
}

strategy DCRacks(Ship)
{
    precond
    {
        Ship:CanFireDCRacks() and Ship:GetContactDepth() <= -4.0 and Ship:GetCurrentSpeed() >= 2        #SUBISSUBMERGEDDEPTH
    }
    action
    {
        Ship:FireDCRacks();
    }
}

strategy HHogs(Ship)
{
    precond
    {
        Ship:CanFireHHogs()
    }
    action
    {
        Ship:FireHHogs();
    }
}

strategy DCThrower(Ship)
{
    precond
    {
        Ship:CanFireDCThrowers()
    }
    action
    {
        Ship:FireDCThrowers();
    }
}

strategy Cannons(Ship)
{
    precond
    {
        Ship:CanFireCannons()
    }
    action
    {
        Ship:FireCannons();
    }
}

strategy CannonsAtSubmerged(Ship)
{
    precond
    {
        (Ship:ContactPresenceIs(PRESENCE_LOOKOUT, 0) or Ship:ContactPresenceIs(PRESENCE_SONAR, 0)) and (Ship:ContactIs(SUBMARINE) or Ship:ContactIs(UNITUNKNOWN)) and Ship:GetContactDepth() <= 0.0 and Ship:GetContactDepth() >= -20.0 and Ship:GetContactRelDist() <= 8000
    }
    action
    {
        Ship:FireCannons();
    }
}

#strategy CheckStarshellEnable(Ship)
#{
#    precond
#    {
#        (Ship:ContactPresenceIs(PRESENCE_SENSORS, 0) or Ship:ContactPresenceIs(PRESENCE_LOOSING, 0)) and Ship:GetContactRelDist() <= 10000
#    }
#    action
#    {
#        Ship:EnableStarshells();
#    }
#}

strategy ShipFireStarShells(Ship)
{
    precond
    {
        Ship:CanFireStarShells() and Ship:GetContactRelDist() <= 10000
    }
    action
    {
        Ship:FireStarShells();
    }
}

strategy ShipFireStarShellsDistance(Ship)
{
    precond
    {
        Ship:GetContactRelDist() <= 10000
    }
    action
    {
        Ship:FireStarShells();
        #Ship:ShipWaitAction(10)
        Ship:TimeEventHappen(5);
    }
}
Main thing is that FireStarShells and ShipFireStarShellsDistance is unchecked!
Rongel is offline   Reply With Quote