0.189.0 is starting to roll out and there are quite a few goodies for the upcoming Halloween event and some other behind the scenes additions. We need to spend more time on it, but it appears that the obfuscation has been eased up just a tad. It’s not removed, but it is slightly easier to work with now. So thank you Niantic for that! Anyway, let’s dive in!
Runerigus and its shadow form added
Sableye Costume added
Incinerate and Dark Void (Darkrai’s signature move) added
AR Scanning Quest type additions (as confirmed in the release notes)
Halloween Event logo and boxes
Gift sticker status
Face slot officially added for the upcoming masks
Avatar items can display if they are sponsored or not
Filtering can have a default filter for your Pokemon storage
New icons added to event boxes in the shop, including something called a Trade Ball
Friends List improvements, including queuing up Friend Profiles
Location permission updates for Android 11 and iOS 14
Encounter Summary Screen bonuses updated, including a Mega Bonus View for some reason
Geofencing, geofenced quests, and AR Mapping Stop directions
Looks like depending on where you are, you will get quests to go scan a specific PokeStop
Additions to guide you through scanning the stop for the quest including directions there
Quests will display the Pokestop’s image, icon, etc
Niantic Real World Platform Adventure Sync library
It looks like another RWP Library at least, but we might be wrong
Contains expected things like steps, distance
More interestingly, it contains geofencing and location; perhaps Adventure Sync could support location-based updates in the future?
Several Firebase libraries added, most notably for push notifications and crash handling (more stable push notifications perhaps?)
OkHttp and deep linking support, unclear what this is used for, but OkHttp requires Android 5 or later which is probably why they had to drop support for older Android versions
New Pokemon and Forms
.V0867_POKEMON_RUNERIGUS RUNERIGUS_NORMAL RUNERIGUS_SHADOW RUNERIGUS_PURIFIED
These aren’t suspicious that they are added right before Halloween. Not at all.
Sableye wearing a costume for Halloween perhaps?
Two new moves! Dark Void is the signature move of Darkrai. Probably doesn’t mean anything though. 😛
We saw hints of this before, but as they say in the release notes there are going to be quests to do AR mapping. More on that below.
remove_OnQuestOpened add_OnQuestOpened poiChallengeItemViewPrefab TAGGED QuestArrowClick
Throwing this in here just because it’s semi-related. Some additional quest tagging and opening.
The Halloween logo was added to the game with other avatar group sections, so it’ll probably show up in the style shop
Fancy spooky box!
No, these are not their official names. But looks like we’ll get getting some new boxes for the event.
stickerInventoryGuiPrefab stickerInventoryDetailsGuiController StickerInventoryDetailsGuiController Niantic.Holoholo.UI.GuiWindows.StickerInventoryGui HelpIcon StickerInventoryGuiController ClickStickerInventoryInfo OpenShopGui helpDialogUrl StickerInventoryItemEntryWidget
We’ve seen this before, but there is for sure a Sticker Inventory coming (don’t believe me, just download 189 and look at your inventory haha). The Sticker inventory doesn’t appear to do anything at the moment, however.
Gift Sticker Status
Gift Sticker Icon
When you receive a gift that has a sticker on it, it’ll have this icon in your friend’s list now.
Face slot for the avatar section
A new avatar section which will be used for masks. We are aware of a Halloween mask, Verizon mask, and a basic mask that we have previously datamined so far.
The Avatar’s customization group button now has a new field for if the item is sponsored specifically.
In addition, there appears to be a better / dynamic way of sorting the group buttons (maybe for the sponsor section).
Small update to the filters we’ve been finding, looks like there will be a default filter that can be loaded when looking at your storage. It’s unclear right now if you will be able to set the default however.
Event Bonus Box Icons
LOCATION EVENT MYSTERY_BOX TRADE_BALL
These are new icons added to the Event Bonus Box’s icons (that appear in the shop). Wonder what a trade ball is?
Friends List Improvements
ShowFriendProfile remove_OnRemoveFriend add_OnRemoveFriend QueueFriendProfile
Looks like they might be queuing up your friend’s profiles at some point (maybe during swiping?).
GBL Pokemon Rule Views
This is most likely for viewing the ban list in a GBL cup. The flying cup list (when pushed) will probably be extremely long as it’s a ban list, not an allow list. So this might make it easier to show (if this is what this actually is).
An override for moving the motivation heart next to your gym defender.
Android 11 permission for location services.
iOS 14 reminders (as said in the release notes) about enabling Precise Location. Also a new Adventure Sync instruction for iOS 14.
Download All Assets Update
The Download All Assets catalog was updated with GBL Combat Rank photoshop files (yes PSD files are referenced in this catalog). The catalog contains what assets should be included in the download all feature for reference.
Encounter Summary Screen
weatherBonusView megaBonusView BonusView FadeInTime FadeInYDelta
These were added to the catch summary screen. Interesting that Mega bonus there though, you can’t catch Megas… Or can you?
AreGeotargetedQuestsEnabled GeotargetedQuestValidation ERROR_EXCEEDED__SUBMISSION_LIMIT ERROR_VALIDATION_FAILED
So a lot was added about geofencing quests in this update. It appears that these are specifically related to the Titan updates (more on that below, and confirmed in the release notes). This would mean you can get specific quests based on where you are physically (probably using S cells of some sort to determine this). These quest types were actually added in a previous APK.
geoQuestPoiImage geoQuestIcon geoQuestDisplayObject
Geo Quests can have their own icon, an object to display and an image (the POI and its image most likely).
GeotargetedQuestService arScanIcon editIcon photoIcon categorizationIcon defaultIcon playerService rpcHandler arMappingDataTracker
Geo quests appear to have shortcuts for scanning, editing, taking a photo, etc.
LocationAwarenessActionsReflection LocationPingProto .get_GeofenceIdentifier .set_GeofenceIdentifier .get_Reason Reason PingReason ENTRANCE_EVENT EXIT_EVENT DWELL_EVENT VISIT_EVENT FITNESS_WAKEUP OTHER_WAKEUP
Just some network calls for the feature.
Titan (AR Mapping) is getting a new recorder by the looks of it. Probably will be enabled with the geo quests from above.
RefreshTooDark WaitForMinimumRecordingTimeMet OnRecordingCancelRequest
Some errors for scanning.
AR_MAPPING_SCAN_VALIDATION_CANCELLED ITitanArRecorderServiceProvider ArRecorderService TitanArRecorderServiceProvider TitanArRecorderServiceFactory CreateEncodingInfoWithV1Data CreateArEncodingInfoWithVpsData TEST_WEBM_PATH TEST_METADATA_PATH TEST_UNPACK_PREVIEW_PATH TEST_V2_DATA_PATH ArMappingSessionTelemetry arScanLandingGuiPrefab arScanInfoGuiPrefab
The service itself, landing pages, telemetry, more fun stuff.
AR Mapping Directions
As previously found, the game will start directing you towards stops that need to be scanned. Stops that need to be scanned will be tagged with a special tag that you can apparently click on.
ARScanLandingStateShim Niantic.Holoholo.Pokestop ARScanInfoGuiController add_ViewDirections remove_ViewDirections add_ViewScanInfo remove_ViewScanInfo add_StartArScan remove_StartArScan ARScanLandingGuiController OnInfoButtonClick OnDirectionsButtonClick OnScanButtonClick checkRangeFrequencySeconds poiImageBackground poiImageCircle poiNameText scanButtonImage
Here you can see you can get info, the image, name, background, get directions, starting the scan, etc. These might be tied to the quest themselves perhaps.
Niantic Real World Adventure Sync
.get_AdventureSyncDeviceService adventureSyncDeviceService DeviceInfo Niantic.Platform.AdventureSync.Util .get_AndroidApiLevel .get_AndroidTar .getSdkVersion AndroidApiLevel AndroidTar .getSdkVersion DebugApiServiceImpl Niantic.Platform.AdventureSync.DebugApi awarenessService .get_EventRecordTimestampMs GetEventRecords ClearEventRecords .get_GeofenceUpdateTimestampMs GetGeofenceEnclosure GetGeofences .get_DebugNotifications .set_DebugNotifications steps distanceM caloriesKCal SendFitnessUpdate didEnter geofence SendGeofenceLocationPing SendLocationPing RequestGeofenceUpdate get_AdventureSyncProvider HasPreciseLocationAccess
So there is a lot here, and it appears this might be another Niantic Real World Platform library. There are things like the Android API level, SDK version, debugging information, getting distance and calories, etc.
Also notable is the ability to change the Adventure Sync provider. This might just be between iOS and Android but perhaps it may be expanded.
There is also geofences in here, which would be interesting if Adventure Sync could take advantage of your location in addition to your steps.
N_KEY_TEMPLATE N__DISABLED_KEY DISTANCE_LIMIT_KEY REPORT_SPONSOR_CONTENT_KEY REPORT_SPONSOR_LOCATION_KEY MIN_PLAYER_LEVEL_RAW_KEY N_LIMIT_RESET_RAW_KEY IPoiEditRequirementCheckService poiData IsPoiEditFeatureEnabled IsPlayerAtMinimumLevelReq IsPlayerWithinDistanceReq IsPlayersSubmissionCountExhausted PoiEditRequirementCheckService IsSubEditFeatureShownForType _arFeatureService _arMappingSettingService EDIT_DISTANCE_VALIDATION_FAILED
Some more updates to POI editing, additional checking for level requirements, and something called an N Key (Niantic Key?).
Misc Pokemon / Ball Updates
A new method for releasing pokemon assets, perhaps to clear out old assets when downloading new ones specifically?
PlayPokeballOpen PlayPokeballClose PlayPokeballSpawn
Additional animations for Pokeball opening and closing in the Trade Stage. This is most probably to fix the trade bug they highlighted in the release notes.
Possible Telemetry Updates?
DL_ACTION DL_CATEGORY DL_TAB DL_SKU DL_ICON DL_ID OPEN_SHOP OPEN_NEWS OPEN_BATTLE_LEAGUE OPEN_SETTINGS OPEN_PLAYER_PROFILE OPEN_BUDDY OPEN_AVATAR_ITEMS OPEN_QUEST_LIST OPEN_POKEMON_INVENTORY OPEN_NEARBY_POKEMON OPEN_POKEDEX OPEN_EVENTS OPEN_JOURNAL OPEN_TIPS OPEN_ITEM_INVENTORY NEARBY_POKEMON RAIDS COMBAT_PARTY POKEMON EGGS TODAY_VIEW FIELD_RESEARCH SPECIAL_RESEARCH
This is heavily obfuscated so we’ll take another crack at it in our Digging Deeper, but these are all actions that appear to be logged/tracked. They are basically the different sections of the UI and how you can interact with them we are thinking it’s telemetry related but can’t say for sure.
Firebase Library Updates
Firebase.App.dll Firebase.Platform.dll Firebase.TaskExtension.dll Firebase.Crashlytics.dll Firebase.InstanceId.dll Firebase.Messaging.dll Google.MiniJson.dll libFirebaseCppMessaging.so libFirebaseCppInstanceId.so libFirebaseCppCrashlytics.so libFirebaseCppApp-6_15_2.so libFirebaseCppAnalytics.so FirebaseEditorDispatcher .get_EditorApplicationType .get_EditorIsPlaying .get_EditorIsPlayingOrWillChangePlaymode StartEditorUpdate StopEditorUpdate ListenToPlayState PlayModeStateChanged PlayModeStateChangedWithArg eventField AddRemoveCallbackToField EditorApplicationType EditorIsPlaying EditorIsPlayingOrWillChangePlaymode FirebaseHandler FirebaseApp_CreateInternal__SWIG_0 FirebaseApp_ReleaseReferenceInternal FirebaseApp_GetLogLevelInternal FirebaseApp_RegisterLibraryInternal FirebaseApp_AppSetDefaultConfigPath FirebaseApp_DefaultName_ CrashlyticsInternalPINVOKE StackFrames_Add StackFrames_size new_StackFrames__SWIG_0 StackFrames_ .getitem delete_StackFrames new_FirebaseCrashlyticsFrame delete_FirebaseCrashlyticsFrame FirebaseCrashlyticsInternal_GetInstance__SWIG_0 FirebaseCrashlyticsInternal_Log FirebaseCrashlyticsInternal_SetCustomKey FirebaseCrashlyticsInternal_SetUserId FirebaseCrashlyticsInternal_LogException Firebase.Messaging FirebaseMessaging add_TokenReceivedInternal remove_TokenReceivedInternal CreateOrDestroyListener add_TokenReceived remove_TokenReceived SetListenerCallbacks message_callback_enabled token_callback_enabled SetListenerCallbacksEnabled SendPendingEvents MessageReceivedInternal TokenReceivedInternal TokenReceived Listener MessageReceivedDelegateMethod TokenReceivedDelegateMethod messageReceivedDelegate tokenReceivedDelegate MessageReceivedDelegate
Firebase is a platform with a set of libraries from Google for Android app development. They were using Firebase libraries before, but they added a few additional ones. We just put the most interesting updates above (there was a lot), but the most interesting library additions are:
Perhaps this could mean we start seeing more stable push notifications? We probably won’t notice any immediate change off the bat.
Threw this in here as it’s semi-related, but you will need to opt-in for app tracking. This was added under the Tutorial completion interestingly enough.
This is a pretty basic library for URL handling. This might be added to go along with the deep linking updates below, but what’s interesting is the note below:
OkHttp works on Android 5.0+ (API level 21+) and on Java 8+.
This might be the reason why they had to drop support for previous Android versions.
get_DeepLinkingSettings .get_OnDeferredDeepLinking .set_OnDeferredDeepLinking .get_GameObjectName .set_GameObjectName DeepLinkingTelemetry
There are a few reasons why Deep Linking might be added, but it appears linked to game objects in some way. Deep Linking is simply directing the user to a specific piece of content on a website for example.
.get_PlayerIsMinLevelDeepLinkedNotification .get_PlayerIsMinLevelForDeepLinkedUrl .get_PlayerIsMinLevelForArPhoto
What’s odd, however, is there is a minimum level for deep linking notifications. So what is this feature possibly linked to that requires a level requirement and one that will give us a push notification?
We also threw in the minimum level for AR Photo here because it might not be specific to AR Mapping but it is with the deep link additions as they are in the same class.