3 ms·
The game uses google's protobuf protocol which makes communication more efficient and the game updates (I can only tell from <= 0.35 analysis) all 10-30 seconds
by Schampu 9y ago
The game uses google's protobuf protocol which makes communication more efficient and the game updates (I can only tell from <= 0.35 analysis) all 10-30 seconds like loading pokemon spawns and map entities of the current map area.
The most expensive data in 0.35 was:
- Pokemon models (They were dynamically loaded but cached then)
- Pokestop images (Server sends image url and client searches for a chached version)
- Syncing the player state with the client (Inventory, rewards, egg states..)
- Updating the map (Future pokemon spawns, pokestops/gyms in view..)
If a player is idle and doesn't move, just keeps farming a single pokestop and battles sometimes, then it should be relatively low cost since the game doesn't use a realtime communication (It's actually HTTPS based lol).
- RugnirViking 9y agoThe pokemon models are loaded over the network? Whatever for? Seems like a big waste of precious data
- dimillian 9y agoSo you can add/update them without doing an .ipa/.apk update ? Seems really convenient, and a one time deal if it's cached.
- Schampu 9y agoLast year I developed a server emulator for the game - On the server's first run, it cloned all models from the official servers to a local folder. The download urls and the models itself were encrypted, also their urls got disabled after ~24 hours. Other informations like how big a model gets displayed inside the game world was declared inside a GAME_MASTER file. When connecting to the custom server, the client asks for the GAME_MASTER file and the models as needed. It was pretty fun to edit these and send the players custom models like a GIANT snorlax or a red pikachu. I'm not 100% sure, but I think the GAME_MASTER file even contained a "model signature" to trigger a forced model update, so it's possible to overwrite already cached models. In the first weeks Niantic broke the model of Starmie (it turned full black) and I'm pretty sure they fixed it without a full game update. You can checkout the emulator project here: https://github.com/maierfelix/POGOserver https://github.com/maierfelix/POGOserver