PDA

View Full Version : Trouble With Dockpaths


Zatch
24th Feb 07, 3:23 AM
I've been trying for a couple days now to get a simple dockpath working, but I just can't seem to do it, here's what I've done:

1) Added two dockpaths to my ship, gal_thanatos, path1 = exit path, path2 = enter path.
2) path1 (exit) has its first point inside the ship mesh, last point is extremely far outside the boundary volume (to ensure that wouldn't be an issue, I'll narrow it down later,) there are 3 points total.
3) path2 (enter) is the exact opposite of path1, except shifted over slightly so it does not collide with path1; also the first point has "Queue Origin" toggled on.

Both paths should support the following Dock families: Frigate, Drone

The problem:
I start up a new game featuring just the gal_thanatos and a couple frigates. The frigates should start inside the Thanatos and undock when the game starts, but they don't. I select the frigates and try to force them to dock, but when I hover the mouse over the Thanatos I get the "move to" icon instead of the "dock here" icon. I press the Dock button and the Retire button, neither one works.

Note that the frigate has the CanDock and CanLaunch abilities, no Hyperspace ability. The Thanatos has the ShipHold and canBuildShips abilities. Here are the entire contents below:

NewShipType = StartShipConfig()
--
--====================================================================================
-- BASICINFO
--====================================================================================
--
NewShipType.displayedName = "Thanatos"
NewShipType.sobDescription = "Carrier"
NewShipType.buildCost = 850000000
NewShipType.buildTime = 20
NewShipType.buildPriorityOrder = 10
LoadModel(NewShipType,1)
--
--====================================================================================
-- PHYSICALSTATS
--====================================================================================
--
NewShipType.mass = 105750
NewShipType.maxhealth = 250000
NewShipType.regentime = 10667
NewShipType.minRegenTime = 0
NewShipType.sideArmourDamage = 1
NewShipType.rearArmourDamage = 1
NewShipType.dustCloudDamageTime = 100
NewShipType.nebulaDamageTime = 20
--
--====================================================================================
-- FORMATIONS
--====================================================================================
--
NewShipType.passiveFormation = "Broad"
NewShipType.defensiveFormation = "Delta"
NewShipType.aggressiveFormation = "Claw"
NewShipType.formationSpacing = 25
NewShipType.paradeData = "gal_titan_parade"
--
--====================================================================================
-- PROPULSION
--====================================================================================
--
NewShipType.thrusterMaxSpeed = 75
NewShipType.mainEngineMaxSpeed = 75
NewShipType.rotationMaxSpeed = 10
NewShipType.thrusterAccelTime = 20
NewShipType.thrusterBrakeTime = 6
NewShipType.mainEngineAccelTime = 20
NewShipType.mainEngineBrakeTime = 6
NewShipType.rotationAccelTime = 4
NewShipType.rotationBrakeTime = 2
NewShipType.thrusterUsage = 1
NewShipType.accelerationAngle = 25
NewShipType.mirrorAngle = 0
NewShipType.secondaryTurnAngle = 0
NewShipType.trailLinger = 0
--
--====================================================================================
-- MOVEMENT
--====================================================================================
--
NewShipType.maxBankingAmount = 80
NewShipType.descendPitch = 0
NewShipType.goalReachEpsilon = 5
NewShipType.slideMoveRange = 0
NewShipType.relativeMoveFactor = 6
NewShipType.collisionMultiplier = 3
--
--====================================================================================
-- CLASSIFICATIONS
--====================================================================================
--
NewShipType.ArmourFamily = "Gal_T1"
NewShipType.AttackFamily = "Carrier"
NewShipType.AutoFormationFamily = "Capital"
NewShipType.AvoidanceFamily = "CapitalShip"
NewShipType.BuildFamily = "Gal_Carrier"
NewShipType.CollisionFamily = "Big"
NewShipType.DisplayFamily = "Carrier"
NewShipType.DockFamily = "CantDock"
NewShipType.MinimalFamilyToFindPathAround = "CapitalShip"
NewShipType.UnitCapsFamily = "Carrier"
NewShipType.SquadronSize = 1
NewShipType.UnitCapsNumber = 1
NewShipType.militaryUnit = 1
--
--====================================================================================
-- SENSORS
--====================================================================================
--
NewShipType.visualRange = 100000
NewShipType.prmSensorRange = 100000
NewShipType.secSensorRange = 100000
NewShipType.detectionStrength = 1
--
--====================================================================================
-- COMBAT
--====================================================================================
--
NewShipType.useEngagementRanges = 0
NewShipType.retaliationRange = 4800
NewShipType.retaliationDistanceFromGoal = 160
--
--====================================================================================
-- UIVISIBILITY
--====================================================================================
--
NewShipType.healthBarStyle = 0
NewShipType.TOIcon = "Triangle"
NewShipType.TOScale = 1
NewShipType.TOGroupScale = 1
NewShipType.TOGroupMergeSize = 0
NewShipType.mouseOverMinFadeSize = 0.045
NewShipType.mouseOverMaxFadeSize = 0.1
NewShipType.TODistanceFade0 = 7000
NewShipType.TODistanceDisappear0 = 5000
NewShipType.TODistanceFade1 = 2500
NewShipType.TODistanceDisappear1 = 2000
NewShipType.TODistanceFade2 = 12000
NewShipType.TODistanceDisappear2 = 35000
--
--====================================================================================
-- MESHVISIBILITY
--====================================================================================
--
NewShipType.nlips = 0.0008
NewShipType.nlipsRange = 6000
NewShipType.nlipsFar = 0.0003
NewShipType.nlipsFarRange = 10000
NewShipType.SMRepresentation = "Mesh"
NewShipType.meshRenderLimit = 32500
NewShipType.dotRenderLimit = 10
NewShipType.visibleInSecondary = 0
NewShipType.goblinsStartFade = 200
NewShipType.goblinsOff = 200
NewShipType.minimumZoomFactor = 0.68
NewShipType.selectionLimit = 150000
NewShipType.preciseATILimit = 0
NewShipType.selectionPriority = 75
NewShipType.minLOD = 0.25
NewShipType.upLOD0 = 0
NewShipType.upLOD1 = 0
NewShipType.upLOD2 = 2500
NewShipType.downLOD0 = 0
NewShipType.downLOD1 = 0
NewShipType.downLOD2 = 2515
--
--====================================================================================
-- DOCKING
-- -Docking
--====================================================================================
--
NewShipType.dockTimeBetweenTwoFormations = 0.5
NewShipType.dockTimeBeforeStart = 0.5
NewShipType.dockNrOfShipsInDockFormation = 1
NewShipType.dockFormation = "dockline"
NewShipType.queueFormation = "n_delta"
NewShipType.ignoreRaceWhenDocking = 0
--
--====================================================================================
-- DOCKING
-- -Launching
--====================================================================================
--
NewShipType.launchTimeBetweenTwoFormations = 0.5
NewShipType.launchTimeBeforeStart = 0.5
NewShipType.launchNrOfShipsInDockFormation = 1
NewShipType.launchFormation = "n_delta"
--
--====================================================================================
-- DEATH
--====================================================================================
--
NewShipType.sobDieTime = 0.1
NewShipType.sobSpecialDieTime = 2
NewShipType.specialDeathSpeed = 40
NewShipType.chanceOfSpecialDeath = 0.25
NewShipType.deadSobFadeTime = 1
--
--====================================================================================
-- MISCMOVEMENT
--====================================================================================
--
NewShipType.controllerType = "Ship"
NewShipType.isTransferable = 1
NewShipType.tumbleStaticX = 10
NewShipType.tumbleStaticY = 20
NewShipType.tumbleStaticZ = 5
NewShipType.tumbleDynamicX = 2
NewShipType.tumbleDynamicY = 10
NewShipType.tumbleDynamicZ = 5
NewShipType.tumbleSpecialDynamicX = 800
NewShipType.tumbleSpecialDynamicY = 1000
NewShipType.tumbleSpecialDynamicZ = 700
NewShipType.swayUpdateTime = 2
NewShipType.swayOffsetRandomX = 10
NewShipType.swayOffsetRandomY = 10
NewShipType.swayOffsetRandomZ = 10
NewShipType.swayBobbingFactor = 0.05
NewShipType.swayRotateFactor = 0.1
--
--====================================================================================
-- AIVALUES
--====================================================================================
--
NewShipType.fighterValue = 0
NewShipType.corvetteValue = 0
NewShipType.frigateValue = 1
NewShipType.neutralValue = 0
NewShipType.antiFighterValue = 0
NewShipType.antiCorvetteValue = 0
NewShipType.antiFrigateValue = 1
NewShipType.totalValue = 1
--
--====================================================================================
-- SOUNDS
--====================================================================================
--
loadShipPatchList(NewShipType, "data:sound/sfx/ship/Hiigaran/Fighter/", 0, "HScoutEng", "")
--
--====================================================================================
-- NOT-YET-RECOGNIZED LINES
--====================================================================================
--
addAbility(NewShipType, "MoveCommand", 1, 0)
addAbility(NewShipType, "CanLaunch")
addAbility(NewShipType, "ParadeCommand", 1)
addAbility(NewShipType, "WaypointMove")
addAbility(NewShipType, "CanBuildShips", 1, "Gal_Drone, Gal_Frigate, Gal_Destroyer, Gal_Cruiser, Gal_Battlecruiser, Gal_Battleship, Gal_Dreadnought, Gal_Carrier, Gal_Industrial, Gal_Platform, Gal_SubSystem", "Frigate, Destroyer, Cruiser, Drone")
--addAbility(NewShipType, "CanAttack", 1, 1, 0, 0, 0.35, 1.5, "LightDrone, MediumDrone, HeavyDrone, FighterDrone, Frigate, Destroyer, Cruiser, Battlecruiser, Battleship, Dreadnought, Carrier, Mothership, Titan, Subsystem, Capturer, Platform, Station, Hauler", "broadside")
addAbility(NewShipType, "GuardCommand", 1, 3000, 500)
addAbility(NewShipType, "HyperspaceViaGateCommand", 1, 3, 1, 0.3)
addAbility(NewShipType, "ShipHold", 1, 0, 50, "rallypoint", "Frigate, Drone", 25,
{
Frigate = "12",
})
setEngineTrail(NewShipType, 0, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 40)
setEngineTrail(NewShipType, 1, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 40)
setEngineTrail(NewShipType, 2, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 40)
setEngineTrail(NewShipType, 3, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 40)
setEngineTrail(NewShipType, 4, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 40)
setEngineBurn(NewShipType, 1, 0.5, 1, 12, 0, 0.7, 0.1, 90)

NewShipType = StartShipConfig()
--
--====================================================================================
-- BASICINFO
--====================================================================================
--
NewShipType.displayedName = "Incursus"
NewShipType.sobDescription = "Frigate"
NewShipType.buildCost = 220000
NewShipType.buildTime = 20
NewShipType.buildPriorityOrder = 10
LoadModel(NewShipType,1)
--
--====================================================================================
-- PHYSICALSTATS
--====================================================================================
--
NewShipType.mass = 110
NewShipType.maxhealth = 294
NewShipType.regentime = 500
NewShipType.minRegenTime = 0
NewShipType.sideArmourDamage = 1
NewShipType.rearArmourDamage = 1
NewShipType.dustCloudDamageTime = 100
NewShipType.nebulaDamageTime = 20
--
--====================================================================================
-- FORMATIONS
--====================================================================================
--
NewShipType.passiveFormation = "Broad"
NewShipType.defensiveFormation = "Delta"
NewShipType.aggressiveFormation = "Claw"
NewShipType.formationSpacing = 25
--
--====================================================================================
-- PROPULSION
--====================================================================================
--
NewShipType.thrusterMaxSpeed = 600
NewShipType.mainEngineMaxSpeed = 600
NewShipType.rotationMaxSpeed = 90
NewShipType.thrusterAccelTime = 3
NewShipType.thrusterBrakeTime = 1
NewShipType.mainEngineAccelTime = 3
NewShipType.mainEngineBrakeTime = 1
NewShipType.rotationAccelTime = 1
NewShipType.rotationBrakeTime = 0.3
NewShipType.thrusterUsage = 1
NewShipType.accelerationAngle = 170
NewShipType.mirrorAngle = 30
NewShipType.secondaryTurnAngle = 90
NewShipType.trailLinger = 0
--
--====================================================================================
-- MOVEMENT
--====================================================================================
--
NewShipType.maxBankingAmount = 120
NewShipType.descendPitch = 0
NewShipType.goalReachEpsilon = 5
NewShipType.slideMoveRange = 0
NewShipType.relativeMoveFactor = 6
NewShipType.collisionMultiplier = 3
--
--====================================================================================
-- CLASSIFICATIONS
--====================================================================================
--
NewShipType.ArmourFamily = "Gal_T1"
NewShipType.AttackFamily = "Frigate"
NewShipType.AutoFormationFamily = "Frigate"
NewShipType.AvoidanceFamily = "SmallShip"
NewShipType.BuildFamily = "Gal_Frigate"
NewShipType.CollisionFamily = "Small"
NewShipType.DisplayFamily = "Frigate"
NewShipType.DockFamily = "Frigate"
NewShipType.MinimalFamilyToFindPathAround = "MediumShip"
NewShipType.UnitCapsFamily = "Frigate"
NewShipType.SquadronSize = 1
NewShipType.UnitCapsNumber = 3
NewShipType.militaryUnit = 1
--
--====================================================================================
-- SENSORS
--====================================================================================
--
NewShipType.visualRange = 38000
NewShipType.prmSensorRange = 38000
NewShipType.secSensorRange = 38000
NewShipType.detectionStrength = 1
--
--====================================================================================
-- COMBAT
--====================================================================================
--
NewShipType.useEngagementRanges = 0
NewShipType.retaliationRange = 4800
NewShipType.retaliationDistanceFromGoal = 160
--
--====================================================================================
-- UIVISIBILITY
--====================================================================================
--
NewShipType.healthBarStyle = 0
NewShipType.TOIcon = "Triangle"
NewShipType.TOScale = 1
NewShipType.TOGroupScale = 1
NewShipType.TOGroupMergeSize = 0
NewShipType.mouseOverMinFadeSize = 0.045
NewShipType.mouseOverMaxFadeSize = 0.1
NewShipType.TODistanceFade0 = 7000
NewShipType.TODistanceDisappear0 = 5000
NewShipType.TODistanceFade1 = 2500
NewShipType.TODistanceDisappear1 = 2000
NewShipType.TODistanceFade2 = 12000
NewShipType.TODistanceDisappear2 = 35000
--
--====================================================================================
-- MESHVISIBILITY
--====================================================================================
--
NewShipType.nlips = 0.0008
NewShipType.nlipsRange = 6000
NewShipType.nlipsFar = 0.0003
NewShipType.nlipsFarRange = 10000
NewShipType.SMRepresentation = "HardDot"
NewShipType.meshRenderLimit = 10400
NewShipType.dotRenderLimit = 10
NewShipType.visibleInSecondary = 0
NewShipType.goblinsStartFade = 200
NewShipType.goblinsOff = 200
NewShipType.minimumZoomFactor = 0.68
NewShipType.selectionLimit = 150000
NewShipType.preciseATILimit = 0
NewShipType.selectionPriority = 75
--
--====================================================================================
-- DOCKING
-- -Docking
--====================================================================================
--
NewShipType.dockTimeBetweenTwoFormations = 0.5
NewShipType.dockTimeBeforeStart = 0.5
NewShipType.dockNrOfShipsInDockFormation = 1
NewShipType.dockFormation = "dockline"
NewShipType.queueFormation = "n_delta"
NewShipType.ignoreRaceWhenDocking = 0
--
--====================================================================================
-- DOCKING
-- -Launching
--====================================================================================
--
NewShipType.launchTimeBetweenTwoFormations = 0.5
NewShipType.launchTimeBeforeStart = 0.5
NewShipType.launchNrOfShipsInDockFormation = 1
NewShipType.launchFormation = "n_delta"
--
--====================================================================================
-- WEAPONRY
--====================================================================================
--
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret1", "Fire1")
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret2", "Fire2")
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret3", "Fire3")
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret4", "Fire4")
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret5", "Fire5")
StartShipWeaponConfig(NewShipType, "lightionblaster1", "Weapon_Turret6", "Fire6")
--
--====================================================================================
-- DEATH
--====================================================================================
--
NewShipType.sobDieTime = 0.1
NewShipType.sobSpecialDieTime = 2
NewShipType.specialDeathSpeed = 40
NewShipType.chanceOfSpecialDeath = 0
NewShipType.deadSobFadeTime = 1
--
--====================================================================================
-- MISCMOVEMENT
--====================================================================================
--
NewShipType.controllerType = "Ship"
NewShipType.isTransferable = 1
NewShipType.tumbleStaticX = 10
NewShipType.tumbleStaticY = 20
NewShipType.tumbleStaticZ = 5
NewShipType.tumbleDynamicX = 2
NewShipType.tumbleDynamicY = 10
NewShipType.tumbleDynamicZ = 5
NewShipType.tumbleSpecialDynamicX = 800
NewShipType.tumbleSpecialDynamicY = 1000
NewShipType.tumbleSpecialDynamicZ = 700
NewShipType.swayUpdateTime = 2
NewShipType.swayOffsetRandomX = 10
NewShipType.swayOffsetRandomY = 10
NewShipType.swayOffsetRandomZ = 10
NewShipType.swayBobbingFactor = 0.05
NewShipType.swayRotateFactor = 0.1
--
--====================================================================================
-- AIVALUES
--====================================================================================
--
NewShipType.fighterValue = 0
NewShipType.corvetteValue = 0
NewShipType.frigateValue = 1
NewShipType.neutralValue = 0
NewShipType.antiFighterValue = 0
NewShipType.antiCorvetteValue = 0
NewShipType.antiFrigateValue = 1
NewShipType.totalValue = 1
--
--====================================================================================
-- SOUNDS
--====================================================================================
--
loadShipPatchList(NewShipType, "data:sound/sfx/ship/Hiigaran/Fighter/", 0, "HScoutEng", "")
--
--====================================================================================
-- NOT-YET-RECOGNIZED LINES
--====================================================================================
--
addAbility(NewShipType, "MoveCommand", 1, 0)
addAbility(NewShipType, "CanDock", 1, 1)
addAbility(NewShipType, "CanLaunch")
addAbility(NewShipType, "WaypointMove")
addAbility(NewShipType, "CanAttack", 1, 1, 0, 0, 0.35, 1.5, "LightDrone, MediumDrone, HeavyDrone, FighterDrone, Frigate, Destroyer, Cruiser, Battlecruiser, Battleship, Dreadnought, Carrier, Mothership, Titan, Subsystem, Capturer, Platform, Station, Industrial", "orbit_2000",
{
Titan = "MoveToTargetAndShoot",
},
{
Station = "MoveToTargetAndShoot", })
addAbility(NewShipType, "GuardCommand", 1, 3000, 500)
addAbility(NewShipType, "HyperspaceViaGateCommand", 1, 3, 1, 0.3)
addAbility(NewShipType, "RetireAbility", 1, 1)
addAbility(NewShipType, "ParadeCommand", 1)
setEngineTrail(NewShipType, 0, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 3)
setEngineTrail(NewShipType, 1, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 3)
setEngineTrail(NewShipType, 2, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 3)
setEngineTrail(NewShipType, 3, 3, "trail_ribbon.tga", 0, 0.5, 0.025, 6)
setEngineBurn(NewShipType, 1, 0.5, 1, 12, 0, 0.7, 0.1, 15)

buildFamily =
{
{
name = "Amr_Drone", },
{
name = "Amr_Frigate", },
{
name = "Amr_Destroyer", },
{
name = "Amr_Cruiser", },
{
name = "Amr_Battlecruiser", },
{
name = "Amr_Battleship", },
{
name = "Amr_Dreadnought", },
{
name = "Amr_Carrier", },
{
name = "Amr_Titan", },
{
name = "Amr_Industrial", },
{
name = "Amr_Platform", },
{
name = "Amr_SubSystem", },
{
name = "Cal_Drone", },
{
name = "Cal_Frigate", },
{
name = "Cal_Destroyer", },
{
name = "Cal_Cruiser", },
{
name = "Cal_Battlecruiser", },
{
name = "Cal_Battleship", },
{
name = "Cal_Dreadnought", },
{
name = "Cal_Carrier", },
{
name = "Cal_Titan", },
{
name = "Cal_Industrial", },
{
name = "Cal_Platform", },
{
name = "Cal_SubSystem", },
{
name = "Gal_Drone", },
{
name = "Gal_Frigate", },
{
name = "Gal_Destroyer", },
{
name = "Gal_Cruiser", },
{
name = "Gal_Battlecruiser", },
{
name = "Gal_Battleship", },
{
name = "Gal_Dreadnought", },
{
name = "Gal_Carrier", },
{
name = "Gal_Titan", },
{
name = "Gal_Industrial", },
{
name = "Gal_Platform", },
{
name = "Gal_SubSystem", },
{
name = "Min_Drone", },
{
name = "Min_Frigate", },
{
name = "Min_Destroyer", },
{
name = "Min_Cruiser", },
{
name = "Min_Battlecruiser", },
{
name = "Min_Battleship", },
{
name = "Min_Dreadnought", },
{
name = "Min_Carrier", },
{
name = "Min_Titan", },
{
name = "Min_Industrial", },
{
name = "Min_Platform", },
{
name = "Min_SubSystem", },
{
name = "MiningBarge", },
{
name = "SubSystem_Hgn", },
{
name = "NotBuildable", },
}
displayFamily =
{
{
name = "Drone",
stringParam = "Drone",
numParam = 1, },
{
name = "Frigate",
stringParam = "Frigate",
numParam = 2, },
{
name = "Destroyer",
stringParam = "Destroyer",
numParam = 3, },
{
name = "Cruiser",
stringParam = "Cruiser",
numParam = 4, },
{
name = "Battlecruiser",
stringParam = "Battlecruiser",
numParam = 6, },
{
name = "Battleship",
stringParam = "Battleship",
numParam = 7, },
{
name = "Dreadnought",
stringParam = "Dreadnought",
numParam = 8, },
{
name = "Carrier",
stringParam = "Carrier",
numParam = 9, },
{
name = "Mothership",
stringParam = "Mothership",
numParam = 10, },
{
name = "Titan",
stringParam = "Titan",
numParam = 11, },
{
name = "Munition",
stringParam = "$2109",
numParam = 12, },
{
name = "Subsystem",
stringParam = "Subsystem",
numParam = 13, },
{
name = "Platform",
stringParam = "Platform",
numParam = 14, },
{
name = "Station",
stringParam = "Station",
numParam = 15, },
{
name = "Megalith",
stringParam = "$2110",
numParam = 16, },
}
attackFamily =
{
{
name = "LightDrone",
numParam = 1, },
{
name = "MediumDrone",
numParam = 1, },
{
name = "HeavyDrone",
numParam = 1, },
{
name = "FighterDrone",
numParam = 1, },
{
name = "Frigate",
numParam = 1, },
{
name = "Destroyer",
numParam = 1, },
{
name = "Cruiser",
numParam = 1, },
{
name = "Battlecruiser",
numParam = 1, },
{
name = "Battleship",
numParam = 1, },
{
name = "Dreadnought",
numParam = 1, },
{
name = "Carrier",
numParam = 1, },
{
name = "Mothership",
numParam = 1, },
{
name = "Titan",
numParam = 1, },
{
name = "Subsystem",
numParam = 1, },
{
name = "Resource",
numParam = 1, },
{
name = "ResourceLarge",
numParam = 1, },
{
name = "Capturer",
numParam = 1, },
{
name = "Platform",
numParam = 1, },
{
name = "Station",
numParam = 1, },
{
name = "Industrial",
numParam = 1, },
{
name = "Unattackable",
numParam = 1, },
}
dockFamily =
{
{
name = "Drone", },
{
name = "Frigate", },
{
name = "Destroyer", },
{
name = "Cruiser", },
{
name = "Battlecruiser", },
{
name = "Battleship", },
{
name = "Dreadnought", },
{
name = "Carrier", },
{
name = "Mothership", },
{
name = "Titan", },
{
name = "Platform", },
{
name = "Resource", },
{
name = "Salvage", },
{
name = "LargeSalvage", },
{
name = "Industrial", },
{
name = "CantDock", },
}
avoidanceFamily =
{
{
name = "None",
numParam = 0, },
{
name = "DontAvoid",
numParam = 1, },
{
name = "SmallShip",
numParam = 2, },
{
name = "MediumShip",
numParam = 3, },
{
name = "LargeShip",
numParam = 4, },
{
name = "SmallRock",
numParam = 5, },
{
name = "CapitalShip",
numParam = 6, },
{
name = "BigRock",
numParam = 7, },
{
name = "SuperPriority",
numParam = 8, },
}
collisionFamily =
{
{
name = "Small",
numParam = 0, },
{
name = "Big",
numParam = 1, },
{
name = "Unmoveable",
numParam = 2, },
}
autoFormationFamily =
{
{
name = "Frigate",
numParam = 0, },
{
name = "Destroyer",
numParam = 1, },
{
name = "Cruiser",
numParam = 2, },
{
name = "Battlecruiser",
numParam = 3, },
{
name = "Battleship",
numParam = 4, },
{
name = "Capital",
numParam = 5, },
}
armourFamily =
{
{
name = "Amr_T1", },
{
name = "Cal_T1", },
{
name = "Gal_T1", },
{
name = "Min_T1", },
{
name = "SubSystemArmour", },
{
name = "Unarmoured", },
}
unitcapsFamily =
{
{
name = "Drone",
numParam = 1,
stringParam = "Drone", },
{
name = "Frigate",
numParam = 2,
stringParam = "Frigate", },
{
name = "Destroyer",
numParam = 3,
stringParam = "Destroyer", },
{
name = "Cruiser",
numParam = 4,
stringParam = "Cruiser", },
{
name = "Battlecruiser",
numParam = 5,
stringParam = "Battlecruiser", },
{
name = "Battleship",
numParam = 6,
stringParam = "Battleship", },
{
name = "Dreadnought",
numParam = 7,
stringParam = "Dreadnought", },
{
name = "Carrier",
numParam = 8,
stringParam = "Carrier", },
{
name = "Mothership",
numParam = 9,
stringParam = "Mothership", },
{
name = "Titan",
numParam = 10,
stringParam = "Titan", },
{
name = "Platform",
numParam = 11,
stringParam = "Platform", },
{
name = "Industrial",
numParam = 12,
stringParam = "Industrial", },
}
unitcapsShipType =
{
{
name = "MinelayerCorvette",
numParam = 11,
stringParam = "$2135", },
{
name = "Mover",
numParam = 12,
stringParam = "$2121", },
{
name = "TorpedoFrigate",
numParam = 21,
stringParam = "$2122", },
{
name = "CaptureFrigate",
numParam = 22,
stringParam = "$2123", },
{
name = "DefenseFieldFrigate",
numParam = 23,
stringParam = "$2124", },
{
name = "Destroyer",
numParam = 31,
stringParam = "$2125", },
{
name = "Carrier",
numParam = 32,
stringParam = "$2126", },
{
name = "Battlecruiser",
numParam = 33,
stringParam = "$2127", },
{
name = "Shipyard",
numParam = 34,
stringParam = "$2128", },
{
name = "Stargate",
numParam = 41,
stringParam = "Stargate", },
{
name = "ResourceCollector",
numParam = 51,
stringParam = "$2130", },
{
name = "ResourceController",
numParam = 52,
stringParam = "$2131", },
}


I would greatly appreciate any words of wisdom to help me solve this irritating problem.

Le Sun Tzu
24th Feb 07, 5:48 AM
Sorry if the question is candid, but it is not clear in you post. Did you specify the Frigate family within the HOD dock path info?

Zatch
24th Feb 07, 5:57 AM
Yes, both Frigate and Drone are included. I made it with CFHodEd using the string "Frigate, Drone" minus the quotes. I also tried it with just "Frigate" but that yielded the same results.

Also I'm sure the family associations are working because they show up in the HOD file and the game doesn't crash (e.g. from missing family names) when I load it up.

Airac
24th Feb 07, 7:50 AM
Though it may seem a hassle, try using HardEd to try and manually find out the problem in the text version. You can also see if your dockpaths are working by using your gal_thanatos ship to build a frigate and see if it uses your exit dockpath.

Mikail
24th Feb 07, 12:49 PM
You also might want to try out the path with a generic fighter first in order to eliminate some of the possible reasons.

Zatch
24th Feb 07, 6:15 PM
I'll give those suggestions a try, thanks.

Edit:
1) Building a frigate did not work, the ship won't build since it is unable to undock and does not have the hyperspace ability.
2) Adding Fighter to the list of acceptable dock families and then spawning a hgn_interceptor did not work, they just appear near the ship when the map loads just like the frigates.
3) HardEd and HODEd both crash when attempting to load the file.

The text-based dockpath editor reads out like so:
NumberOfPaths=2
path1={
AttachObject=world
NumberOfParams=10
Exit=1
Latch=0
Tolerance=0.000000
CanDock=Frigate, Drone, Fighter
UseAnimation=0
ShareWithPaths=none
NumberOfPoints=3
point0={
Position={
x=-36.000000
y=-16.000000
z=356.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=5.000000
DropFocus=0
MaxSpeed=0.000000
CheckRotation=0
Slide=0
PlayerHasControl=0
QueueOrigin=0
ClipPlane=0
ClearReservation=0
}
point1={
Position={
x=-36.000000
y=-16.000000
z=8000.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=50.000000
DropFocus=0
MaxSpeed=200.000000
CheckRotation=0
Slide=0
PlayerHasControl=0
QueueOrigin=0
ClipPlane=0
ClearReservation=1
}
point2={
Position={
x=-36.000000
y=-16.000000
z=15000.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=100.000000
DropFocus=0
MaxSpeed=200.000000
CheckRotation=0
Slide=0
PlayerHasControl=1
QueueOrigin=0
ClipPlane=0
ClearReservation=0
}
}
path2={
AttachObject=world
NumberOfParams=10
Exit=0
Latch=0
Tolerance=0.000000
CanDock=Frigate, Drone, Fighter
UseAnimation=0
ShareWithPaths=none
NumberOfPoints=3
point0={
Position={
x=54.000000
y=-16.000000
z=15000.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=5000.000000
DropFocus=0
MaxSpeed=200.000000
CheckRotation=0
Slide=0
PlayerHasControl=0
QueueOrigin=1
ClipPlane=0
ClearReservation=0
}
point1={
Position={
x=54.000000
y=-16.000000
z=8000.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=20.000000
DropFocus=0
MaxSpeed=200.000000
CheckRotation=0
Slide=0
PlayerHasControl=0
QueueOrigin=0
ClipPlane=0
ClearReservation=1
}
point2={
Position={
x=54.000000
y=-16.000000
z=356.000000
}
Angles={
x=0.000000
y=0.000000
z=0.000000
}
UseRotation=0
Tolerance=10.000000
DropFocus=0
MaxSpeed=200.000000
CheckRotation=0
Slide=0
PlayerHasControl=0
QueueOrigin=0
ClipPlane=0
ClearReservation=0
}
}

Possible reasons for this problem:

1) Dockpath improperly formatted.
2) Ships lack the dock/launch/shiphold ability.
3) Incorrect dockfamily on the frigate.

Le Sun Tzu
25th Feb 07, 1:59 AM
If you export the hod script from CFHodEd, does the dockpath info look correct?

Btw I thought that ClearReservation was meant for latch paths only.

Edit: I would try two things:

- In case there has been a writing error, export the Hod script from CFHodEd, check the dockpath info and save it in another hsc file, delete the dockpath from the hod, and reimport it by script.

- Put the carier abilities in Relic's order in the .ship file.

Airac
25th Feb 07, 2:13 AM
HardEd.. wow I'm and idiot. I meant to say DOCK, but you got it. Anyways, even if you don't have the hyperspace ability on your ships, it should still hyperspace in when it's done being built.

Also, normally when things crash on loading a file, it's something with the hod.

Zatch
25th Feb 07, 3:13 AM
Experience tells me they don't. The ships have the dock ability so the game won't allow forced hyperspacing. I'll give those suggestions a try, Le Sun Tzu.

Edit: I exported the *.hsc, checked it, removed the ClearReservation tag, cleared the dockpaths in CFHodEd, and reimported the paths, still no luck. Also I already changed the order of the abilities before, I copied from the hgn_battlecruiser and made the necessary family adjustments.

These dockpaths are really starting to piss me off.

Edit2: I am certain at this point that it is a scripting error. I just exported the HOD script from the hgn_carrier, moved the end/start points for the exit/enter paths (respectively) outside of the BNDV, and still the ships will not dock/launch.

Zatch
27th Feb 07, 8:13 AM
:bump:

Just letting you all know I solved it. The problem was, in fact, a scripting error. As it turns out, the LoadModel() or LoadSharedModel() line needs to be near the bottom of the *.ship file for docking to work correctly. I found that placing it just above the engine trail lines works perfectly fine, although it may need to be above other hardpoints if they exist (this ship currently does not have any.)

gthompsn
4th Oct 07, 1:51 PM
@ Zatch : thanks I've been having problems with dockpaths myself. I haven't finished stepping through everything yet, but this thread has been a very helpful place to start.

Caysi
5th Oct 07, 5:31 AM
Modding 101: take something similar before creating your own.
I personally opened both my ship and the shipyard in CFHodEdit and then worked out how to do it from the information given, basically I copied first, then edited, don't try and do too much.
Also, the loadmodel() is a necessary part of each ship IIRC, without it the ship is pretty much void.
All hardpoints are placed below loadmodel() in stock ships so I'd do the same, just to be sure.