ShakerService - The sequal to CameraShaker

I No Longer Maintain ShakerService!

Shaker service is an old project that is hard to maintain and I have no intrest in maintaining. I’d recomend moving to using either SimpleShaker, or EZ Camera Shake. Thank you everyone for your intrest in the project!


Old Post


What is it?

Shaker Service is a open source, lightweight, customizable, and simple camera shaking module which is the squeal to my other camera shaking module CameraShaker!

Shaker Service has only one dependency! a Signal module, something basically every project has!

One of the main new features ShakerService offers is, directional shaking, which allows you to define where a shake is coming from, making more interesting shake effects! Please note that the algorithm is still heavily WIP and will likely be improved upon VERY much in the future.


Download & Docs

If you are interested in using ShakerService, the download and documentation are below!

ShakerService.rbxm (5.2 KB)


Showcase

Finally, if your coming from CameraShaker (I highly doubt it) barely anything has changed since then! But there are a few differences, so make sure to read the documentation.

15 Likes

Noticed that cleanup warning isn’t on shakeFromPosition so I added it, also added a custom duration since it’s not natively supported.

Also noticed there is a slight delay, any way to fix it?

1 Like

Oops, forgot to add that, I will add it nativly in the next update.

Can you elaborate on that? My best guess is that this could be because it doesn’t apply the shake effect until the next frame if your adding shake on Heartbeat which runs after which runs after RenderStep in the frame.

Shaker Service has been taken down!

Shaker service has been taken off the creator store! I attempted to appeal to no success. To protect my account I will not be attempting to reupload the module, If you wish to use ShakerService, use another method of downloading. (Im going to add an .rbxm file to the original post shortly)

Edit: Added

what happened to the product? what was the reason for the creator store module takedown?

1 Like

“Misusing Roblox Systems”

My working theory is that its because doesn’t adapt to reduce motion settings, but my previous module CameraShaker was completely fine (and it doesn’t adapt). And, this doesn’t seem like a thing that roblox would be able to detect nor care about.

This Situation is VERY likely a mistake.

If any roblox staff is seeing this, can you please bring it back up or at least tell me what Im “misusing”

Dear god the ending explosion on the video scared the hell out of me.

Anyway, sucks how this got taken down, but past that, why would this be a sequel to CameraShaker? From the video all I saw new was the directional camera shake (which no offense, doesn’t even look all that good)

If you need ideas I’ve got plenty, heres a few:
3D Shaking, getting the camera closer to a CFrame, Vector3, attachment, or object could increase the shake the closer the camera is, this would save a bunch of time in multiple instances.
Bump/Disrupt, rather than having the directional camera which is locked to a relative axis, you could instead make the camera shake bump in a certain direction, where it still has effect on all 3 axes (depending on influence) but the camera favors in that direction

1 Like

I don’t completely remember why I made a sequal, but a lot of the changes were internal rewrites. Directional shaking is still being worked on and I am currently planning on making directional shaking use springs for 1.1 which should hopefully look a lot better.

This might be already be added with shakeFromPosition(), might not adjust the intesnsity though, I’ll look into adding variable intensity for world shakes as a config in the next update.

I’ll think about adding that as a config.

why do i need to use a signal when using the module? I don’t even know what a signal does tbh

I havent really touched this project in a long while, but the signal dependency is for events that fire when you do certain things.

Signals are an implementation of the observer pattern, and is basicly a luau version of BindableEvent which makes it faster and more lightweight.

Also personally, ShakerService is not a project that I will continue to maintain, its code quality just doesnt fit my standards anymore, and honestly is way to fancy for most people, so I ended up making a simplier camera shaking library called SimpleShaker which I’d recommend using over ShakerService and CameraShaker (my old camera shaker). You could also use @sleitnick’s CameraShaker module, which is what most people use as far as I’m aware.