As you are reading this article, a new update is slowly rolling out on Android and iOS, version number 0.105.0 on Android. As always, the GO Hub team tore down the Android version of the update and dug through the code base to see what’s new. This time around, the theme of the update is quite… tropical. This APK teardown sounds better if you’re listening to “Somewhere over the rainbow” while reading.

Niantic is changing the way they’re handling forms in the infamous Game Master file, as the new version adds a few new fields in the mix. This change is purely technical, but it is intriguing to see how it all works together in the background:

.AlolaGameMasterUtil
.HasAlolaForm
.IsAlolaForm
.NormalFormForAlolaPokemon
.AlolaFormForAlolaPokemon

Building on top of that, we also got the first official mention of Alola forms and their numbers in this APK:

.ALOLA_FORM_POKEMON_LIST
.ALOLA_FORM_NUMBERS

However, the main prize of this update is a complete list of Alolan Pokémon 🌴 that will be available. If you want to avoid any spoilers for what’s coming, please stop reading right now. We’ll even add a cute Alolan Raichu picture before the spoilers:

Alolan Raichu is the best Raichu. Pancakes are also cool.
Alolan Forms in 0.105.0 APK
  • .RATTATA_NORMAL
  • .RATTATA_ALOLA
  • .RATICATE_NORMAL
  • .RATICATE_ALOLA
  • .RAICHU_NORMAL
  • .RAICHU_ALOLA
  • .SANDSHREW_NORMAL
  • .SANDSHREW_ALOLA
  • .SANDSLASH_NORMAL
  • .SANDSLASH_ALOLA
  • .VULPIX_NORMAL
  • .VULPIX_ALOLA
  • .NINETALES_NORMAL
  • .NINETALES_ALOLA
  • .DIGLETT_NORMAL
  • .DIGLETT_ALOLA
  • .DUGTRIO_NORMAL
  • .DUGTRIO_ALOLA
  • .MEOWTH_NORMAL
  • .MEOWTH_ALOLA
  • .PERSIAN_NORMAL
  • .PERSIAN_ALOLA
  • .GEODUDE_NORMAL
  • .GEODUDE_ALOLA
  • .GRAVELER_NORMAL
  • .GRAVELER_ALOLA
  • .GOLEM_NORMAL
  • .GOLEM_ALOLA
  • .GRIMER_NORMAL
  • .GRIMER_ALOLA
  • .MUK_NORMAL
  • .MUK_ALOLA
  • .EXEGGUTOR_NORMAL
  • .EXEGGUTOR_ALOLA
  • .MAROWAK_NORMAL
  • .MAROWAK_ALOLA

Moving on, we got a (potentially) new special weather mode — rainbows. Everyone loves rainbows 🌈, and we’re speculating that Kanto Pokémon will exhibit their Alolan forms only when in-game rainbows are available. This, of course, is not confirmed by NIA in any way, shape or form, but it eerily rings a bell in our minds:

.get_EnableSpecialWeather
.set_EnableSpecialWeather
.get_SpecialWeatherProbability
.set_SpecialWeatherProbability

[... we omitted around 20 lines of code for readability ...]

.IsItRainbowTime
.permanent
.AttachRainbow
.TurnRainbow
.TurnOnRainbow
.TurnOffRainbow
.RainbowTime
.CalculateSunPosition
.angleInRadians
.CorrectAngle
.rainbowShader

And a few new account handling flags have been added, targeting minors and banned accounts:

.dateOfConsent
.CheckIsMinor
.IsMinor
.OnAccountBanned
.AccountBanned

This update brings a new menu option on your Pokémon screen as well. You can now apply items directly on a selected Pokémon, without going back and forth through menus and taps. REJOICE and check the video clip below!

As well, tapping on either the defending Pokemon in a gym, or the gym badge itself, from the Gym Badge screen, will now bring you to that Gym, making it a easier way to track down a specific Pokemon at a specific Gym. Defenders will now have a much easier time reaching the Remote Feeding section to feed their ‘mons some Golden Razz Berries.

Finally, error codes seem to have more detailed explanations attached to them, so that there is a more direct explanation for a error one might receive.

Parting words

Trainers, you’ve read our APK tear downs for more than two years now and you probably went through the same emotional rollercoaster as we did through out that process. However, this APK is a different affair: it’s predictable, it’s good and it finally follows an official announcement from Niantic. For the first time in ages, we’re finding code that doesn’t leak, but rather supports, a feature that was previously announced by the developers.

We look forward to chasing the rainbow and researching the Alolan spawn mechanics in the weeks to come.

The times, they are a changing.