Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 124 reacties
Submitter: Dwinges

Een groep ontwikkelaars heeft onder de naam 'Team Unknown6' opnieuw een Pokémon Go-api ontwikkeld. Eerdere api's waren door Niantic vorige week ontoegankelijk gemaakt, waardoor veel sites van derden ermee ophielden.

Eind vorige week stopten de Pokémon-servers met het accepteren van toegangsverzoeken die buiten de officiële app om werden gedaan. Hierdoor werden sites van derden getroffen, zo moest bijvoorbeeld Pokévision zijn deuren sluiten. Niantic stelde dat deze diensten de ontwikkeling van nieuwe features bemoeilijken en dat zij een grote belasting voor de servers vormen. Om de bestaande api's onbruikbaar te maken, had het bedrijf ervoor gezorgd dat er op de server een verificatie van een waarde werd doorgevoerd, die de naam 'unknown6' had.

Naar aanleiding van deze blokkering is een groep ontwikkelaars, die ontstond uit een thread op Reddit, aan de slag gegaan om opnieuw toegang te verkrijgen met een api. Uiteindelijk lukte dit na drie dagen en hebben zij hun code op GitHub beschikbaar gemaakt. Het doel van de samenwerking was erachter te komen op welke manier 'unknown6' werd gegenereerd. Deze waarde was al onderdeel van de Pokémon Go-app, maar werd nog niet geverifieerd door de server.

Door de app te reverse engineeren kwamen de ontwikkelaars erachter dat de onbekende waarde werd berekend in het libNianticLabsPlugin-object. Het moeilijke was vervolgens om uit te vinden uit welke elementen deze berekening bestond. In een tussentijdse update gaven de ontwikkelaars uitleg over het feit dat er meerdere waardes worden gebruikt. Bijvoorbeeld de gehashte waarde van een authenticatietoken in combinatie met de locatiegegevens van de gebruiker. Ook moesten zij erachter komen op welke manier de versleuteling plaatsvindt.

Naar aanleiding van de succesvolle afronding van het project blijken sommige Pokémon Go-diensten weer te werken. De makers waarschuwen dat toegang door de gekraakte api echter eenvoudig door Niantic vast te stellen is en dat dit niet als veilig beschouwd moet worden. Een van de ontwikkelaars laat op Reddit weten dat er binnenkort een volledige technische beschrijving van het project beschikbaar zal komen.

Moderatie-faq Wijzig weergave

Reacties (124)

Jammer dat dit ten koste gaat van ons, de eerlijke gebruiker..
De refresh rates van 1s naar 5s naar nu 10s.. waardoor je nu eigelijk alleen nog deftig
al wandelend kan spelen.. (met de fiets bv.. komen de pokemon's bijna niet meer in je gezichtsveld omdat de refreshrate te traag is in functie van de snelheid op je fiets)..

Tracking systeem, volledig weg nu.. gelukkig zijn er nog alternative sites..
Vorige week, zonder deze sites, heb ik het spel zelf niet meer opgestart.
Doelloos rondlopen.. zonder tracking.. geeft geen voldoening en het groepsgevoel die er was
'in groep naar een spawnpoint lopen' is erg verminderd.
Dat je alleen nog lopend goed Pokemon kan vangen is al een aantal keer ontkracht door Reddit. Als je puur wiskundig kijkt is de change niet zo groot dat ineens de game compleet gesloopt is. Bron: https://www.reddit.com/r/...ular_complaint_post_that/
Dit dus plus 1000.
Zowel op reddit als hier klaagt iedereen steen en been terwijl het verschil simpelweg heel minimaal is.

TL;DR voor het artikel hierboven: bij 20km/h kost deze update nog geen 8% in gevonden pokemon, en voor lopende spelers is het verschil al helemaal onmerkbaar.
Het verschil mag dan wel minimaal zijn, en wiskundig gezien maakt het misschien inderdaad niet zoveel uit,
maar feit is dat ik na 2 weken vakantie weer een rondje door de buurt gefietst heb, en het mij gewoon opvalt dat er nog maar heel weinig pokemon spawnen, en als ze spawnen vaak 2 of 3 tegelijk.
De 'nests' van spawns zijn wel aangepast geweest een weekje geleden, kan ook een verklaring zijn :)
De conclusie dat het "feit" dat er nog maar heel weinig pokemon spawnen komt door de scan-verandering is simpelweg onjuist.

Het zou te maken kunnen hebben met de verandering van de spawns vorige week, je zou ook pech kunnen hebben. Een 3-8% vermindering is simpelweg te klein om jouw observaties te verklaren.

[Reactie gewijzigd door Evil_Teddy op 11 augustus 2016 03:50]

Ik was vandaag op de fiets bezig en kwam amper tot geen pokemons tegen, bad luck?
Dat de refresh rate nu naar 10 seconden is gegaan en het verwijderen van de tracker is het domste wat niantic had kunnen doen. Hierdoor gaan mensen juist sites gebruiken die locaties van pokemons weten.

Die 10s heeft ook niet zoveel te maken met het reverse engineeren van de api. De druk is allang van de servers af doordat sites als pokevision niet meer bruikbaar zijn. Dit is gewoon stom geouwehoer omdat ze simpelweg te weinig server capaciteit hebben.
Als je al te weinig server capaciteit hebt, is die refresh-rate verlagen van 5s naar 10s juist wel slim, scheelt de helft aan server aanvragen. Zij spelen liever op safe, dan dat ze extra investeren in meer capaciteit.
Voor de echte clients wordt het aantal requests inderdaad gehalveerd. De scanners maken gewoon 2x zoveel accounts aan om de requests beter uit te kunnen spreiden.
En dat is dus stom aangezien mensen zoals ik juist die hogere refreshrate nodig hebben om te kunnen spelen in de bus. Ik heb niet veel tijd, maar vind het wel grappig om 's ochtends en 's avonds ff een paar van die beestjes te vangen.

Daarnaast is het breken van de rangefinder echt heel jammer. Wordt echt doelloos ronddwalen nu.
Die 'rangefinder' ben ik mee eens.
Maar dat het niet meer geschikt is voor in de auto o.i.d. is dan eigelijk gewoon pech, het spel heeft als doel juist om meer te bewegen, en niet de auto/bus te gebruiken.
Het doel is geld verdienen en zo raken ze een hoop spelers kwijt.

De vraag naar cheats wordt zo ook een stuk groter. Je hebt geen idee meer wat er in de buurt is en je moet echt heel erg dicht in de buurt zijn wil je wat zien spawnen. Even langslopen is er niet meer bij.

Het hele punt is dat dergelijke info niet opgrevraagd moet worden, maar gepushed op het moment dat je dus in de buurt bent. Oftewel GPS doorgeven als de app draait en dan serverside uitzoeken waar iemand zich bevind ofzo. Dan heb je al veel minder belasting op je server
Oh? Waarom broed ik dan menig ei uit op de motor? En hoewel ik mij natuurlijk altijd netjes aan de snelheids limit houd O-) ga ik toch iets harder dan loop snelheid.

Weet je wat ik denk? Ik denk dat het spel vooral bedoeld is om geld mee te verdienen.

Anders kan ik mezelf niet parkeren met een appeltaart me slagroom op de boekenmarkt in deventer, drie stops in bereik en maar vangen.

Goed, bewegen deed ik, vork naar mond. :Y)
Welk ander doel heeft een bedrijf dan?
Verlies draaien?

Dit is een marketingproduct, niet een liefdadigheidsapp. Daarvoor moet je bij t-mobile zijn.
Precies. En juist daarom zijn de nieuwe "verbeteringen" alleen maar slecht. Het hele rondloop aspect van het spel is verpest. De hype is er vanaf en nu worden alle nodige functies eruit gegooit.
U rijdt continu < 20 km/u op de motor? Boven die snelheid telt het niet mee in de telling bij het eieren hatchen.
Nou in de auto zoiezo niet mening kilometers voor jan.....
Ik had toch wel halve marathon gelopen toen ik klaar was op de boekenmarkt
Ik betwijfel of de servers de locatie moeten afhandelen. De API geeft waar een pokeemon zich bevind en de tijd dat hij nog actief blijft. Die gegevens ontvangt de app waarschijlijk ook. De locatie is tot de pokemon is middels een rekensom toch door de app zelf af te handelen en niet door de servers?
Jouw client (app) weet niet de locatie van alle Pokémon op elk moment. Dan zou er veel teveel data over de lijn gaan (namelijk van elke coördinaat waarop Pokémon zich zouden kunnen bevinden moet je dan weten welke Pokémon er zijn: dit zijn miljoenen of miljarden plekken?).

In plaats daarvan stuur je je locatie (één coördinaat) op en krijg je alleen de eventuele Pokémon die op die locatie en vlak daarbij zitten.

[Reactie gewijzigd door UltimusXI op 8 augustus 2016 13:58]

Ach. Dat is toch gewoon een kwestie van de code waarmee de Pokémon gegenereerd worden ook op de client laden? Kun je nadat de encounter is 'aangeklikt' alsnog een verificatie doen met de gps coordinaten.
Ik denk dat ze daar zelf de controle over willen houden en die code ook niet willen delen met de community, want dan weet iedereen precies van tevoren zelfs waar welke Pokémon gaat verschijnen.
Is perfect voor in buitengebieden met enkel GPRS. Scheelt een hoop laadtijd in de game omdat een request al gauw 2-3 seconden inneemt bij zulke trage verbindingen.
Waarom niet gewoon refresh rate afhankelijk maken van snelheid? Uiteraard tot een bepaald limiet, want het heeft niet zo'n zin om elke seconde te updaten als je over de snelweg rijdt.
Omdat een client-side aangegeven throttle-limiet nutteloos is
Het niet goed afschermen van je internet spelletjes is ten laste van de ontwikkelaar. Dat er mensen zijn, die de gaten proberen te vinden, zijn er altijd.

Ze hebben eigenlijk dus gewoon te veel dingen te snel online gezet zonder dit goed af te vangen. Gezien dit voor naamsbekendheid zorgde een logische stap, maar nu moeten ze stapje voor stapje het daadwerkelijk goed gaan opzetten.
Dus dat het ten koste van de gebruiker gaat, is de schuld van Niantic en hun alleen.
Het is nagenoeg onmogelijk om een Internet spel 100% af te schermen, aangezien alle code om eventuele requests te doen bij de gebruiker staat (client). Het enige wat je vervolgens kunt doen is die beveiliging zo complex maken dat het veel tijd kost om te kraken. In dit geval dus 3 dagen. Aangezien het ondoenlijk is om elke 3 dagen een nieuwe update in de app-store te pushen, enkel om de API beveiliging te veranderen, is het een lastig probleem om op te lossen.

Als we allemaal gebruik zouden maken van een omgeving waarop de gebruiker geen toegang had tot de broncode van de applicatie, dan is er nog een kans om het langer geheim te houden. KIjk naar de consoles, waar het meestal wel even duurt voordat er een hack beschikbaar komt. Maar dat is met het huidige appstore ecosysteem natuurlijk niet mogelijk.
Dat klopt inderdaad.. Murphy's law is ter alle tijden toepasbaar.

Ik denk alleen wel dat het een bedrijfskundige beslissing is geweest om bij de eerste start gewoon zoveel mogelijk aan te hebben staan, zonder dit pro-actief goed te reviewen. Bedrijfskundig een slimme beslissing. Persoonlijk sta ik er niet achter, maar ik weet ook dat ik nooit (met goed hart) op zo'n manier een hype zal kunnen maken.

Eigenlijk was mijn punt alleen, dat je deze 'last' niet op Team Unknown of whatever moet plaatsen. Hoofdregel met dit soort projecten.. als er meer dan 100 man gebruik van maakt, ga er maar vanuit dat elk gat gevonden wordt.
Sommige mensen, of zelfs heel veel mensen, doen belachelijk veel moeite om lullige foutjes te vinden.. Al staat er ergens 10,90 ipv 10,91 en je zult hele massa's aan Social Media berichten voorbij zien komen. (de meeste mensen willen erg graag aandacht)

/ uit ervaring het bovenstaande
Tracking heeft bij mij nooit goed gewerkt.
Jammer dat dit ten koste gaat van ons, de eerlijke gebruiker..
Tracking systeem, volledig weg nu.. gelukkig zijn er nog alternative sites..
Je snapt dat die 'alternatieve' websites net zo goed gebruiken maken van de API? Ook jij de 'eerlijke gebruiker' helpt er dus aan mee.
De eerlijke gebruiker? Stuurt Niantic niet waarschuwingsberichten die PoGo spelen op de fiets of in de auto daar dit niet de bedoeling is.
De eerlijke gebruiker? Stuurt Niantic niet waarschuwingsberichten die PoGo spelen op de fiets of in de auto daar dit niet de bedoeling is.
Nee, want ik krijg deze berichten ook als ik gewoon thuis op de bank zit.
De waarschuwingen zijn eenloze kreet, iedereen ziet afwisselend een regeltje tekst verschijnen.
De app kijkt helemaal niet of ik loop, rij of vaar, er komt gewoon te staan dat het gevaarlijk kan zijn ...
(met de fiets bv.. komen de pokemon's bijna niet meer in je gezichtsveld
Mooie bijkomstigheid wat mij betreft. Ik ben al een aantal keer bijna omver gefietst door idioten die niet door hebben dat je je aandacht op de weg moet houden in het verkeer. Dit mogen ze zo houden, komt de verkeersveiligheid alleen maar ten goede.
Ik hoop dat je een boete krijgt : op de fiets pokkemon.
Ik zelf speel geen pokemon op de fiets, fietsen is iets wat ik amper doen :-)
De hele reden dat die "tracking apps" opeens zo populair werden is vanwege dat de ingebouwde "tracker" met de 1/2/3 voetstappen al na de 2e dag na de Nederlandse release stopte met werken.
In het begin was het nog wel mogelijk om met deze methode (en door te kijken naar veranderingen van de volgorde van de "nearby" lijst) naar je gewenste Pokémon toe te lopen. Het was een soort "warmer warmer, kouder, warmer heter gloeiendheet, gevonden" spelletje.

Nu als je op je app ziet dat er een super zeldzame Pokémon in de buurt is kan je met geen mogelijkheid erachter komen waar deze te vinden is. Dit wekt nogal veel frustraties op aangezien je weet dat deze in de buurt is, maar deze zo'n 70 meter in alle richtingen kan zitten.
Om dan in de paar minuten voordat zo'n beest verdwijnt 2Pi*70=439.82 m2 systematisch uit te kammen is te voet niet te doen.

In de huidige staat is Pokémon Go een gok kast geworden, aangezien je nooit weet waar je tegenaan zal lopen. Eerder was het een soort spoorzoekertje spelen.

Hoewel de tools die op reddit gemaakt zijn "tegen" de ToS zijn van Niantic, maken ze het spel een stuk meer speelbaar. Het is nu hopen dat Niantic de tracking functionaliteit weer herstelt zoals het was rond de release, dan zijn die tools ook niet meer nodig.
Tevens is het nog steeds een gemiste kans dat ze niet AR gebruiken voor het vinden van Pokémon, door mensen door hun telefoon heen te laten kijken om te zien waar ze in de verte zitten.

[Reactie gewijzigd door rvdm88 op 8 augustus 2016 23:34]

Op zich vind ik het wel het probleem als het allemaal trager wordt.
Maar met de fiets pokemons vangen lijkt me niet echt goed voor de verkeersveiligheid.
1 oordopje in, fietsen tot je een geluidje hoort, en dan langs de kant van de weg gaan stoppen.
is best veilig zo.
Ja, misschien wel ja, maar de praktijk blijkt toch anders..
Als je eerst omkijkt of er iemand achter je fiets ja. Vorige week bovenop iemand geklapt die plotseling in de noodremmen ging om een Pokémon te vangen. Gewoon op het fietspad. Het is niet veilig om deel te nemen aan het verkeer en met wat dan ook bezig te zijn. Of het nou een berichtje versturen of een spelletje is.
Het aantal spontaan stoppende mensen is extreem toegenomen. Desalniettemin, als iemands pet afwaait, sleutels, portemonnee of iets dergelijks valt gaat diegene ook instantly op de rem. Sowieso verstandig om voldoende afstand aan te houden.
Het is een kwestie van even wennen aan de nieuwe realiteit.
Alleen ziet een achterligger dat gebeuren; die kan dus anticiperen.
Iemand die met een dopje in zijn oor ineens in de remmen vliegt, vertoont 'vreemd' gedrag. Daar valt niet tegenop te anticiperen...
De mensen die op de fiets Pokémon vangen zijn nog erger dan die fietsers die zitten te bellen op de fiets. Nu heb je al helemaal geen ogen meer op de weg. Vind het erg kansloos als iemand Pokémon speelt op de fiets.

Ga dan lekker lopen, of ga fietsend naar de plek waar vaak lures gebruikt worden (bij ons is er één plek in de haven waar het elke avond druk is met Pokémon spelers) en ga daar dan vervolgens het spel spelen.
Telefoon in mn borstzak van mn jas. Makkelijk te pakken als mn telefoon trilt vvanwege een gespawnde pokemon. Dan natuurlijk wel naar de kant om de pokemon te vangen. Zo blijft het redelijk veilig.
Klopt, maar zo hoort het ook. Ik zie zelfs lui op scooters met hun telefoon pal voor hun gezicht ineens uit moeten wijken omdat ze niet meer verwachten dat er ook nog anderen op een fietspad rijden/fietsen. En dan is het einde toch echt wel zoek. Je zou daar maar fietsen en zo'n halvegare rijdt je met 40+ km/u ondersteboven.
Wanneer je een API reverse engineered dan begin je met het maken van een lijstje van alle variabelen en bijhorende waardes die naar een bepaalde URL worden gestuurd, zoals hier:

Unknown1: "MyName"
Unknown2: 18
etc. etc.

Later in het proces kom je er (meestal door logisch na te denken of patronen te herkennen) achter dat Unknown1 eigenlijk de username is en Unknown2 de user level. Van variabele Unknown6 wisten ze niet zeker waarvoor het was tot de afgelopen update van Pokemon GO. Toen bleek dat deze variabele een soort checksum is om enkel toegang aan de daadwerkelijke app te geven. Vandaar de naam "Team Unknown6".
De App zelf heeft Unknown6 altijd al meegestuurd naar de server. De waarde werd in het verleden alleen nog niet gevalideerd en null meesturen was voldoende.

Sinds kort is de server dit dus wel actief gaan valideren, dit heeft ervoor gezorgd dat deze checksum reverse engineered moest gaan worden.
Kan dus ook best zo zijn dat er een heel aantal cheaters geflagged zijn voor een ban op een later moment?
Grote kans, echter de meeste die de API gebruiken maken gebruik van een wegwerp account voor het verkrijgen van informatie in plaats van hun spel account.
En nu maar hopen dat ze via machine learing kunnen achterhalen welke unknown6 variabelen van bots afkomen en welke niet. Kunnen ze makkelijk de bots bannen.
Kunnen ze beter kijken naar het gedrag van de clients zelf. De map scan bots lopen meestal met 50 km/h een vast patroon en vangen geen pokemons en gebruiken geen pokestops.
Zal wel wat moeilijker zijn dat dit, ze kunnen bv inprogrammeren dat hij 1 op de 50 wel vangt, en dan is het al moeilijker te onderscheiden. Een paar van deze truukjes en de bot is lastig te zien.

Mij lijkt het eerder iets als x requests vanaf een bepaald ip / range?
Een beetje randomizen en realistischere waardes gebruiken, en dat is al een heel stuk lastiger.
Dat klopt, alleen doet 99% van de bots dat nog niet.
Helaas kan de bot dit dus wel. Ze pakken pokemons, gebruiken pokestops, doen exact hetgeen wat een normale gebruiker ook doet... Verschil is alleen dat de bot nog net geen gyms aanvalt (hoewel dit gedrag ook ingeprogrammeerd kan worden, maar men doet dit niet uit ethische overwegingen).

De enigste reden waarvoor je iemand kunt bannen is door een ongeldige "Unknown6" mee te sturen. Je stuurt dan de pokemon versie + een hoop sensorgegevens mee naar de server, die dan bekijkt of je daadwerkelijk wel pokemon speelt. Komen de sensorgegevens niet overeen met wat de server denkt dat jij doet, dan krijg je een mooie ban. En reken maar dat dit niet de eerste keer is dat Niantic besluit om botgebruikers te bannen. Het is nog net niet dat je IMSI code wordt meegestuurd, maar in het verleden werd wel hardware informatie van je telefoon meegestuurd om niet alleen jou, maar ook al je bots te bannen...

EDIT: Ik ga hier geen namen geven, maar het is een veelgebruikte bot op github, met redelijk wat downloads...

[Reactie gewijzigd door mr_seeker op 8 augustus 2016 13:51]

Een groep ontwikkelaars heeft onder de naam 'Team Unknown6' waarom niet gewoon Team Rocket ? :+
Omdat unknown6 het veld was wat zorgde voor de breaking change.
Unknown6 is een veld wat al sinds het begin door de pokemonGo app aan serverrequests werd meegegeven.

Voorheen werd dit door de server echter genegeerd, de PokeGo "bot" APIs gaven hier daarom gewoon null aan mee.

Sinds een paar dagen is de server dit wel actief gaan valideren, en nu moesten de Bot APIs dit "unknown6" veld wel mee kunnen geven.

In POGOprotos, een repository wat de Protobuffers van de NianticAPI abstraheerde is hier een issue voor aangemaakt.
Omdat Pokemon Go zo groot is, kwamen hier heel veel mensen bij kijken die hier niks te zoeken hadden.

De mensen die wel actief aan de Unknown6 handshake meewerkten, hebben zichzelf dan ook "Team Unkown6" genoemd.
Heerlijk zo dat nieuws, ping-pong-ping-pong. Niantic-Users-Niantic-Users... benieuwd wat Niantic nu gaat doen, en wat daarop weer de reactie van de users zijn. :)
Het is eigenlijk een schoolvoorbeeld van hoe het niet moet: Niantic is verwikkeld in een battle met (een deel van) haar eigen community, terwijl Niantic afhankelijk is van deze community. In de perfecte wereld zou Niantic met aandacht luisteren naar de klachten en binnen enkele weken een aantal van deze klachten proberen op te lossen met een goede update. In plaats daarvan focussen ze zich alleen maar op de serverstress (die al grotendeels weg was voor de update) en geven ze de community de schuld hiervan. Als kers op de taart verwijderen ze dan ook nog de functionaliteit die juist aanwezig moet zijn om een alternatief te bieden op de community workarounds zoals Pokevision en is er geen echt nieuwe functionaliteit toegevoegd om de community zoet te houden.
Tja, maar dan moet de community deze mensen wel de kans geven om de problemen ook daadwerkelijk op te lossen.. Het is mogelijk geen groot team dat het spel zelf maakt, mensen hebben maar 2 handen en kunnen ook niet 24/7 bezig blijven (ook deze mensen mogen rust hebben).. En als de functionaliteiten totaal niet naar behoren werken, maar je kunt ze niet op korte termijn oplossen, dan is het beter om ze tijdelijk te verwijderen.
Dat bepaalde functionaliteiten niet fatsoenlijk werken op redelijk standaard devices (als in, maar heel weinig verschillende types) zoals de iPhone vind ik dan wel weer frapant..
Betere communicatie richting community zou wel goed zijn, dat neemt vaak al een hoop onrust weg..
Zeker als het geen groot team is, dan lijkt me de game belangrijker, dan het verhinderen van kaartmakers / cheaters.
Ja ze zijn vervelend, maar als ze de game op zich zo laten ( geen duidelijke hints in de buurt, serverlast ) dan haken de reguliere gebruikers af, de gebruikers die eigenlijk de 'opbrengst' binnenbrengen
Maar als die kaartmakers/cheaters zo'n grote belasting op de servers leggen, dan moet je wel..
Ik begrijp het wel, maar het overgrote deel is de afwezigheid van speelbare locatie.
Je ziet een pokemon, in de buurt, maar dat kan 3km2 bevatten ....
Dan vergaat de lol al snel, als je het niet kan vinden.

Dus een kip / ei situatie, omdat de ontwikkelaar het niet ( goed ) voor elkaar krijgt, komen er externe hulpjes ...
En daardoor moet het team weer afwijken.

Er moet een prioriteit gesteld worden, maar imho is het afvangen van de 'cheaters' net de oplossing, misschien is externe 'hulp' uit de community iets, kennelijk zijn er meer mensen op de hoogte van de technieken ?
Prima, heeft die "community" dan ook die paar weken geduld om gewoon met fatsoen te wachten op een nette update?

NEE. Men gaat met het breekijzer aan de gang, puur om de zin door te drukken. En hierdoor duren updates alleen maar langer.
Hadden ze dan niet in de eerste plaats een fatsoenlijk product moeten leveren en dit anders kunnen verwachten? Ik denk dat ze blij moeten zijn dat de app niet betaald is, want dan zouden veel mensen denk ik hun geld terug willen hebben ;).
"Hadden ze dan niet in de eerste plaats een fatsoenlijk product moeten leveren en dit anders kunnen verwachten?"

Nee, niet op deze schaal. De meeste app developers bouwen geen infrastructuur voor een paar miljoen concurrent users. Niemand had dit success kunnen verwachten, en daarom vind ik het overdreven om nu met het vingertje te wijzen, als wijsheid achteraf.
Je lijkt je aan te sluiten bij Niantic en alleen maar te kijken naar de performanceproblemen door de infrastructuur die niet berekent was op miljoenen gebruikers. Echter zijn de problemen een stuk breder dan dat en deze problemen zouden ook al op spelen bij enkele users (bijvoorbeeld de "nearby / sighting"-functionaliteit die niet goed werkt en zelfs na de patch van vandaag nog niet goed uitgedacht is). Dit soort dingen horen overna gedacht te worden tijdens de designfase van een app of op z'n laatst tijdens een alfa, beta of RC-release waarbij feedback gevraagd wordt aan de testers. Dus niet een maand na het uitbrengen van de game...
De infrastructuur is al aanwezig, men heeft drie jaar kunnen testen met Ingress.
Opschalen van capaciteit is tegenwoordig relatief eenvoudig.

Je moet uiteindelijk investeren om iets te verdienen natuurlijk.
Gewoon, bans uitdelen. In het artikel staat al dat Niantic het eenvoudig kan controleren. Net als bij Ingress laten ze dit een paar weken gaan, dan in één keer duizenden gebruikers eruit.
Wie gaan ze bannen? Die puppet accounts die de API misbruiken? Daar gaan ze niet veel mee winnen vrees ik. Daar worden gewoon nieuwe voor aangemaakt.
Ik vermoed in eerste instantie accounts die 24u 'aan het wandelen zijn ( als zijnde spelers )
Niemand 'loopt' 24uur per dag, en dan dagen aan een stuk :+

< jammer voor die account sharer, want OOK dat lijkt me niet de inzet van de game >
Daarom gebruik je de scanner ook niet met je eigen account, maar met een dummy account ;) Bannen heeft dus geen enkele zin.
Als ze daarna iedere 24 uur geband worden of ban op basis van IP of device dan vallen er al veel af hoor. Die paar die dan nog doorzetten hou je altijd.
Gelukkig is het technisch gezien onmogelijk om een client toegang te ontzeggen tot een API (die public gebruikt wordt), zolang je de client maar perfect kan emuleren.

Natuurlijk kan je het moeilijker maken om de client na te maken, of restricties opleggen zoals een traffic throttle, maar er blijven altijd manieren om hier omheen te werken

[Reactie gewijzigd door Yaminike op 8 augustus 2016 11:52]

Is het ook niet dicht te timmeren met encryptie? Dan word het toch wel erg lastig om reverse engineering uit te voeren. Of heb ik dat mis?
In dit geval zal er altijd een key aanwezig zijn in de code of het geheugen van de client. Deze kan je altijd terug vinden met behulp van reverse engineering. De enigste reden om encryptie toe te passen is er om ervoor te zorgen dat de verbinding veilig verloopt (bijv. SSL). Want zolang jij de client code (gecompiled wellicht) in bezit hebt, kan je het altijd namaken (kost natuurlijk wel wat moeite)
Er werd al encryptie gebruikt. Voor deze implementatie was het dus iets lastiger om de requests af te kunnen vangen om ze na te kunnen maken, maar met een geroot of gejailbreakt toestel houdt weinig je tegen.
Je heb een account nodig om de API aan te kunnen spreken. Een account die regelmatig requests stuurt maar 0 vooruitgang maakt is volgens mij niet zo moeilijk te detecteren. Je zou ook je eigen account kunnen gebruiken, maar dan krijg je 2 requests te verwerken van dezelfde account, 1 van de tracker en 1 van de client met het risico dat ze je zien.

Anderzijds is Pokémon go zonder tracker niet echt fun te noemen. Gisteren nog eens de proef op de som genomen. Een heel stuk gewandeld waar niet veel spawns gebeuren. Je eieren hatchen dan wel, maar je hebt een magere vangst. En als het de bedoeling is om buiten te komen en beweging te hebben dan ga je er niet zo snel op vooruit als de mensen die voor optie 2 kiezen.

Dat is gaan zitten op een locatie waar 3 tot 4 pokestops elkaar overlappen waar veel volk zit en constant lures actief zijn. Dan ben je zo een beetje een levende farm bot. Zelfs met tracker is het best pittig om soms een interessante pokemon te pakken te krijgen omdat je maximaal 15 minuten de tijd hebt.

Ik ga de nieuwe versie straks installeren.
Moet je hiervoor betalen? Of is deze vrij voor iedereen beschikbaar? Zou je me deze kunnen linken in een dm?
Certificate pinning en 100% SSL communicatie zal het een heel stuk lastiger maken. Doe er nog een time-based encryptie bij en ik wens je veel succes.
En omdat Niantic volledige controle over de clients heeft, kunnen ze hier ook aanpassingen op uitvoeren. Blijft wel dat het erg lastig is om op Android het zo te ontwikkelen dat het onmogelijk is om te reverse engineeren.

Als ze al initieel met zulke maatregelen gestart waren, dan hadden ze minder last van die illegale clients. Met de kennis die ze met Ingress hebben opgedaan, verbaas ik mij dat ze daar al niet mee zijn begonnen.
Dat is echt niet alleen op Android zo, ook op iOS, want voor elke versie is er nog wel een hack..
Aantal kennissen hebben hun accounts flink geboost mbv een bot. De lol van het spel is voor eerlijke spelers ook een stuk minder geworden, als je weet dat er zoveel cheaters zijn. Zal Niantec dit kunnen traceren, ook als zij geen gps hack hebben gebruikt? Ik hoop dat zij het kaft van de koren kunnen scheiden..
Alle gyms hier zijn sowieso gevuld met 1300+ cp Pokemon van legitieme spelers dus echt veel lol is er sowieso niet aan voor beginners in de grote steden. Beetje beestjes vangen als je toevallig toch onderweg ben maar that's it.

Ruilen schijnt eraan te komen en we kunnen hopen op speler op speler battles. In Ingress kan je als beginner nog een hoop meer impact maken met mods, links en veel portals die laag level blijven ivm het vereisen van 8 spelers voor een top level portal.
Ja hier in Leiden en Amsterdam zitten de de gyms in de hoogste stage vaak gevuld met lvl30 en 2500 cp pokemons.

Ze zouden toch echt eerst alle botters aan moeten pakken, anders kan je 'gebotte' pokemons witwassen door ze te laten transferen naar een legitieme account.
Ik hoop dat ze met ruilen nog wel even gaan wachten tot ze een goede oplossing voor de cheaters hebben. Anders zijn de Pokemon waarschijnlijk snel vaker van persoon gewisseld.

Nu vind ik 1300+ cp nog niet bijzonder veel. Ik speel het spel niet heel erg actief en pas twee weken en ik heb een Pokemon van boven de 900 cp, dan is 1300+ voor een actieve speler die nu vakantie heeft en de dag lang Pokemon aan het vangen is helemaal niet zoveel.

Ik zou ook niet weten hoe je het spel interessant kun houden voor mensen die minder tijd hebben. Er zijn vast mogelijkheden maar ik zie ze ook niet. Het punt is dat om competitief te zijn in het spel, je echt moet meedoen aan gymbattles. Misschien helpt het al als er een regionale chat van de drie teams komt, dan kun je met anderen afspreken om samen de gym te pakken om 19:00 bijvoorbeeld.
Ben nu level 23, een CP van 1300 stelt niks voor en je hebt ook absoluut geen bots nodig om dat te bereiken.. Als je gyms wilt overnemen worden Pokemon pas interessant als ze een CP richting de 2000 hebben (grotere kans dat ze blijven staan). Wat ook prima zonder bots te behalen is als je er maar genoeg tijd insteekt (levelen, power-uppen).
Zo lang ze onder de noemer 'bug" proberen Pokéballs te slijten, doe ik niet meer mee.

Niet omdat voor mij per sé alles gratis moet zijn aan zo'n game maar wel omdat het gewoon irritanter is geworden.
Zelfde actie --> willekeurige uitkomst heeft maar zelden een game leuker gemaakt.
Kijk, en zo zat ik te denken om extra lures en incense te kopen, maar daar wacht ik mee tot deze "bug" weer gerepareerd is. Kost me nu teveel balletjes voor simpele pokemon.
En me de hele dag ophouden bij een pokestop ben ik toch echt te oud voor, of het moet bij mijn werkadres van de dag zijn.
Daarbij heb ik ook niet zoveel tijd en word het dan idd lastig om fatsoenlijk te levellen.
Ik kies 's avonds gewoon een terrasje uit in de buurt van een Pokestop, Pokemon spelen voor volwassenen met een biertje erbij :+
Dit klinkt misschien bizar, maar volgens mij had Niantic er beter aan gedaan om een API call te implementeren die gewoon alle pokemons in een bepaald vierkantje retourneert (super goedkoop op de database). Dan voorkom je al die scan requests die nu moeten worden gedaan en je ontkomt er toch niet aan dat mensen die soort tools gebruiken. Ik bedoel maar, hun crusade tegen dergelijke tools rechtvaardigen ze op basis van de server problemen op dit moment, dus als dat de hoofd reden is dan zou een dergelijke API aanbieden veel slimmer zijn. En als het hoofddoel is om 'cheaters' tegen te gaan dan kunnen ze liever het hele spel van scratch herstarten (en dan waarschijnlijk twee varianten in parallel opstarten voor mensen die met en zonder kaart willen spelen, denk dat de overgrote meerderheid gewoon eerlijk z'n variant zou kiezen (met dan de mogelijk om te migreren naar de 'met' variant)), want op dit moment is het simpelweg te laat om nu pas een kat en muis spel te beginnen (wat Niantic altijd zal verliezen). Vooral omdat de groep die een kaart wilt gebruiken veel en veel groter is dan de standaard groep 'cheaters'.
Zover ik weet is dat exact wat de huidige API doet: alle Pokemons lat/long geven vanaf een bepaalde punt en radius (waarbij de radius volgens mij hard vastligt aan de kant van de API).
Klopt, het verschil tussen een normale speler en bot is alleen dat de bot steeds dat kleine vierkantje (of cirkel) scant op een iets andere plek om zo een totaaloverzicht te krijgen van de locaties van Pokemon (dus heel veel requests in vergelijking met de normale gebruiker).

Daarnaast zou het uitrekenen van de afstand tussen de gebruiker en de Pokemon zoveel stress op de server hebben gezet dat deze functie uitgezet zou zijn (vandaar dat je voor de update altijd "drie voetjes" zag). Echter hebben ze blijkbaar niet erover nagedacht om voor alle teruggeven Pokemon in de API-request deze afstand uit te rekenen op het apparaat van de client (geen serverstress en de berekening is niet heel complex / zwaar voor een mobiel apparaat). In plaats daarvan hebben ze gewoon de hele functionaliteit er maar uit gehaald wat in mijn ogen wel wat zegt over de kwalitieit van het dev-team van Niantic...
Het zegt waarschijnlijk meer iets over de kwaliteit van het management daar dat onder extreme stress moet beslissen wat hun developers moeten doen en in welke volgorde. En volgens mij gaan ze daar extreem de minst in, maar goed, ik denk niet dat je op basis daarvan iets kunt zeggen over het dev team. Neem zo iets als die Unknown6 signature, voor een ding dat bedoeld was om obscuur te zijn hebben ze een best prima ding in elkaar geknutseld, punt is alleen dat ze die tijd aan veel nuttigere dingen hadden kunnen besteden en de server problemen dus op veel makkelijkere manieren kunnen oplossen (bijv. zoals ik omschreef in m'n vorige comment).
Nu nog wachten welke radar het als eerste weer fatsoenlijk doet door dit toe te passen.

Zijn er nu überhaupt al radars die weer goed werken?
Leuk dat je op je zolderkamertje aan de slag gaat met reverse engineering van een API, terwijl Niantic duidelijk heeft gemaakt dat ze hier niet van gediend zijn en het dan alsnog publiekelijk uitbrengen...

Het is alsof je graag een rechtzaak tegen je aangespand wilt krijgen 8)7
En daarom was reverse engineering legaal in Australië en is t daar gehodt geworden 😆😇😉

Op dit item kan niet meer gereageerd worden.



Nintendo Switch Google Pixel Sony PlayStation VR Samsung Galaxy S8 Apple iPhone 7 Dishonored 2 Google Android 7.x Watch_Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True