Press Alt+G
// ==UserScript==
// @name CookieClickerHack
// @namespace CCH
// @version 0.1
// @description Press Alt+G
// @match http://orteil.dashnet.org/cookieclicker/*
// @grant none
// @include http://orteil.dashnet.org/cookieclicker/*
// ==/UserScript==
function base64_decode( data ) { // Decodes data encoded with MIME base64
//
// + original by: Tyler Akins (http://rumkin.com)
var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
do { // unpack four hexets into three octets using index points in b64
h1 = b64.indexOf(data.charAt(i++));
h2 = b64.indexOf(data.charAt(i++));
h3 = b64.indexOf(data.charAt(i++));
h4 = b64.indexOf(data.charAt(i++));
bits = h1<<18 | h2<<12 | h3<<6 | h4;
o1 = bits>>16 & 0xff;
o2 = bits>>8 & 0xff;
o3 = bits & 0xff;
if (h3 == 64) enc += String.fromCharCode(o1);
else if (h4 == 64) enc += String.fromCharCode(o1, o2);
else enc += String.fromCharCode(o1, o2, o3);
} while (i < data.length);
return enc;
}
function base64_encode( data ) { // Encodes data with MIME base64
//
// + original by: Tyler Akins (http://rumkin.com)
// + improved by: Bayron Guevara
var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
do { // pack three octets into four hexets
o1 = data.charCodeAt(i++);
o2 = data.charCodeAt(i++);
o3 = data.charCodeAt(i++);
bits = o1<<16 | o2<<8 | o3;
h1 = bits>>18 & 0x3f;
h2 = bits>>12 & 0x3f;
h3 = bits>>6 & 0x3f;
h4 = bits & 0x3f;
// use hexets to index into b64, and append result to encoded string
enc += b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
} while (i < data.length);
switch( data.length % 3 ){
case 1:
enc = enc.slice(0, -2) + '==';
break;
case 2:
enc = enc.slice(0, -1) + '=';
break;
}
return enc;
}
function getmorecookie(){
ta=base64_decode(Game.WriteSave(1).replace(/%3D/g,'').replace(/%21END%21/g,''));
ta=ta.replace(/([^\|])\|([\w.e+]+);/,function(a,b,c){
return b+'|'+(Number.MAX_VALUE)+';';
});
ta=base64_encode(ta)+'%21END%21';
Game.LoadSave(ta);
Game.WriteSave();
};
document.addEventListener('keydown',function(e){
if(e.which==71 && e.altKey){
getmorecookie();
}
});