New skeleton for Droideka

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

Private Third Class
User avatar
Posts: 58
Joined: Mon Jun 05, 2017 5:14 pm
Location: PerĂº
Projects :: Battlefront Redux
Games I'm Playing :: League of Legends
xbox live or psn: TheRaigiku

New skeleton for Droideka

Postby Raigiku » Mon Mar 05, 2018 3:30 pm

I'm trying to port a droideka model from Republic Heroes, but the model isn't good for the default droideka skeleton since the size of it's limbs are very different compared to the default droideka. I tried doing a different skeleton with the default droideka animations, but when I change the AnimationName and SkeletonName on the new droideka .odf, the new droideka model seems to still use the default droideka skeleton. Please help :(
tcwrolldes animations folder
Hidden/Spoiler:
Image

tcwrolldes munge.bat
Hidden/Spoiler:
Code: Select all
@call ..\munge_animation.bat "/keepframe0 /specialquathack /dest tcwrolldes.zaf" Sides\CIS

ZenAsset.log
Hidden/Spoiler:
Code: Select all
-- Processing directory D:\Modding\BF2_ModTools\data_TES\Animations\SoldierAnimationBank\tcwrolldes
   Processing file basepose.msh, will save in .\\\tcwrolldes.zaf
*** WARNING: Skin model segment 0 has too many/few vert weights?
*** WARNING: Skin model segment 0 has too many/few UVs?
*** WARNING: Skin model segment 0 has too many/few vert colors?
.*** WARNING: Animation <death01> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <fold> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <idle> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <idle_to_leftfoot> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <leftfoot_to_idle> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <rightfoot_to_idle> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <roll> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <turnl> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <turnr> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <unfold> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <walk_leftfoot_rightfoot> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet
.*** WARNING: Animation <walk_rightfoot_leftfoot> has a framerate <29.970030> that isn't 30fps.  Framerate correction code has not been done yet


binmunge.log
Hidden/Spoiler:
Code: Select all
Logging BinMunge
14:15:4903/05/18
   0 Errors    0 Warnings


cis_inf_droideka.odf
Hidden/Spoiler:
Code: Select all
[GameObjectClass]
ClassLabel          = "walkerdroid"
GeometryName            = "cis_inf_tcw_droideka.msh"

[Properties]
WALKERSECTION           = "BODY"
VehicleType             = "medium"

DeathDustEffect         = "deathdustcloud_brown"
DeathDustDelay          = "5.1"
DeathDustOffset         = "0.0 0.0 0.0"

ExplosionName           = "cis_inf_droideka_exp"
MapTexture          = "troop_icon"
HealthTexture           = "HUD_cis_droideka_icon"
MapScale        = 1.4
MapViewMin      = 50
MapViewMax      = 50
MapSpeedMin      = 0
MapSpeedMax      = 100

GeometryName            = "cis_inf_tcw_droideka"
UprightLowResModel      = "cis_droideka_idle_low1"
BallLowResModel         = "cis_droideka_roll_low1"
FirstPerson             = "CIS\cisdrde;cis_1st_droideka"
FirstPersonFOV          = "70"
ThirdPersonFOV          = "65"
AnimationName           = "tcwrolldes"
SkeletonName            = "tcwrolldes"

NoEnterVehicles     = 1

MaxHealth           = "550.0"
HealthType          = "droid"

Acceleraton             = "20.0"

MaxSpeed            = "2.5"
MaxTurnSpeed            = "1.25"
PCMaxTurnSpeed          = "20.0"
PCMaxStrafeSpeed        = "20.0"

UnrollTime          = "1.66"
RollTime            = "0.50"

TurnThreshold           = "30.0"

BallRadius          = "0.65"
BallMoveSpeed           = "6.0"
BallAcceleration        = "100.0"
BallRollingFriction     = "50.0"
BallStoppedTurnSpeed        = "2.5"
BallTurnSpeed           = "2.0"
BallSprintTurnSpeed     = "1.0"
BallSlippage            = "1.0"
BallMaxLean         = "10.0"
MaxBallAngle            = "35.0"
BowlingPush         = "10.0"
SprintTimeForBowling        = "0.5"

BallSprintSpeedBoost        = "2.0"
BallJumpHeight          = "1.27"
BallJumpForwardBoost        = "1.25"

EnergyBar           = "100.0"
EnergyRestore           = "10.0"
EnergyRestoreIdle       = "15.0"
EnergyDrainSprint       = "30.0"
EnergyMinSprint         = "30.0"
EnergyCostJump          = "30.0"
EnergyCostBowling       = "30.0"

StompEffect         = "com_sfx_walkerstomp"     // used for jump, bounce off terrain

UprightWaterDamageHeight    = "1.5"
BallWaterDamageHeight       = "1.5"

CAMERASECTION           = "STAND"
EyePointOffset          = "0.0 1.8 0.0"
TrackCenter             = "0.0 1.8 0.0"
TrackOffset             = "0.0 0.5 4.5"
TiltValue           = "5.0"

CAMERASECTION           = "STANDZOOM"
EyePointOffset          = "0.0 1.8 0.0"
TrackCenter             = "0.0 1.8 0.0"
TrackOffset             = "0.0 0.5 4.5"
TiltValue           = "1.0"

CAMERASECTION           = "CROUCH"
EyePointOffset          = "0.0 1.0 0.0"
TrackCenter             = "0.0 1.0 0.0"
TrackOffset             = "0.0 0.3 4.5"
TiltValue           = "5.0"

CAMERASECTION           = "SPLITSTAND"
EyePointOffset          = "0.0 1.8 0.0"
TrackCenter             = "0.0 1.8 0.0"
TrackOffset             = "0.0 0.3 4.5"
TiltValue           = "5.0"

CAMERASECTION           = "SPLITSTANDZOOM"
EyePointOffset          = "0.0 1.8 0.0"
TrackCenter             = "0.0 1.8 0.0"
TrackOffset             = "0.0 0.3 4.5"
TiltValue           = "3.5"

CAMERASECTION           = "SPLITCROUCH"
EyePointOffset          = "0.0 1.0 0.0"
TrackCenter             = "0.0 1.0 0.0"
TrackOffset             = "0.0 0.2 4.5"
TiltValue           = "5.0"

WEAPONSECTION           = "1"

WeaponName          = "cis_weap_inf_repeater"
WeaponAmmo          = "0"

PitchLimits         = "-25.0 25.0"
YawLimits           = "-40.0 40.0"

AimerYawLimits          = "-40.0 40.0"
AimerPitchLimits        = "-25 25"
AimerNodeName           = "hp_gun_1"
FireOutsideLimits       = "1"

NextAimer           = "-"

AimerYawLimits          = "-40.0 40.0"
AimerPitchLimits        = "-25 25"
AimerNodeName           = "hp_gun_2"
FireOutsideLimits       = "1"

WEAPONSECTION           = "2"

WeaponName          = "cis_weap_walk_droideka_shield"
WeaponAmmo          = "0"

TEMP_AnimationSpeed         = "2.0"
TEMP_Type           = "0"


WaterDamageInterval     = "1.0"
WaterDamageAmount       = "10.0"

WakeEffect          = "hailfire_wake"


LegPairCount            = "1"

WalkerLegPair           = "LEGS"

LegBoneLeft         = "bone_l_thigh"
LegBoneRight            = "bone_r_thigh"

TerrainLeft            = "p_-o-footL"
TerrainRight            = "p_-o-footR"

FootBoneLeft            = "bone_l_toe"
FootBoneRight           = "bone_r_toe"

CHUNKSECTION            = "CHUNK1"
ChunkGeometryName       = "droideka_chunk1"
ChunkNodeName           = "dummyroot"
ChunkTerrainCollisions      = "10"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega          = "1.0 -4.0 2.0"
ChunkSpeed          = 9.0
ChunkUpFactor           = 0.0
ChunkLinearDamping      = 0.010
ChunkAngularDamping     = 0.040

CHUNKSECTION            = "CHUNK2"
ChunkGeometryName       = "droideka_chunk3"
ChunkNodeName           = "dummyroot"
ChunkTerrainCollisions      = "10"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega          = "-4.0 0.0 0.0"
ChunkSpeed          = 8.0
ChunkUpFactor           = 0.0
ChunkLinearDamping      = 0.010
ChunkAngularDamping     = 0.040

CHUNKSECTION            = "CHUNK3"
ChunkGeometryName       = "droideka_chunk3"
ChunkNodeName           = "dummyroot"
ChunkTerrainCollisions      = "10"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega          = "0.0 4.0 0.0"
ChunkSpeed          = 8.0
ChunkUpFactor           = 0.0
ChunkLinearDamping      = 0.010
ChunkAngularDamping     = 0.040

CHUNKSECTION            = "CHUNK4"
ChunkGeometryName       = "droideka_chunk4"
ChunkNodeName           = "dummyroot"
ChunkTerrainCollisions      = "10"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega          = "0.0 0.0 -4.0"
ChunkSpeed          = 7.0
ChunkUpFactor           = 0.0
ChunkLinearDamping      = 0.010
ChunkAngularDamping     = 0.040

CHUNKSECTION            = "CHUNK5"
ChunkGeometryName       = "droideka_chunk5"
ChunkNodeName           = "dummyroot"
ChunkTerrainCollisions      = "10"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega          = "4.0 0.0 0.0"
ChunkSpeed          = 9.0
ChunkUpFactor           = 0.0
ChunkLinearDamping      = 0.010
ChunkAngularDamping     = 0.040

DropItemClass           = "com_item_powerup_ammo"
DropItemProbability     = 0.15
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_health25"
DropItemProbability     = 0.15
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_health100"
DropItemProbability     = 0.8
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_dual"
DropItemProbability     = 0.8
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_energy"
DropItemProbability     = 0.10
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_offense"
DropItemProbability     = 0.02
NextDropItem            = "-"
DropItemClass           = "com_item_powerup_defense"
DropItemProbability     = 0.02

PointsToUnlock          = 0

VOUnitType              = 081
Footstep0Sound          = "cis_inf_droideka_step"
Footstep1Sound          = "cis_inf_droideka_step"
Footstep2Sound          = "cis_inf_droideka_step"
HydraulicSound          = ""
HydraulicSoundHeight    = ""
HurtSound               = ""
DeathSound              = "imp_weap_ord_exp_lg"
EngineSound             = "cis_walk_droideka_engine_parameterized"
TurnOnSound             = "cis_droideka_fold"
TurnOffSound            = "cis_droideka_unfold"
FoleyFXClass            = "cis_inf_droid"

VOSound = "cis1_inf_pc_com_hostile      SpottedVO"
VOSound = "cis1_inf_pc_com_bacta      NeedMedicVO"
VOSound = "cis1_inf_pc_com_mechanic      NeedRepairVO"
VOSound = "cis1_inf_pc_com_ammo      NeedAmmoVO"
VOSound = "cis1_inf_pc_com_transport      NeedPickupVO"
VOSound = "cis1_inf_pc_com_backup      NeedBackupVO"
VOSound = "cis1_inf_pc_com_clear_area      AttackPositionVO"
VOSound = "cis1_inf_pc_com_defend     DefendPositionVO"

VOSound = "cis1_inf_pc_com_hostile_inVehicle      SpottedVO +InVehicle"
VOSound = "cis1_inf_pc_com_bacta_inVehicle      NeedMedicVO +InVehicle"
VOSound = "cis1_inf_pc_com_mechanic_inVehicle      NeedRepairVO +InVehicle"
VOSound = "cis1_inf_pc_com_ammo_inVehicle      NeedAmmoVO +InVehicle"
VOSound = "cis1_inf_pc_com_transport_inVehicle      NeedPickupVO +InVehicle"
VOSound = "cis1_inf_pc_com_backup_inVehicle      NeedBackupVO +InVehicle"
VOSound = "cis1_inf_pc_com_clear_area_inVehicle      AttackPositionVO +InVehicle"
VOSound = "cis1_inf_pc_com_defend_inVehicle     DefendPositionVO +InVehicle"

Munged folder
Hidden/Spoiler:
Image

tcwrolldes.anims
Hidden/Spoiler:
Code: Select all
ucft
{
   ANIM
   {
      "death01"
      "fold"
      "idle"
      "idle_to_leftfoot"
      "leftfoot_to_idle"
      "rightfoot_to_idle"
      "roll"
      "turnl"
      "turnr"
      "unfold"
      "walk_leftfoot_rightfoot"
      "walk_rightfoot_leftfoot"
   }
}

How it looks ingame
Hidden/Spoiler:
Image

cis_inf_tcw_droideka.msh

cis_inf_tcw_droideka.tga

basepose.msh

Private First Class
User avatar
Posts: 76
Joined: Fri Jul 19, 2013 11:10 am
Location: Russian Federation
Projects :: Droid Factory Conquest
Games I'm Playing :: SWBF2 SWTOR
xbox live or psn: No gamertag set

Re: New skeleton for Droideka

Postby correctmushroom2013 » Fri Mar 09, 2018 9:58 am

Me helped this variant,try to delete this line(red):

ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")

Private Third Class
User avatar
Posts: 58
Joined: Mon Jun 05, 2017 5:14 pm
Location: PerĂº
Projects :: Battlefront Redux
Games I'm Playing :: League of Legends
xbox live or psn: TheRaigiku

Re: New skeleton for Droideka

Postby Raigiku » Sun Mar 11, 2018 6:26 pm

correctmushroom2013 wrote:Me helped this variant,try to delete this line(red):

ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")

How does that solve my problem? By doing this I get rid of the droideka. I don't want that lol. I want the droideka to use my custom skeleton.

Resistance Leader
User avatar
Posts: 5177
Joined: Tue Feb 09, 2010 8:43 pm
Location: Edinburgh, UK
Projects :: EVERYWHERE + Zero Munge + TCW
Games I'm Playing :: Day of Defeat Source
xbox live or psn: Marth8880

Re: New skeleton for Droideka

Postby Marth8880 » Mon Mar 12, 2018 6:11 pm

Raigiku wrote:
correctmushroom2013 wrote:Me helped this variant,try to delete this line(red):

ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")

How does that solve my problem? By doing this I get rid of the droideka. I don't want that lol. I want the droideka to use my custom skeleton.

That line is loading the *stock* droideka's assets, that's the problem.

Sergeant Major
Posts: 229
Joined: Sat Feb 04, 2017 5:52 pm
Location: Milky Way
Projects :: Star Wars A New Frontier
Games I'm Playing :: SWBF2 2005
xbox live or psn: No gamertag set

Re: New skeleton for Droideka

Postby LitFam » Mon Mar 12, 2018 6:58 pm

Try this:

Hidden/Spoiler:
Code: Select all
ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_hero_darthmaul",
"cis_hover_aat")

ReadDataFile("dc:SIDE\\cis.lvl",
"cis_inf_droideka")

2nd Lieutenant
User avatar
Posts: 376
Joined: Sat Jun 13, 2015 10:51 am
Location: Toronto, ON
Projects :: SW Resistance Rising

Re: New skeleton for Droideka

Postby MissingTexture » Tue Mar 13, 2018 11:18 am

Guys I'm pretty sure he is having issues adjusting the skeleton of the model plus its animations and as to why it appears how it does ingame. He has it ingame just fine.

Have you tried a manual clean then remunging it at all? Something happened to like that with a shoretrooper i messed around with, I remunged after a clean & it worked well; but it may be diff situations but may be worth a try?

Return to SWBF2 Modding

Who is online

Users browsing this forum: No registered users and 2 guests