#39 compat option: any last boss death triggers 666


The classic UAC_DEAD.WAD relied on some behaviour in
the original doom which wasn't preserved in the current
source code.

1) when the last baron dies, all sectors tagged 666
have their floor dropped to the next lowest. This works now
2) when the cyber is killed, all sector 666 are dropped
to the next lowest, this doesn't work.

The second step worked originally because

1) the sector that the cyb was supposed to drop
couldn't drop when the baron's died, as all adjacent
floors were higher
2) the

It only worked originally because the sector concerned
didn't have a lower floor adjacent to it, but once the
other 666 floors dropped, it did. Also A_BossDeath
didn't check to see which monster death called the code

The current source code does check to ensure that only
baron deaths on E1M8 trigger 666. This patch adds a
compatibility option to skip this check. Therefore any
death which calls the code pointer invoking
A_BossDeath (i.e. barons, cybers, spiders...) will
invoke 666. UAC_DEAD now works :-)

Developed against 2.2.6 in debian, but works and
applies cleanly to svn checkout as of 2005-06-18.


  • Jonathan Dowland

    patch to add compatibility option re: tag 666 on E1M8

  • Jonathan Dowland

    Logged In: YES

    Hi, I've just been looking over the 2.3 branch and I see
    that cph put in some stub work for a 666 tag compatibility
    option in 2001!n The notes say that the option would relax
    the _level_ restriction for tag 666, "in line with 1.2

    I've been performing experiments with versions 1.2, 1.666
    and 1.9 via DOSBox. It appears that there was no MT_BRUISER
    check on E1M8 (and most likely no monster type checks on any
    of the levels) for any of versions 1.2, 1.666, 1.9: my tests
    triggered it with cybers and barons in all three.

    I also tested specific levels: with 1.2, the trigger
    _didn't_ happen on E1M1, but it did on E1M8. So I'm not sure
    where cph's comment comes from.

    This patch applies against SVN checkout as of 20050820 and
    extends the stub work to implement the behaviour I did for
    2.2.3 in the previous patch. UAC_DEAD works with this option

  • Jonathan Dowland

    • summary: compat option: any last boss death triggers 666 on E1M8 --> compat option: any last boss death triggers 666
  • Jonathan Dowland

    Logged In: YES

    Hello - update to svn checkout today; also made some
    changes. Added a new compatibility option for doom 1.9:
    there is at least one difference between doom 1.9 obtained
    by patching 1.666 (or buying 1.9 commercially, if it was
    ever sold) and ultimate doom 1.9; namely, tag 666 behaviour
    on e1m8 :) Need to test that the other bits aren't upset by
    the offset in compatibility level numbers (my guess is they
    shouldn't be).

    In light of this revelation, updated comp_666 to use the new
    level, adjusted text strings accordingly.

    I plan to post on the list, introducing myself and try and
    generate interest in getting 2.3 release worthy soon... work
    has been busy.

  • Jonathan Dowland

    • assigned_to: nobody --> cph
  • Colin Phipps

    Colin Phipps - 2006-04-02
    • status: open --> closed-accepted
  • Colin Phipps

    Colin Phipps - 2006-04-02

    Logged In: YES

    In 2.4.0. I have made it activate on any level, as this
    option will hardly be used except for uac_dead, so it might
    as well work for that.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks