Jump to content

This is Woof! 14.5.0 (Apr 30, 2024)


fabian

Recommended Posts

3 hours ago, ChopBlock223 said:

The recoil pitch visual effect is pleasant too, I notice that it doesn't work with some DeHacked/MBF21 weapons we're working on, is this a limitation on Woof's end, or do we just need to change the weapons on our end?

We seem to have missed the recoil effect for several MBF21 codepointers (tested on the Vesper mod). Thanks for the report, it will be fixed in the next version.

Share this post


Link to post

I sometimes get a "Game Saved (Suppressed)" message followed by a desync when playing back demos recorded in the latest version. Is this because of something I'm doing?

Share this post


Link to post
4 hours ago, BigBoy91 said:

I sometimes get a "Game Saved (Suppressed)" message followed by a desync when playing back demos recorded in the latest version. Is this because of something I'm doing?

There is a bug in the demo playback code that "suppress" the wrong commands, it was fixed. Sorry for the inconvenience, we will release a new version with bug fixes soon.

Share this post


Link to post

Add a FluidSynth gain setting to config. It allows to manually adjust the volume for "quiet" soundfonts.

 

#0!Y $#!1 you got me good! I fell from my chair... What? Do you think I could test this feature in any reasonable manner other than setting it to 1000% straight away?

 

Anyway... It works great, thanks, didn't expect to get it so soon! \ (•◡•) /

Share this post


Link to post
3 hours ago, fabian said:

Woof! 10.2.0 is released on August 11, 2022.

 

Congrats on another release fellas. Woof! has been my go-to source port for a while now and it just keeps getting better.

 

Two random questions: 1 - Why is the colored blood toggle now locked in the enemies menu? I can only seem to change it through the cfg. file. Fairly certain that was not the case with the prior release. Is it because of the changes implemented to strict mode? 2 - What is the actual 400p resolution for widescreen high-detail mode? 852x400? It looks so good.

 

Share this post


Link to post
5 hours ago, Mike Stu said:

1 - Why is the colored blood toggle now locked in the enemies menu? I can only seem to change it through the cfg. file.

It is locked in strict mode (DSDA rules do not allow any sprite modifications). Disable strict mode and it should work.

 

5 hours ago, Mike Stu said:

2 - What is the actual 400p resolution for widescreen high-detail mode? 852x400? It looks so good.

I don't remember the exact numbers, but yes, something like this for 16:9 screens.

Share this post


Link to post
5 hours ago, Mike Stu said:

Why is the colored blood toggle now locked in the enemies menu?

 

Most probably because you still have bloodcolor.deh in your autoload/doom-all directory. Then the blood color is defined by DEHACKED and not by user choice. 

 

Quote

What is the actual 400p resolution for widescreen high-detail mode? 852x400? It looks so good.

 

Depends on your screen resolution/aspect ratio. But should be 852x400 (stretched to 480) for a 16:9 display, yes. 

Edited by fabian

Share this post


Link to post
5 minutes ago, fabian said:

Most probably because you still have bloodcolor.deh in your autoload/doom-all directory. Then the blood color is defined by DEHACKED and not by user choice. 

Oh, you're right, I forgot about that file. Maybe we should do something about it?

Share this post


Link to post
3 hours ago, fabian said:

Most probably because you still have bloodcolor.deh in your autoload/doom-all directory.

Then the blood color is defined by DEHACKED and not by user choice. 

 

so now the menu option works even without the autoloaded dehacked patch?

never noticed that you guys went back to how things were a while ago (before the 9.0 milestone, iirc)

 

 

/edit: ok I've found the discussion you had about this here

iiuc the priority then goes like this:

- pwad-defined blood colors wins over everything

- the autloaded dehacked (if present) wins over the port's settings

- "strict mode" option (general > QOL) wins over user's choice

- "colored blood" option (setup > enemies) works only on stock things, when all above conditions are not present

 

Edited by Delfino Furioso

Share this post


Link to post
6 hours ago, fabian said:

Most probably because you still have bloodcolor.deh in your autoload/doom-all directory. Then the blood color is defined by DEHACKED and not by user choice. 

 

Oh snap, that was it, thanks. I just copied my autoload folder from the previous version - lmps., dehs. and all. I'm assuming the lmps. from the prior version are also no longer necessary. Funny enough, the presence of the dehacked file autoset the colored blood to "No". Anyway, gonna do a clean install just to be safe.

Share this post


Link to post

A small feature suggestion:

 

Right now Swirling Animated Flats setting applies swirling animation to all animated textures regardless of what the particular texture might represent. For the stock textures this might not be an issue, as RROCK05-RROCK08 textures can be interpreted as moving magma or something, but for example in case of Eternal Doom it changes RROCK05-RROCK08 textures to moving lights...

 

So, what I did was I changed p_spec.c

Spoiler

 // Animate flats and textures globally
  for (anim = anims ; anim < lastanim ; anim++)
    for (i=anim->basepic ; i<anim->basepic+anim->numpics ; i++)
      {
        pic = anim->basepic + ( (leveltime/anim->speed + i)%anim->numpics );
        if (anim->istexture)
          texturetranslation[i] = pic;
        else
        {
          flattranslation[i] = pic;
          // [crispy] add support for SMMU swirling flats
          if (anim->speed > 65535 || anim->numpics == 1 || r_swirl)
               flattranslation[i] = -1;
        }
      }

 

to

Spoiler

  // Animate flats and textures globally
  for (anim = anims ; anim < lastanim ; anim++)
    for (i=anim->basepic ; i<anim->basepic+anim->numpics ; i++)
      {
        pic = anim->basepic + ( (leveltime/anim->speed + i)%anim->numpics );
        if (anim->istexture)
          texturetranslation[i] = pic;
        else
        {
          flattranslation[i] = pic;
          // [crispy] add support for SMMU swirling flats
          if (anim->basepic !=120) //120 = RROCK05 flat
          {
              if (anim->speed > 65535 || anim->numpics == 1 || r_swirl)
                  flattranslation[i] = -1;
          }
        }
      }

 

Now the game renders water flats with swirling animations, and rrock05-08 flats as default sequence of textures.

 

I guess Woof could have some dedicated config section that would allow to exclude certain flats from swirling animations.

Edited by PKr

Share this post


Link to post
On 8/12/2022 at 6:24 PM, PKr said:

Right now Swirling Animated Flats setting applies swirling animation to all animated textures regardless of what the particular texture might represent. For the stock textures this might not be an issue, as RROCK05-RROCK08 textures can be interpreted as moving magma or something, but for example in case of Eternal Doom it changes RROCK05-RROCK08 textures to moving lights...

 

The swirling flats are originally from SMMU port and you had to edit Boom lump ANIMATED to activate them. Set duration per animation frame to 65536 for swirling flats. I made an example lump for Eternal (only FWATER and SWATER are swirling), put this in autoload folder: eternall.zip  You can now turn off the "Swirling animated flats" option and the water will still swirl. You can edit ANIMATED.lmp in Slade.

 

Swirling flats also work in Crispy Doom and Eternity Engine. Not sure about other ports. Just tested, it also works in GZDoom.

Edited by rfomin

Share this post


Link to post
22 minutes ago, rfomin said:

 

The swirling flats are originally from SMMU port and you had to edit Boom lump ANIMATED to activate them. Set duration per animation frame to 65536 for swirling flats. I made an example lump for Eternal (only FWATER and SWATER are swirling), put this in autoload folder: eternall.zip  You can now turn off the "Swirling animated flats" option and the water will still swirl. You can edit ANIMATED.lmp in Slade.

Just to clarify, as far as I understand it if I were to leave the swirling flats setting "on" and wanted to exclude only 1 particular flat, I could simply create animated lmp with a single "0:Flat RROCK08 RROCK05 8" record and it would achieve the same thing, right? Or should this lmp contain all the records of all specials like in your example?

Share this post


Link to post
1 minute ago, PKr said:

I could simply create animated lmp with a single "0:Flat RROCK08 RROCK05 8" record and it would achieve the same thing, right? Or should this lmp contain all the records of all specials like in your example?

 

Originally, this lump should be created using the SWANTBLS.EXE utility, and I think that it should contain all flats, as in the example. Not sure, haven't experimented with it.

Share this post


Link to post
18 minutes ago, rfomin said:

 

Originally, this lump should be created using the SWANTBLS.EXE utility, and I think that it should contain all flats, as in the example. Not sure, haven't experimented with it.

Ok, I see, thank you. I have checked the functionality of animated.lmp and yeah, you were right, sadly you do need it to have all the records or else all other specials will stop working all together (render as a static texture).

Share this post


Link to post

I was having issues building this with MSYS2 for Windows, using the make command from the github instructions says "No targets specified and no makefile found". While it's much simpler and quicker to just use the CMake GUI, I notice that it only generates 15 dll files instead of the 25 that come with the official release. I'm sure it's fine but I still wanted it to match, so using instructions for several different source ports I've gotten it to build using mingw64 with all 25 dll files and want to make sure that I'm even doing it right and not doing unnecessary steps, or if the excluded dll files even matter. OR, if there's a better or cleaner way in general. I barely know anything about this stuff but it's been fun to learn.

Spoiler

git clone https://github.com/fabiangreffrath/woof.git

cd woof

mkdir build; cd build

cmake -DCMAKE_BUILD_TYPE=Release ..

cmake --build .

cd ~

git clone https://github.com/mpreisler/mingw-bundledlls //(change default path prefixes, etc.)

cd mingw-bundledlls/

./mingw-bundledlls --copy ~/woof/build/src/woof.exe

cd ~/woof/build/src/

strip *.exe

 

Share this post


Link to post
45 minutes ago, Lippeth said:

I was having issues building this with MSYS2 for Windows, using the make command from the github instructions says "No targets specified and no makefile found"

 

You may have installed the "ninja" build system. To create a package, there is a cpack -G ZIP command, it will collect all the necessary DLLs:

Spoiler

git clone https://github.com/fabiangreffrath/woof.git
cd woof
mkdir build; cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
cpack -G ZIP

 

 

Share this post


Link to post

@rfomin Thank you, that is so much simpler than the way I went about it, haha. Yes, I have ninja installed, and now I don't remember what I was doing when I needed it.

Share this post


Link to post

hi devs, just a quick question regarding the recently merged "blockmap fix"

 

say that I'll enable it in woof.cfg but then I'll launch the game using "-CompLevel Vanilla"

would the new algorithm be active during gameplay, then?

Share this post


Link to post
7 minutes ago, Delfino Furioso said:

say that I'll enable it in woof.cfg but then I'll launch the game using "-CompLevel Vanilla"

would the new algorithm be active during gameplay, then?

You need to disable "INTERCEPTS overflow" emulation, Options->Setup->Doom Compatibility->Last Page. Otherwise it won't work in complevel vanilla.

Edited by rfomin

Share this post


Link to post

I see.. and this is true regardless of the user being prevented from interacting with the "improved hit detection" option? 

Share this post


Link to post

Seems we need to re-evaluate the menu item to be enabled when changing intercepts overflow emulation. 

Share this post


Link to post
2 hours ago, Heck Yeah said:

@fabian

Sir, can you please give/show me the code of 'Smart Totals' which has its option in PrBoom plus ?

 

I would like to see the code..

I guess you are looking for the code related to "extrakills" variable. You can find it in doomstat.h, g_game.c, hu_stuff.c, p_enemy.c, p_mobj.c, p_setup.c.

 

But are you asking this because you want to see the "smart totals" in the intermission screen by any chance? If the answer is yes, then Woof doesn't have that feature. You can easily do this by changing wminfo.plyr.skills = players.killcount; line to wminfo.plyr.skills = players.killcount-extrakills; in g_game.c.

Share this post


Link to post
3 hours ago, Heck Yeah said:

@fabian

Sir, can you please give/show me the code of 'Smart Totals' which has its option in PrBoom plus ?

 

I would like to see the code..

 

There is no "Smart Totals" in Woof, just a separate counter for "Extrakills".

Share this post


Link to post
16 hours ago, PKr said:

I guess you are looking for the code related to "extrakills" variable. You can find it in doomstat.h, g_game.c, hu_stuff.c, p_enemy.c, p_mobj.c, p_setup.c.

 

But are you asking this because you want to see the "smart totals" in the intermission screen by any chance? If the answer is yes, then Woof doesn't have that feature. You can easily do this by changing wminfo.plyr.skills = players.killcount; line to wminfo.plyr.skills = players.killcount-extrakills; in g_game.c.

I was saying the Smart Totals feature of PrBoom plus, which doesn't include the no of monsters resurrected by archvile/spawned by IOS/Nightmare spawned, neither in the original kill count nor in the extra kills count..

Share this post


Link to post
5 minutes ago, Heck Yeah said:

I was saying the Smart Totals feature of PrBoom plus, which doesn't include the no of monsters resurrected by archvile/spawned by IOS/Nightmare spawned, neither in the original kill count nor in the extra kills count..

Sorry, wrong source port. 

Share this post


Link to post

While compiling and testing my local build, I noticed that when I make changes to certain graphical settings, such as enabling or disabling high resolution or widescreen rendering, the screen fails to refresh. Sound continues to play, indicating the application is still running, but though the window may change in dimension, the display stays on the settings menu, and I must manually close the application and reopen it (the settings I saved are preserved and work, however).

 

This doesn't happen when I use the pre-built binary. I suspect this is an SDL2 issue, since I'm compiling using the most recent stable SDL2 libraries and the Windows binary comes with an older version. Has anyone else run into this? I'll try to install the 2.0.22 SDL2, recompile, and see if it persists, but I'm having trouble getting it to cooperate.

Edited by bofu

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...