fickle's camera mod that she refuses to give a good name to

fickleheart

ms reflec beat stan
This EXE mod is now redundant, as all of its features are implemented in 2.2.1. The rest of the post is left as-is for posterity.

If you have the 32-bit version of SRB2 2.2.0 (the default), download fcam-v2. If you got the 64-bit version from somewhere, download fcam64-v2.
thanks SCOTT0852 for building the 64-bit version!
Linux users: see this post https://mb.srb2.org/showpost.php?p=816201&postcount=56 (I'm not well-suited to provide support for this build if there are OS-specific problems)

I saw people bitching about how the game shoves keyboard-and-mouse controls down your throat now. Perfectly fair, it's not really an accessible control setup, but old analog mode sucks too. To that end I put this together in a couple hours over the last week to try and come up with a middle ground.

This EXE attempts to provide a camera better-suited to a typical 3D platformer control setup, known as "Simple" controls, on by default in this EXE. "Camera Options" is also greatly extended in Simple mode, to expose all of the options for controlling exactly how the auto-camera behaves.



I have tested this with a camera distance of 224 and a camera height of 50.
If you switch off of Simple controls and then back onto it, these will be set automatically for you, but if you just load the EXE, it will still have the default settings. Keep that in mind!



Notable features:

  • Player abilities activate in the direction of the player (or of input), like how old Analog mode used to work.
  • An automatic camera has been created, which hopefully works a lot better than old Analog mode did at facing where you want to see. If it doesn't, the manual camera controls will no longer have to fight the auto camera for dominance.
  • The "Center View" button locks the camera behind the player and temporarily reverts to old-school tank controls, and will also activate a loose targeting system to face nearby bosses (or other objects, if enabled from the options).
  • A couple of minor QoL features have been added: horizontal camera rotation speed can be adjusted, and joystick deadzones can be configured with separate options for digital thresholds and analog deadzones.



Source code
https://gitlab.com/fickleheart/srb2-mods/tree/newcontrols

This should* be entirely netplay-compatible.

*note: may not be if there's a bug



FAQ and known issues

The application could not start properly (0x0000007c or whatever)
Go get the 32-bit release of 2.2. This EXE isn't compatible with the DLLs from the 64-bit release.

The camera snaps funny when it resets
Known. I'll fix it some day maybe.

This camera screws up really badly in (some situation)
Oops? Show me what's wrong. If it's because of a Lua addon, I can't do much about that, but for vanilla game and standard stuff, I'll do my best to fine-tune it.

I don't like (some aspect of the new camera)
Check the settings in Camera Options and try tweaking the slider that sounds most like it's causing your problem. Turning all of the sliders down will result in a fully manual camera with the rest of Simple mode's changes in place.

This garbage still gets stuck on walls everywhere and needs babysat
Yeah. You'll still have to control the camera. Maybe just less so. A perfect autocam needs hints in the environment, which SRB2 doesn't have.

You should do (some thing that improves the camera)
Great idea! I'll get back to you on that.

But SRB2 was designed to be played with a keyboard and mou-
Playing kb+m is fine and dandy, but you're not gonna win over people who come in expecting a typical platformer experience by yelling at them to play it like a shooter. Give them an option they're familiar with. Let them gravitate toward the optimal control scheme on their own time. Or don't! They can stick with whatever control scheme they want, and that's fine too.

Player 2 cvars are on cam2_ instead of cam_ unless otherwise noted

The base toggle for Simple mode: abilitydirection/abilitydirection2 [Camera/Movement] (having this on with directionchar off is unsupported)
Rotation Speed: cam_rotspeed [1 to 25]

Shift to Player Angle: cam_shiftfacingchar [0.00 to 1.00]
Turn to Player Angle: cam_turnfacingchar [0.00 to 1.00]
Turn to Ability: cam_turnfacingability [0.00 to 1.00]
Turn to Spindash: cam_turnfacingspindash [0.00 to 1.00]
Turn to Input: cam_turnfacinginput [0.00 to 1.00]

Lock Button Behavior: cam_centertoggle [Hold/Toggle]
Sideways Movement: cam_lockedinput [Strafe/Turn]
Targeting Assist: cam_lockaimassist [Off/Bosses/Enemies/Interests/Full]


v2:

- Updated to current master
- Note: master has its own camera rotation speed option, so I consolidated into that. You'll have to reset your option for this.
- Fixed tailsbot fly when P1 has standard controls and P2 has simple controls (see MB thread #41)
- Fixed camera reset snapping weirdly (see MB thread #37)
- Added "Sticky Hold" option for Lock Button Behavior: this behaves like Toggle, but automatically releases if you let go and aren't locked onto anything (see MB thread #23)
- Changed defaults to my personal preference
- Separated camera distance/height settings for Standard/Simple modes (see MB thread #27)
- Note: your current camera settings will be saved to Standard's camera distances. You may need to set this back to default if you've been using Simple camera.
- Disabled lock-on in Ringslinger (see MB thread #22)


v1: initial release
 

Attachments

  • srb20058.gif
    srb20058.gif
    4.7 MB · Views: 4,521
  • srb20059.gif
    srb20059.gif
    5 MB · Views: 3,250
  • srb20062.gif
    srb20062.gif
    4.5 MB · Views: 2,695
  • srb20063.gif
    srb20063.gif
    2.8 MB · Views: 4,029
  • srb20035.png
    srb20035.png
    92.9 KB · Views: 2,891
  • srb20036.png
    srb20036.png
    78 KB · Views: 3,325
  • srb2win-fcam-v2.zip
    1.9 MB · Views: 1,925
  • srb2win-fcam64-v2.zip
    2 MB · Views: 1,652
Last edited:
Well I struggled and I bitched and I swore and I raged in the end but I managed to beat the game as Sonic using this exe and my PS2 controller. It was like learning to play for the first time again. It needs deadzone support ported since I couldn't run in a straight line to save my (Sonic's) life, and I have a couple other ideas on possible improvements, but I think this is a nice, flexible solution to people's controller woes. I finally understand what people meant when they said they didn't like micromanaging the camera; it was nice to have it move for me (usually). Thokking felt absolutely useless at times, but it could just be my lack of skill in this setup. Regardless, I'll be sure the dev team sees this.
 
Thanks! I made a few changes today (notably Z-targeting style camera locking if you hold the camera reset button) and updated the EXE in the post if you wanna show them a slightly updated version
 
Oh nooooooooooo I haven't kept this up-to-date from all the changes this week


Uhhhh gimme a sec to get b10(!) ready.
 
When you update then, be sure to give the file a version number to fit our file naming conventions. So in this case srb2fwin-v2.0 (I assume version two anyway!)

Considering this is a .exe file and not a mod to add through the in game addon menu, I suppose a prefix won't be necessary, huh.
 
I'm... actually unable to edit attachments on this post right now! Please help.


Also, do the filename conventions apply to the EXE itself? In the past there never seemed to be problems with using whatever, but I'm not sure how that applies with the new rules. And does there have to be a decimal (1.0) or is it fine to just use whole numbers (1)? Lately I don't differentiate classes of update in my release updates, and the extra period in the EXE name could potentially complicate batch scripting using the EXE...


Also also, shouldn't this go in Mods? I thought Software was for stuff like editors and launchers that were used alongside the game...
 
Last edited:
Would it be possible to only enable "Turn to Character Angle" when the character's running?

In my time experimenting with settings I noticed steering at high speed felt smoother with this on, it's just that it breaks moving your character at low speed.
 
when I run this, it tells me "The application was unable to start correctly (0xc000007b). Click OK to close the application."
 
when I run this, it tells me "The application was unable to start correctly (0xc000007b). Click OK to close the application."
Is there a 64-bit release available for 2.2? This EXE mod requires the 32-bit release. I'll edit the OP to specify.


Would it be possible to only enable "Turn to Character Angle" when the character's running?

In my time experimenting with settings I noticed steering at high speed felt smoother with this on, it's just that it breaks moving your character at low speed.
dsghdjsdkgds I fixed this and so many other things DAYS ago but I didn't keep the submission up-to-date because I was planning on doing so when submissions opened and now I can't edit attachments on the release ;_;
 
I'm... actually unable to edit attachments on this post right now! Please help.


Also, do the filename conventions apply to the EXE itself? In the past there never seemed to be problems with using whatever, but I'm not sure how that applies with the new rules. And does there have to be a decimal (1.0) or is it fine to just use whole numbers (1)? Lately I don't differentiate classes of update in my release updates, and the extra period in the EXE name could potentially complicate batch scripting using the EXE...


Also also, shouldn't this go in Mods? I thought Software was for stuff like editors and launchers that were used alongside the game...
There doesn't need to be a decimal, using a whole number for a version update should be just fine so long as it's clear what version is the newest one for people who might have multiple versions downloaded. I was operating under the assumption that the version numbering would apply to the EXE itself, but if this will cause issues in some way I'm sure it can be waved aside as long as you're clear about version updates in your opening post.

As far as the sub-forum this is in goes, I figured D00D64 put this EXE in software rather than mods because camera changes are supplemental and can be paired with other content or just for use in vanilla, rather than something truly stand alone. Or maybe I'm wrong there.

Either way, I've also passed on that you're having trouble editing your attachment so hopefully that gets fixed soon. Sorry about that!
 
This is a pretty dang good camera mod. Really great for when you just want to sit back and relax, and play some srb2.

The only problem I have is that with some bosses (*cough* Metal Sonic) it can be really frustrating to use. I would suggest adding a feature where the camera would lock on to the boss whenever you are near it. Other than that, good job.
 
Yes, I have the 64-bit version, but I didn't think it would matter for a separate exe, you know?
There's a 64-bit Windows version floating around? Then why is it NOT in the game's download page!? I bet this is some Discord thing. Friggin' Discord...

Anyhow, let's not be completely off-topic. I'm not the target audience for this because I don't play with analog mode, but I do play with tank camera and heavens to margatroid, cam_rotspeed is a GODSEND. I knew I needed this but I didn't know I needed it THIS much. I'll definitely be playing exclusively with this EXE until cam_rotspeed gets ported to the mainline release!
 
Ah, there we go, I can edit attachments now. EXE is updated, with a bunch of minor tweaks and changes. (There's too many minor things to list, so check the commit log in the source repository if you're curious.) It's version 1 because the previous ones were intended as betas. I also replaced all the screenshots to reflect current behavior.
 
Can I just say I love this?

As somebody who just hopped in on the SRB2 scene after V2.2, I was struggling to find controls that really fit my preferences. The defaults were just too manual for my tastes. So I tried out the hidden analog mode, but that ended up having the exact opposite problem. It was too automatic. But the Simple mode in this mod manages to strike a perfect balance between the two and make the game alot more enjoyable.

I also love how there's even an entire UI structure for this thing, making it look almost like this mod was part of an official update. It also makes it super easy to fine tune all the different settings, rather than having to constantly open and close the game while modifying some config file like it might have.

I don't actually have much for suggestions other than something really minor, which would be an option to reverse the camera controls separately from the controller config, with separate options for both first and third person. It just always bugged me that when I go to reverse the X on my right stick for third person, it ends up screwing up the way it moves in first person. Of course, it's more of a minor nitpick than anything, since I almost never even use first person, but I think the option would be nice.

As for a name, how about some thing like CAM-PLUS?
 
Last edited:
I'm of the opinion that all "Simple" features should be disabled for first person mode.

I've stressed this already, but I would kill to have auto target on players become a thing for third-person ringslinger modes. Of course, it'd need sight targeting restrictions -- don't want people using it as a wall hack after all...
 
Is this compatible with the saves you have already? And can you collect emblems still for your main save file of srb2 2.2?
 
I'm of the opinion that all "Simple" features should be disabled for first person mode.
Is anything not disabled in the current EXE? (The v1 MB release is more up-to-date than anything I posted on Discord.) Aside from the aim assist, if anything's still enabled that's a bug I need to fix. I could disable aim assist, too.


I've stressed this already, but I would kill to have auto target on players become a thing for third-person ringslinger modes. Of course, it'd need sight targeting restrictions -- don't want people using it as a wall hack after all...
If it was available in the base game, maybe. As an addon it's too close to "aimbot" territory for my comfort, and I'd hate to do anything that could be called "tainting" MP balance (as if there's any to begin with lmfao)


Is this compatible with the saves you have already? And can you collect emblems still for your main save file of srb2 2.2?
This EXE can serve as a drop-in replacement for srb2win and maintains compatibility with everything. The only catch is that certain Lua addons may not play nice with simple camera depending on how they function.
 

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

Back
Top