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

Recreating The Mother Demon

Recommended Posts

Hey yeah, im making some maps for Doom 2 and for the end boss, instead of the typical Icon of Sin, i would to use the mother demon. But no matter where i look i cant find a DECORATE code for her. I have the sprites though.

Can someone give me a hand?

Share this post


Link to post

Nah, i mean, i would rather use the original Motherdemon. As there are some differences between TC and the original.

Share this post


Link to post

Well, the original Mother Demon didn't have a DECORATE lump attached to it, so that limits your options a bit.

Share this post


Link to post

It's still probably the best you're gonna get, aside from checking the Doom64EX source code, or recreating it from scratch. I don't think anyone has ever made such a thing yet.

Going off of the TC version would at least give you a start though, and you could tweak it until it's as close to the original as possible.

Share this post


Link to post

I know that. I just need something as close as possible to the Mother Demon. I guess i could look at TC's code and try to edit it.

[EDIT] Reply to Megamur

Share this post


Link to post

I actually got frisky and peeked at the Doom64EX source code for you. I also checked the TC's DEDs.

Here's a basic conversion of the MotherDemon, mostly taken from Doom64EX, but with a couple of snippets from the TC (just height and radius, I think), and a minor change or two by myself (all of which should be noted in the comments). I can't promise that it's perfect, nor complete, but it's a start.

To begin with, I left the action functions as they were in the source code, so things like "A_RectChase" and "A_RectGroundFire" obviously aren't going to do anything in ZDoom yet. The actors that are used for the flame and missile attacks are not defined here, either. I've also used the same sprite names as Doom64EX, so you might have to tweak yours if they aren't named RECT*. Same goes for the the sounds.

There are two numbers in the MeleeState section that I'm not sure what to do with (or how to map them to frame letters), either, so I just commented them out for now. I haven't even tried running this definition in-game yet, but I'd imagine that it'll bomb out as-is.

If you want to check the Doom64EX source out yourself, most of what you need should be in "info.c". The motherdemon is denoted as "MT_RESURRECTOR" in there, and the states range from S_342 - S_369. In the Doomsday TC's DED files, it should be in "objects.ded", under "BITCH", "FIREEND", "BITCHBALL", and "MOTHERPUFF".

I might come back and fix this up if nobody else beats me to it, but for now, I'm leaving it here like this because it should be better than nothing, and I got bored fiddling with it for now. Cheers.

actor Motherdemon 3013
{
  spawnid 155   // Not in original definition.
  obituary "%o needs to think up a new obituary."
  health 5000
  reactiontime 8
  alpha 1.0
  damage 0
  radius 40     // 80*FRACUNIT in Doom64EX
  height 110    // 150*FRACUNIT in Doom64EX
  mass 1000
  speed 30
  painchance 50
  seesound "sfx_092"    // Do these actually need quotes?
  painsound "sfx_091"
  deathsound "sfx_090"
  activesound "sfx_088"
  attacksound "sfx_089"
  MONSTER    // Original doesn't use all of MONSTER; should work though.   	
  +BOSS      // BOSS and DONTMORPH flags are added by me.
  +FLOORCLIP
  +DONTMORPH
  +DROPOFF
  states
  {
  Spawn:
    RECT ABCD 8 A_Look
    loop
  See:
    RECT AAABBBCCCDDD 3 A_RectChase
    loop
  Melee:
    RECT G 12 Bright A_RectGroundFire
    RECT E 12
    RECT F 12 Bright A_RectMissile 
    RECT E 8
    goto See
  Pain:
    RECT H 18 A_Pain
    goto Melee
  Death:
    RECT I 60 A_RectDeathEvent
    RECT JK 8
    RECT L 5
    RECT M 4
    RECT N 3
    RECT O 2
    stop      // I'm not sure if this works here.
  }
}
[edit: Whoops, fixed reactiontime property.]
[edit 2: Fixed the melee states]

Share this post


Link to post
Mithran Denizen said:

    RECT /*32774*/ 12 A_RectGroundFire    //I have no clue what '32774' maps to.
    RECT /*32773*/ 12 A_RectMissile      // I have no clue what

They'd map to G and F respectively, but with the Bright keyword added. Doom uses 32768 as a flag in the sprite number field to mark fullbright sprites.

Share this post


Link to post

Thanks Alot!! I could Really use this. I haven't tested it yet but when i do, i'll tell you the end result!

EDIT: I forgot to ask, what about the misssiles and flame trails she fires? I think i could use A_CustomMissile but i don't know the offsets

Share this post


Link to post

I've no idea what to do about the attacks yet, and I don't even recall what they do in the game; if I were you, I'd check the action functions in the source (A_RectGroundFire and A_RectMissile) to see if you can port them completely over into A_CustomMissile or not.

You could also probably check what the special chase and death codepointers do, compared to the standard ZDoom ones. I'd guess that they might just play an extra sound, or something. Maybe not, though.

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
×