Hard Light Productions Forums
Modding, Mission Design, and Coding => The Modding Workshop => Topic started by: TrashMan on January 31, 2010, 09:58:29 am
-
:wtf:
I've been going over my tables trying to fix everything now that I switched to the new Inferno builds (I may re-release a tweaked COTS, now that I have the new AI and some features to play with).
I've got these strange errors with the debugger (SSE 5852 build)
Weapon explosion 'ExpMissileHit2' does not have an LOD0 anim!
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
Couldn't open texture 'shieldhit01a'
referenced by model 'Lightbringer1.pof'
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
Assert: count < max_ints
File: parselo.cpp
Line: 2213
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
-
Please post a full log. Without that, it's rather hard to tell where the error is occuring.
-
FOW: COTS that you released is buggy as heck and that's what you will get when trying to run it on more recent, more strict debug builds.
1: Expmissilehit2 is referenced somewhere in COTS tables, but there's no such effect.
2: GTB Lightbringer uses shield effect as a texture for some reason, shield effect is in "effects" folder, so it can't find it.
Change it to invisible texture and it will be fine.
3: This one is impossible to solve without debug log, so post FS2_Open.log file from your data folder.
Once you post the log, it should be an easy fix (it's a table error, quite simple, but there may be many cases in which you will get similar warning).
-
Actually "Weapon explosion 'ExpMissileHit2' does not have an LOD0 anim!" means that you're missing
$Name: ExpMissileHit2
$LOD: 1
in your wxp.tbm
-
I am fixing the COTS tables ATM..so yea.
I figured a shield can be textures with whatever, as it doesn't matter. Actually IIRC, all of my ships have the shield textured with a shield hit effect, and this is the only .pof that gets a warning. Strange, ain't it?
Regarding the ExpMissileHit2 - I haven't touched the wxp.tbm. At all.
[attachment deleted by admin]
-
Found root pack 'E:\GAMES\Freespace 2\mediavps\ma-sdrvfix.vp' with a checksum of 0xeb53ee0a
Found root pack 'E:\GAMES\Freespace 2\mediavps\MV_Complete.vp' with a checksum of 0x31df7754
Gee, I wonder what is wrong with this. Could it be that mv_complete is not supported anymore? I have no idea, but I am quite certain that there was a re-release of the 3.6.10 MVPs that said something to that effect.
-
Actually "Weapon explosion 'ExpMissileHit2' does not have an LOD0 anim!" means that you're missing
$Name: ExpMissileHit2
$LOD: 1
in your wxp.tbm
Nope, that means he is missing effect for ExpMissileHit2.
Note that it's missing LOD0 anim, not LODs 3 and 4.
Your solution would work in the latter case, he should do exactly the oposite (delete either ExpMissileHit2 entry from weapons_expl.tbl, or in case of FOW: COTS, reference from Weapons.tbl). He would have propably gotten the latter error though, as current FOW: COTS lacks weapons_expl.tbl or any tbms for it.
-
Dragon is correct here, there is no such thing as ExpMissileHit2 unless Trashman manually added such an effect in his effects folder
Adding ExpMissileHit2 to wxp.tbm would only generate an additional error in debug.
-
Weapon explosion 'ExpMissileHit2' does not have an LOD0 anim!
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
That would be this error, except this particular one is most likely caused by weapon referencing to the missing effect.
Adding entry in wep.tbm will not change anything in that case.
It matter in case of chosing way to fix this bug though, as if you decide to add the effect, you will also have to add an entry.
If you will want to get rid of the reference in weapons.tbl howewer, adding an entry will only produce another bug.
-
I was sure ExpMissileHit2 was stock or came with the mediaVP's. I don't recall getting that error earlier.
No matter, I can easily use the regular missile explosion. Fixing this error is easy, I just wasn't sure what was causing it.
It's the last error that puzzles me.
-
The only place where 'count < max_int' assert happens is in 'stuff_int_list' function... In ships table this function is used in the options listed below.. Problem is that the table tries to insert more options to the list than what list allows.
Places where it is used & the maximum number of values:
$Detail distance: (5)
$Explosion Animations: (32)
$Allowed PBanks: (200 or 300 with inferno)
$Allowed Dogfight PBanks: (200 or 300 with inferno)
$Default PBanks: (3)
$PBank Capacity: (3)
$Allowed SBanks: (200 or 300 with inferno)
$Allowed Dogfight SBanks: (200 or 300 with inferno)
$Default SBanks: (4)
$SBank Capacity: (4)
+As Color: of the $Ship IFF Colors: setting (3)
Subsystem entries ...
$Default PBanks: (3)
$PBank Capacity: (3)
$Default SBanks: (4)
$SBank Capacity: (4)
-
Hm...don't recall any of the values going over that.
Default P and SBanks accept a total of 4 strings max? That makes sense...hmmm.
Wish the debug was more helpfull in locating where that limit was breached.
-
Default PBanks = 3
Default SBanks = 4
-
I don't have ANY craft that has more than 4 banks.
Actually, I don't think I have any one that has more than 3, so that can't be it...
Oh well...I'll look it up on Friday again.
-
Actually "Weapon explosion 'ExpMissileHit2' does not have an LOD0 anim!" means that you're missing
$Name: ExpMissileHit2
$LOD: 1
in your wxp.tbm
Regarding the ExpMissileHit2 - I haven't touched the wxp.tbm. At all.
That's because (at least in the version I have) there is no such TBM or parent Table at all. But my copy may be old.
-
Assert: sip->afterburner_fuel_capacity
File: ship.cpp
Line: 2184
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
-
ERm...can anyone tell me WTF is this error?
-
Without knowing what build you were using, and without seeing the entire log, no, not really.
-
It is a safety check that makes sure code wont divide by zero. That is afterburner - if defined - must have an amount of fuel defined for it as well. In other words +Aburn Fuel: must be defined.
-
3.6.12 RC build (SSE)
Methinks this is the entry that's making problems.
$Afterburner: YES
+Aburn Max Vel: 0.0, 0.0, 160.0
+Aburn For accel: 0.9
+Aburn Max Reverse Vel: 60.0
+Aburn Rev accel: 0.5
+Aburn Fuel: 350.0
+Aburn Burn Rate: 50.0
+Aburn Rec Rate: 30.0
-
It is a safety check that makes sure code wont divide by zero. That is afterburner - if defined - must have an amount of fuel defined for it as well. In other words +Aburn Fuel: must be defined.
That's probably a good case for using an Assertion rather than an Assert then. I'll update that now.
EDIT : Actually it should be a Warning not an Assert since there is no check that the value wasn't zero.
-
This bugs me...I still have 16 warnings to fix, but this is the first one that pops up and FS2 debug closes after that. Until I deal with this, I can't fix other errors.
Also, reverse AB doesn't seem to work: Z + TAB and I get the afterburner sound, the ship shakes, but I ain't moving at all.
-
Trashman, make (or clear) empty 'debug_filter.cfg' file into the main data directory and run debug. Then upload the log somewhere and post a link here.
-
Try this debug build (http://www.hard-light.net/forums/index.php?topic=68185.0). It should tell you which ship is the problem.
-
Thanx..I'll have to wait till Friday till I try it out tough... :blah:
-
Here's hte FS2 log (with this latest build).
I get some really strange errors. This one again:
Assert: count < max_ints
File: parselo.cpp
Line: 2213
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
And a inverted bounding box error for EVERY submodel that makes hte Phoenix...PCS screwed something up?
It never got to the Afterburner error, but it might be because I removed the Phoenix table entry. I'm positive it's the culprit, because I got it before I removed it.
ships.tbl(line 1172:
Error: Required token = [#End], [$Subsystem:], [$Name], or [$Template], found [$Rear Velocity: 50].
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
[attachment deleted by admin]
-
Found root pack 'E:\GAMES\Freespace 2\mediavps\ma-sdrvfix.vp' with a checksum of 0xeb53ee0a
Found root pack 'E:\GAMES\Freespace 2\mediavps\MV_Complete.vp' with a checksum of 0x31df7754
Please update.
ASSERTION: "count < max_ints" at parselo.cpp:2213
Freeing all existing models...
Without a call stack, it's hard to tell where this error originated, but I assume that there is an int list in your tbl somewhere (An int list is a list of ints, taking the form ( 1 2 3 ) for example) that has one or more arguments too many, or that does not have a closing bracket.
FreeSpace version: 3.6.13
Where did you get this?
-
Kajorama, 3 posts up.
I'm trying to find where that error could possibly be, but so far nothing..
-
Am not getting that error anymore..
BUT..I am not getting any ships either. It's like the whole ships table is ignored.
The techroom is empty.
In FRED, only waypoitns and the AtenMk2 (added with a tbm) appear.
All I did was to remove the Phoenix from the tables, and fiddle with the Armageddon, LB and Claymore entris...and nothing strikes me as wrong:
$Allowed PBanks: ( "Redeemer") ( "Gurthang HL-9R" "Akheton SDG" "Morning Star" "Prometheus S" "Maxim" )
$Allowed Dogfight PBanks: ("Redeemer" ) ( "Gurthang HL-9R" )
$Default PBanks: ( "Redeemer" "Prometheus S" )
$PBank Capacity: ( 500, 100 )
$Allowed SBanks: ( "Tempest" "Judgment Day" "Tornado" "Trebuchet" "Piranha" "Stiletto II" "Cyclops" "Cyclops#short" "Helios" "EMP Adv." "Infyrno" )
$Allowed Dogfight SBanks: ( )
$Default SBanks: ( "Judgment Day" "Judgment Day" "Tempest" )
$SBank Capacity: ( 160, 160, 80 )
$Allowed PBanks: ( "Prometheus S" "Lamprey" "Phalanx" "Maxim" "Gurthang HL-9R" ) ( "Obliderator" )
$Allowed Dogfight PBanks: ( "Gurthang HL-9R" ) ( "Obliderator" )
$Default PBanks: ( "Gurthang HL-9R" "Obliderator" )
$Pbank Capacity: ( 200, 400 )
$Allowed SBanks: ( "Rockeye" "Tornado" "Trebuchet" "Stiletto II" "Piranha" "Cyclops" "Cyclops#short" "EMP Adv." "Infyrno" )
$Allowed Dogfight SBanks: ( )
$Default SBanks: ( "Infyrno" "Tempest" )
$SBank Capacity: ( 80, 80 )
$Allowed PBanks: ( "Redeemer" )
$Allowed Dogfight PBanks: ( "Gurthang HL-9R" )
$Default PBanks: ( "Redeemer" "Redeemer" )
$Pbank Capacity: ( 400, 400 )
$Allowed SBanks: ( "Rockeye" "Tornado" "Trebuchet" "Stiletto II" "Piranha" "Cyclops" "Cyclops#short" "EMP Adv." "Infyrno" "Balista" "HMMOA-3" )
$Allowed Dogfight SBanks: ( )
$Default SBanks: ( "Cyclops" )
$SBank Capacity: ( 180 )
-
ASSERTION: "count < max_ints" at parselo.cpp:2213
Freeing all existing models...
Without a call stack, it's hard to tell where this error originated, but I assume that there is an int list in your tbl somewhere (An int list is a list of ints, taking the form ( 1 2 3 ) for example) that has one or more arguments too many, or that does not have a closing bracket.
The count < max_ints is annoying as it doesn't show which data or even which table it was processing. However.. looking at his fs_open2.log it seems like the error is coming from the 'obt' tbm or in something else after it...
To detect which one i specifically asked him to run with emptied 'debug_filter.cfg' file which he has not done.
-
Where can I find that file? It's not in the FS directory, nor hte the FS2/Data
-
You need to create one. Just make an empty text file in your fs2\data folder, and rename it to debug_filter.cfg.
-
Here's the log with the debug_filter file
[attachment deleted by admin]
-
Thank you. Now. Can you make it crash again and post THAT log? Because AFAICT, everything went right in that runthrough...
-
It went right? Must be because I removed the Phoenix entry. So it WAS the culprit.
But if everything is OK in that runtrough, why don't I have any ships in the techroom or FRED? Why can't I select the campaign?
I added the Phoenix in, but it didn't crash (could be because I removed the $Rear Velocity entry). Still nothing showing up in the TR or FRED.
EDIT:
I found what was wrong. The very beginning of hte ship.tbl got messedup. Dunno how. the cursor must have jumped while I was typing, because hte first line was
so#Default Player Ship
How that "so" got there, I have no idea.
Anyway, now that it goes trough the table again, I run it trough a debug with a clean log and got some mroe errors....the ints one was there.
Attached the log.
[attachment deleted by admin]
-
Stuffed string = [GTSG Hydra]
Ship name -- GTSG Hydra
Stuffed string = [TSSGun]
Ship short name -- TSSGun
Stuffed string = [Terran]
Ship species -- Terran
Here's the partial wad of text:
XSTR("The latest word in small
Found required string [$end_multi_text]
Stuffed string = [The latest word in small stati]
Stuffed string = [SSG.pof]
Stuffed int: 0
Stuffed int: 100
Stuffed int: 500
Stuffed bool: true
Stuffed float: 1.000000
Ship density -- 1.000
Stuffed float: 0.200000
Ship damp -- 0.200
Stuffed float: 0.200000
Ship rotdamp -- 0.200
Ship Class 'GTSG Hydra' delta_bank_const -- 0.500
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 20.000000
Stuffed float: 20.000000
Stuffed float: 20.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed bool: true
Stuffed float: 0.000000
Found required string [$SBank Capacity:]
Stuffed float: 1200.000000
Stuffed float: 5.000000
Stuffed float: 0.000000
Stuffed float: 0.000000
Stuffed float: 800.000000
Stuffed string = [General]
Stuffed bool: true
Stuffed int: 0
Stuffed int: 2000
Stuffed string = [-1]
Stuffed float: 0.000000
Stuffed float: 0.500000
Stuffed float: -20.000000
Stuffed float: 0.500000
Stuffed string = [genericshield]
Stuffed int: 6
Found required string [$Subsystem:]
Found required string [$Subsystem:]
Stuffed string = [Turret01]
Stuffed float: 20.000000
Stuffed float: 1.000000
ASSERTION: "count < max_ints" at parselo.cpp:2213
Freeing all existing models...
Please learn how to interpret a log. Look for the GTSG Hydra entry. Check if the data supplied for the turret01 subsystem is actually valid.
-
Also, reverse AB doesn't seem to work: Z + TAB and I get the afterburner sound, the ship shakes, but I ain't moving at all.
As mentioned elsewhere, I forget to state that "$Rear Velocity:" is required. I just now updated the wiki to reflect that in both '$Rear Velocity:' and in '+Aburn_Max_Reverse_Vel:'.
#Ship Classes
$Name: GTF Ulysses
+nocreate
$Afterburner: YES
+Aburn Max Reverse Vel: 40.0
+Aburn Rev accel: 2.0
#End
That wont work. This will:
#Ship Classes
$Name: GTF Ulysses
+nocreate
$Rear Velocity: 20.0
$Afterburner: YES
+Aburn Max Reverse Vel: 40.0
+Aburn Rev accel: 2.0
#End
-
Thank you..
I found it:
$Subsystem: Turret01, 20, 1.0
$Default PBanks: ( "Vulcan" "Vulcan" "FighterKiller" "FighterKiller" )
$Subsystem: Turret02, 20, 1.0
$Default PBanks: ( "Vulcan" "Vulcan" "FighterKiller" "FighterKiller" )
Thjis entry was the problem.
B.t.w. - how do Thruster Indexes work? I get a index warning when adding maneuvreing thrusters.
-
Which warning exactly?
-
My entry for reverse thrusters:
$Thruster:
+Index: 1
+Used For: ("Reverse")
+Position: (0.8 -0.22 10.9)
+Normal: (0 0 1)
+Texture: thruster02-01
+Radius: 0.5
+Length: 1
$Thruster:
+Index: 2
+Used For: ("Reverse")
+Position: (-0.8 -0.22 10.9)
+Normal: (0 0 1)
+Texture: thruster02-01
+Radius: 0.5
+Length: 1
and the debug warnings:
For 'RailgunImpact', 3 of 4 LODs are missing!
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
Invalid index (1) specified for maneuvering thruster on ship GTF Phoenix
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
Invalid index (2) specified for maneuvering thruster on ship GTF Phoenix
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
ships.tbl(line 10289:
Warning: Error parsing id# in XSTR() tag XSTR(
"The Hydra is the smallest shivan fighter we observed. It's usually fielded in great numbers, intended to swarm the enemy. While unusually fragile, it is also well armed." -1)
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
Pbank capacity specified for non-ballistic-primary-enabled ship GTF Ares Pimp.
Resetting capacities to 0.
<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! <no symbol>
<no module>! RegisterWaitForInputIdle + 73 bytes
-
Never used +index for thrusters. Seem to work just fine without that parameter.
As for the impact you have something wrong with the number of LODs probably in weapon_expl.tbl
-
Indexes could also start from 0
-
I don't even have a weapons_expl.tbl
I just nicked the railgun impact effect from D0S, didn't notice any similar table tehre.
Also.,, I'm finished with POF-inghhte ColossussMk2. All paths, subsystems, docks, turrets - everything is done. But the game is spouting redicolous warnings.
Models seem to randomly suffer from inverted bounding boxes. subsystems that are clearly present in both the ship model and the table are listed as missing. :mad:
-
AHa! Damn PCS....it put the $ in front of SOME susystem names, but not all.
-
Never used +index for thrusters. Seem to work just fine without that parameter.
Same here. I tried getting index to Not scream on debug but no matter what I did with it, it would complain that it was not set correctly. But whatever, it doesn't seem to be needed anyway.