ZMovement 3.2.1

Projects that alter game functions but do not include new maps belong here.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
Post Reply
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

ZMovement 3.2.1

Post by Ivory Duke »

I AM NO LONGER INVOLVED IN DOOM MODDING, YOU MAY USE ZMOVEMENT AS YOU PLEASE, DO WHATEVER YOU WANT WITH IT, JUST WRITE SOMEWHERE "THANK YOU MY MAN IVORY" OR SIMILAR.
PATCHES WILL NEVER BE UPDATED, IF YOU WANT THAT YOU'LL HAVE TO FIGURE IT OUT ON YOUR OWN.
YOU ARE FREE TO POPULATE THE COMMENTS WITH PATCHES OF YOUR MAKING.


ZMovement is a mod whose goal is providing players with extensive movement customization.
Furthermore, in the main release there are extra txt files containing the different movement modes separated for modders who are looking to plug one of them into their mods.
GZDOOM 3.8.0 OR HIGHER IS REQUIRED

How does it work?
- chose a movement style, and decide how tight/slidey you want the friction to be. You can choose between Build Engine, Dusk, Painkiller, Quake, and UT;
- turn on whatever optional feature you want to add. We have double jumps, Quake 2 style ramp jumps, ground dashes, air dashes, crouchslides (traditional or Quake style), UT style elevator jumps, walljumps, wallslides, and grappling hooks;
- best of all, all of these are customizable through the extensive menu options and sliders.



IMPORTANT: this mod ignores whatever are the jumping, crouching, and mouselook settings of the mapset you are going to load with it and makes them on by default.
Be responsable and do not sequence break map. Cool kidz play maps the way their creator intended them to be played.



All of the included movement modes are not meant to be an 100% identical to the original games. Of course this is not an excuse for whatever behaviors I might have missed to port and/or whichever bugs you might run into.
When using Painkiller movement it is possible to execute trick jump like in the original. Although they are really hard to pull off.
Check the spoiler for a video of a pro player showcasing them.
Spoiler:
BOBBING NOTES:
Spoiler:
RESET TO DEFAULT VALUES THROUGH THE DEDICATED BIND AFTER UPDATING!
DOWNLOAD HERE
As mentioned in the title this is most likely the final version of ZMovement unless other non minor bugs are discovered (which you are free to report without hesitation).
Since this is where people are most likely to actually read what I write I take the opportunity to thank everybody who has been following and supported this project of mine. Being featured in the DoomWorld Minimod safari was a very welcome surprise.

If you want to use ZMovement with your mod you are free to do so but please do not just copy paste the files for two reasons:
1 - it's never good to blindly copy-paste code you have little to no understanding of;
2 - many decisions that have been made in coding this mod are a consequence of the fact that I had to allow customization of almost all of its components. A focused rewrite of the code into a customization free version that reflects your desired vision will be much more lightweight and efficent than just using it as is. That said I do not take responsibilities if things break due to your editing.


Changelog 3.2 - 3.2.1

Code: Select all

3.2.1

Changes:
- lowered Doom air control (by a lot) to be more faithful to both Doom 2 and 4 (sorry Doom 3, once again nobody cares about you even if you were a decent horror fps);
- slightly reworked the dash cooling logic to allow air dash shortly after a wall jump;
- you can no longer double jump right when you dash, and at least 5 tics have to pass after a jump or dash before you can execute a double jump;
- rewritten the speedometer to be always displayed near the center of the screen and not show up during Titlemaps;
- the menu tooltip now disappears for 2 seconds after you click the mouse or keys to change the option value.

Bugfixes:
- fixed automatically double jumping after dropping off a ledge if auto jump is turned off and if jump is pressed;
- fixed being unable to use AirDash if WallJump is turned on as well;
- fixed ledge grabbing glitching out when trying to back out of thin ledges (partial logic rewrite);
- fixed Quake ground movement having abnormal circle jumping acceleration with certain friction values;
- fixed weapon sprites sway and offset glitching out with certain weapons.

3.2
New Features:
- added option to have a more Quake like wall friction;
- new-ish option menu, now the tooltip is displayed near your mouse pointer after it has been on top of the option label for a second.

Changes:
- general optimization, partly thanks to functions I previously did not know existed (SetPos(), SetXYZ(), CheckMove() etc. etc.) but mostly because of generally improved knowledge;
- total rework of the bobbing logic to be more lightweight and not behave differently depending on the framerate;
- removed a few redundant or useless cvars.

Bugfixes:
- fixed jumping acting janky on 3D slopes less steep than 45 degress;
- fixed crouch toggle not working;
- fixed AirDash not granting speed boost for Dusk, Painkiller, and Quake movement modes;
- fixed player being shot in a bottomless black void when using Quake Movement when releasing all directional inputs after moving against a convex corner.
Where is the universal addon Ivory? You said you would make it! You are a liar! A cheater and a liar!
It will be released eventually, when I have time to properly work on it and when I am happy with the result.
In the meantime
GET MOD PATCHES HERE
Mod patches are standalone and do not require ZMovement to be loaded together.
D4T, TrailBlazer (currently not updated to the new 1.5 version, wait a few days for that), GMOTA, High Noon Drifter, Smooth Doom, QC:DE.
QC:DE gets an extra patch marked "accurate" cause I added my Crosshair accurate codebase to the weapons.

Sad your favorite mod is not among the patches I have made? Learn how to make your own patch with this guide.
GUIDE ON HOW TO CREATE A PATCH
Feel free to ask me for help if you can't make things happen.

CREDITS:
Spoiler:
Old changelogs
Spoiler:
Last edited by Ivory Duke on Mon Jan 24, 2022 11:50 am, edited 116 times in total.
User avatar
affandede
Posts: 118
Joined: Sat Nov 11, 2017 7:52 am

Re: Dusk Movement Minimod 1.2

Post by affandede »

Now we need a Dusk weapons mod. Oh, those dual shotguns, THOSE DUAL SHOTGUNS!
User avatar
Spaceman333
Posts: 622
Joined: Thu Oct 13, 2016 8:40 pm

Re: Dusk Movement Minimod 1.2

Post by Spaceman333 »

Vertical acrobatic flipping in doom? No freaking way! :O

Gosh darn, I wish I had time to add smooth slow movement during slomo to my mod, because vertical flips + slomo + trickshooting demons in midair would be the coolest thing ever in doom.
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: Dusk Movement Minimod 1.2

Post by Ivory Duke »

affandede : a friend of mine who' extremely talented at creating weapon sprites from screen rips said he intends to recreate the Dusk's arsenal as soon as the the upcoming Dawn DSK is released.
He asked the devs if they would be cool with that and they said it's all good.

Spaceman333: That would be really cool indeed. If it can be of any help there is very extensive annotation all throughout the code so if you would like to use the vertical flipping feel free to take it out. Most of it is in CheckPitch() but there are a few other related things in other spots. It should not be difficult to find them since at the beginning I have clearly stated which variables concern Vertical Flipping

Edit: fixed a typo
User avatar
thedeathrunner123
Posts: 149
Joined: Fri May 18, 2018 1:07 pm
Preferred Pronouns: No Preference
Operating System Version (Optional): Windows 10 Pro
Graphics Processor: nVidia with Vulkan support
Location: Somewhere in my mind

Re: Dusk Movement Minimod 1.3

Post by thedeathrunner123 »

Can't wait for the universal patch, I'm hyped. Also vertical flips are kinda fucked for me... but only in GMOTA? :lol:
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: Dusk Movement Minimod 1.3

Post by Ivory Duke »

thedeathrunner123 wrote:Can't wait for the universal patch, I'm hyped. Also vertical flips are kinda fucked for me... but only in GMOTA? :lol:
I have just tested GMOTA patch and I can't seem to find anything wrong with the vertical flips.
I did remove the vertical flips from the Trailblazer patch cause there is something in the original mod's code that causes severe conflicts and I could not find the source of the issue.
If you can describe what happened with the GMOTA patch i can look into it and address the problem.

Since I do not know when I'll manage to make the mod work plug & play (or if it is even possible for that matter I am investigating) I plan to create a small tutorial on how to make your own patches by the end of the week.
Thanks to the changes I made in 1.3 it only requires copy-pasting some text files from DuskMovement and minimal editing of the player code of the mod you mean to patch. As long as you carefully follow what will be in the guide it should be pretty straight forward.
User avatar
thedeathrunner123
Posts: 149
Joined: Fri May 18, 2018 1:07 pm
Preferred Pronouns: No Preference
Operating System Version (Optional): Windows 10 Pro
Graphics Processor: nVidia with Vulkan support
Location: Somewhere in my mind

Re: Dusk Movement Minimod 1.3

Post by thedeathrunner123 »

my problem is instead of smooth camera movement it just jerks up and then down, not like a flip.
User avatar
Shadez12
Posts: 102
Joined: Sat Aug 03, 2013 2:04 pm
Location: Wow

Re: Dusk Movement Minimod 1.3

Post by Shadez12 »

When I use this with the QCDE patch I get
Script error, "QCDE_DuskMovement_1.3.pk3:cvarinfo.dsk" line 29:
cvar 'cl_speedometer' already exists
On GZDoom 4.1.3
User avatar
BoneofMalkav
Posts: 79
Joined: Thu May 22, 2014 6:04 am
Graphics Processor: nVidia with Vulkan support
Location: It's Never Worth The Risk
Contact:

Re: Dusk Movement Minimod 1.3

Post by BoneofMalkav »

Shadez12 wrote:When I use this with the QCDE patch I get
Script error, "QCDE_DuskMovement_1.3.pk3:cvarinfo.dsk" line 29:
cvar 'cl_speedometer' already exists
On GZDoom 4.1.3
Are you loading the patch with the main dusk movement file?
Dwailing
Posts: 72
Joined: Wed Jun 28, 2017 3:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Re: Dusk Movement Minimod 1.3

Post by Dwailing »

My God, the thought of using this with Trailblazer... Welp, I know what I'll be doing tomorrow.
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: Dusk Movement Minimod 1.3

Post by Ivory Duke »

Shadez12 wrote:When I use this with the QCDE patch I get
Script error, "QCDE_DuskMovement_1.3.pk3:cvarinfo.dsk" line 29:
cvar 'cl_speedometer' already exists
On GZDoom 4.1.3
That was a dumb mistake on my end.
QCDE already has its own speedometer which by coincidence uses the same cvar I have picked for my speedometer.
I have fixed it by removing such Cvar from my patch.

Just to make sure you saw what I wrote in the post: when playing with QCDE increase Acceleration to the max to get a decent speed increase while hopping.
I have been too busy today to address why that is the case but will soon get to figure out what the issue is
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: Dusk Movement Minimod 1.3

Post by Ivory Duke »

thedeathrunner123 wrote:my problem is instead of smooth camera movement it just jerks up and then down, not like a flip.
I just tested it on a clean GZDoom install and do not see anything out of order but I will inquire further when I get a chance.
In the meantime I will point out a couple of things that perhaps I should have written in the main post:
- when you reach top or bottom viewpoint for one tic you view is not interpolated making it slightly jerky for a split second, because otherwise due to the way I had to code the flip code you would see a very displeasing screen woosh (afaik GZDoom does not allow true 360 degrees of freedom so I had to "cheat" a bit to make it possible);
- when you fall on the ground having failed to complete a flip your view is automatically realigned starting from bottom of top viewpoint depending on which one is the closest. That is because even if the view is not interpolated at top/bottom, when it is the code to do it and not your mouse input it is still very displeasing to see it happen.

So if you try to do flips just by hopping on the ground it will always be rather underwhelming due to this limitation. There is no height restriction on when you can attempt a flip but it will always be easier and more satisfying to do them when you are at a significant enough height that allows you to succeed in making one. You can make flips easier by using the mouse pitch multiplier I added as an option in the menu.
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: ZMovement 1.0 (formerly known as Dusk Movement)

Post by Ivory Duke »

Bump for new version release
User avatar
MaxRideWizardLord
Posts: 345
Joined: Tue Jan 26, 2016 8:05 pm

Re: ZMovement 1.0 (formerly known as Dusk Movement)

Post by MaxRideWizardLord »

Something that really bothered me about jumping in gzdoom is the fact it takes like 0.1 second before you actually jump once you press the jump key on your keyboard. Although playing too much Jump Maze back in time get me pretty used to it. Does this mod removes the delay before jump?
User avatar
Ivory Duke
Posts: 117
Joined: Mon Jun 17, 2019 12:25 pm

Re: ZMovement 1.0 (formerly known as Dusk Movement)

Post by Ivory Duke »

MaxRideWizardLord wrote:Something that really bothered me about jumping in gzdoom is the fact it takes like 0.1 second before you actually jump once you press the jump key on your keyboard. Although playing too much Jump Maze back in time get me pretty used to it. Does this mod removes the delay before jump?
Unfortunately I think that cannot be changed.
The amount of times per second the engine updates its variables and stuff (tics) is hardcoded at 35 so I cannot change that.
More modern games have higher tic counts so the jump delay is lower and I guess Jump Maze as well.

If what I have written is wrong and I have no idea what I am talking about feel free to correct me passing by stranger.
Post Reply

Return to “Gameplay Mods”