Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
R1ck

How to DeHacked.

Recommended Posts

I've been mapping for a while now and it is time for me to learn DeHacked. But sadly all the tutorial I found online is sort of old and obsolete. can anyone provide a link on how to exactly do this thing on Slade or whatever? any help appreciated. :D

Share this post


Link to post

The easiest way is to create a .deh file in WhackEd and import the file into a DEHACKED lump in a wad in SLADE3. Editing .deh files in WhackEd is essentially the same as editing them in Dehacked.exe, so the page linked by Voros should be sufficient for reference.

Share this post


Link to post

In Chocolate Doom, adding

# *allow-extended-strings*


At the top of the BEX file allows it to parse the file. I'm not sure about codepointers, but it definitely supports strings, par, background flat and intermission text, as shown in Freedoom's dehacked/bex file.

Share this post


Link to post

That's specific to just Chocolate Doom (and I really don't think codepointers or translucency would work). If one wants his wad to be generally vanilla or limit removing compatible, he needs to use the .deh format. If Boom compatible and above, he can use either .deh or .bex format, but the latter would be better, yes.

Share this post


Link to post

Using the actual doom/doom2 exe is counterproductive these days, hence the existence of Chocolate Doom. You would have to hack the exe to make it work.

I doubt anyone would play on dosbox with doom.exe/doom2.exe unless the player was unaware of Chocolate Doom (I'm guilty, as I played both Doom 1 and Doom 2 on Dosbox the first time), let alone have an interest in loading a mod with it.

Just my opinion.

Share this post


Link to post
21 minutes ago, Voros said:

I doubt anyone would play on dosbox with doom.exe/doom2.exe unless the player was unaware of Chocolate Doom (I'm guilty, as I played both Doom 1 and Doom 2 on Dosbox the first time), let alone have an interest in loading a mod with it.

I did it myself many times for various reasons. The people who do this are certainly in a huge minority, but they do exist. The mere possibility to do it will never go away, and some people will always be trying it, if only out of curiosity. Also, there might be other limit-removing / non-Boom-compatible ports than Chocolate Doom, even if those and their users make a huge minority too.

Edited by scifista42

Share this post


Link to post

Making things that run perfectly in doom2.exe is obviously unnecessary nowadays but it's still a fun limitation to set yourself, see, e.g., Selfie Doom (or, you know, BTSX et al).

Share this post


Link to post
8 hours ago, R1ck said:

But sadly all the tutorial I found online is sort of old and obsolete.

Much like Dehacked itself. :P

 

My suggestion is WhackEd4, powerful and fast editor with an intuitive UI.

Share this post


Link to post

I had a basic intro to DeHackEd tutorial planned for ages, with a focus on understanding how to use the states table to create custom monsters. I'll try to get around to that this month. First, a teaser of what you will be capable of doing.

 

 

Share this post


Link to post

@fraggle was working on a tool to free up Dehacked frames while still maintaining as much "normal" behavior as he could, I don't know if he ever finished it / got it into a working state.

Share this post


Link to post

There's also DHEFUN12.TXT delivered with Dehacked 3.0a zip file describing some dehacked tricks.

 

However, are all these ideas in it really correct? :

Spoiler

[y.2]   Monsters will not move if you give them the player's frame #'s

 

[y.3]   Giving the player a small height makes you harder to hit, but also
    means you can't shoot at monsters on higher sectors.  With a height
    of 2, I couldn't even shoot at monsters 1 step above me!

 

[y.4]   If you make a monster shoot lost souls or barrels, and if it  
    explodes in its face, it will attack whatever injured it, (itself)
    and end up commiting suicide. 

 

[y.6]   Setting the death frame to be the first moving frame will make
    a monster instantly come back from the dead.  It sounds keen, but
    the "undead" monster will be completely invulnerable to attacks,
    but still be able to attack you.

 

[y.7]   If you make a gettable thing also have an exploding death (same
    concept as [3.0]) if the explosion "touches" you, doom quits with
    an error "unknown gettable thing".

 

[y.8]   Setting rocket damage to something high, like 4000 will kill you
    even if you've got god-mode on.

 

[y.9]   Setting missile damage to a negative number:  Sometimes it appears
    to have a "healing effect", but it will still kill a monster.  The
    monsters sometimes fly forward when hit.  Try this and play e2m8,
    for some really trippy side effects.

 

[y.a]** Setting your speed for any monster 17 or above will cause that
    monster to open doors that are set at 0 (inactive). The speed I am
    referring to is in the Things Table (F2). I am still checking what
    causes this to happen.
    Also when you set speed to 40 monsters can not be blocked by a
    line tagged "block monster". This anomaly may start lower than 40 ?

 

[y.b]** Setting a Duration # in the Frame table (F3) to zero when it is
    not zero already causes doom to sooner or later crash. I do not
    know why this happens (could possably be in the code pointer).
    If you try to cut frames out of weapons to make super fast guns,
    you can not set the frames you are trying to cut out at zero or
    there will be a problem, maybe 6 months or even longer. This is
    a random thing not predictable, but it will lockup or crash at any
    given time. Maybe setting the code pointer to zero could possibly
    help correct this problem.
    Study the file by Greg Lewis called SUPRWEP8.DEH
    This patch gives the best example on cutting out frames to make a
    super weapons patch that I have seen.
 

Share this post


Link to post
Posted (edited)

I'm bumping this thread because dl_simc's questions were never answered.

 

This in particular got my attention:

Quote

If you make a monster shoot lost souls or barrels

 

because it would be a new type of attack.

 

Also, can you modify other objects to act like projectiles, or use e.g. flying spawn cubes, rather than using the existing monster fireballs? I want to give a monster a BFG but I don't want to sacrifice anything like revenant rockets.

 

Share this post


Link to post

you can modify anything to have the projectile flags, but the problem is that nothing is going to shoot them correctly outside of the projectile attack functions. spawn cubes will always be aimed at the spawn spots, so its not possible to make them into a normal attack. MBF adds a paramertized A_Spawn function, but I don't know if it handles missiles properly.

Share this post


Link to post

Am I right in thinking the BFGSpray function needs to piggyback off the Revenant's player tracer in order for a monster to fire BFG tracers at the player? Because assigning that action to a 'dumb' projectile doesn't work.

Share this post


Link to post
58 minutes ago, Grain of Salt said:

I don't think you can ever get a monster to fire BFGSpray in deh.

Obsidian's Operation Hydra did it if you want to check it out. It's probably overly complicated since they were trying to implement a Demolisher into dehacked, among other things, which is why I'm asking - I want to modify as little as possible.

Share this post


Link to post

You can indeed use BFGSpray in enemy projectiles: STRAIN is probably one of the more well-known examples with its BFG Zombie.

 

Strictly speaking, player projectiles function in the same way as enemy projectiles and, in the case of the rocket, are even shared. The BFG ball isn't shared, but you can turn other enemy projectiles into the BFG ball to circumvent this. This does however mean that you'll have to give up an enemy attack and personally speaking I'd advise against screwing with the spawn cube: I've tried fooling around with it to make stationary projectile spitters and more often than not I'd get crashes instead.

Share this post


Link to post

OK, fair enough. It doesn't seem to be as simple as just attaching the BFGSpray property to one or more frames of a projectile though - at least, it never works when I try it, even though STRAIN and HYDRA appeared to do just that.

Share this post


Link to post

Hmm...if you haven't already, I'd recommend viewing the DeHackEd patches in WhackEd (2 or 4) and see where your method differs. Failing that, post your patch and maybe we can bugfix for you.

Share this post


Link to post

Looking over the code again, I have no idea how STRAIN or HYDRA achieved their effects. Your Demolisher has a FireBFG parameter, but I thought that was only for players? The Revenant missile has a BFGSpray effect tagged if you open the file in WhackED, but nothing shows up if you open the file in a text editor - so I can't just copy and paste that section into my own file. STRAIN would load in WhackED after giving a bunch of errors, and again shows the same BFG effect attached to the Arach fireball, but nothing of the sort in notepad - it doesn't even seem to use codepointers.

Share this post


Link to post

I find that the best way to learn dehacked is by opening the files in notepad++ and experimenting.

Share this post


Link to post
Posted (edited)

EDIT: seems the problems I had were ZDoom-related.

Edited by Krull

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
×