Heartbeat, Stepped, and RenderStepped are deprecated, what can I use instead?

It has come to my attention that in the developer hub it says that Heartbeat, Stepped, and RenderStepped have been deprecated, what can I use instead?


1 Like

it isn’t roblox this days made a lot of wiki dev changes which actually arent out dated
Like Mouse.Button1Down

Well they marked them as deprecated too early, you still have to use those events because new ones doesn’t even work yet.

New ones if you are wondering are PreSimulation for Stepped, PostSimulation for Heartbeat and PreRender for RenderStepped.


Button1Down is replaced by UserInputService Input events though.

It’s just a different naming convention I believe:

Heartbeat = PostSimulation since it’s after physics
Stepped = PreSimulation since it’s before physics
RenderStepped = PreRender since its before rendering camera

PreAnimation seems new though

new Diagram:


Old Diagram:


1 Like

I know but if try to use them in studio right now, new ones will not work because they haven’t added them to actual API yet. That’s why I said they marked the old ones as deprecated a bit too early:


Their deprecation doesn’t matter; in this case take it as a note of discouragement against using them rather than a hard “these are going to be removed soon, stop using them”. These events are too widely used that it’s highly unlikely they be removed and they’ll instead be used as aliases for the new names.

1 Like

But what’s the point of deprecating something simply because of their name?
They’ve been used pretty much since they were first created. There is honestly no good reason to change those names.
Unlike other changes to methods and functions which were necessary, this just sounds plain un-necessary.

1 Like

The names don’t reflect the events’ purposes and when they’re fired, this is probably done in order to not confuse people reading the API reference.

I’m not staff so I can’t really answer your question. If you ask me however, their use frequency isn’t really a reason against changing their names. The new names are much clearer especially for new developers and actually tell you where they slot into the processes of each frame.

I feel that the new names will also be easier to explain when it comes to tutorials especially relating to optimisation tips (e.g. developers still abusing RenderStepped when you’ll have scarce use cases for actually requiring it) and how you can take advantage of each one for continuous processes in your games. There’s also a new event so the names stay consistent.

And as said above: the former names are more technical but they aren’t novice-friendly and it’s proven to be that way on numerous occasions. Existing explanations and documentations may help those who understand it or be confusing to those who are completely new into the field.