Jump to content

Do we have a DSDHacked tutorial somewhere?


Recommended Posts

What it says on the tin, I'm unfamiliar with Decorate and just barely familiar with Dehacked. While I did look at Doom Tools' documentation, I just didn't really get it.

 

I mostly want to make some new static decoration items, but I do want to eventually take a shot at making weapons.

Share this post


Link to post

Dsdhacked has nothing to do with decorate its an extension of Dehacked
https://doomwiki.org/wiki/DSDHacked
 

If you want to do something with it i suggest to learn basic Dehacked first and go from there. Without any external tools DSDhacked is written on top of generated Dehacked file. In notepad or any text editing program of your choosing. Difference between DSDhacked and Mbf21 is DSDhacked remove any limitation.

https://github.com/kraflab/dsda-doom/blob/master/docs/dsdhacked.md

 

Tldr brute workflow goes something like this: You get Whacked4 or Doomtools (never used it personally), do your work (In Boom extended or Mbf21) generate Dehacked file, and edit this file on top. For Dehacked tuts your can watch Doomkid's tutorials on YT , but imo just practice in WhackED4 and learn by hand . Explanation of other thigs exist in the written forms. For example
Mbf21
https://github.com/kraflab/mbf21/blob/master/docs/spec.md

 

Same flow, you get Dehacked file, and edit it with texts

Edited by INfront95

Share this post


Link to post

Ah, I see. I was under the impression I could just do it all through Doom Tools (which is where Deco Hack comes in). I'm sorta familiar with Dehacked and figured it was more or less a single step. I'll take a look at this again tomorrow.

Share this post


Link to post

By all means ask people about doom tools, i never touched it but heard that its one of the best ways to do advanced dehacked stuff

Share this post


Link to post
35 minutes ago, Matt Eldrydge said:

Ah, I see. I was under the impression I could just do it all through Doom Tools (which is where Deco Hack comes in). 

You certainly can, but I don't have enough experience with DSDHacked to help you more than that.

 

Maybe looking at some examples will help:

https://www.doomworld.com/forum/topic/139104-crusader-dsdhackedmbf21/

 

Here are some other maybe useful threads:

https://www.doomworld.com/forum/topic/127311-how-to-use-dsdhacked-and-decohack/

https://www.doomworld.com/forum/topic/142033-dsdhacked-defining-new-sprites-in-decohack/

 

Edited by plums

Share this post


Link to post
9 hours ago, Matt Eldrydge said:

I'm sorta familiar with Dehacked and figured it was more or less a single step.

If you mean getting the "additional infinite custom-defined sprites/sounds/frames" (which is what DSDHacked is all about, as an extension to everything before it), then it is a single step. You just write "using dsdhacked" clause at the top of your decohack code and, when compiling decohack code into dehacked format, decohack will figure out by itself that any sprite/sound mnemonic that doesn't match known vanilla/boom/mbf/dehextra should be added via DSDHacked's [SPRITES]/[SOUNDS] sections. Naturally, you have to add appropriate sprites and sounds into the wad file itself.

Edited by Doomy__Doom

Share this post


Link to post

I've been trying to get a simple decoration to work for around an hour now and I don't understand any of the documentation, same with the examples presented in them. I really don't understand what the next step is after putting the sprites inside the wad.

 

All of these are simple, static things. 

 

DnlAS2X.png

 

From there, I tried making a patch in WhackEd4 and none of these sprites were recognized by the editor. I tried naming them as just "SP00" and so on, but it wouldn't recognize even those.

Share this post


Link to post

While DSDHacked allows for unlimited sprites, you still need to stay within the sprite naming convention, i.e. 4 free to chose characters, then 2-4 characters for the rotations. So "PLANT1A0" isn't valid, you'd have to use something like "PLA1A0", where "PLA1" is your sprite name, and "A0" is your rotation (i.e. no rotation).

 

I don't think WhackEd supports DSDHacked as of today. But if you use DECOHack you don't have to learn anything, just use any sprite or sound name you want (instead of SP00, SP01 etc. with DEHExtra) and you're good to go.

Share this post


Link to post
1 hour ago, Matt Eldrydge said:

From there, I tried making a patch in WhackEd4 and none of these sprites were recognized by the editor. I tried naming them as just "SP00" and so on, but it wouldn't recognize even those. 

SP00 is a dehextra sprite mnemonic, not DSDHacked. If you want to use that, you can do it with Whacked using "Extended Dehacked" configuration. Select that, and SP00-SP99 sprites will show up when you try to assign sprites in frame table. Point whacked to both IWAD and your sprites pwad, and you should be able to see previews.

 

1 hour ago, Matt Eldrydge said:

I really don't understand what the next step is after putting the sprites inside the wad. 

If you want to use DSDHacked:

- rename sprites to 4 characters as per Doom convention as suggested by boris

- download doomtools (take the version with builtin JRE for minimum installation effort)

- write decohack code in a text file, using your sprite names (roughly like this, untested and maybe will give errors):

#include <dsdhacked>
#include <friendly>
  
auto thing FernTree "Fern Tree" {
	ednum 6001   //some legal editor number for UDB to recognize and show the thing
    
	+SOLID
    
	States {
		Spawn:
			FERN A 0 -1
			Loop
	}
}

//add others further

- turn the above into a dehacked patch by running decohack, put the result into your wad. In command line/powershell/what have you (on Windows, an easy way is to hold Shift+right click somewhere in DoomTools folder -> Open PowerShell window here):

// to put patch into some text file, that you can manually add as DEHACKED lump via SLADE
decohack path\to\code.dh --output path\wherever\you\like\dehacked.deh

// or to make a DEHACKED lump directly in your wad
decohack path\to\code.dh --output path\to\your\pwad_with_sprites.wad

Now you should have a wad with sprites and a patch that you can add to UDB as a resource and see your decoration show up, probably under user-defined items.

Edited by Doomy__Doom
more sane decoration

Share this post


Link to post

Okay, I managed to do it as of yesterday but wanted to get through and implement all of the new things and make sure they worked first. Thanks a lot @boris, @plums, @Doomy__Doom - I was under the impression I had to make a dehacked file first, then edit it through Decohack so I could use DSDHacked and I finally understood that's not the case at all.

 

Here's some screenshots to show things have indeed worked out:

 

mA7tNzy.png

rg7Bt14.png

VGI3y9Y.png

 

I will ask for some more examples to follow if you guys know of any, though! Up next is figuring out how to make breakable decorations and ambient sounds as well, maybe even some new weapons. :)

 

Share this post


Link to post
  • 1 month later...
Posted (edited)

does anyone know how to get rid of the error "No More Free things for a new Auto Thing"?

Edit: Nevermind, i was including "doom19" instead of dsdhacked

Edit 2: "Line 14, Token "-": Expected '}' after "states" section."

Edited by PsyFi

Share this post


Link to post
On 2/22/2024 at 11:14 AM, Matt Eldrydge said:

I will ask for some more examples to follow if you guys know of any, though! Up next is figuring out how to make breakable decorations and ambient sounds as well, maybe even some new weapons. :)

 

can you show the dsdhacked code? i'm having trouble with dsdhacked right now.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...