Problem to make a pilotable vehicle (updated)

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
DarkHelmet

Problem to make a pilotable vehicle (updated)

Post by DarkHelmet »

Hi all

I've just build Viper from Battlestar Galactica.

Image
Image

As a prop it's ok (as you can see) but i want it playable.
I have different *.ofd's for the prop and the flyer.

I've created a new side "BSG", created a *.req for it (the side and the viper itself) and used a *.odf from a tiefighter as a template.
I added the side in my XXXg_cmn.lua:
ReadDataFile("dc:SIDE\\bsg.lvl",
"bsg-viper2")
and placed a vehiclespawn.

In game the viper doesn't show.
In BFront2.log i get the following errors:
Message Severity: 3
.\Source\LuaCallbacks_Mission.cpp(866)
Lua ReadDataFile: Could not open dc:SIDE\bsg.lvl

Message Severity: 2
.\Source\VehicleSpawn.cpp(191)
Vehicle spawn missing class "bsg-viper2"
To make a prop flyable i followed this:
http://www.gametoast.com/forums/viewtopic.php?t=7252
For the new side i used the jedi docs.

Did i forget anything?
If there are any other docs, tuts or topics (yes i searched) about this problem, please let me know.


Thnx

DH
Last edited by DarkHelmet on Sun Dec 03, 2006 5:46 pm, edited 3 times in total.
PieDude797

RE: Problem to make a pilotable vehicle

Post by PieDude797 »

Well, if you created this using XSI, Then i found a topic that's called Easy modeling, or something like that. If you don't have it, i could sent it to you. It tells yo how to create a vehicle and make it flyable
Kyross

Post by Kyross »

Does yor model have hardpoints? Did you make it a .req and give it an entry in the sides .req, as well as add it to the lua's sides loadout? Also, make sure the name of the odf corresponds with all of the above and double check it(the odf) for errors.

Keep in mind if you are using another vehicles odf for a template you will have to have hardpoints for the weapons(hp_fire) and a hardpoint for player position (hp_active) as well as the scene root, or all will default to the scene root.
DarkHelmet

Post by DarkHelmet »

@Piedude797
I use milkshape (which is easyier to use) to create the model. Then export the model to .xsi (3.0) and use xsi 4.2 to add the hp's.
Export again to milkshape and use bconstructor to convert it to a *.msh.
Do you mean the doc "Basic Modeling in XSI.doc" by rlhoffman, nzy3vc, Rogue Leader?
In that doc i skipped to the part where the hp's where added. Everything before that part i already did using milkshape.
(i'm thinking of doing the entire tut just to make sure i didn't forget anything)

@Kyross
I have 2 hp's. Hp_laser-l and hp_laser-r (also edited the odf). I did forget the hp_active so i placed one.
In xsi the hp's are now placed in scene_root>ms3dscene_root next to the ms3dsceneroot_viper.

All the other hp's including the entire section they where used in, are commented out from the lua. (so no damage, chunk and flame hp's)

I created a side-folder C:\SWBF2_ModTools\data_003\Sides\bsg, created a bsg.req containing
ucft
{
REQN
{
"lvl"
"bsg-viper2"
}
}
Created the odf, msh, munged and req folders. In the req folder created the file bsg_viper2.req containing
ucft
{
REQN
{
"class"
"bsg-viper2"
}
}
In the odf folder copied all the *.odf's used by imp_fly_tiefighter_sc.odf including the com_weap_veh*.odf's (which probably aren't necessary).
In the msh folder copied the hud tga's and option files (which are probably not neccessay either).
In the munged folder copied the imp_sprite_tiepilot.sprite and it's req file.
Added the bsg side to the XXXg_cmn.lua
ReadDataFile("dc:SIDE\\bsg.lvl",
"bsg-viper2")
I just cleaned and munged. Got no errors while munging but the bfront.log again gives the error:
Message Severity: 3
.\Source\LuaCallbacks_Mission.cpp(866)
Lua ReadDataFile: Could not open dc:SIDE\bsg.lvl

Message Severity: 2
.\Source\VehicleSpawn.cpp(191)
Vehicle spawn missing class "bsg-viper2"
Anything else i missed?
Kyross

Post by Kyross »

Chunk and flame hp's are not needed, however exporting through bconstructor would most likely ruin everything. I also can't imagine xsi 3.0 being anything but obsolete.

Trying to export though bconstructor to bypass the .msh converter for the considerably expensive and apparnetly more difficult XSI tools.

Firstly: Rename the laser hardpoints to hp_fire_1 and hp_fire_2 which is what should be defaulted in the tie fighter's ODF(Though I can never remember whether or not there is another underscore between fire and the number).

Under scene root the null you place can technically be named anything, but it is recommended you call it "Dummyroot" for simplicity's sake. Under that is where you should put everything. When exporting from XSI you should branch select that null which will select everything in its heirarchy(thus everything in the scene but the Scene_root itself) then choose to export the selected.

The bsg.req should be simple readout of all the files in the req folder, where you should place the req you have made.

BFlog gives that error because it wasn't entered into the req and LUA properly so when you were trying to refer to it with the vehicle spawn the game wasn't finding it in the registry. It also isn't finding a BSG folder in the 'sides' portion of your project folder, which should have crashed it given it's a severity 3 error message.

Aside from a few simple problems I would say the thing to worry about most is the fact that you are exporting through Bconstructor and milkshape, which if I remmber right(likely I don't) has a tendency to screw up geometry and not export nulls.
User avatar
minilogoguy18
Master Bounty Hunter
Master Bounty Hunter
Posts: 1512
Joined: Wed Nov 09, 2005 11:12 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Post by minilogoguy18 »

your right, it doesnt export nulls because it doesnt support nulls, ms3d doesnt even have nulls in it, ms3d and bconstructor have to be the worst way to go to get a model in game unless its a prop and even then its still probably more trouble. ms3d isnt easier to use than XSI either, once you learn XSI youll find yourself doing things in half the time with it and so much more.
t551
General
General
Posts: 791
Joined: Sat Jul 16, 2005 3:23 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Post by t551 »

Could a solution for the null problem be to use geometry for the hardpoints?
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

XSI to Milkshape 3d to BConstructor to SWBF2

Post by AceMastermind »

t551t551 wrote:Could a solution for the null problem be to use geometry for the hardpoints?
Yes, that's what I do(or used to do until I purchased XSI Foundation), and it seemed to work.
However, I did not use Milkshape to create the models,
I used XSI Modtool 4.2 to create and texture the model using cones for the hardpoints,
then exported as "dotxsi",
then imported "dotxsi" into Milkshape
then exported from Milkshape as "Milkshape 3D ASCii text file",
then imported into "BConstructor" and set the hp coordinates and finally saved as ".msh".

Needless to say, it's a lot easier to just purchase Foundation and place "nulls" and export your models the way they were meant to be.
DarkHelmet

Post by DarkHelmet »

Hi all

I downloaded xsi5 trial and created a very simple object. Just to test, nothing fancy.
(you're right "Mini", it is easier to use once you get to know the keyboardcommands)
Did not use null's but used geometry for hp's.
There where problems exporting (xsi crashed) untill i found out only the object and the hp's should be selected.
(no object collision was defined yet)

Instead of creating a new side (and getting the error like in my 1st post), i copied the entire imp side, placed all the files in there and placed an entry in the imp.req.

Now it's Flying (hurrraaayyyyy!!!) :D :D :D :D
1 minor issue though. :?
There is only 1 laser but 2 are defined.

This is the error in bfront2.log:
Message Severity: 3
.\Source\Aimer.cpp(684)
Aimer "tst-disc BODY WEAPON1" mount node "hp_fire_1" not found
But i'll figure this 1 out later (i hope).

First i'm gonna play around with collisions and later on rebuild the viper.
DarkHelmet

Post by DarkHelmet »

The viper is imported in xsi5.
The null for the HP's are placed And now it's flying. :)

Look at these:
Image
created from vehiclespawn.

Image
in action

Image
and a job well done. :)

The side-problem is solved as well.
When i created the bsg side, i forgot to copy the clean.bat and the munge.bat into Data_XXX\sides\bsg
Qdin
Old School Staff
Posts: 2059
Joined: Wed Feb 23, 2005 9:54 am
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Post by Qdin »

lol

nice to see, now add some Glow to the engines :)
DarkHelmet

Post by DarkHelmet »

That is the next step. I'm searching the docs and the forums to figure this out. (hints to topics and docs are appreciated ;) )

And when this is done, i'll see if i can get custom sounds to work.
And a final step will be vehicle animations. (opening cockpit and landinggear).
Kyross

Post by Kyross »

When i saw a missile ship for a star wars game in another thread I thought it was the same typeship as this. They look so similar.

Give that thing a beefed up texture and it would be a job well done +2.
DarkHelmet

Post by DarkHelmet »

update:

The engine glow is now working as well.

look at this: :)
Image

A new problem though.
I added 3 hp's (used null's), 1 for each engine, and in the odf pointed them to the exhaust fx of the xwing.
For some reason there is a problem with the hp's of the weapons.
Only 1 laser is used instead of 2 and it's firing from position 0,0,0.

This is the error from bfront.log:
Message Severity: 3
.\Source\Aimer.cpp(684)
Aimer "bsg-viper2 BODY WEAPON1" mount node "hp_fire_1" not found

Message Severity: 3
.\Source\Aimer.cpp(684)
Aimer "(null)" mount node "hp_fire_2" not found
this was added to the vehicle odf:
// Thrust
ThrustEffect = "com_sfx_exhaust_xwing"
ThrustAttachPoint = "hp_engine1"
ThrustAttachOffset = "0 2.5 -5.2"
ThrustEffectMinScale = "0.7"
ThrustEffectMaxScale = "2"
ThrustEffectScaleStart = "0"
for the other 2 engines there is also an entry.

Before adding the hp's for the engines there were no problems and the lasers were firing fine from hp_fire_1 and hp_fire_2.

Any1 got an idea?
Kyross

Post by Kyross »

make surethere is nothingwrong with the fire points, and try maybe try abbeviating them to hp_fire1 and _fire2 in the odf and scene.
DarkHelmet

Post by DarkHelmet »

The hp_fire problem is solved as well.

I renamed the hp_engine1 into hp_xhaust1. Now in the explorer view of xsi it's listed below hp_fire_1.
So now the appearance order of the hp's in xsi is the same as in the odf and for some (strange) reason it solved the problem.
An other think i noticed that the position op the exhaust hp is "read". I had to change the option ThrustAttachOffset back to "0".

Has any1 else noticed issues with the appearance order of the hp's?
computergeek
General
General
Posts: 770
Joined: Thu Jun 07, 2007 6:26 pm
Projects :: Halo Warthog vehicle for SWBF2
Games I'm Playing :: Bioware RPGs - Halo
xbox live or psn: No gamertag set
Location: Far Far away....

Post by computergeek »

Awesome, a viper!
when this is fixed do a Cylon Raider!
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Post by Maveritchell »

Stop bumping old threads. This is one of many you've done. Read the rules.
computergeek
General
General
Posts: 770
Joined: Thu Jun 07, 2007 6:26 pm
Projects :: Halo Warthog vehicle for SWBF2
Games I'm Playing :: Bioware RPGs - Halo
xbox live or psn: No gamertag set
Location: Far Far away....

Post by computergeek »

Im sorry I didnt realize it.
Post Reply