Client-side prediction is essential to a responsive online game. PewPew clients currently react only once they receive an acknowledging event from the server immediately, resimulating when corrected by the server. The client should send a time code with the event request, the server should then rebroadcast that event, and clients should apply every event sent by the server unless they already have it. Currently, clients bail resimulate on old events (events with time codes prior to the current frame), so old events are applied correctly.
The following things are necessary to implement CSP:
CSP is the last roadblock to a working framework (once this is done, content creation and true gameplay decision-making can begin).