5 pointsby joshuamanton7 hours ago1 comment
  • MCProMatt7 hours ago
    How do you handle sandboxing? e.g. can I as a developer write arbitrary memory that gets replicated? Can I access other server memory and steal your secrets?
    • joshuamanton7 hours ago
      All pointer reads/writes are sandboxed. The game state is a power of two number of bytes (64MB right now, might have to bump this up as people make more complex games), so we can use masking to quickly clamp any pointer to the sandbox by computing `game_state_base + (<pointer> & (game_state_size-1))` before doing the access. That masking makes sure you can't access anything outside the game state, but you can corrupt your own game state if you'd like!