Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dehacked to make minigunner use DSPISTOL? #897

Open
mc776 opened this issue Mar 11, 2023 · 10 comments
Open

dehacked to make minigunner use DSPISTOL? #897

mc776 opened this issue Mar 11, 2023 · 10 comments
Labels
Dehacked Related to DEH file.

Comments

@mc776
Copy link
Contributor

mc776 commented Mar 11, 2023

I'm probably getting way too carried away here but having these guys actually use the right sound by default would be such a relief... and a boon to new players who might spend years totally misgauging the threat they pose when they hear the same effect as the spider mastermind (which really is a chain-shotgun doing a shotgunguy's 3 bullets every firing frame)

@mc776
Copy link
Contributor Author

mc776 commented Mar 11, 2023

Disregard, I'm reminded this would require changing the entire action function the zombieman pistol, which I'm sure will lead to Unintended Consequences elsewhere - and is arguably far beyond the scope of this project.

(I'm happy to reopen this, or even submit a PR, if I'm wrong in this assessment.)

Either way I might be putting this in my autoloads (where i'm not loading mdt already).

# Created with WhackEd4 1.2.4 BETA
# Note: Use the pound sign ('#') to start comment lines.

Doom version = 19
Patch format = 6


# Freedoom's minigunner has a no-flash E frame.
# This makes only the F frame shoot,
# while also changing the firing to zombieman pistol
# so the sound correctly reflects what is going on.

Frame 417
Duration = 2

Frame 418
Sprite subnumber = 4
Duration = 1

Frame 419
Sprite subnumber = 4

Pointer 234 (Frame 417)
Codep Frame = 185

Pointer 235 (Frame 418)
Codep Frame = 0

(Incidentally, TIL the minigunner is actually a bit slower than the player's minigun - a loop of 2 shots 4 tics each plus 1 refire tic, for an average of 4.5 tics per shot as opposed to the player's 4, or 77.78 dps versus 87.50 dps. There might be other stuff going on as well.)

@mc776 mc776 closed this as not planned Won't fix, can't repro, duplicate, stale Mar 11, 2023
@mc776
Copy link
Contributor Author

mc776 commented Mar 11, 2023

I was grossly overthinking it.

Pointer 234 (Frame 417)
Codep Frame = 185

Pointer 235 (Frame 418)
Codep Frame = 185

Pointer 234 (Frame 738)
Codep Frame = 185

Pointer 235 (Frame 740)
Codep Frame = 185

The presentation is different but mechanically they are identical and the only material difference is the sound:
https://github.com/id-Software/DOOM/blob/77735c3ff0772609e9c8d29e3ce2ab42ff54d20b/linuxdoom-1.10/p_enemy.c#L845
https://github.com/id-Software/DOOM/blob/77735c3ff0772609e9c8d29e3ce2ab42ff54d20b/linuxdoom-1.10/p_enemy.c#L802

Maybe I'll reopen this for a bit for comment...

@mc776 mc776 reopened this Mar 11, 2023
@mc776
Copy link
Contributor Author

mc776 commented Mar 11, 2023

#899 is unaffected by the different codepointer.

@mc776
Copy link
Contributor Author

mc776 commented Mar 12, 2023

One note of potential interest: when i tried this in id it sounded awful in ways that it didn't sound in FD. Id's DSPISTOL is much too clean compared to every other gunshot sound involved in this, so the slower, uneven rhythm was painfully audible where it tends to be masked with either FD's or id's shotgun sounds or FD's pistol sound.

Which means I think the primary motivation for using the wrong sound in id no longer applies.

@Xindage Xindage added the Dehacked Related to DEH file. label Mar 21, 2023
@Xindage
Copy link
Contributor

Xindage commented Jun 24, 2023

can you provide us a video of how it plays in freedoom?

@mc776
Copy link
Contributor Author

mc776 commented Jun 25, 2023

Posted in the Discord.

Here's the DEHACKED file in its entirety:

Patch File for DeHackEd v3.0
# Created with WhackEd4 1.2.4 BETA
# Edited by hand

Doom version = 19
Patch format = 6


Pointer 234 (Frame 417)
Codep Frame = 185

Pointer 235 (Frame 418)
Codep Frame = 185

Pointer 234 (Frame 738)
Codep Frame = 185

Pointer 235 (Frame 740)
Codep Frame = 185

@Calinou
Copy link
Contributor

Calinou commented Jun 26, 2023

Note that this makes it harder to distinguish between a chaingunner and another player firing a chaingun, which may be undesired for cooperative play.

@mc776
Copy link
Contributor Author

mc776 commented Jun 26, 2023

shotgun guys and shotguns though

personally I think it's too easy to distinguish them still, given the slightly different rates of fire...

@mc776
Copy link
Contributor Author

mc776 commented Aug 10, 2023

Imma close this since after all this time I seem to be the only person interested in this and it's a wildcard how this could affect demos.

If anyone actually is interested though they can check out the Aesthetic Vanilla Gun Fixes mod that I've posted to my website (which I've just updated tonight to include #1048).

@mc776 mc776 closed this as not planned Won't fix, can't repro, duplicate, stale Aug 10, 2023
@mc776
Copy link
Contributor Author

mc776 commented Feb 8, 2024

I just gave this a try with 0.13.0 and the following:

# Minigunner using pistol attack
Pointer 234 (Frame 417)
Codep Frame = 185

Pointer 235 (Frame 418)
Codep Frame = 185

# Sailor using pistol attack
Pointer 234 (Frame 738)
Codep Frame = 185

Pointer 235 (Frame 740)
Codep Frame = 185

Tried all 4 demos, then recorded a brief interaction with an SS in map01 of Garrulismo with Doom 2 and played it back with the modified Freedoom. No desyncs.

@mc776 mc776 reopened this Feb 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Dehacked Related to DEH file.
Projects
None yet
Development

No branches or pull requests

3 participants