Question about my shooter implementation, worrying about architecture

Hi, I wanted to make sure I'm doing things right with Bolt so posting my situation here.
I'm making Shooter game, there server is just an observer and it spawns and controls enemies (imagine TD like game) and players controls their avatars. For now I'm not thinking about security as it is just a prototype, so everything is p2p and not server controlled.
Position, health, etc are synced with states. Every bullet fired make owner send Global event, and then all clients/server creates local bullet which is not synced owner internet (because of limited data can be transferred and i don't want to sync bullets for sure in bullet hell game). Anyway there is many global calls for bullet spawning as it is : ( .
Then bullet hits target it explodes locally and just bullet owner sends info about damage for target owner, which later syncs with states. So actually player can see that he was hit, but damage will not be made if owner thinks it was miss, and other way around - player can see bullet miss, but shooter will see target with delay and send damage event. I am worried about all desync with this approach.
Am I doing things as expected of should I do something different?

Comments