Skip to content

Reactive systems should not trigger :tick messages for non-reactive systems #7

@sikanrong

Description

@sikanrong

So currently the Ecstatic.Ticker logic works by attaching a watcher to :attached, :removed and :updated component lifecycle hooks. This is so that the Ecstatic.EventConsumer is the process which sends each individual :tick message.

In that way, I can ensure that each change is completely propagated through the system before another tick message is fired. If the Ecstatic.Ticker process sends itself tick messages it can go too fast and essentially it re-executes the same System logic over and over again, overloading the gen_stage message queue and not allowing the entity to be updated.

What I need to do here is make it so that other reactive Ecstatic.System don't also trigger unwanted :tick messages for non-reactive Ecstatic.System, when are both are watching and updating the same Ecstatic.Component type.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions