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

Any Forks of crispy-doom that support decorate

Recommended Posts

I really enjoy crispy-doom for its gameplay and its ease of multiplayer but since I have been starting to make doom mods I thought it would be cool to try to make a my own sort of "doom 3" if it was made in the doom engine and i wanted to add the soul cube as a weapon but I don't really like zdoom because of its look and feel also I don't really want to change source ports every time i want to play it so is there a fork of crispy-doom that has decorate. Thanks.

Share this post


Link to post

Eternity looks like doom rather than zdoom and it has EDF which is a bit like decorate

Share this post


Link to post
On 12/13/2021 at 5:00 AM, Sheepinatux said:

I really enjoy crispy-doom for its gameplay and its ease of multiplayer but since I have been starting to make doom mods I thought it would be cool to try to make a my own sort of "doom 3" if it was made in the doom engine and i wanted to add the soul cube as a weapon but I don't really like zdoom because of its look and feel also I don't really want to change source ports every time i want to play it so is there a fork of crispy-doom that has decorate. Thanks.

This is a plant by Graf Zahl to push decorate as the next cross platform modding standard. 

Share this post


Link to post
On 12/13/2021 at 5:00 AM, Sheepinatux said:

I really enjoy crispy-doom for its gameplay and its ease of multiplayer but since I have been starting to make doom mods I thought it would be cool to try to make a my own sort of "doom 3" if it was made in the doom engine and i wanted to add the soul cube as a weapon but I don't really like zdoom because of its look and feel also I don't really want to change source ports every time i want to play it so is there a fork of crispy-doom that has decorate. Thanks.

 

You can use a tool called DECOHack to make new monsters in a DECORATE-style syntax and then compile it into a DeHackEd file that works with Vanilla, BOOM, MBF, DEHEXTRA or MBF21 compatible ports, depending on what features you utilize.

 

Here's a sample conversion of the Stealth Plasma Alien to DECOHack that I plan on using in an upcoming WAD.  The current iteration utilizes the DEHEXTRA extra frames and sprites, but previously it was MBF compatible.

thing MT_EXTRA03 "Stealth Plasma Alien (Ancient Aliens)"
{
    clear properties
    ednum 93
    health 30
    speed 14
    radius 20
    height 56
    damage 0
    reactiontime 8
    painchance 170
    mass 100

    clear flags
    +SOLID
    +SHOOTABLE
    +COUNTKILL

    clear sounds
    seesound "FRE002"
    painsound "POPAIN"
    deathsound "FRE003"
    activesound "FRE004"

    clear states
    states
    {
    spawn:
        SP03 NO 10 A_Look
        loop
    see:
        SP03 AABBCCDD 2 A_Chase
        loop
    pain:
        SP03 H 3
        SP03 H 3 A_Pain
        goto see
    missile:
        SP03 EF 10 bright A_FaceTarget
        SP03 G 4 bright A_BspiAttack
        SP03 F 4 A_FaceTarget
        SP03 G 4 bright A_BspiAttack
        SP03 F 0
        goto see
    death:
        SP03 I 5
        SP03 J 5 A_Scream
        SP03 K 5 A_Fall
        SP03 L 5
        SP03 M -1
        stop
    raise:
        SP03 MLKJI 5
        goto see
    }
}

 

You can read about and download DECOHack here.

Share this post


Link to post
On 12/14/2021 at 1:24 PM, Gibbon said:

Decorate..  cross platform, in the same sentence!  Surely you jest!

For a while after mbf21 was finalized I remember Graf Zahl proposing that a Content definition language with the syntax of decorate as the next cross platform standard.  Not a bad Idea but I still like vanilla dehacked.  Bex and the extentions of bex are great but I think we haven't done everything with vanilla dehacked yet.  

Share this post


Link to post
5 hours ago, Astronomical said:

For a while after mbf21 was finalized I remember Graf Zahl proposing that a Content definition language with the syntax of decorate as the next cross platform standard.  Not a bad Idea but I still like vanilla dehacked.  Bex and the extentions of bex are great but I think we haven't done everything with vanilla dehacked yet.  

Meh, decorate is nice but it has its place.

Edited by Gibbon

Share this post


Link to post
4 hours ago, Gibbon said:

Meh, decorate is nice but it has its place.

idgi what's wrong with it?

 

seems really obvious to me that EDF and Decorate are both clearly superior to BEX which which is strictly superior to dehacked

Share this post


Link to post
4 hours ago, Gwarl said:

idgi what's wrong with it?

 

seems really obvious to me that EDF and Decorate are both clearly superior to BEX which which is strictly superior to dehacked

It's not about superiority it's about fit for purpose.  There will always be ports using different standards because of what some ports are designed for / used for.  

Share this post


Link to post
21 minutes ago, Sheepinatux said:

i just wanted to have more freedom for adding new weapons and similar stuff like that 

New weapons would be a thorny thing to implement in a demo-compatible way.

Share this post


Link to post
On 12/16/2021 at 6:41 PM, Gwarl said:

 

seems really obvious to me that EDF and Decorate are both clearly superior to BEX which which is strictly superior to dehacked

One word

 

 

 

Compatibility. Every project that is vanilla compatible works in all ports (Except maybe unity if it changes sprite names to avoid issues in doom2.exe)

Share this post


Link to post
2 hours ago, Astronomical said:

One word

 

 

 

Compatibility. Every project that is vanilla compatible works in all ports (Except maybe unity if it changes sprite names to avoid issues in doom2.exe)

I mean as methods of defining game data, not in an authorial sense. Like I could say riding a bike is faster than walking even though not everyone owns a bike.

Share this post


Link to post
13 minutes ago, Gwarl said:

I mean as methods of defining game data, not in an authorial sense. Like I could say riding a bike is faster than walking even though not everyone owns a bike.

It can do more but that is far from objective. It’s like claiming that a plane is faster than a bike so it’s better, when a bike would be faster when going across town. 

Share this post


Link to post
15 hours ago, Astronomical said:

It can do more but that is far from objective. It’s like claiming that a plane is faster than a bike so it’s better, when a bike would be faster when going across town. 

Okay it was a bad analogy. A better analogy would be comparing a jetplane to a biplane.

 

Like really, 'Oh dehacked is like a bike because you can do more stuff with it'. You know very well you can do less stuff with dehacked.

Share this post


Link to post
4 hours ago, Gwarl said:

Like really, 'Oh dehacked is like a bike because you can do more stuff with it'. You know very well you can do less stuff with dehacked.

You can do less with a bike...

Share this post


Link to post
23 hours ago, Gwarl said:

I mean as methods of defining game data, not in an authorial sense. Like I could say riding a bike is faster than walking even though not everyone owns a bike.

Well the original dehacked was done by patching the binary directly.  So in terms of speed, dehacked still is faster because there is nothing to 'interpret'.  It is all in the binary.  Is a single dehacked script faster than decorate?  Likely.  Is it more extensible?  No.

 

One is good for vanilla compatibility purposes the other is not.  Anything else is not important because anything else is outside the scope of many ports for reasons above.

Share this post


Link to post
On 12/16/2021 at 6:41 PM, Gwarl said:

seems really obvious to me that EDF and Decorate are both clearly superior to BEX which which is strictly superior to dehacked 

 

DECORATE is simply a specific flavor of text-based mobj/actor definition.  Conceptually it's no different than JSON, XML, or YAML.

 

If a ZDoom-style DECORATE parser was dropped into a port like Crispy or DSDA-Doom, you would have to either write enough engine code to support the complete featureset of ZDoom DECORATE or you would have to remove features until you had something about as powerful as DECOHack.  And DECOHack already exists and doesn't require ports to patch in support for it.

Edited by AlexMax

Share this post


Link to post

Would be interesting to see ports that interpret DECOHack without an outside program so it can be included in the wad itself.

Share this post


Link to post
On 12/20/2021 at 12:10 PM, Gibbon said:

Well the original dehacked was done by patching the binary directly.  So in terms of speed, dehacked still is faster because there is nothing to 'interpret'.  It is all in the binary.  Is a single dehacked script faster than decorate?  Likely.  Is it more extensible?  No. 

One of the benefits that no one has acknowledged is how easy in comparison it is to setup and create dehacked patches compared with decorate, I don't even know how to get started with decorate, while dehacked just needs whacked4 (decohack exists but it's for people who like decorate and want to still make vanilla compatible mods). 

Share this post


Link to post
On 12/17/2021 at 12:14 PM, Gez said:

New weapons would be a thorny thing to implement in a demo-compatible way.

Can confirm. Requires lots of demo checks and some of the old hard-coded stuff just can't really be sensibly done if you make weapons dynamic.

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
×