v1.0.0 - #92
v1.0.0#92weenachuangkud wants to merge 73 commits into
Conversation
|
Proper review needed |
|
@Naymmmm Are you busy? |
|
@Per2iako Bro |
|
|
Yoooo it more readable LGTM |
Per2iako
left a comment
There was a problem hiding this comment.
This can be maintain easier good
|
I just need to test stuffs |
I busy rn i'll report test when am home |
|
But I don't have a pc to use roblox studio, so I really need some help and I can't find anyone that actually understand how to do manual testing FastCast2 from .md instructions |
|
Okay ty, I'll working on SerialSimulation |
your welcome i still use this module now a day |
|
There must be a better way to implement SerialSimulation, because I don't like having per instance connection |
- Add src/Signal.luau lightweight synchronous event dispatcher - Expose Caster events as multi-listener Signals with Connect/Once/Wait/Disconnect - Keep function assignment as backwards-compatible shorthand for :Connect - Batch parallel worker events into a single Output message per frame - Add tests for multi-listener and Disconnect behavior
Resolve ParallelSimulation conflict by keeping upstream's packed-buffer event queue and layering the per-frame event batch on top. Adapt the hotpaths harness to pass Signals to the simulation, and exclude its Lune runner from selene.
…ignals-replacing-bindableevents feat(events): replace BindableEvent caster events with Signal
Dispatcher:Allocate sent 'Init' exactly once, so a client ClientVM that bound its message handlers a frame late never initialized. Every later 'Raycast' message was then dropped and the caster produced no casts. BaseCastParallel.Init now sets a FastCast2Ready attribute and the dispatcher retries 'Init' until every actor reports ready.
Parallel casters sent one Actor message per shot, so a high fire rate spent most of the main thread serializing and crossing the Actor boundary. Shots are now queued and flushed once per frame, distributed round-robin across workers. The behavior is snapshotted when queued so per-shot mutations such as the raycast filter are preserved.
…hed-dispatch perf: batch parallel fire requests into one message per worker per frame
…l-init fix: initialize parallel actors reliably and document the client container
|
Dang, when @Naymmmm come in to assist with this PR everything got a lot better |
|
I've checked TODO.md, this looks ready to merge |
This workflow is triggered manually to run tests using npm after installing Rokit and necessary tools.
Added
Fixes
Changes
Cancelled
(Because you can simply edit the FastCast2 code if you want to change the specific RunService event.)
(Might add this back)