Tutoriel Cookies Clicker Fonctions hack

    Publicités

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)

Astropilot

The Lord
V.I.P
V
Jan 6, 2011
9,283
17
1,254
France
Discord
astropilot_
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:
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)
(remplacez les 9 par la somme que vous voulez ^^)

Pour mettre des cookies:
Code:
Game.cookies=9999999999999999
(idem que pour le script juste avant)

Pour simuler l'appuis de cliques:
Code:
for (var iter = 0; iter < 1000000; iter++) {
    Game.Earn(Game.computedMouseCps);
				Game.handmadeCookies+=Game.computedMouseCps;
}
(vous pouvez changer le 1000000, mais attention le jeu se freeze mais continu de auto click, patientez juste ^^)

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.
 
  • Like
Reactions: Louisrt14

Shakeel

Membre
Jul 1, 2013
92
0
732
Je crois avoir vu un article exactement pareil, tu es sûr que tu l'as fait ou tu l'as trouvé autre part ?
 

Astropilot

The Lord
V.I.P
V
Jan 6, 2011
9,283
17
1,254
France
Discord
astropilot_
Je crois avoir vu un article exactement pareil, tu es sûr que tu l'as fait ou tu l'as trouvé autre part ?

Bah perso j'ai su que après avoir trouvé les fonctions que j'était pas le seul a avoir trouvé des trucs xD (ce qui n'est pas étonnant ma fois vu que le code est facilement compréhensible et accéssible ^^), mais je te jure que j'y ai passé du temps a far-fouiner dans tout ce JS :D

Et je doute que tu trouve un autre post identique a celui la a moins qu'on me l'ai copié.
 
M

Membre supprimé 492129

Je ne connaissais pas ce jeu, merci de me l'avoir fait découvrir tout en trichant ;P.

Cordialement,
 

[Aomine

V.I.P
V
Jun 12, 2014
1,576
15
774
Va savoir
Merci, je connais quelqu'un qui y joue, ça va lui faire plaisir.
Mais je savais que ça allait exister sur ce forum (OBLIGÉ).
 

TheCutePanda

Nouveau membre
Jun 19, 2017
4
2
8
22
Bonsoir Yoshiku,

Je me permet de déterrer ce sujet car il est intéressant,
Il faut savoir que ceci ce n'est pas réellement du développement web, c'est juste des modifications via le console.log ( Inspecter l'élément -> Console )
Ces modifications sont tirées du code source du jeu :hap:

Je suis entrain de travailler sur une version modded du jeu avec des options de mod un peu insolites pour que cela soit le plus accesible à tous, et oui je possède le code source du jeu il a été partagé :mdr1:
Je le partagerai sur ce forum une fois les modifications terminées ! :bravo:

Ton sujet est très intéressant,
Cordialement,
TheCutePanda