Tentacle Problems

How to create models in XSI and other 3D applications and make them work in Battlefront 1 & 2. Post models, tips for application usage and share anything XSI, 3DMax, SketchUp, etc.

Moderator: Moderators

Post Reply
thelegend
Sith
Sith
Posts: 1433
Joined: Thu Jan 23, 2014 6:01 am
Projects :: Star Wars - Battlefront III Legacy
Games I'm Playing :: Swbf GTA CoD LoL KH
xbox live or psn: El_Fabricio#
Location: Right behind you :)

Tentacle Problems

Post by thelegend »

Gey Gametoast,
I'll keep my issue short. I created a character, added 6 tentacles a 3 bones for each tentacle. I enveloped my model and tested it ingame. The whole character worked, but where the tentacles were, are only weird looking "heavy tentacles which kisses the ground". I know that it should happen. (The tutorial said that). Right after that I deleted all meshes and exported only the nulls.
First I put the bone_root under a DummyRoot null and then I exported it as a basepose.msh.
I tried to munge the new skeletion, like Aaylas skeletion (makes sense, because she uses extra bones, am I right?). So I munged the basepose+all human sabre .msh's. But then I look in my munged folder there are no files. I made sure that my munge.bat directs to the right folder, but it still doen't work. I really guess I exported the basepose wrong or not correctly.
So I would like to know how to export the basepose.msh properly. Which "nulls" have to be selected and (I use ZeTools) what for boxes have to be selected.
If there are still details missing then ask me and I will sen you my .exp scene file, which contains the characters+textures.
Thanks in advance.
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

Re: Tentacle Problems

Post by AceMastermind »

I've only experimented with tentacle addons, but could only define 4 tentacles with up to 5 bones each, this seems to be a programming limit for the PC version. You can import Aayla's basepose.msh with ZETools to see what was exported by the devs.
The basepose.msh contains all the bones in the skeleton, including the tentacle bones. All the bones are keyed. When exporting the basepose with ZETools, you select the dummyroot and export with 'Export Animation' ticked. You should only need to munge a basepose.msh unless you created some new animations.
thelegend
Sith
Sith
Posts: 1433
Joined: Thu Jan 23, 2014 6:01 am
Projects :: Star Wars - Battlefront III Legacy
Games I'm Playing :: Swbf GTA CoD LoL KH
xbox live or psn: El_Fabricio#
Location: Right behind you :)

Re: Tentacle Problems

Post by thelegend »

Hm I guess the limit for additional tentacles are 20 bones. 4*5 equals 20. I have 6 tentacles. Each tentacle has 3 bones. So There are 18 tentacle bones.

Then I munge the exported basepose I always get this error log (ZenAsset.log):

Code: Select all

-- Processing directory D:\Bf2_Modtools\data_POM\Animations\SoldierAnimationBank\davy_jones
	Processing file basepose.msh, will save in .\\\jones.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: 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?

But in my munged folder there is only the jones.zaf file. 2 Kb.
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

Re: Tentacle Problems

Post by AceMastermind »

You can define 4 tentacles max with up to 5 bones each. That log looks normal, the file size will be small since it is just the skeleton and as long as no errors are present then all should work. The Gungan is a working example. In the ODF you would use SkeletonName instead of AnimationName. Have you tested it ingame yet?
thelegend
Sith
Sith
Posts: 1433
Joined: Thu Jan 23, 2014 6:01 am
Projects :: Star Wars - Battlefront III Legacy
Games I'm Playing :: Swbf GTA CoD LoL KH
xbox live or psn: El_Fabricio#
Location: Right behind you :)

Re: Tentacle Problems

Post by thelegend »

Ok. I tested it ingame but it still didn't change.

The zafbin file is 2 kb in file size. I wonder because other character's zafbin files are bigger up to 50 kb.
Am I right that the .zafbin file only contains the skeleton, just the basepose.msh so only the bones? And the .zaabin file contains all the animnated .msh files?
And the odf reads the .anims file which reads the .msh file names (in the .zaabin file)? Does the animation system work as I mentioned?
Anyway here is my character's odf:
Hidden/Spoiler:
[GameObjectClass]
ClassParent = "com_inf_default"

[Properties]
MapTexture = ""
SkeletonName = "jones"
AnimationName = "obiwan"
MaxHealth = 800.0

FleeLikeAHero = 0


WEAPONSECTION = 1
WeaponName = "pearl_weap_saber"
WeaponAmmo = 0



MaxSpeed = 6.0 // base forward speed
MaxStrafeSpeed = 4.2 // base right/left speed
MaxTurnSpeed = 3.8 // base turn speed
JumpHeight = 0.8 // base jump height in meters
// Speed multipliers for various actions
JumpForwardSpeedFactor = 1.1 // boost forward part of velocity by this factor when jumping
JumpStrafeSpeedFactor = 1.1 // boost side/backward part of velocity by this factor when jumping
RollSpeedFactor = 1.3 // in forward arc, boost speed by this factor when rolling
// Apparently contant for all or most classes:
Acceleration = 60.0 // accelerate to full run in about 7/70 = 0.1 seconds
SprintAccelerateTime = 0.35 // accelerate from run to sprint in this time

EnergyBar = 100.0 // Max energy
EnergyRestore = 5.0 // energy regained per second if moving
EnergyRestoreIdle = 8.0 // energy regained per second if not
EnergyDrainSprint = 35.0 // energy spent per second of sprinting
EnergyMinSprint = 20.0 // min energy to start sprinting
EnergyCostJump = 0.0 // energy cost to jump
EnergyCostRoll = 30.0 // energy cost to roll


//DROPPING

DropItemClass = "com_item_powerup_ammo"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_health25"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_offense"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_defense"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_health100"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_dual"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_energy"
DropItemProbability = 0


//CAMERA

CAMERASECTION = "STAND"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.0 0.0 3.2"
TiltValue = "10.0"

CAMERASECTION = "STANDZOOM"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.4 0.05 2.8"
TiltValue = "3.5"

CAMERASECTION = "CROUCH"
EyePointOffset = "0.0 1.3 0.0"
TrackCenter = "0.0 1.3 0.4
TrackOffset = "0.0 0.15 3.0"
TiltValue = "10.0"
CameraBlendTime = "0.75"

CAMERASECTION = "CROUCHZOOM"
EyePointOffset = "0.0 1.3 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.4 0.2 2.8"
TiltValue = "3.5"

CAMERASECTION = "SPRINT"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.0 0.0 4.0"
TiltValue = "10.0"
CameraBlendTime = "0.75"

VOUnitType = 42
And here is the character itself as .msh and .exp file. If you or anyone else knows where the problem is I would be very thankful.
http://www.mediafire.com/download/i7ed7 ... letion.rar
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

Re: Tentacle Problems

Post by AceMastermind »

thelegend wrote:Am I right that the .zafbin file only contains the skeleton, just the basepose.msh so only the bones? And the .zaabin file contains all the animnated .msh files?
And the odf reads the .anims file which reads the .msh file names (in the .zaabin file)? Does the animation system work as I mentioned?
Yes


You can't have more than 4 tentacles, I see 6 in your scene. You'll have to combine some to reach the limit. Have a look at rep_inf_kitfisto_tenticles.msh as example of how to do this.

You're also missing something like this in the ODF under Properties:

Code: Select all

NumTentacles        = "4"
BonesPerTentacle    = "3"
TentacleCollType     = "0"
thelegend
Sith
Sith
Posts: 1433
Joined: Thu Jan 23, 2014 6:01 am
Projects :: Star Wars - Battlefront III Legacy
Games I'm Playing :: Swbf GTA CoD LoL KH
xbox live or psn: El_Fabricio#
Location: Right behind you :)

Re: Tentacle Problems

Post by thelegend »

Ok. I am going to choose an other way. I want to add the tentacles as an animated addon mesh. I cut out the enveloped tentacles and exported them seperatly as a .msh file. It includes the string bones too. After that I added these lines to my .odf:

Code: Select all

AnimatedAddon = "Jones_Tentacles"
GeometryAddon = "davy_jones_tentacles"
AddonAttachJoint = "bone_head"
NumTentacles    = "4"
BonesPerTentacle    = "3"
TentacleCollType    = "0"
Then I exported. Here is the whole .odf file:
Hidden/Spoiler:
[GameObjectClass]
ClassParent = "com_inf_default"

[Properties]

MapTexture = ""
AnimationName = "obiwan"
MaxHealth = 800.0

FleeLikeAHero = 0


WEAPONSECTION = 1
WeaponName = "pearl_weap_saber"
WeaponAmmo = 0



MaxSpeed = 6.0 // base forward speed
MaxStrafeSpeed = 4.2 // base right/left speed
MaxTurnSpeed = 3.8 // base turn speed
JumpHeight = 0.8 // base jump height in meters
// Speed multipliers for various actions
JumpForwardSpeedFactor = 1.1 // boost forward part of velocity by this factor when jumping
JumpStrafeSpeedFactor = 1.1 // boost side/backward part of velocity by this factor when jumping
RollSpeedFactor = 1.3 // in forward arc, boost speed by this factor when rolling
// Apparently contant for all or most classes:
Acceleration = 60.0 // accelerate to full run in about 7/70 = 0.1 seconds
SprintAccelerateTime = 0.35 // accelerate from run to sprint in this time

EnergyBar = 100.0 // Max energy
EnergyRestore = 5.0 // energy regained per second if moving
EnergyRestoreIdle = 8.0 // energy regained per second if not
EnergyDrainSprint = 35.0 // energy spent per second of sprinting
EnergyMinSprint = 20.0 // min energy to start sprinting
EnergyCostJump = 0.0 // energy cost to jump
EnergyCostRoll = 30.0 // energy cost to roll


//DROPPING

DropItemClass = "com_item_powerup_ammo"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_health25"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_offense"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_defense"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_health100"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_dual"
DropItemProbability = 0
NextDropItem = "-"
DropItemClass = "com_item_powerup_energy"
DropItemProbability = 0


//CAMERA

CAMERASECTION = "STAND"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.0 0.0 3.2"
TiltValue = "10.0"

CAMERASECTION = "STANDZOOM"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.4 0.05 2.8"
TiltValue = "3.5"

CAMERASECTION = "CROUCH"
EyePointOffset = "0.0 1.3 0.0"
TrackCenter = "0.0 1.3 0.4
TrackOffset = "0.0 0.15 3.0"
TiltValue = "10.0"
CameraBlendTime = "0.75"

CAMERASECTION = "CROUCHZOOM"
EyePointOffset = "0.0 1.3 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.4 0.2 2.8"
TiltValue = "3.5"

CAMERASECTION = "SPRINT"
EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.7 0.4
TrackOffset = "0.0 0.0 4.0"
TiltValue = "10.0"
CameraBlendTime = "0.75"

VOUnitType = 42

AnimatedAddon = "Jones_Tentacles"
GeometryAddon = "davy_jones_tentacles"
AddonAttachJoint = "bone_head"
NumTentacles = "4"
BonesPerTentacle = "3"
TentacleCollType = "0"
It doesn't read the skeletonname anymore. I thought It's not required anymore because it has the 'default' bone_root again.
But then I start the map, the game crashes. I don't know why. It crashes then I am able to select a side/team.

I still have some questions.

Code: Select all

AnimatedAddon = "Jones_Tentacles" 
Does it have to read a file or can it be a free invented name? Because I don't have a file called "Jones_Tentacles".

Code: Select all

AddonAttachJoint = "bone_head"
Will the mesh+the bones, which has been enveloped to the mesh; will it be in the same position like as a merged mesh before?
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

Re: Tentacle Problems

Post by AceMastermind »

If you decide to go the way of an addon then refer to the instructions here:
http://www.gametoast.com/viewtopic.php?f=36&t=12610

If your game is crashing check your BFront2.log for errors.


thelegend wrote:

Code: Select all

AnimatedAddon = "Jones_Tentacles" 
Does it have to read a file or can it be a free invented name? Because I don't have a file called "Jones_Tentacles".
The AnimatedAddon property signifies a property subsection. The string that follows gives a name to that subsection and is arbitrary, it is usually typed in all caps.

Code: Select all

AnimatedAddon = "JONES_TENTACLES" 
Post Reply