-
Member
Sorry I'm NOOB,.. but where is the startup project?
-
Originally Posted by
Plawed
What makes v3 special? the fact ppl wont get banned right away anymore?
And Timestamps and some crash fixes.
-
Post Thanks / Like - 3 Thanks
-
Member
Originally Posted by
senseirain
Sorry I'm NOOB,.. but where is the startup project?

PokemonGo\RocketAPI\Console\bin
-
Member
Neer, i know its dumb and simple, but i see some ppl asking for how many pokestops / pokemons they got since the start of the bot. So i made the modification, i know you wont put it on the "nightlies" but for who wants this just change Program.cs to this:
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Google.Protobuf;
using PokemonGo.RocketAPI.Enums;
using PokemonGo.RocketAPI.Extensions;
using PokemonGo.RocketAPI.GeneratedCode;
using PokemonGo.RocketAPI.Helpers;
namespace PokemonGo.RocketAPI.Console
{
class Program
{
private static int s = 1;
private static int p = 1;
static void Main(string[] args)
{
Task.Run(() => Execute());
System.Console.ReadLine();
}
static async void Execute()
{
var client = new Client(Settings.DefaultLatitude, Settings.DefaultLongitude);
if (Settings.UsePTC)
{
await client.LoginPtc(Settings.PtcUsername, Settings.PtcPassword);
}
else
{
await client.LoginGoogle(Settings.DeviceId, Settings.Email, Settings.LongDurationToken);
}
var serverResponse = await client.GetServer();
var profile = await client.GetProfile();
var settings = await client.GetSettings();
var mapObjects = await client.GetMapObjects();
var inventory = await client.GetInventory();
var pokemons = inventory.Payload[0].Bag.Items.Select(i => i.Item?.Pokemon).Where(p => p != null && p?.PokemonId != InventoryResponse.Types.PokemonProto.Types.PokemonIds.PokemonUnset);
await ExecuteFarmingPokestopsAndPokemons(client);
//await ExecuteCatchAllNearbyPokemons(client);
}
private static async Task ExecuteFarmingPokestopsAndPokemons(Client client)
{
var mapObjects = await client.GetMapObjects();
var pokeStops = mapObjects.Payload[0].Profile.SelectMany(i => i.Fort).Where(i => i.FortType == (int)MiscEnums.FortType.CHECKPOINT && i.CooldownCompleteMs < DateTime.UtcNow.ToUnixTime());
foreach (var pokeStop in pokeStops)
{
var update = await client.UpdatePlayerLocation(pokeStop.Latitude, pokeStop.Longitude);
var fortInfo = await client.GetFort(pokeStop.FortId, pokeStop.Latitude, pokeStop.Longitude);
var fortSearch = await client.SearchFort(pokeStop.FortId, pokeStop.Latitude, pokeStop.Longitude);
var bag = fortSearch.Payload[0];
System.Console.WriteLine($"{s++} - Farmed XP: {bag.XpAwarded}, Gems: { bag.GemsAwarded}, Eggs: {bag.EggPokemon} Items: {GetFriendlyItemsString(bag.Items)}");
await ExecuteCatchAllNearbyPokemons(client);
await Task.Delay(15000);
}
}
private static async Task ExecuteCatchAllNearbyPokemons(Client client)
{
var mapObjects = await client.GetMapObjects();
var pokemons = mapObjects.Payload[0].Profile.SelectMany(i => i.MapPokemon);
foreach (var pokemon in pokemons)
{
var update = await client.UpdatePlayerLocation(pokemon.Latitude, pokemon.Longitude);
var encounterPokemonRespone = await client.EncounterPokemon(pokemon.EncounterId, pokemon.SpawnpointId);
CatchPokemonResponse caughtPokemonResponse;
do
{
caughtPokemonResponse = await client.CatchPokemon(pokemon.EncounterId, pokemon.SpawnpointId, pokemon.Latitude, pokemon.Longitude);
}
while(caughtPokemonResponse.Payload[0].Status == 2);
System.Console.WriteLine(caughtPokemonResponse.Payload[0].Status == 1 ? $"{p++} - We caught a {GetFriendlyPokemonName(pokemon.PokedexTypeId)}" : $"{GetFriendlyPokemonName(pokemon.PokedexTypeId)} got away..");
await Task.Delay(5000);
}
}
private static string GetFriendlyPokemonName(MapObjectsResponse.Types.Payload.Types.PokemonIds id)
{
var name = Enum.GetName(typeof (InventoryResponse.Types.PokemonProto.Types.PokemonIds), id);
return name?.Substring(name.IndexOf("Pokemon") + 7);
}
private static string GetFriendlyItemsString(IEnumerable<FortSearchResponse.Types.Item> items)
{
var sb = new StringBuilder();
foreach(var item in items)
sb.Append($"{item.ItemCount} x {(MiscEnums.Item)item.Item_}, ");
return sb.ToString();
}
}
}
-
Originally Posted by
Neer
And Timestamps and some crash fixes.
I wish I could use that with the PTC login
-
Originally Posted by
Neer
And Timestamps and some crash fixes.
awesome, I'll update it once v2 crashes again :P
-
Member
was running fine will V3, now softbanned
-
The PTC login one crashes every few hours, is there a way to use the Google Login version with the PTC login?
The Google Version seems to be a lot more stable
-
Member
this program is legit ? or is get Perma ban ?
-
Originally Posted by
Mew351
I wish I could use that with the PTC login

Download the Google one, change
public const bool UsePTC = true; // This should be true.
and edit with your PTCusername and ptcpassword and your location, you will get everything that they have.
-
Post Thanks / Like - 1 Thanks
WoWSondermüll (1 members gave Thanks to Neer for this useful post)
-
Master Sergeant
Originally Posted by
Neer
And Timestamps and some crash fixes.
I downloaded and compiled v3.
Working fine atm but there is no timestamps.
EDIT: ok timestamps works bot only with pokestops notifications.
Last edited by pinn90; 07-20-2016 at 01:20 AM.
-
Member
Neer quick question I'm set to AU right now if I changed my coordinates to US will I get softbanned?
-
Member
So I used v3 on my fake google account and it worked fine
but when I try my PTC login on my other fake account using the PTC bot I just get a black console with no text and nothing happening
-
Member
Are your guys' bot actually catching the pokemon? I'm hitting all the pokestops but getting no pokemon
-
Master Sergeant
Whoa v3 just caught 14 pokemons in 2min wtf.
0 runs away XD