Evil AT-ST view problem

In this forum you will find and post information regarding the modding of Star Wars Battlefront 2. DO NOT POST MOD IDEAS/REQUESTS.

Moderator: Moderators

Post Reply
ARC_Commander
High General
High General
Posts: 838
Joined: Tue Feb 06, 2007 7:18 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Evil AT-ST view problem

Post by ARC_Commander »

Some of you who have played BFX may be familiar with this problem.

Image

The hateful, horrible, awful AT-ST view bug! I have no idea how to fix it. It appears to be that the pilot's view point (the gunner is fine) is right between the two feet of the AT-ST. Here's my code:
Hidden/Spoiler:
[GameObjectClass]
ClassLabel = "walker"
GeometryName = "imp_walk_atst.msh"

[Properties]

//***********************************************
//*********** VEHICLE VALUES AND INFO *********
//***********************************************

WALKERSECTION = "BODY"
VehicleType = "medium"
Label = "AT-ST"
VehiclePosition = "common.vehiclepositions.pilot"

GeometryName = "imp_walk_atst"
AnimationName = "imp_walk_atst"
ExplosionName = "imp_walk_atst_exp"
ExplosionOffset = "0.0 5.9058 0.1833"
DeathAnimationExplosion = "atat_explosion"
DeathAnimationExplosionTime = "1.5"
FinalExplosion = "imp_walk_atst_finalexp"
FinalExplosionOffset = "5.5808 1.9066 -0.8685"
FirstPerson = "IMP\ATST;imp_1st_cockpit_atst"
FirstPersonFOV = "52"

CockpitTension = 25

MapTexture = "atst_icon"
StatusTexture = "HUD_imp_atst_icon"
MapScale = "1.6"

TimeRequiredToEject = "10.0"
EjectResistance = "0.03"
TimeTilReboard = "5.0"

//***********************************************
//*********** MOVEMENT VALUES *****************
//***********************************************

MaxTerrainAngle = "30.0"

Acceleraton = "2.4"
MaxSpeed = "7.0"
MaxStrafeSpeed = "3.5"
//MaxTurnSpeed = "0.6"

StoppedTurnSpeed = "0.5"
ForwardTurnSpeed = "0.5"
BoostTurnSpeed = "0.3"
TurnThreshold = "0.6"

SteerAtYawLimit = "1"
SteerAtStrafeLimit = "0"
CorrectAimForSteering = "1"
SteerTowardAimFactor = "0.0"
ReverseBackwardSteering = "1" //steer in reverse like a car - ThrustAngleToStrafe works more intuitively this way
ThrustAngleToStrafe = "87" //should match yaw limit or 0.0
ThrustAngleToTurn = "88" //thrust angle to reach full forward turn speed
ThrustAngleToStop = "89" //thrust angle to turn in place

LegRayHitLength = "5"

EnergyBar = 80
EnergyAutoRestore = 9.0
EnergyBoostDrain = 20
BoostSpeed = 10
BoostAcceleration = 100.0
BoostFOV = 60

AIUseHoverPhysics = "1"

//***********************************************
//*********** CAMERA VALUES *******************
//***********************************************

EyePointOffset = "0.0 8.0 0.0"
TrackCenter = "0.0 9.25 -3.0"
TrackOffset = "0.0 0.0 13.0"
TiltValue = "6.0"

YawLimits = "-90 90"
PitchLimits = "-35 40"

MaxPitchSpeed = "0.4"
MaxYawSpeed = "0.7"
MaxTurnSpeed = "1.5"

PCMaxYawSpeed = 2.0
PCMaxTurnSpeed = 2.0
PCPitchRate = 1.6


//***********************************************
//*********** MAIN WEAPON VALUES **************
//***********************************************

WEAPONSECTION = 1

WeaponName = "imp_weap_walk_atst_cannon_chin"
WeaponAmmo = "0"

HierarchyLevel = "1"
AimerNodeName = "cube5"
AimerYawLimits = "-90 90"
AimerPitchLimits = "-5 20"

//NextAimer = "-"

//AimerNodeName = "aimer_mouthpivot"
//AimerYawLimits = "0 0"
//AimerPitchLimits = "-30 20"

BarrelNodeName = "barrel_lgun"
FirePointName = "hp_cannon_1"
BarrelRecoil = "0.3"

NextBarrel = "-"

BarrelNodeName = "barrel_rgun"
FirePointName = "hp_cannon_2"
BarrelRecoil = "0.3"

WEAPONSECTION = 2

WeaponName = "rep_weap_walk_oneman_atst_cannon"
WeaponAmmo = "0"

AimerYawLimits = "-90 25"
AimerPitchLimits = "-25 25"
AimerNodeName = "aimer_Reargun"
FirePointName = "hp_gun_2"

//***********************************************
//****** SECONDARY POSITION WEAPON VALUES *****
//***********************************************

WALKERSECTION = "TURRET1"

//FirstPerson = "IMP\IMPATSTG;imp_1st_cockpit_ATSTgnr"
FirstPersonFOV = "52"
MountPos = "0.0 8.0 0.0"
VehiclePosition = "common.vehiclepositions.copilot"

CockpitTension = 25

YawLimits = "-30 90"
PitchLimits = "-30 90"
//PCPitchTurnFactor = "20.0"
//PCYawTurnFactor = "20.0"
EyePointOffset = "0.0 0.0 0.0"
TrackOffset = "0.0 1.0 5.0"
TiltValue = "9.0"
//
//TurretYawSound = "turret_whir_yaw_lp_distant"
//TurretYawSoundPitch = "0.7"
//TurretPitchSound = "turret_whir_pitch_lp_distant"
//TurretPitchSoundPitch = "0.7"
//TurretAmbientSound = ""
//TurretActivateSound = "vehicle_equip"
//TurretDeactivateSound = ""
//TurretStartSound = ""
//TurretStopSound = ""
//CockpitChatterStream = "imp_off_atst_radiochatter"

WEAPONSECTION = 1

WeaponName = "imp_weap_walk_atst_cannon_head"
WeaponAmmo = "0"

AimerYawLimits = "-90 25"
AimerPitchLimits = "-25 25"
AimerNodeName = "aimer_Reargun"
FirePointName = "hp_gun_2"

//***********************************************
//*********** ANIMATION VALUES ****************
//***********************************************

TEMP_AnimationSpeed = "1.0"
TEMP_Type = "0"

TerrainCollision = "p_l_foot"
TerrainCollision = "p_r_foot"

BuildingCollision = "p_sphere_lfoot"
BuildingCollision = "p_sphere_rfoot"
BuildingCollisionPrim = "BldgCylinder aacylinder NULL 0.0 4.7 0.0 3.0 7.6 0.0"

SoldierCollision = "p_sphere_lfoot"
SoldierCollision = "p_sphere_rfoot"
SoldierCollision = "p_head"
SoldierCollision = "p_r_ankle"
SoldierCollision = "p_r_leg"
SoldierCollision = "p_r_thigh"
SoldierCollision = "p_l_ankle"
SoldierCollision = "p_l_leg"
SoldierCollision = "p_l_thigh"

TargetableCollision = "p_head"

//******************************************
//*********** EFFECT VALUES **************
//******************************************

StompEffect = "com_sfx_walkerstomp"
StompDecal = "decal_atst_footprint"

LegPairCount = "1"

WalkerLegPair = "LEGS"

LegBoneLeft = "bone_l_thigh"
LegBoneRight = "bone_r_thigh"

LegBoneTopLeft = "bone_l_thigh"
LegBoneTopRight = "bone_r_thigh"

TerrainLeft = "p_l_foot"
TerrainRight = "p_r_foot"

FootBoneLeft = "bone_l_toe"
FootBoneRight = "bone_r_toe"

AISizeType = "MEDIUM"

//***********************************************
//*********** DAMAGE VALUES *******************
//***********************************************

MaxHealth = "15000.0" //was 4600 changed 6/7/04, was 6600 changed 4/7/05
HitLocation = "p_crit_hit 4.0"

DamageStartPercent = 75.0
DamageStopPercent = 30.0
DamageEffect = "com_sfx_vehiclespark"
DamageAttachPoint = "bone_l_calf"

DamageStartPercent = 75.0
DamageStopPercent = 30.0
DamageEffect = "com_sfx_vehiclespark"
DamageAttachPoint = "bone_r_calf"

DamageStartPercent = 65.0
DamageStopPercent = 30.0
DamageEffect = "com_sfx_vehiclespark"
DamageAttachPoint = "bone_l_foot"

DamageStartPercent = 65.0
DamageStopPercent = 30.0
DamageEffect = "com_sfx_vehiclespark"
DamageAttachPoint = "bone_r_foot"

DamageStartPercent = 50.0
DamageStopPercent = 20.0
DamageEffect = "com_sfx_vehiclesmoke"
DamageEffectScale = 1.0
DamageInheritVelocity = 0.0
DamageAttachPoint = "hp_damage_1"

DamageStartPercent = 19.0
DamageStopPercent = 0.5
DamageEffect = "com_sfx_vehicleflame"
DamageEffectScale = 1.0
DamageInheritVelocity = 0.0
DamageAttachPoint = "hp_damage_2"

DamageStartPercent = 19.0
DamageStopPercent = 0.5
DamageEffect = "com_sfx_vehicleflame"
DamageEffectScale = 1.0
DamageInheritVelocity = 0.0
DamageAttachPoint = "hp_damage_3"

//***********************************************
//*********** DAMAGE EFFECT VALUES ************
//***********************************************


CHUNKSECTION = "CHUNK1"
ChunkGeometryName = "imp_walk_atst_chunk1"
ChunkNodeName = ""
ChunkTerrainCollisions = "2"
ChunkTerrainEffect = "dirtspray"
ChunkPhysics = "FULL"
ChunkOmega = "2.0 2.0 1.5"
ChunkBounciness = 0.65
ChunkStickiness = 0.25
ChunkSpeed = "10.0"
ChunkUpFactor = "6.00"
ChunkTrailEffect = "com_sfx_chunktrail_sm"

CHUNKSECTION = "CHUNK2"
ChunkGeometryName = "imp_walk_atst_chunk2"
ChunkNodeName = ""
ChunkTerrainCollisions = "2"
ChunkTerrainEffect = "com_sfx_explosion_lg"
ChunkPhysics = "FULL"
ChunkOmega = "2.0 1.0 1.0"
ChunkBounciness = 0.35
ChunkStickiness = 0.45
ChunkSpeed = "9.0"
ChunkUpFactor = "5.00"
ChunkTrailEffect = "com_sfx_chunktrail_sm"

CHUNKSECTION = "CHUNK3"
ChunkGeometryName = "imp_walk_atst_chunk3"
ChunkNodeName = ""
ChunkTerrainCollisions = "5"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunktrail_sm"
ChunkPhysics = "FULL"
ChunkOmega = "1.0 1.0 1.0"
ChunkBounciness = 0.25
ChunkStickiness = 0.25
ChunkSpeed = "6.0"

ChunkSmokeEffect = "com_sfx_smokeplume"
ChunkSmokeNodeName = "hp_smoke2"

CHUNKSECTION = "CHUNK4"
ChunkGeometryName = "imp_walk_atst_chunk4"
ChunkNodeName = ""
ChunkTerrainCollisions = "2"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunktrail_sm"
ChunkPhysics = "FULL"
ChunkOmega = "3.0 1.0 1.5"
ChunkBounciness = 0.55
ChunkStickiness = 0.25
ChunkSpeed = "5.0"

ChunkSmokeEffect = "com_sfx_smokeplume"
ChunkSmokeNodeName = "hp_smoke1"

//*****************************************
//*********** SOUND VALUES **************
//*****************************************

VOUnitType = 49
FootstepSound0 = "com_weap_layered_at_step"
FootstepSound1 = "com_weap_layered_at_step"
HydraulicSound = "atst_leg_up"
HydraulicSoundHeight = "0.2"
HydraulicLowerSound = ""
//HydraulicLowerHeight = "0.5"
HurtSound = ""
DeathSound = "imp_weap_ord_exp_lg"
VehicleCollisionSound ="com_veh_collision_lg"
AllMusic = "all_vehicle"
ImpMusic = "imp_vehicle"
CisMusic = "cis_vehicle"
MusicSpeed = "0.2"
MusicDelay = "4.0"
EngineSound = "atst_engine_parameterized"
TurnOnSound = ""
TurnOnTime = "1.0"
TurningOffSound = ""
TurnOffSound = ""
TurnOffTime = "5.0"
//FoleyFXClass = "imp_walk_atst"
FoleyFXGroup = "metal_foley"
Last edited by ARC_Commander on Mon Jul 07, 2008 11:02 am, edited 1 time in total.
User avatar
Teancum
Jedi Admin
Jedi Admin
Posts: 11080
Joined: Wed Sep 07, 2005 11:42 pm
Projects :: No Mod project currently.
Games I'm Playing :: Destiny
xbox live or psn: No gamertag set
Location: Indiana

Re: Evil AT-ST view problem

Post by Teancum »

Are the camera values any different than the default AT-AT?
MercuryNoodles
Jedi
Jedi
Posts: 1003
Joined: Sun Mar 12, 2006 7:16 pm
Projects :: Space - Boarding Action
xbox live or psn: No gamertag set

Re: Evil AT-ST view problem

Post by MercuryNoodles »

Have you tried changing the y value for EyePointOffset, TrackCenter, or TrackOffset, yet? If not, see if changing it for any of those yields any results at all. From what I see, the odf appears as it should, but I don't think it'd hurt to see if you can move the camera a little and work from there.

Also, the gunner position has something the main section does not:

Code: Select all

MountPos = "0.0 8.0 0.0"



Oh, one other thing occurred to me. You could try replacing the main camera values with that of the gunner position to see if that makes it better. This is somewhat counter-intuitive to me, though, since the difference in the y values on the EyePointOffset line in each position would suggest a negative y value would raise the camera. Honestly, I'd say don't try a negative value, since I'm pretty sure it'd set the camera under the terrain, unless someone doesn't know how to graph. :P I'm guessing this difference has to do with the MountPos line being present. Changing the TrackOffset looks somewhat promising, though, from glancing at the numbers.


Granted, I'm speculating quite a bit, but you don't stand to lose much if I'm wrong.


..................................


*sighs* Excuse the rambling, if you could. I should be asleep by now. Here's the thing; the EyePointOffset looks like it's as it should be given the two different approaches, the TrackCenter is apparently the same for both, and TrackOffset appears to be the only real difference. Hopefully, if I've thought this through correctly, I have this narrowed down to changing the y value of TrackOffset for the pilot to something close to what the gunner uses.
ARC_Commander
High General
High General
Posts: 838
Joined: Tue Feb 06, 2007 7:18 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Re: Evil AT-ST view problem

Post by ARC_Commander »

Okay, the problem is not resolved. But I have collected some more information about it.

1. Does not affect every AT-ST on the map. On Hoth, it only affects the one that spawned at the CP nearest to the AT-AT spawn point.

2. Does not have something to do with the view settings. It has something to do with the geometry, or how it's loaded into memory.

How do I know this? When I fired at an affected AT-ST's head, the shot went right through. Collision problem?

It also exhibits this problem:

Image

The head seems to be independent of the body - the weapons are poking right through, as if they are moving and the head isn't. Also, the AT-ST's legs will move up and down, but the head will hover in one place while walking.

Finally, the head hovers in mid-air after the AT-ST has been blown up. The legs fall down, but the head stays in the air and vanishes after a while.
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: Evil AT-ST view problem [UNRESOLVED]

Post by RepSharpshooter »

Do you have enough memory set for that walker type? Or probably some other random memory thing you need to set. The atst has bones and is enveloped like a unit, if that helps anything. Perhaps it's something in nature to the freecam glitch where the skeleton gets screwed up. it seems it is just something to do with bone_head or something. From the effects you describe, it's behaving as 1. either bone_head is detaching itself from the skeleton or 2. bone_head is ceasing to exist and the mesh has nothing to be enveloped to. Still quite a mystery.
ARC_Commander
High General
High General
Posts: 838
Joined: Tue Feb 06, 2007 7:18 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Re: Evil AT-ST view problem [UNRESOLVED]

Post by ARC_Commander »

Good news! I think I've found the source of the problem. I looked in BFront2.log, found two memory pools that needed raising - "WalkerBlend" and "WalkerUnitBlend." That last one caught my eye because of RepSharpshooter's explanation that the AT-ST is structured like a unit. It's munging as I write this. [fingers crossed]
Post Reply