Sign in to follow this  
Followers 0

Vanilla Hexen problem with DB2

Spotted a small problem with making Vanilla Hexen maps with DB2. (It's possible this is why the maps I made didn't run in the Doomsday version I tested them in as well)

When DB2 makes a new Hexen map it doesn't add any info to the Behavior lump making it completely empty. This is something Vanilla Hexen absolutely hates and will crash violently when you try to run your map.

Share this post


Link to post
boris said:

Well, what does it have to contain at the very least?

In OBLIGE I use this structure:

typedef struct
{
  char marker[4];  // 'ACS' 0
  u32_t offset;
  u32_t func_num;
  u32_t str_num;
}
raw_behavior_header_t;
and set the marker as shown, the offset to 8, and the function and string counts to 0. That worked for me.

Share this post


Link to post

In addition to this...
Is there any way to actually script for Hexen with DB2?

Currently I have to compile the scripts externally with ACC and manually move them into the map using XWE. Pain in the ass

Is it possible to set DB2 up to use ACC with specific commands similar to how you can the nodebuilders? And if not, why not?

Share this post


Link to post

Yes and a No but simultaneously a small Yes.

Yes you can script and compile using ACC. Look for the Script Editor in the menus if you don't know the shortcut key. The script editor has a compile button you can use (but I believe uncompiled scripts are also automatically compiled when you save your map).

No, you don't need to set anything up through the user interface, because ACC doesn't have any interesting switches any normal user would care for. But also Yes; you can change anything like this using configurations. If you really need that, I can explain how.

Share this post


Link to post
CodeImp said:

No, you don't need to set anything up through the user interface, because ACC doesn't have any interesting switches any normal user would care for.

I can think of one: -h.

Also, I tried to make a small Hexen map (using the Hexen config that came with DB2) and tried to compile a script that consisted entirely of #include "common.acs". It failed, as the compiler did not find common.acs. Changing it to zcommon.acs worked, though. Conclusion: even with the Hexen config, it uses the ZDoom compiler.

Also also, there is no Vavoom ACC. I know Vavoom has its own vcommon.acs file.

Share this post


Link to post

Hmm, that should work though. There is especially a legacy Hexen compiler coming with DB2 for this purpose (see subdirectories). I don't know why it's using the ZDoom one. Crap.

Share this post


Link to post
CodeImp said:

Hmm, that should work though. There is especially a legacy Hexen compiler coming with DB2 for this purpose (see subdirectories). I don't know why it's using the ZDoom one. Crap.

There's no Hexen_ACS.cfg in the Scripting folder and the compiler config to use for Hexen points to ZDoom_ACS.cfg (loaded from Include\Doom_misc.cfg).

Share this post


Link to post

So, something that will be fixed in the next release?
I probably could figure out how to set it up myself. But if it'll be fixed for the next version of DB2, then I might do better to just wait for that.

Share this post


Link to post

Figure it out yourself and submit it as a fix :P

Share this post


Link to post

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
Sign in to follow this  
Followers 0