Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  

Some PrBoom+ Issues

Recommended Posts

While trying to find out why a certain demo desyncs in EE I have noticed a couple of problems in PrBoom+:

In P_FindShortestTextureAround, a September change to ignore texture #0 should only apply in boom_202_compatibility, *not* in any level as it does currently. MBF did not contain this fix, and EE did not contain it until v3.31 where I had to add it myself.

In P_XYMovement, this code exists:

      // killough 10/98:
      // Don't affect main player when voodoo dolls stop, except in old demos:

      if (player && (unsigned)(player->mo->state - states - S_PLAY_RUN1) < 4
    && (player->mo == mo || compatibility_level >= lxdoom_1_compatibility))
  P_SetMobjState(player->mo, S_PLAY);
However, the "compatibility_level >= lxdoom_1_compatibility" check is incorrect and has been inverted from the original code in MBF, which clearly states "demo_version < 203", which as the comment explains, is correct, because voodoo dolls stop the player's walking sequence in *old* demos, not in *new* ones.

I will be posting any thing else I find in this thread.

New problem found. PrBoom+ P_Move matches neither BOOM 2.02 nor MBF when applying ice friction to monsters (202 didn't have this feature; MBF added it, but MBF's code is different). The code being used there in PrBoom+ could cause dangling blockmap links because it changes a thing's x/y coordinates without using P_[Un]SetThingPosition.

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
Sign in to follow this