Halfpipe Utilities

[Open Assets] Halfpipe Utilities v1.2.2

This content may be freely modified and/or maintained by anyone.
kaldrum updated Halfpipe Utilities with a new update entry:

model support!

Added one last little feature as a hotfix of sorts: 3D model support!
You can now give custom animations to the wallrunning state, meaning you can make it look like the player is running on the wall instead of into it. Don't worry if you're using sprites or don't have a animation for it, the previous behavior will be used if it's missing.

To add wallrun support, add a SPR2_WLRN animation to your character. For the vanilla cast, besides Tails, this is just an animation the exact same...

Read the rest of this update entry...
 
Wait are you saying we can add wall running sprites for normal characters?
yes, the only reason there arent any on the vanilla characters is because I don't know how to sprite

Also they are required in some form if you want models with a different animation than normal running (though you can just copy your existing run sprites and rename them)
 
So this is probably my favorite mod and I've really enjoyed watching it's progress but I'm sad to report to (at least for me), the last two updates (1.2.1 and 1.2)
broke the ability to do spin stunts off of springs when using xmomentum. I'm not sure if it's something I'm doing or not doing, though for what it's worth each time I've tried I've had "globalhpu" set to on, but since that's the only way to get the halfpipe stuff to work it's kinda gotta be, so I really don't know what else to try
 
So this is probably my favorite mod and I've really enjoyed watching it's progress but I'm sad to report to (at least for me), the last two updates (1.2.1 and 1.2)
broke the ability to do spin stunts off of springs when using xmomentum. I'm not sure if it's something I'm doing or not doing, though for what it's worth each time I've tried I've had "globalhpu" set to on, but since that's the only way to get the halfpipe stuff to work it's kinda gotta be, so I really don't know what else to try
Will be fixed in the next update, was just a tiny oversight. Thanks for letting me know!
 
Last edited:
kaldrum updated Halfpipe Utilities with a new update entry:

bugfixes

This update fixes various bugs that came up in the 1.2 and 1.2.1 release.
  • Angle flipping with flipcam enabled should now work properly on all slopes
  • rollangle is no longer constantly reset to 0 when not wallrunning, should allow other rollangle modifying mods to work properly (such as xmomentum)
  • Wall to ceiling transfers should now properly flip (or not flip) the player direction depending on current rolling state
Please let me know of any other bugs you find!

Also...

Read the rest of this update entry...
 
1677591638054.png


ive been suffering for a week trying to make the wad load and turn on once the map is loaded im dying hghrhghrhgrgr

problem: lua.hpu = active does not do anything and is registered as an unknown word by the game, the wad is loaded underneath srb2's pk3, the funni wad only works when i use the command globalhpu on

please release me from this pain ouch

listen man i just want this goofy mod to work for my custom pizza tower based mod im making for myself to experience 3d pizza tower :dramahog:
 
Last edited:
I just typed "globalhpu on" into the console whenever I wanted to use it, at least until I realized you could mod the pk3 to automatically turn on every time it's loaded by entering the lua and changing the default globalhpu value from 0 to 1
 
View attachment 85955

ive been suffering for a week trying to make the wad load and turn on once the map is loaded im dying hghrhghrhgrgr

problem: lua.hpu = active does not do anything and is registered as an unknown word by the game, the wad is loaded underneath srb2's pk3, the funni wad only works when i use the command globalhpu on

please release me from this pain ouch

listen man i just want this goofy mod to work for my custom pizza tower based mod im making for myself to experience 3d pizza tower :dramahog:
The solution you got should definitely work, though if you want it to work without modification, here's a screenshot of the MAINCFG of the test map
1677613334339.png

you can ignore most of the stuff here, but it appears that the "Lua.hpu = active" is case-sensitive (capital L is needed), which mightve been your problem. I would maybe give the level header thing another shot, just with the line changed to have the capital L. That might work as intended.
 
The solution you got should definitely work, though if you want it to work without modification, here's a screenshot of the MAINCFG of the test map
View attachment 85969
you can ignore most of the stuff here, but it appears that the "Lua.hpu = active" is case-sensitive (capital L is needed), which mightve been your problem. I would maybe give the level header thing another shot, just with the line changed to have the capital L. That might work as intended.
fixed the capitilization but it didnt work :dramahog:
 
It's a cool concept! The community always thirsts for this sort of feature, especially considering how admirable it is to even dare try.

Though personally, I'd move away from using ramp sectors ASAP. In SRB2, running past sectors fast enough often means the game thinks you simply skipped past it, and in this case, rammed headfirst into a wall like so. Then you're left with no speed and your sector-based detection mechanism fails.

srb20195.gif

Since loops/wallrunning require speed, this happens alot.

Perhaps you could have mappers tag desired wall-runnable linedefs with an unlikely (set of) flags (Like Effect 6) and use a MobjLineCollide hook instead? That has the added benefit of working better for those couple midair frames, as the player's slope is only recorded when they are grounded, but a R_PointInSubsectorOrNil sector scan should be up-to-date. You wouldn't need clunky mapheaders either. Just add "[15] Transfer line" to the two linedef flags, for example, and that individual wall is now a chain-jumpable wall.
 
It's a cool concept! The community always thirsts for this sort of feature, especially considering how admirable it is to even dare try.

Though personally, I'd move away from using ramp sectors ASAP. In SRB2, running past sectors fast enough often means the game thinks you simply skipped past it, and in this case, rammed headfirst into a wall like so. Then you're left with no speed and your sector-based detection mechanism fails.

srb20195.gif

Since loops/wallrunning require speed, this happens alot.

Perhaps you could have mappers tag desired wall-runnable linedefs with an unlikely (set of) flags (Like Effect 6) and use a MobjLineCollide hook instead? That has the added benefit of working better for those couple midair frames, as the player's slope is only recorded when they are grounded, but a R_PointInSubsectorOrNil sector scan should be up-to-date. You wouldn't need clunky mapheaders either. Just add "[15] Transfer line" to the two linedef flags, for example, and that individual wall is now a chain-jumpable wall.
if this were to be done, I do wonder what would be done about maps that have been made already, as I like to use the addon for levels which have... well, half-pipe ramps which use rolling to get you up a wall, as the addon makes it more reliable.
 
if this were to be done, I do wonder what would be done about maps that have been made already, as I like to use the addon for levels which have... well, half-pipe ramps which use rolling to get you up a wall, as the addon makes it more reliable.
All the more reason to switch it up sooner rather than later. The mod's potential is bottlenecked by this sector-based foundation, and the more levels are created with ramp sectors as the detection mechanism, the more would have to be ported over.
 
It's a cool concept! The community always thirsts for this sort of feature, especially considering how admirable it is to even dare try.

Though personally, I'd move away from using ramp sectors ASAP. In SRB2, running past sectors fast enough often means the game thinks you simply skipped past it, and in this case, rammed headfirst into a wall like so. Then you're left with no speed and your sector-based detection mechanism fails.

srb20195.gif

Since loops/wallrunning require speed, this happens alot.

Perhaps you could have mappers tag desired wall-runnable linedefs with an unlikely (set of) flags (Like Effect 6) and use a MobjLineCollide hook instead? That has the added benefit of working better for those couple midair frames, as the player's slope is only recorded when they are grounded, but a R_PointInSubsectorOrNil sector scan should be up-to-date. You wouldn't need clunky mapheaders either. Just add "[15] Transfer line" to the two linedef flags, for example, and that individual wall is now a chain-jumpable wall.
thanks for the insight! When testing stuff like xmomentum I definitely noticed this but I kinda assumed it was just an inevitability of the way ground detection works and didn't bother working around it. I'll probably revisit this relatively soon and rework some of the detection mechanisms to be more friendly with higher speeds with your suggestions in mind. I do still want the slope requirement for starting wall running, so I'll have to look into the way the pointinsector function works.
Also not sure if I like the idea of linedef tags, level header has already seemed kinda confusing for some but complicating it more with tag combinations seems like it would make it even harder. Plus, I don't really want the few people that have been developing maps with this so far to have to retag all their walls in order to use a new wall/slope detection mechanism and I like the idea of it being somewhat global as long as it's enabled.

Regardless, thanks for all the suggestions! When I work on this again I'll definitely keep them at the forefront of any changes I made.
 
Last edited:
Oh how I look forward to anything you guys do with baited breath. The halfpipe utilities are an absolute prerequisite for any mod loadout I can conceive of. Between it and the Sonic New Ceiling Run the game is played on the ceiling as much as it is the floor
 
I have no clue how to use this is mappacks, do I take the assets from the addon and put them in separately in different folders or just put the WAD directly in the PK3? Or do I gotta do something else?
 
Last edited:

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top