SWBFGamers

Modding for the Original SWBF1 and SWBF2 => SWBF1 Modding Tutorials => Topic started by: aeria. on September 13, 2009, 12:24:00 PM

Title: Basic ODF Editing
Post by: aeria. on September 13, 2009, 12:24:00 PM
NOTE: This is incomplete and will be a WIP. I'll add to this whenever I have the time. Eventually I'll make this more organized and easier to read.

Braeden posted a tutorial similar to this back in SWBFmac (http://s7.invisionfree.com/SWBF_GR_Discussion). That board is offline so I thought I might remake it. It's intended for the newer people want to mod Battlefront.

What are ODF files?
The proper name is Object Definition File (I think). Every object in the game is given these ODF files. The classes, the weapons, the buildings, etc. You can change how things work and how they interact. For example, let's say we want to make a weapon fire 2x faster than it's original value. That's possible with ODF files! we'll go into that later.

What are MSH files?

The MSH files are mesh files. Long story short they are the objects/geometry appeared ingame.

In this tutorial, I will go over three different ODF files (I may add more later on).
This may look confusing at first but if you break it down, it's very easy to understand!
The first will be the soldier ODF file.

This file is named all_inf_soldier.odf:

[GameObjectClass]
ClassLabel       = "soldier" --  Rebels, Clones, Droids, etc are all considered as a soldier. Leave this alone.
GeometryName       = "all_inf_soldier.msh" -- This has no affect ingame because GameObjectClass is for the ZeroEditor. We are editing the sides, not the world itself.

Now let's go into the next part of the ODF file:
[Properties]
FootWaterSplashEffect    = "watersplash_sm" -- When you're walking in water, you make this visual effect.
WaterSplashEffect    = "watersplash_md" -- Similar to above. It's a splash effect.
WakeWaterSplashEffect   = "watersplash_wade" -- Similar to above. Just another water effect.

UnitType      = "Trooper" -- The type of unit. Unsure of the use of this (someone else might explain and then I'll update this). Better to leave this alone.
IconTexture       = "all_soldier_icon" -- Never seen it used ingame (you find the texture in the ALL MSH folder), possibly was used for a feature that didn't make it into the final game
MapTexture       = "troop_icon" -- This is regarding the minimap.
MapScale       = 1.4 -- How big the texture is on the minimap. 1.0 is default size

GeometryName       = "all_inf_soldier" -- This is the msh of the soldier. If you changed this to all_inf_pilot.msh for example, then the soldier would appear as a pilot instead.

AnimationName      = "all_inf_snowtrooper" -- The animations of the class. Almost all of the classes use the animation of the snowtrooper.

FirstPerson      = "all\alltroop;all_1st_trooper"  -- This is the arms from the first person view. If you change it to let's say the pilot's 1st person view, it will appear as the pilot's hands.
FirstPersonFOV   = "70" -- The field of view. The field of view is how much you can view from one angle. The higher the better but if you put it too high, things will appear stretched and that is very displeasing.
ThirdPersonFOV   = "65"  -- Same as above.
GeometryLowRes      = "all_inf_soldier_low1" -- The low resolution geometry. This is what we see when an object is very far away. If you do not have a low resolution geometry, it will disappear from afar. Snipers will hate that.

OK! Now we have the camera part of the ODF file.

CAMERASECTION       = "STAND"

EyePointOffset       = "0.0 1.8 0.0"
TrackCenter      = "0.0 1.8 0.0
TrackOffset       = "0.0 0.0 3.5"
TiltValue      = "5.0"

CAMERASECTION       = "STANDZOOM"

EyePointOffset       = "0.0 1.8 0.0"
TrackCenter      = "0.0 1.8 0.0
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.0
TrackOffset       = "0.0 0.15 3.5"
TiltValue      = "5.0"

CAMERASECTION       = "CROUCHZOOM"

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

CAMERASECTION       = "PRONE"

EyePointOffset       = "0.0 0.5 0.0"
TrackCenter       = "0.0 0.5 0.0"
TrackOffset       = "0.0 0.0 3.0"
TiltValue      = "5.0"

CAMERASECTION       = "PRONEZOOM"

EyePointOffset       = "0.0 0.5 0.0"
TrackCenter       = "0.0 0.5 0.0"
TrackOffset       = "0.4 0.2 2.8"
TiltValue      = "3.5"
All of these regard how the camera works. You can try experimenting with these to change the camera angles ingame.

Now let's look at the interesting part. The weapons and health of the soldier!

AimValue       = "1.0" -- Have no idea what this is, I'll find out eventually.

HealthType      = "person" -- The type of health. Leave this alone if you ask me.
MaxHealth       = 300.0 -- This is how much health the soldier has.

Acceleraton       = 70.0 -- If you've studied physics in High School, you know what this is. The higher it is, the faster it is.
MaxSpeed       = 6.5 -- The maximum speed of your soldier. The higher the faster although be aware that the animations doesn't like this to be changed. Put it too high and you will literally glide.
MaxStrafeSpeed       = 4.5 -- The speed when you are going left and right.
MaxTurnSpeed       = 4.00 -- The speed when you are walking at an angle.

WeaponName1       = "all_weap_inf_rifle" -- This says that the primary weapon is the blaster rifle. If you want to give it the sniper rifle instead, change this value to all_weap_inf_ sniperrifle.
WeaponAmmo1       = 6 -- This is how much ammo you do have. You can allow it to hold more or to hold less to give yourself a challenge.
WeaponName2       = "all_weap_inf_pistol" -- The is the secondary weapon you have. You have a pistol by default.
WeaponAmmo2       = 0 -- The pistol is a charging weapon so it will be kept to zero.
WeaponName3       = "all_weap_inf_thermaldetonator" -- This is the grenade.
WeaponAmmo3       = 3 -- This says you have 3 grenades. You can give yourself 1 grenade, 100 grenades, whatever you want.
WeaponChannel3      = 1 -- If I'm not mistaken, this means that it is to be used as a secondary weapon.
WeaponName4       = "all_weap_inf_crackgrenade" -- This is the weaker grenade.
WeaponAmmo4       = 3 -- This is self explanatory by now.
WeaponChannel4      = 1 -- This is self explanatory by now.

AimFactorPostureSpecial = 50 -- This is regarding your aim. The lower, the better.
AimFactorPostureStand    = 100
AimFactorPostureCrouch    = 140
AimFactorPostureProne    = 160
AimFactorStrafe    = 60
AimFactorMove       = 70

Now finally the last part of the ODF file:

AISizeType      = "SOLDIER" -- Keep this alone

--The following are the different sounds the soldier will make. All of them are self explanatory.
HurtSound               = "all_inf_com_chatter_wound"
DeathSound              = "all_inf_com_chatter_death"
AcquiredTargetSound     = "all_inf_com_chatter_acquired"
HidingSound             = "all_inf_com_chatter_hide"
ApproachingTargetSound  = "all_inf_com_chatter_approach"
FleeSound               = "all_inf_com_chatter_flee"
PreparingForDamageSound = "all_inf_com_chatter_predamage"
HeardEnemySound         = "all_inf_com_chatter_heard"
//ShockFadeOutTime      = "0.8"
//ShockFadeInTime       = "2.0"
ShockFadeOutGain        = ""
ShockSound              = ""
ClothingRustleSound     = ""
LowHealthSound          = ""
//LowHealthThreshold    = ".25"
FoleyFXClass            = "all_inf_soldier"

// squad command VO -- All of these are the different commands that the bots say to each other like "move out" or "follow me". If you don't have any custom sounds, you're better off leaving these alone.
SCFieldMoveOutSound      = "all_inf_com_chatter_tac_moveout"
SCFieldHoldSound      = "all_inf_com_chatter_tac_hold"
SCFieldFollowSound      = "all_inf_com_chatter_tac_follow"
SCDriverGetInSound      = "all_inf_com_chatter_tac_needgunner"
SCDriverGetOutSound      = "all_inf_com_chatter_tac_moveout"
SCPassengerMoveOutSound   = "all_inf_com_chatter_tac_spreadout"
SCPassengerStopSound   = "all_inf_com_chatter_tac_stop"
SCPassengerGetInSound   = "all_inf_com_chatter_tac_needgunner"
SCPassengerGetOutSound   = "all_inf_com_chatter_tac_moveout"
SCGunnerAllClearSound   = "all_inf_com_chatter_tac_allclear"
SCGunnerSteadySound      = "all_inf_com_chatter_tac_stop"
SCGunnerGetInSound      = "all_inf_com_chatter_tac_needgunner"
SCGunnerGetOutSound      = "all_inf_com_chatter_tac_moveout"
SCResponseYessirSound   = "all_inf_com_chatter_tac_yes"
SCResponseNosirSound   = "all_inf_com_chatter_tac_no"

// AIsquad command VO -- All of these are the different commands that the bots say to each other like "move out" or "follow me". If you don't have any custom sounds, you're better off leaving these alone.
AISCFieldMoveOutSound      = "ai_all_inf_com_chatter_tac_moveout"
AISCFieldHoldSound         = "ai_all_inf_com_chatter_tac_hold"
AISCFieldFollowSound      = "ai_all_inf_com_chatter_tac_follow"
AISCDriverGetInSound      = "ai_all_inf_com_chatter_tac_needgunner"
AISCDriverGetOutSound      = "ai_all_inf_com_chatter_tac_moveout"
AISCPassengerMoveOutSound   = "ai_all_inf_com_chatter_tac_spreadout"
AISCPassengerStopSound      = "ai_all_inf_com_chatter_tac_stop"
AISCPassengerGetInSound      = "ai_all_inf_com_chatter_tac_needgunner"
AISCPassengerGetOutSound   = "ai_all_inf_com_chatter_tac_moveout"
AISCGunnerAllClearSound      = "ai_all_inf_com_chatter_tac_allclear"
AISCGunnerSteadySound      = "ai_all_inf_com_chatter_tac_stop"
AISCGunnerGetInSound      = "ai_all_inf_com_chatter_tac_needgunner"
AISCGunnerGetOutSound      = "ai_all_inf_com_chatter_tac_moveout"
AISCResponseYessirSound      = "ai_all_inf_com_chatter_tac_yes"
AISCResponseNosirSound      = "ai_all_inf_com_chatter_tac_no"

DropItemClass          = "com_item_powerup_ammo" -- When you're dead, you drop something. This is the item that it drops.
DropItemProbability    = 0.40 -- This is the probability that you will drop it. 1.00 means you will always drop it.
NextDropItem          = "-" -- uh.... Ask Pi about this...
DropItemClass          = "com_item_powerup_health100"
DropItemProbability    = 0.30
NextDropItem          = "-"
DropItemClass          = "com_item_powerup_dual"
DropItemProbability    = 0.10
Title: Re: Basic ODF File Editing
Post by: Breakdown on September 13, 2009, 12:44:00 PM
Mine is still here, you just have to dig a bit deep :P
Title: Re: Basic ODF File Editing
Post by: aeria. on September 13, 2009, 12:57:05 PM
The topic is there but if you look inside it, it is empty.
Title: Re: Basic ODF File Editing
Post by: Radical_Pi on September 13, 2009, 03:04:43 PM
Couple of slight technicalities that just bug me cuz I'm that way :P

The water splashes are visual effects, not audio effects
WeaponAmmo values of 0 make it recharge, not the other way around.
I believe AimValue is how accurate your aim is (not 100% sure)
Might want to note in maxspeed that you will slide if you change that value. The animation just doesn't like changes

In GameObjectClass, that is only read by ZeroEditor, so the GeometryName there has no effect ingame.
Title: Re: Basic ODF File Editing
Post by: aeria. on September 13, 2009, 03:06:32 PM
That is why I wub Pi. He'll correct my mistakes so that I don't have to XD
Title: Re: Basic ODF File Editing
Post by: eska on September 14, 2009, 09:02:01 AM
Rawr.

[mod]Stickied[/mod]
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 14, 2009, 02:02:40 PM
lol. I just noticed the ...ask pi about this :P

I have never seen it used in any ODF file, and I truly have never tested it

I do, however, have and idea of what it might do. It could be used for creating drop chains (ex you drop a health pack and an ammo pack in the same death. I'd assume the way to use it is you set the name of the next pack to drop, reading it from the drop list and checking if there is another one to drop. The - probably means "end of drops"
Title: Re: Basic ODF Editing
Post by: aeria. on September 14, 2009, 05:58:08 PM
I put the "ask Pi" prompts everywhere LOL.
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 14, 2009, 07:07:55 PM
lol you're going to have to give me a list of questions.

I did a bit of looking, and here's what I found

IconTexture: Never seen it used ingame (you find the texture in the ALL MSH folder), possibly was used for a feature that didn't make it into the game

MapTexture: The icon that appears on the map

MapScale: resizes the MapTexture to make some units show up bigger or smaller. That's how some troops have different size map markers

Also with weaponchannel a 0 is a primary weapon (that's how nap got 3 weapons on left click once) and 1 is a secondary weapon. I haven't experimented to see if you can change it on the number 2 weapon
Title: Re: Basic ODF Editing
Post by: aeria. on September 14, 2009, 07:55:32 PM
I'll edit those tomorrow afternoon. Thanks Pi.
Title: Re: Basic ODF Editing
Post by: Maveritchell on September 21, 2009, 09:53:16 AM
http://www.secretsociety.com/forum/downloads/BF1/cis_hover_aat_odf_commented.txt

...from psych0fred's site. For those of you unfamiliar, psych0fred was with Pandemic when they made the Battlefront games, and his site is a wealth of information (and assets) for both Battlefront games. Most of the good information is found in the "downloads" section - the forums have information but it is all very basic.

http://www.secretsociety.com/forum/display_forum.asp

Title: Re: Basic ODF Editing
Post by: Giftheck on September 21, 2009, 02:13:12 PM
I've tried looking inside the Battlefront executeable for the ODF parameters (the LUA parameters exist in the exe) but there's seemingly nothing in there for ODF commands. Normally I would assume the manual is complete but there are things that have been tried in contradiction ot the instructions that work.

It could very well be that LUA dictates what can be entered in ODF.
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 21, 2009, 06:48:49 PM
Ya know, the ODF parameters are the biggest mystery ever to me. In the files, they are stored as a 4-byte (32 bit) integer and there is no sign of this integer anywhere in the exe file, and there is no sign of an interpreter in the munger. I could try hexing through the LUA, but highly doubt the LUA would have been used for something as mundane as that. AFAIK, ScriptCB_DoFile does all of the work for the LUA (Anything with ScriptCB on it points to a function in the battlefront EXE). And those integers are in more than just the ODFs. I've found them in the munged localization files which cannot have a plain table of xxx becomes yyy.
Title: Re: Basic ODF Editing
Post by: Maveritchell on September 21, 2009, 08:30:22 PM
Quote from: ggctuk on September 21, 2009, 02:13:12 PM
I've tried looking inside the Battlefront executeable for the ODF parameters (the LUA parameters exist in the exe) but there's seemingly nothing in there for ODF commands. Normally I would assume the manual is complete but there are things that have been tried in contradiction ot the instructions that work.

It could very well be that LUA dictates what can be entered in ODF.
The BF1 tools have a list of ODF parameters for each classlabel; what are you asking?
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 21, 2009, 09:08:49 PM
Quote from: Maveritchell on September 21, 2009, 08:30:22 PM
The BF1 tools have a list of ODF parameters for each classlabel; what are you asking?

It's the curiosity of where the hashes are stored. So far, the only thing I have been able to figure out is that ODF parameters are hashed by the munger. That hash must be in a global table in the EXE that determines the function of the hash. I'm saying it's a hash because the same system is used on the localization files, and those need some sort of method to read from the LUA code.
Title: Re: Basic ODF Editing
Post by: Maveritchell on September 22, 2009, 08:44:23 AM
Quote from: Radical_Pi on September 21, 2009, 09:08:49 PM
It's the curiosity of where the hashes are stored. So far, the only thing I have been able to figure out is that ODF parameters are hashed by the munger.
You've got a specific executable for every type of file munged. One of them is your ODFMunge.exe. That's probably what turns your intelligible parameters into the flags used in the .lvl files.
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 23, 2009, 04:14:05 PM
No, I checked in there. There is no reference at all to the names of the parameters

Also, you can type in "PurpleMonkeysRule" as one of the parameters and the munger says nothing.

EDIT I was able to generate a list of the output hashes for an ODF, and I believe this method may be used to create a human-readable version of the munged state of a file (yes, I mean ANY file that goes in an LVL). Theoretically I could use this to create a table of ODF outputs, but that still leaves me in the dark if I want to do anything with localization files :( The only way that would work for me (I have an idea for a project that would make the macs VERY happy) is if I could figure out the exact algorithm used to generate the hashes. I've already run a checker and none of the common hash types seem to work :(
Title: Re: Basic ODF Editing
Post by: Giftheck on September 24, 2009, 03:09:31 AM
Don't worry about localization, I've already cracked it. BF Mod Tools has two copies of a localization file - one in the ModID folder, and one I believe in Data/_SOURCE_PC. At munge, it combines these two files. The _SOURCE_PC version contains pretty much EVERYTHING. So all you have to do is make your new localizations, munge them and copy the munged output.

As for ODF decompiling, that's good news. If we can figure everything out now, and get an ODF decompiler assembled, perhaps a LUA decompiler isn't far off the horizon.
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 24, 2009, 03:04:32 PM
I'm not talking only decompiling. That's why I need to figure out this hashing method they use

I've looked into decompiling the LUAs. The tools to do it are already in the mod tools, but you basically get ASM-like code instead of LUA. It's the kind of thing that a computer would have a hard time translating, but it wouldn't be impossible
Title: Re: Basic ODF Editing
Post by: Radical_Pi on September 25, 2009, 07:10:03 PM
I don't believe it, but I think I may have found the hashing algorithm. Under a disassembly, I found a section of code filled with a seemingly random group of code that reads in a string character by character and performs seemingly random math operations on it. I monitored that code for a few loops. It is activated numerous times, but on all of the times I saw it I got nothing related to the map run through the hasher. I can confirm that it generates a hash though, since it's a 4 byte value stored inside a 4 byte register. I can't check it right now, but there is a pretty simple way to check if it is the right one. All I have to do is read what it is hashing, put that in an ODF file, and read what the munger outputs on it :tu:
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on October 04, 2009, 02:13:37 AM
nice, all of this
Title: Re: Basic ODF Editing
Post by: Giftheck on October 04, 2009, 09:10:45 AM
So a 'demunger' is possible for ODF files?
Title: Re: Basic ODF Editing
Post by: Radical_Pi on October 04, 2009, 01:26:29 PM
Might be. I can already read the munged ODFs, all I have to do is make that input-output table of the hashes and I can de-munge. Of course, it would take forever to build that table, unless I could use some sort of pre-made list of ODF options *cough documentation cough* and feed it into the hasher. Plus, if I get the algorithm, then I can go one step better: an ODF munger for mac
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 02, 2009, 12:35:33 AM
hi, i was wondering if any one can help me with the odf animation words for the force? i would like to use this in a regular troop and have it for the pilot. i would like to put a hero in place of the republic pilot and give him the foce animation. is it just words or is it more, like more files?
Title: Re: Basic ODF Editing
Post by: Giftheck on November 02, 2009, 03:08:56 AM
Well, heroes usually have their force powers, but they're commented out.
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 02, 2009, 03:36:54 AM
i can get the lightsaber animation but want the force animation. is it a different word or different files?
Title: Re: Basic ODF Editing
Post by: Giftheck on November 02, 2009, 01:38:47 PM
Force animations are grouped together with the lightsaber animations.
Title: Re: Basic ODF Editing
Post by: aeria. on November 02, 2009, 01:45:09 PM
Wow I still need to finish this...
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 02, 2009, 03:53:37 PM
i can use the lightsaber animation and i get the melee attact. i would like to have the force choke or the push.
Title: Re: Basic ODF Editing
Post by: Giftheck on November 03, 2009, 09:13:47 AM
Here's my Mace Windu ODF to give you a rough guide.

[GameObjectClass]
ClassLabel = "soldier"
GeometryName = "rep_inf_macewindu.msh"

[Properties]
FootWaterSplashEffect = "watersplash_sm"
WaterSplashEffect = "watersplash_md"
WakeWaterSplashEffect = "watersplash_wade"

UnitType = "assault"
MapTexture = "troop_icon"
MapScale = 1.4

GeometryName = "rep_inf_macewindu"
GeometryLowRes = "rep_inf_macewindu_low1"

AnimationName = "all_inf_snowtrooper"

JetJump = "21.0" //The initial jump-push given when enabling the jet
JetPush = "0.0" //The constant push given while the jet is enabled (20 is gravity)
JetEffect = ""
JetFuelRechargeRate = "0.1" //Additional fuel per second (fuel is 0 to 1)
JetFuelCost = "0.0" //Cost per second when hovering (only used for jet-hovers)(fuel is 0 to 1)
JetFuelInitialCost = "0.5" //4initial cost when jet jumping(fuel is 0 to 1)
JetFuelMinBorder = "0.49" //minimum fuel to perform a jet jump(fuel is 0 to 1)

CollisionScale = "0.0 0.0 0.0"

WingModel     = "gen_wings"

HealthType = "person"
MaxHealth = 1200.0
AddHealth = 60.0

Acceleraton = 70.0
MaxSpeed = 6.5
MaxStrafeSpeed = 4.5
MaxTurnSpeed = 4.0

WeaponName1 = "rep_weap_lightsaber"
WeaponAmmo1 = 0
WeaponName2 = "rep_weap_inf_forcepush"
WeaponAmmo2 = 0
WeaponChannel2 = 1
WeaponName3 = "rep_weap_inf_forcepull"
WeaponAmmo3 = 0
WeaponChannel3 = 1

AimFactorPostureSpecial = 50
AimFactorPostureStand = 100
AimFactorPostureCrouch = 140
AimFactorPostureProne = 160
AimFactorStrafe = 60
AimFactorMove = 70



CAMERASECTION = "STAND"

EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.8 0.0
TrackOffset = "0.0 0.0 3.5"
TiltValue = "5.0"

CAMERASECTION = "STANDZOOM"

EyePointOffset = "0.0 1.8 0.0"
TrackCenter = "0.0 1.8 0.0
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.0
TrackOffset = "0.0 0.15 3.5"
TiltValue = "5.0"

CAMERASECTION = "CROUCHZOOM"

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

CAMERASECTION = "PRONE"

EyePointOffset = "0.0 0.5 0.0"
TrackCenter = "0.0 0.5 0.0"
TrackOffset = "0.0 0.0 3.0"
TiltValue = "5.0"

CAMERASECTION = "PRONEZOOM"

EyePointOffset = "0.0 0.5 0.0"
TrackCenter = "0.0 0.5 0.0"
TrackOffset = "0.4 0.2 2.8"
TiltValue = "3.5"

AimValue = "1.0"

HurtSound                = ""
DeathSound              = ""
AcquiredTargetSound      = ""
HidingSound              = ""
//ApproachingTargetSound = ""
FleeSound               = ""
PreparingForDamageSound = ""
HeardEnemySound         = ""
ShockFadeOutTime        = ""
ShockFadeInTime         = ""
ShockFadeOutGain        = ""
ShockSound              = ""
ClothingRustleSound     = ""
LowHealthSound          = "com_inf_saber_ambient"
LowHealthThreshold      = "1.1"
FoleyFXClass            = "rep_inf_soldier"

NoEnterVehicles = 1

AISizeType = "SOLDIER"

DropItemClass = "com_item_powerup_ammo"
DropItemProbability = 0.20
NextDropItem = "-"
DropItemClass = "com_item_powerup_health25"
DropItemProbability = 0.05
NextDropItem = "-"
DropItemClass = "com_item_powerup_health100"
DropItemProbability = 0.0
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 03, 2009, 03:12:58 PM
Quote from: ggctuk on November 03, 2009, 09:13:47 AM
Here's my Mace Windu ODF to give you a rough guide.

[GameObjectClass]
ClassLabel             = "soldier"

GeometryName          = "rep_inf_macewindu.msh"

UnitType            = "assault"

AnimationName          = "all_inf_snowtrooper"

WeaponName1          = "rep_weap_lightsaber"

WeaponName2          = "rep_weap_inf_forcepush"

WeaponName3          = "rep_weap_inf_forcepull"
[/quote]


thank you ggctuk, these are the bits i will be looking into seeing how and where i couldnt get right.
Title: Re: Basic ODF Editing
Post by: MileHighGuy on November 03, 2009, 04:22:59 PM
Quote from: keenmike on November 02, 2009, 03:53:37 PM
i can use the lightsaber animation and i get the melee attact. i would like to have the force choke or the push.

to get the forcepush animation use this line: FireAnim = "2"
with this line: AnimationBank = "lightsabre"

same with the grenade throw animation (but with AnimationBank = "grenade").

you could have learned that from looking at the force push odf in the stock assests

and there is no force choke animation as far as i know
Title: Re: Basic ODF Editing
Post by: Jon415 on November 03, 2009, 04:28:05 PM
is it possible to do this on a mac?
and are all of those odf and msh things located in modding tools?
i have no pcs but i would still like to make mods
Title: Re: Basic ODF Editing
Post by: aeria. on November 03, 2009, 04:40:24 PM
You can develop but not munge (compile) mods on a Mac. You'll need someone with a PC to munge it for you.
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 03, 2009, 05:27:46 PM
Quote from: ag on November 03, 2009, 04:40:24 PM
You can develop but not munge (compile) mods on a Mac. You'll need someone with a PC to munge it for you.
tga skinning is i bet easy on a mac. but some other changes you make might not work and it is good to munge along the way to know what works. i know as for me when i tried to set up different mesh characters i worked on one troop at a time. and would munge to see if i got each character just right.

what is more important? playing swbf1 or modding the troops like i say in the topic rebel line up running in my mine?
Title: Re: Basic ODF Editing
Post by: Jon415 on November 04, 2009, 04:23:00 PM
ummmmmmm
ive never made a mod before so i dont know anything about munge or ZE or tga or whatever taht stuff is :confused:
Title: Re: Basic ODF Editing
Post by: Xfire Keenmike aka cull on November 04, 2009, 08:00:38 PM
i can help on a mic in ventrilo or teamseak or even thru xfire.
Title: Re: Basic ODF Editing
Post by: Jon415 on November 05, 2009, 03:24:41 PM
ummmmm
ok ill make an xfire on the weekend
Title: Re: Basic ODF Editing
Post by: Giftheck on November 24, 2009, 10:33:26 AM
Here's all the ODF types I pulled from the exe. Not sure, but I think they're all in the ODF guide included with the documentation.

explosion   
fatray 
emitterordnance
grapplinghook   
towcable   
missile
bolt   
laser   
haywire
beacon 
sticky 
grenade
shell   
bullet 
beam   
grapplinghookweapon
towcableweapon 
catapult   
melee   
binoculars 
shield 
repair 
launcher   
remote 
detonator   
dispenser   
disguise   
destruct   
cannon 
weapon 
effectprop 
rumbleeffect   
hologram   
light   
godray 
leafpatch   
grasspatch 
cloudcluster   
dusteffect 
mine   
powerupitem
powerupstation 
vehiclepad 
vehiclespawn   
commandwalker   
commandhover   
commandarmedanimatedbuilding   
commandarmedbuilding   
commandpost
SoundAmbienceStreaming 
SoundAmbienceStatic
treaded
hover   
carrier
flyer   
walkerdroid
walker 
droid   
soldier
trap   
door   
armedbuildingdynamic
armedbuilding   
armedanimatedbuilding   
animatedbuilding   
destructablebuilding   
animatedprop   
building   
prop
Title: Re: Basic ODF Editing
Post by: Jon415 on November 24, 2009, 03:21:54 PM
Im confused.
No modding for me, just playing the mods  :D
Title: Re: Basic ODF Editing
Post by: Giftheck on November 25, 2009, 09:04:23 AM
This here's a moddign tutorial. If you're not a modder, it's useless to you ;)
Title: Re: Basic ODF Editing
Post by: (DW)skelltor on December 06, 2009, 11:36:45 AM
where do i find odfs and what do i need to open them
Title: Re: Basic ODF Editing
Post by: Giftheck on December 06, 2009, 01:30:10 PM
ODFs are found in folders called ODF, eithre inside your world folder, or inside the sides files. You can open them in Notepad.
Title: Re: Basic ODF Editing
Post by: (DW)skelltor on December 06, 2009, 03:28:22 PM
i founde them i tride editing them but it said that it could onaly be read
Title: Re: Basic ODF Editing
Post by: Jedikiller on December 06, 2009, 04:04:46 PM
Right-click the entire BFBuilder folder and uncheck "Read only". If a box comes up, tell it to apply to all subfolders and files, then click Apply and they should work.
Title: Re: Basic ODF Editing
Post by: (DW)skelltor on December 06, 2009, 05:31:49 PM
ok thanks
Title: Re: Basic ODF Editing
Post by: (DW)skelltor on December 07, 2009, 07:18:45 AM
i have a nother problem when i tried to give the dark trooper force lightning and heailfiremissles it crashed the game do the wepons need to b from the imp side???
EhPortal 1.34 © 2024, WebDev