Yop a tous, pour ceux qui ne connaissent pas le jeu cookies clicker je vous conseil d'y jouer: Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
Et aujourd'hui en analysant la page j'ai vu qu'il était fait en javascript, Oh bonheur !
Et donc j'ai trouvé pas mal de petits script/fonctions qui permettent de tricher facilement sur ce jeu.
Pour rentrer les scripts ci dessous, fait clique droit sur la page du jeu puis Examiner l'élément, et allez dans l'onglet Console, ici vous collez un script et vous faites entrer ^^
Ces codes sont tirés du main.js :)
Voila ses fameux ch'tis scripts:
Pour débloquer tout les achievement:
Pour débloquer tout les upgrades:
Pour débloquer un achievement:
Pour ajouter des cookies:
(remplacez les 9 par la somme que vous voulez ^^)
Pour mettre des cookies:
(idem que pour le script juste avant)
Pour simuler l'appuis de cliques:
(vous pouvez changer le 1000000, mais attention le jeu se freeze mais continu de auto click, patientez juste ^^)
Se retirer des cookies:
Faire apparaître un golden cookie:
Activer l'effet de x7 pendant 77sec:
Faire apparaître le popup de la saison (la c'est le rêne):
Finir le jeu (cette fonction a vraiment été codé par le créateur du jeu xD)!
Faire apparaître un message en bas:
Ajoutez une news personnalisé:
Bonus !
Si vous regardez dans le menu du jeu vous avez une fonction import et export, si vous faites import vous obtenez une clé.
Cette clé contient en réalité toutes vos données mais crypté en base64.
Je vous met les fonctions import/export officiels:
Vous vous demandez surement a quoi ca peux vous servir ?
Pour ceux qui veulent, vous pouvez vous amusez a changer vos stats par ce moyens, il vous suffit d'utiliser l’algorithme de décodage, voir comment ca fonctionne, changer ce que vous voulez, et re encrypter pour importer votre clé cheaté :D
Pour l'instant j'ai pas eu le temps de vous faire une clé avec tous les stats a fond je la ferais surement un peu plus tard ^^
Enjoy.
Et aujourd'hui en analysant la page j'ai vu qu'il était fait en javascript, Oh bonheur !
Et donc j'ai trouvé pas mal de petits script/fonctions qui permettent de tricher facilement sur ce jeu.
Pour rentrer les scripts ci dessous, fait clique droit sur la page du jeu puis Examiner l'élément, et allez dans l'onglet Console, ici vous collez un script et vous faites entrer ^^
Ces codes sont tirés du main.js :)
Voila ses fameux ch'tis scripts:
Pour débloquer tout les achievement:
Code:
for (var i in Game.AchievementsById)
{
var me=Game.AchievementsById[i];
me.won=1;
Game.Popup('Achievement unlocked :<br>'+me.name+'<br> ');
if (me.hide!=3) Game.AchievementsOwned++;
Game.recalculateGains=1;
}
Pour débloquer tout les upgrades:
Code:
for (var i in Game.UpgradesById)
{
var me=Game.UpgradesById[i];
me.unlocked=1;me.bought=1;
Game.Popup('Upgrade unlocked :<br>'+me.name+'<br> ');
Game.recalculateGains=1;
}
Pour débloquer un achievement:
Code:
Game.Win('Nom de achievement')
Pour ajouter des cookies:
Code:
Game.Earn(99999999999999999999)
Pour mettre des cookies:
Code:
Game.cookies=9999999999999999
Pour simuler l'appuis de cliques:
Code:
for (var iter = 0; iter < 1000000; iter++) {
Game.Earn(Game.computedMouseCps);
Game.handmadeCookies+=Game.computedMouseCps;
}
Se retirer des cookies:
Code:
Game.Spend(99999999999)
Faire apparaître un golden cookie:
Code:
Game.goldenCookie.spawn()
Activer l'effet de x7 pendant 77sec:
Code:
var time=77+77*Game.Has('Get lucky');
Game.frenzy=Game.fps*time;
Game.frenzyPower=7;
Game.recalculateGains=1;
Game.Popup('Frenzy : cookie production x7 for '+time+' seconds!');
Faire apparaître le popup de la saison (la c'est le rêne):
Code:
Game.seasonPopup.spawn()
Finir le jeu (cette fonction a vraiment été codé par le créateur du jeu xD)!
Code:
Game.RuinTheFun()
Faire apparaître un message en bas:
Code:
Game.Popup('Votre message')
Ajoutez une news personnalisé:
Code:
Game.Tickers='Votre news'
Bonus !
Si vous regardez dans le menu du jeu vous avez une fonction import et export, si vous faites import vous obtenez une clé.
Cette clé contient en réalité toutes vos données mais crypté en base64.
Je vous met les fonctions import/export officiels:
Code:
Game.LoadSave=function(data)
{
var str='';
if (data) str=unescape(data);
else
{
if (Game.mobile==1) {Game.m.readSaveRequest();return;}//get saved file here
else {if (document.cookie.indexOf(Game.SaveTo)>=0) str=unescape(document.cookie.split(Game.SaveTo+'=')[1]);}//get cookie here
}
if (str!='')
{
var version=0;
var oldstr=str.split('|');
if (oldstr[0]<1) {}
else
{
str=str.split('!END!')[0];
str=b64_to_utf8(str);
}
if (str!='')
{
var spl='';
str=str.split('|');
version=parseFloat(str[0]);
if (isNaN(version) || str.length<5) {Game.Popup('Oops, looks like the import string is all wrong!');return 0;}
if (version>=1 && version>Game.version)
{
alert('Error : you are attempting to load a save from a future version (v.'+version+'; you are using v.'+Game.version+').');
return 0;
}
else if (version>=1)
{
spl=str[2].split(';');//save stats
Game.startDate=parseInt(spl[0]);
Game.fullDate=parseInt(spl[1]);
Game.lastDate=parseInt(spl[2]);
spl=str[3].split('');//prefs
Game.prefs.particles=parseInt(spl[0]);
Game.prefs.numbers=parseInt(spl[1]);
Game.prefs.autosave=parseInt(spl[2]);
Game.prefs.autoupdate=spl[3]?parseInt(spl[3]):1;
Game.prefs.milk=spl[4]?parseInt(spl[4]):1;
Game.prefs.fancy=parseInt(spl[5]);if (Game.prefs.fancy) Game.removeClass('noFancy'); else if (!Game.prefs.fancy) Game.addClass('noFancy');
Game.prefs.warn=spl[6]?parseInt(spl[6]):0;
Game.prefs.cursors=spl[7]?parseInt(spl[7]):0;
spl=str[4].split(';');//cookies
Game.cookies=parseFloat(spl[0]);Game.cookiesEarned=parseFloat(spl[1]);
Game.cookieClicks=spl[2]?parseInt(spl[2]):0;
Game.goldenClicks=spl[3]?parseInt(spl[3]):0;
Game.handmadeCookies=spl[4]?parseFloat(spl[4]):0;
Game.missedGoldenClicks=spl[5]?parseInt(spl[5]):0;
Game.backgroundType=spl[6]?parseInt(spl[6]):0;
Game.milkType=spl[7]?parseInt(spl[7]):0;
Game.cookiesReset=spl[8]?parseFloat(spl[8]):0;
Game.elderWrath=spl[9]?parseInt(spl[9]):0;
Game.pledges=spl[10]?parseInt(spl[10]):0;
Game.pledgeT=spl[11]?parseInt(spl[11]):0;
Game.nextResearch=spl[12]?parseInt(spl[12]):0;
Game.researchT=spl[13]?parseInt(spl[13]):0;
Game.resets=spl[14]?parseInt(spl[14]):0;
Game.goldenClicksLocal=spl[15]?parseInt(spl[15]):0;
Game.cookiesSucked=spl[16]?parseFloat(spl[16]):0;
Game.wrinklersPopped=spl[17]?parseInt(spl[17]):0;
Game.santaLevel=spl[18]?parseInt(spl[18]):0;
Game.reindeerClicked=spl[19]?parseInt(spl[19]):0;
spl=str[5].split(';');//buildings
Game.BuildingsOwned=0;
for (var i in Game.ObjectsById)
{
var me=Game.ObjectsById[i];
if (spl[i])
{
var mestr=spl[i].toString().split(',');
me.amount=parseInt(mestr[0]);me.bought=parseInt(mestr[1]);me.totalCookies=parseInt(mestr[2]);me.specialUnlocked=parseInt(mestr[3]);
Game.BuildingsOwned+=me.amount;
}
else
{
me.unlocked=0;me.bought=0;me.totalCookies=0;
}
}
if (version<1.035)//old non-binary algorithm
{
spl=str[6].split(';');//upgrades
Game.UpgradesOwned=0;
for (var i in Game.UpgradesById)
{
var me=Game.UpgradesById[i];
if (spl[i])
{
var mestr=spl[i].split(',');
me.unlocked=parseInt(mestr[0]);me.bought=parseInt(mestr[1]);
if (me.bought && me.hide!=3) Game.UpgradesOwned++;
}
else
{
me.unlocked=0;me.bought=0;
}
}
if (str[7]) spl=str[7].split(';'); else spl=[];//achievements
Game.AchievementsOwned=0;
for (var i in Game.AchievementsById)
{
var me=Game.AchievementsById[i];
if (spl[i])
{
var mestr=spl[i].split(',');
me.won=parseInt(mestr[0]);
}
else
{
me.won=0;
}
if (me.won && me.hide!=3) Game.AchievementsOwned++;
}
}
else
{
if (str[6]) spl=str[6]; else spl=[];//upgrades
spl=UncompressLargeBin(spl);
Game.UpgradesOwned=0;
for (var i in Game.UpgradesById)
{
var me=Game.UpgradesById[i];
if (spl[i*2])
{
var mestr=[spl[i*2],spl[i*2+1]];
me.unlocked=parseInt(mestr[0]);me.bought=parseInt(mestr[1]);
if (me.bought && me.hide!=3) Game.UpgradesOwned++;
}
else
{
me.unlocked=0;me.bought=0;
}
}
if (str[7]) spl=str[7]; else spl=[];//achievements
spl=UncompressLargeBin(spl);
Game.AchievementsOwned=0;
for (var i in Game.AchievementsById)
{
var me=Game.AchievementsById[i];
if (spl[i])
{
var mestr=[spl[i]];
me.won=parseInt(mestr[0]);
}
else
{
me.won=0;
}
if (me.won && me.hide!=3) Game.AchievementsOwned++;
}
}
if (version<1.038)
{
Game.Achievements['Hardcore'].won=0;
Game.Achievements['Speed baking I'].won=0;
Game.Achievements['Speed baking II'].won=0;
Game.Achievements['Speed baking III'].won=0;
}
for (var i in Game.ObjectsById)
{
var me=Game.ObjectsById[i];
if (me.buyFunction) me.buyFunction();
me.setSpecial(0);
if (me.special && me.specialUnlocked==1) me.special();
me.refresh();
}
Game.ResetWrinklers();
/*//why was this here ?
Game.cookiesSucked=0;
Game.wrinklersPopped=0;
Game.santaLevel=0;
Game.reindeerClicked=0;
*/
Game.CalculateGains();
//compute cookies earned while the game was closed
if (Game.mobile || Game.Has('Perfect idling'))
{
var amount=((new Date().getTime()-Game.lastDate)/1000)*Game.cookiesPs;
if (amount>0)
{
Game.Popup('Earned '+Beautify(amount)+' cookie'+(Math.floor(amount)==1?'':'s')+' while you were away');
Game.Earn(amount);
}
}
}
else//importing old version save
{
/*
Game.startDate=parseInt(new Date().getTime());
Game.cookies=parseInt(str[1]);
Game.cookiesEarned=parseInt(str[1]);
for (var i in Game.ObjectsById)
{
var me=Game.ObjectsById[i];
me.amount=0;me.bought=0;me.totalCookies=0;
me.refresh();
}
for (var i in Game.UpgradesById)
{
var me=Game.UpgradesById[i];
me.unlocked=0;me.bought=0;
}
var moni=0;
moni+=15*Math.pow(1.1,parseInt(str[2]));
moni+=100*Math.pow(1.1,parseInt(str[4]));
moni+=500*Math.pow(1.1,parseInt(str[6]));
moni+=2000*Math.pow(1.1,parseInt(str[8]));
moni+=7000*Math.pow(1.1,parseInt(str[10]));
moni+=50000*Math.pow(1.1,parseInt(str[12]));
moni+=1000000*Math.pow(1.1,parseInt(str[14]));
if (parseInt(str[16])) moni+=123456789*Math.pow(1.1,parseInt(str[16]));
alert('Imported old save from version '+version+'; recovered '+Beautify(Game.cookies)+' cookies, and converted buildings back to '+Beautify(moni)+' cookies.');
Game.cookies+=moni;
Game.cookiesEarned+=moni;
*/
alert('Sorry, you can\'t import saves from the old version anymore.');
return;
}
Game.goldenCookie.reset();
Game.seasonPopup.reset();
Game.prestige=[];
Game.Upgrades['Elder Pledge'].basePrice=Math.pow(8,Math.min(Game.pledges+2,14));
Game.RebuildUpgrades();
Game.TickerAge=0;
Game.elderWrathD=0;
Game.frenzy=0;
Game.frenzyPower=1;
Game.clickFrenzy=0;
Game.recalculateGains=1;
Game.storeToRebuild=1;
Game.upgradesToRebuild=1;
Game.Popup('Game loaded');
}
}
}
Code:
Game.WriteSave=function(exporting)//guess what we'e using to save the game?
{
Game.lastDate=parseInt(new Date().getTime());
var str='';
str+=Game.version+'|';
str+='|';//just in case we need some more stuff here
str+=//save stats
parseInt(Game.startDate)+';'+
parseInt(Game.fullDate)+';'+
parseInt(Game.lastDate)+
'|';
str+=//prefs
(Game.prefs.particles?'1':'0')+
(Game.prefs.numbers?'1':'0')+
(Game.prefs.autosave?'1':'0')+
(Game.prefs.autoupdate?'1':'0')+
(Game.prefs.milk?'1':'0')+
(Game.prefs.fancy?'1':'0')+
(Game.prefs.warn?'1':'0')+
(Game.prefs.cursors?'1':'0')+
'|';
str+=parseFloat(Game.cookies).toString()+';'+
parseFloat(Game.cookiesEarned).toString()+';'+
parseInt(Math.floor(Game.cookieClicks))+';'+
parseInt(Math.floor(Game.goldenClicks))+';'+
parseFloat(Game.handmadeCookies).toString()+';'+
parseInt(Math.floor(Game.missedGoldenClicks))+';'+
parseInt(Math.floor(Game.backgroundType))+';'+
parseInt(Math.floor(Game.milkType))+';'+
parseFloat(Game.cookiesReset).toString()+';'+
parseInt(Math.floor(Game.elderWrath))+';'+
parseInt(Math.floor(Game.pledges))+';'+
parseInt(Math.floor(Game.pledgeT))+';'+
parseInt(Math.floor(Game.nextResearch))+';'+
parseInt(Math.floor(Game.researchT))+';'+
parseInt(Math.floor(Game.resets))+';'+
parseInt(Math.floor(Game.goldenClicksLocal))+';'+
parseFloat(Game.cookiesSucked).toString()+';'+
parseInt(Math.floor(Game.wrinklersPopped))+';'+
parseInt(Math.floor(Game.santaLevel))+';'+
parseInt(Math.floor(Game.reindeerClicked))+
'|';//cookies
for (var i in Game.Objects)//buildings
{
var me=Game.Objects[i];
str+=me.amount+','+me.bought+','+Math.floor(me.totalCookies)+','+(me.specialUnlocked?1:0)+';';
}
str+='|';
var toCompress=[];
for (var i in Game.Upgrades)//upgrades
{
var me=Game.Upgrades[i];
toCompress.push(Math.min(me.unlocked,1),Math.min(me.bought,1));
}
toCompress=CompressLargeBin(toCompress);
str+=toCompress;
str+='|';
var toCompress=[];
for (var i in Game.Achievements)//achievements
{
var me=Game.Achievements[i];
toCompress.push(Math.min(me.won));
}
toCompress=CompressLargeBin(toCompress);
str+=toCompress;
if (exporting)
{
str=escape(utf8_to_b64(str)+'!END!');
return str;
}
else
{
//that's right
//we're using cookies
//yeah I went there
var now=new Date();//we storin dis for 5 years, people
now.setFullYear(now.getFullYear()+5);//mmh stale cookies
str=utf8_to_b64(str)+'!END!';
Game.saveData=escape(str);
if (Game.mobile==1) Game.m.writeSaveRequest();//save on mobile
else
{
str=Game.SaveTo+'='+escape(str)+'; expires='+now.toUTCString()+';';
document.cookie=str;//aaand save
if (document.cookie.indexOf(Game.SaveTo)<0) Game.Popup('Error while saving.<br>Export your save instead!');
else Game.Popup('Game saved');
}
}
}
Vous vous demandez surement a quoi ca peux vous servir ?
Pour ceux qui veulent, vous pouvez vous amusez a changer vos stats par ce moyens, il vous suffit d'utiliser l’algorithme de décodage, voir comment ca fonctionne, changer ce que vous voulez, et re encrypter pour importer votre clé cheaté :D
Pour l'instant j'ai pas eu le temps de vous faire une clé avec tous les stats a fond je la ferais surement un peu plus tard ^^
Enjoy.