Kind of a question I can't really find any information on. Maybe because it's obvious to other people? Mostly looking for personally the methods you use for this sort of thing. Do you just treat all events (sound and particles) as entities?
Right now I follow a Valve style networking where I just send inputs "just in time" for the server tick, which are then executed one by one. This works really well and I like it. The server then sends out a snapshop of the game world every other tick. The snapshot includes position information, etc. But it also includes state information such as entities HP, is the HP being hit currently. Basically a bunch of booleans. The client then uses this information of booleans to build what animation playing. Should I just piggyback on that system to play sounds? Or is that too much networking information? This is a tile based 2D game btw.
Or should each game state include a list of events that happen and the client just play them that way? Maybe with what tick so the client can try to play them in order.