Description

Hello guys! Here's the gui version of extractor tool with more features (read and extract *.bin and *.lev files, play the .wav files stored in the *.bin archive and so one. There are some minor issues, bugs that will be fixed in the upcoming updates.

Preview
Bhunter Devtools gui 1.3
Post comment Comments
Guest
Guest - - 690,760 comments

Ok ignore my post on your original tool - this one is much better indeed.
The .lvl file with its BSP files seems to be the general map indeed. Would be awesome if we could customize it and repack the bin. Perhaps a Bhunter sequel could be created this way!!

again excellent work!!

Reply Good karma Bad karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

Hi!

Thank you for your comment! My program will be updated, but I need more information about the .lev and .bsp file formats.

All I know, that medal of honor (allied assault) and Quak1-2 also used this filetype (.bsp) but with another file structure.

I also want to add an image inspector to my program.

.bsp file stores .TGA files, animation and modell files as well.

Regarding to repacking *.bin files is planned to be added to my program. (upcoming update).

I also want to know what programs the devs used to create the maps. what map editor.

Reply Good karma+1 vote
Guest
Guest - - 690,760 comments

Thanks for your reply!
Don't know if it helps, but here is the Master Thesis of the main developer, where he uses B-hunter as a demo/use case:

http : / / brainphant.com/download.php?file=portals.pdf

See page 44 and onwards.

Let me see what else I can dig up..

Reply Good karma Bad karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

oh my God :'( thank you very much for sending me this <3 I really hope I could send an email to the guy who was responsible for map editing (.bsp /.lev) as well as the 3d model files (bsp).

Reply Good karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

We need to make a Discord server for the game as well as attract more and more ppl who are interested in such an old game.

I'm working on tools for other titles: "The Outforce" "Gorky 17", "Star command: deluxe". Regarding The Outforce on my discord channel I managed to keep in touch with the former developers of the game, and they landed on my channel ^^. I hope we can do something good to Bhunter too!

Reply Good karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

This might be a problem:

"In the development process a lot of time and work was saved by directly using the game rendering
code for the world editor instead of writing specific tools for assembling segments and maintaining
the portal graph. Furthermore, the process of designing the game world was tremendously eased by
the integration of game and editor and the short prototyping cycles achieved."

According to this, the devs did not make any map editor tools for the game... And we do not have the source code of the game too.

Reply Good karma+1 vote
TG0
TG0 - - 4 comments

I created an account as I reached the limit of Guest replying :)

Right I've read that as well..
Makes me wonder if the exe can be run with some arguments to enable this 'editor' mode..
I tried decompiling the exe, but of course it only decompiles to a certain point, and mostly assembler code..

If your interested, here's the first alpha demo of the game:
https : / / we.tl/t-bFKgolsdUa

Reply Good karma Bad karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

Thank you for your comment!

Here's what I have:

I have the file structure for the *.bsp files as well as the *.bin file, *.lev file.

According to the lead dev. of the game:

If I remember correctly, the editor code is not compiled into the released version, so unless you have the source code and the ability to compile it, I'm afraid there is no way to use it :-/
To activate the editor, one would have to
1) Place a file called BHUNTER.KEY with the single text line 'Interactivision' in it, next to the executable.
2) Possibly start BHUNTER.EXE from the command line with 'edit' as the single argument. I think this would disable all enemies.
3) Type the cheat code 'edit' inside the game to enable the editor.
4) Hit F1 to enter/exit the editor. The model would be saved automatically when exiting the editor.
You can give it a shot, but I don't think it will work with the executable you have.

As for the BSP files, this was a proprietary format not intended for editing; It was converted from 3D-Studio files (.3DS) and read directly by the proprietary 3D engine in the game.

I don't know if it will be of any help, but this is what I could dig up about the BSP format. Each file defines a 3D model with a texture reference and various properties AND the model geometry described as a binary space partitioning tree (BSP) used for rendering optimization (culling) and for collision detection...

/* BSP file format v2.0:

int number_of_materials;
struct aModelMaterial[number_of_materials];
int number_of_vertices;
struct aModelVertex[number_of_vertices];
int number_of_vrefs;
struct aModelVRef[number_of_vrefs];
int number_of_faces;
struct aModelFace[number_of_faces];
int number_of_bsp;
struct aModelBSP[number_of_bsp];
int number_of_frefs;
struct aModelFRef[number_of_frefs];
*/

struct aModelMaterial {
unsigned char amb_r,amb_g,amb_b,dif_r,dif_g,dif_b,spec_r,spec_g,spec_b;
char texture[23];
};

struct aModelVertex {
VECTOR w,p; // a VECTOR is a struct { float x, y, z; }
float u,v,x,y;
union {
int col;
float a;
};
struct aModelVertex *next,*prev;
int cachetime,projected;
};

struct aModelFace {
int material,vref,cachetime;
};

struct aModelVRef {
int vertex,next;
float u,v;
};

struct aModelBSP {
VECTOR min,max,n;
float d;
int front,back,above,below; // These are indices of child nodes in the BSP tree
};

struct aModelFRef {
int f,next;
};

It's been 25 years, so my memory about the details is limited, but I remember that the container-file format was hierarchical, so that the container file could itself contain container files. That might be what you should be looking for if you can only extract a subset of the files...

The TEST.LEV file holds the entire game world IIRC, where everything is set up as 'segments' connected by 'portals' and decorated with decoration objects. For example, a street in one of the cities would be a number of block-shaped segments with each of the 2 end faces being the portals. When two portals are aligned, the segments will automatically be connected and you can move through the portal from one segment to the other. The road/floor and walls would be (solid) decoration objects connected to each of the segments. The portals not only define the connectivity for moving around, they also serve as rendering optimization - i.e. the rendering engine will only start rendering a segment behind a portal, if the portal itself is visible. This goes on recursively.
As such, the entire world is a graph of nodes (segments) and edges (portals). In order for the NPC objects to move around (and chase you) they use a precalculated path-finding matrix (this is the TEST.PTH file, and it is recalculated by the editor and saved/overwritten whenever the world is changed). Basically, the path-matrix tells you that if you are in segment X and want to find the shortest path to segment Y, you should go through portal N (which will bring you to a new segment X2 (which is one step closer to Y), where you'll ask the matrix again which portal you should pick for the shortest route to segment Y). You can read some details about it in section 3.3 in my Master's Thesis here: Brainphant.com

As for copyright/ownership, Interactive Vision went bankrupt in 2005 and all assets were bought by Avantgarde Technology Holding in Baltimore, so I assume the rights for BHunter went that way. Who owns it today, I don't know.

Thats all the info we have.

We really need the inform the owned of the game source code, because I would re-release the game on zoom-platform...

Reply Good karma+1 vote
TG0
TG0 - - 4 comments

Wow that's some great info! Though it does look like options are extremely limited..

I tried the steps for the editor, but it didn't work so indeed it's probably not included in the release exe.

Seen the BSP format used is proprietary in this case and there's no source code available, there's nothing that can be done?

Should we go as for as to contact Avantgarde Technology for any info on the rights/ownership..? :) :)

Reply Good karma Bad karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

"Should we go as for as to contact Avantgarde Technology for any info on the rights/ownership..? :) :)"

Yes. We need to contact them. First, we need to find their website, contact info.

BTW I could try to make an extractor for the .bsp files, but it seems to difficult. So, I need to ask Watto to do something with it.

Reply Good karma+1 vote
Winters1990 Author
Winters1990 - - 75 comments

One more thing: The map editor is only works in the alpha version of the game...

Make a new file inside the Bhunter game root folder: BHUNTER.KEY. This file should only contain this: Interactivision . Start the alpha version of the game, and in the game press F1.

Reply Good karma+1 vote
TG0
TG0 - - 4 comments

OMG how cool is this! Had to type edit and then F1, which made the editor appear.

So now its a matter of getting the release bin to work with this..

I wonder whether stepping through the exe with a debugger would allow you to separate the editor from rest of the exe somehow?

I'm looking up the AvantGarde Technology Holding INC, but getting a lot of mixed hits. I have 3 potential candidates, but could equally be that the company ceased to exist.. Even checking the Internet Archive gave me nothing...
Will check further..

Thanks again!!

Edit: I wish I still had that inbetween demo, that one also might have had the editor built into the exe.. for the life of me, I can't find it anywhere anymore..

Reply Good karma Bad karma+1 vote
TG0
TG0 - - 4 comments

Found some screenshots on my old HD. This looks like even a more advanced beta version, almost finished:

https : / / we.tl/t-WiuOU9Rg16

Reply Good karma Bad karma+1 vote
Guest
Guest - - 690,760 comments

Oh by the way, About 10 years ago or more, I downloaded a demo version of Bhunter, but to my surprise it was not the official demo with 5 missions, but rather a pre-release demo. In the game you were in a blue car (not the barletta) and there was a small map with parts of the city ring, some green tunnels and a part of the industrial complex (or what looked like it) and I believe the space port as well. So a small map resembling release but not quite.. I haven't been able to track down this demo version anymore recently... have you heard of it by any chance?

I did find the very original alpha demo of the game, a bhunter.exe and bhunter.dat file of about 4Mb, but not the 'inbetween' demo..

Thanks again!

Reply Good karma Bad karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: