Jump to content

Decompiling existing .ibi files help?


Dusty
Go to solution Solved by mrwonko,

Recommended Posts

So, I know you can use Dehaveb to decompile compiled icarus script (.ibi) files. And I've done it before. The only problem is recompiling them. It never works for me. Any suggestions?

 

 

Note: I'm not trying to steal anyone's work or anything, I'm just doing some flow editing for the SP maps I'm melding into my mod that do not belong to me nor do I take any credit for.

Link to comment

I find that decompiled scripts are only good for reference. I can never get them to work without redoing them.

 

So basically decompiled scripts are practically useless?

 

Here's a script:

 

// Generated by DEvaheb v1.0

// Decompiled from file "C:\Documents and Settings\Chris\Desktop\pillar_down2.IBI"
 
remove ( "peg1" );
remove ( "peg2" );
remove ( "peg3" );
remove ( "peg4" );
wait ( 777.000 );
 
affect ( "pillar", 56 )
{
move ( $tag( "pillar_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
 
affect ( "sith_scepter", 56 )
{
move ( $tag( "scepter_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
 
affect ( "peg5", 56 )
{
move ( $tag( "peg5_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
 
affect ( "peg6", 56 )
{
move ( $tag( "peg6_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
 
affect ( "peg7", 56 )
{
move ( $tag( "peg7_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
 
affect ( "peg8", 56 )
{
move ( $tag( "peg8_down2", 54)$, < 0.000 0.000 0.000 >, 3000.000 );
}
 
wait ( 3000.000 );
remove ( "sith_end1" );
remove ( "sith_end2" );
remove ( "sith_end3" );
remove ( "sith_end4" );
remove ( "sith_end5" );
remove ( "sith_end6" );
remove ( "sith_end7" );
remove ( "sith_end8" );
remove ( "sith_end9" );
remove ( "sith_end10" );
remove ( "sith_end11" );
camera ( 62 );
camera ( 60, < 0.000 0.000 0.000 >, 1.000, < 0.000 0.000 0.000 >, 0.000, 99999.000 );
camera ( 59, $tag( "outro_cam1", 54)$, 0.000 );
camera ( 57, $tag( "outro_cam1", 53)$, < 0.000 0.000 0.000 >, 0.000 );
use ( "end_cutscene" );
wait ( 1000.000 );
camera ( 60, < 0.000 0.000 0.000 >, 1.000, < 0.000 0.000 0.000 >, 0.000, 2000.000 );
wait ( 1500.000 );
camera ( 59, $tag( "outro_cam2", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam2", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam3", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam3", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam4", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam4", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam5", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam5", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam6", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam6", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam7", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam7", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam8", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam8", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
wait ( 2000.000 );
camera ( 59, $tag( "outro_cam1", 54)$, 2000.000 );
camera ( 57, $tag( "outro_cam1", 53)$, < 0.000 0.000 0.000 >, 2000.000 );
camera ( 60, < 0.000 0.000 0.000 >, 0.000, < 0.000 0.000 0.000 >, 1.000, 2500.000 );
wait ( 3000.000 );
use ( "endcredits" );
camera ( 59, $tag( "intro_cam5", 54)$, 0.000 );
camera ( 57, $tag( "intro_cam5", 53)$, < 0.000 0.000 0.000 >, 0.000 );
camera ( 60, < 0.000 0.000 0.000 >, 1.000, < 0.000 0.000 0.000 >, 0.000, 1000.000 );
set ( "SET_LOCK_PLAYER_WEAPONS", "true" );
set ( "SET_PLAYER_LOCKED", "true" );
set ( "SET_CLOSINGCREDITS", "DEFAULT" );

 
When I try to compile it, it just says "Could not spawn C:\Documents and Settings\Chris\Desktop\Folders\JAMP SDK (old version)\Tools\BehavEd and DEvaheb!". Not to mention upon loading the script it gives 72 errors just from reading it.
 
Well I think something is wrong on my end, I just tried to compile a raven .icarus file and it didn't work.
Link to comment
  • Solution

Yeah. 56 is either FLUSH or INSERT. Those names - like the second parameter of the tag() command, which can be either ORIGIN or ANGLES - are turned into numbers as described in behaved.bhc. Looks like the decompiler doesn't turn 'em back into the identifiers. You'll have to do that manually.

Link to comment

^If it didn't come with the full source release of the engine and SP code, prolly not.

 

Also, I'm going to mark this solved, as you guys have pretty much explained what needs to be done to fix scripts (basically turn the left over numbers back to their correct stuff), and I thank you for that!

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...