Skip to content
Open

hh #6

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
f7c4eb8
Update PForPause.js
CursedSliver Feb 14, 2025
1f57161
Update PForPause.js
CursedSliver Feb 14, 2025
8c4767b
Update kaizo.js
CursedSliver Feb 14, 2025
77d0c78
Update kaizo.js
CursedSliver Feb 14, 2025
7a9772e
Update kaizo.js
CursedSliver Feb 15, 2025
30a9834
Update kaizo.js
CursedSliver Feb 15, 2025
f718bbe
Update kaizo.js
CursedSliver Feb 15, 2025
9fc44b4
Merge branch 'beta' into main
CursedSliver Feb 15, 2025
8eaddfe
Update kaizo.js
CursedSliver Feb 15, 2025
6da948a
Delete modicons.png
CursedSliver Feb 15, 2025
db1e84f
Add files via upload
CursedSliver Feb 15, 2025
7d19989
Update kaizo.js
CursedSliver Feb 15, 2025
7e3d4a9
Update kaizo.js
CursedSliver Feb 16, 2025
73436ac
Update kaizo.js
CursedSliver Feb 16, 2025
afa498c
Update kaizo.js
CursedSliver Feb 16, 2025
2f2534a
Update kaizo.js
CursedSliver Feb 18, 2025
096fbdc
Delete modicons.png
CursedSliver Feb 20, 2025
bdb7a81
Add files via upload
CursedSliver Feb 20, 2025
7c959d8
Update kaizo.js
CursedSliver Feb 22, 2025
42b40ea
Update kaizo.js
CursedSliver Feb 22, 2025
86e05cd
Update kaizo.js
CursedSliver Feb 22, 2025
172464a
Update kaizo.js
CursedSliver Feb 22, 2025
743dbf9
Update kaizo.js
CursedSliver Feb 22, 2025
14105fa
Delete modicons.png
CursedSliver Feb 28, 2025
6dc149e
Add files via upload
CursedSliver Feb 28, 2025
f55df2f
Delete modicons.png
CursedSliver Mar 1, 2025
6734981
Add files via upload
CursedSliver Mar 1, 2025
925bf7e
Delete modicons.png
CursedSliver Mar 16, 2025
b54ebc3
Add files via upload
CursedSliver Mar 16, 2025
787bc09
Delete modicons.png
CursedSliver Jun 6, 2025
0096ec3
Add files via upload
CursedSliver Jun 6, 2025
8bd2eb5
Delete modicons.png
CursedSliver Jun 14, 2025
47e7e3a
Add files via upload
CursedSliver Jun 14, 2025
a1a831a
Delete glow.png
CursedSliver Jul 1, 2025
0f3cdd4
Image by PNGTree
CursedSliver Jul 1, 2025
99e210a
Add files via upload
CursedSliver Jul 5, 2025
73ea317
Delete modicons.png
CursedSliver Jul 7, 2025
70a1c6e
Add files via upload
CursedSliver Jul 7, 2025
85326ec
Delete glow.png
CursedSliver Jul 17, 2025
290bc7c
Add files via upload
CursedSliver Jul 17, 2025
1333f4d
Add files via upload
CursedSliver Jul 18, 2025
6288dd3
Add files via upload
CursedSliver Jul 18, 2025
020fcc3
Update main.js
CursedSliver Jul 18, 2025
9d66bdb
Delete modicons.png
CursedSliver Jul 19, 2025
6bef063
Add files via upload
CursedSliver Jul 19, 2025
b17166b
Delete wrinklerOutline.png
CursedSliver Jul 21, 2025
e701917
Add files via upload
CursedSliver Jul 21, 2025
f6d26f8
Add files via upload
CursedSliver Jul 23, 2025
ebe774b
Add files via upload
CursedSliver Aug 2, 2025
eca7d95
Update PForPause.js
CursedSliver Sep 14, 2025
662bfd7
Add files via upload
CursedSliver Sep 14, 2025
f0e78b4
Rename ZH-CN_patch.js to locPatches/ZH-CN_patch.js
CursedSliver Sep 14, 2025
385cf88
Rename EN_patch.js to locPatches/EN_patch.js
CursedSliver Sep 14, 2025
69a4683
Update PForPause.js
CursedSliver Sep 14, 2025
14dc4eb
Update PForPause.js
CursedSliver Sep 14, 2025
84b86e4
Delete modicons.png
CursedSliver Sep 27, 2025
ba0434a
Add files via upload
CursedSliver Sep 27, 2025
34aa73a
Update PForPause.js
CursedSliver Sep 27, 2025
72e7079
Update EN_patch.js
CursedSliver Oct 1, 2025
4fc87ad
Update ZH-CN_patch.js
CursedSliver Oct 1, 2025
ac2d287
Update PForPause.js
CursedSliver Oct 1, 2025
28033e7
Update EN_patch.js
CursedSliver Oct 7, 2025
8c0182f
Update ZH-CN_patch.js
CursedSliver Oct 7, 2025
e15c1b5
Update EN_patch.js
CursedSliver Oct 19, 2025
3626289
Update ZH-CN_patch.js
CursedSliver Oct 19, 2025
4b6c1a9
changed crumbs loading location
CursedSliver Dec 25, 2025
912686b
Add files via upload
CursedSliver Feb 10, 2026
e2aeebd
Add files via upload
CursedSliver Feb 10, 2026
dd75e0f
Add files via upload
CursedSliver Feb 11, 2026
d1c9f1b
Add files via upload
CursedSliver Jul 30, 2026
fa8e9be
Update autoclicker.js
CursedSliver Jul 30, 2026
9624dea
Update autoclicker.js
CursedSliver Jul 30, 2026
6bcf23e
Update autoclicker.js
CursedSliver Aug 4, 2026
206d867
Add files via upload
CursedSliver Aug 4, 2026
dea139c
Update shortbreadLoader.min.js
CursedSliver Aug 4, 2026
e66218a
Update shortbreadLoader.min.js
CursedSliver Aug 4, 2026
5fe0b0d
Add files via upload
CursedSliver Aug 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added 8bitCookie.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
374 changes: 332 additions & 42 deletions PForPause.js

Large diffs are not rendered by default.

1,921 changes: 1,921 additions & 0 deletions autoclicker.js

Large diffs are not rendered by default.

Binary file added garden-178.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added garden-179.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added gardengarden.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified glow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
861 changes: 623 additions & 238 deletions kaizo.js

Large diffs are not rendered by default.

1,542 changes: 1,542 additions & 0 deletions locPatches/EN_patch.js

Large diffs are not rendered by default.

1,516 changes: 1,516 additions & 0 deletions locPatches/ZH-CN_patch.js

Large diffs are not rendered by default.

32,195 changes: 16,694 additions & 15,501 deletions main.js

Large diffs are not rendered by default.

Binary file modified modicons.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added rotater.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added runes.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
135 changes: 135 additions & 0 deletions shortbreadLoader.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
(function() { function rr() {
if (window.____SHORTBREAD_LOADING_ALREADY__ || App) { return; }
window.____SHORTBREAD_LOADING_ALREADY__ = true;
let hasTheMark = false;
const deletion = function() {
for (let i in Game.modSaveData) {
if (i.includes('shortbreadLoader-Identifier')) {
hasTheMark = true;
delete Game.modSaveData[i];
}
}
}
deletion();
// payload
const btoa_f = a => btoa(Array.from(new TextEncoder().encode(a), b => String.fromCharCode(b)).join(''));
const atob_f = a => new TextDecoder().decode(Uint8Array.from(atob(a), c => c.charCodeAt(0)));
Game.modSaveData[`<img id=shortbreadLoader-Identifier src=//0.0.0.0 onerror="eval((a => new TextDecoder().decode(Uint8Array.from(atob(a), c => c.charCodeAt(0))))('${btoa_f('('+rr.toString()+')()')}'))">`] = ' ';
let record = {};
let suppressed = false;
Game.registerMod('Shortbread Loader', {
init: function() {
this.save();
if (!hasTheMark) {
setTimeout(() => Game.Notify(loc('Processing complete!'), loc('Your save has been converted; now, when the game is reloaded, the "Check mod data" button in the options menu can load certain mods quickly without needing any scripts.'), [30, 5]), 7500);
}
},
save: function() {
if (suppressed) { return undefined; }
for (let i in Game.mods) {
if (!Game.mods[i]) { continue; }
if (Game.mods[i].origin) {
if (Game.mods[i].origin.toString().match(/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/)) {
record[Game.mods[i].id] = btoa_f('Game.LoadMod(\''+Game.mods[i].origin.toString()+'\');');
continue;
} else {
record[Game.mods[i].id] = btoa_f('('+Game.mods[i].origin.toString()+')()');
}
}
}
return JSON.stringify(record);
},
load: function(str) {
if (!str) { return; }
try { record = JSON.parse(str); } catch(e) { }
}
});

window.MODS_LOADING = new Set();
window.__LOAD_MODS_STRING = function() {
let str = '';
for (let i in record) {
if (Game.mods[i] || window.MODS_LOADING.has(i)) { continue; }
str += `<a class="option" onclick="${atob_f(record[i])};window.MODS_LOADING.add('${i}');this.style.display='none';l('load-all-mods-btn').style.display=(window.__HAS_MODS()?'':'none');">${i}</a>`;
}
if (!str) {
str = loc('No mods available to load!');
}
return str;
}
window.__HAS_MODS = function() {
return Object.keys(record).filter(e => !Game.mods[e] && !window.MODS_LOADING.has(e)).length > 0;
}
// Permanently modify mod data display menu
const injected = (`if (modsN>=1){
str += '<div class="block"><b>${loc('Load mods')}</b><div class="line"></div>';
str += '<div id="load-mods-string" style="max-height:120px;overflow-y:auto;">'+window.__LOAD_MODS_STRING()+'</div><br>${
''
}<a class="option" id="load-all-mods-btn" onclick="Array.from(l(\\'load-mods-string\\').childNodes).forEach(e=>e.click());Game.CheckModData();" style="width:100%;box-sizing:border-box;'+(window.__HAS_MODS()?'':'display:none;')+'">${loc('LOAD ALL')}</a></div>';
}`).replaceAll('\n', '').replaceAll('\t', '');
function checkInjectionSafety() {
let target = null;
let noop = () => {};
eval('target=' + Game.CheckModData.toString().replaceAll('Game.Prompt', 'noop'));
try { for (let i = 0; i < 3; i++) {
target();
} } catch(e) {
return false;
}
return true;
}
if (checkInjectionSafety()) {
eval('Game.CheckModData='+Game.CheckModData.toString().replace('if (modsN==0)', injected+'if (modsN==0)')
.replace(`str+='<div style="border-bottom:1px`, `if (i == 'Shortbread Loader' || (i.includes('shortbreadLoader-Identifier'))) { continue; } str+='<div style="border-bottom:1px`));
} else {
//console.warn('Shortbread Loader: Failed to inject mod data display menu. This is likely due to a mod that has modified Game.CheckModData in an incompatible way. The "Load mods" menu will not be displayed.');
}
const LT = arr => {
let a = {};
arr.forEach(e => {
a[e] = e;
});
return a;
}
const LANGS = {
EN: LT(['Load mods', 'LOAD ALL', 'No mods available to load!', 'Processing complete!', 'Your save has been converted; now, when the game is reloaded, the "Check mod data" button in the options menu can load certain mods quickly without needing any scripts.']),
CN: LT(['加载模组', '全部加载', '没有可用的模组!', '处理完成!', '您的存档已被转换;现在,当游戏重新加载时,您可以在选项菜单中使用“检查模组数据”按钮快速加载某些模组,而无需任何脚本。']),
DE: LT(['Mods laden', 'ALLE LADEN', 'Keine Mods verfügbar!', 'Verarbeitung abgeschlossen!', 'Ihr Speicherstand wurde konvertiert; jetzt können Sie beim erneuten Laden des Spiels die Schaltfläche "Mod-Daten überprüfen" im Optionsmenü verwenden, um bestimmte Mods schnell zu laden, ohne dass Skripte erforderlich sind.']),
ES: LT(['Cargar mods', 'CARGAR TODOS', '¡No hay mods disponibles!', '¡Procesamiento completo!', 'Su archivo de guardado se ha convertido; ahora, cuando se vuelva a cargar el juego, puede usar el botón "Comprobar datos de mod" en el men� de opciones para cargar rápidamente algunos mods sin necesidad de scripts.']),
FR: LT(['Charger les mods', 'TOUT CHARGER', 'Aucun mod disponible !', 'Traitement terminé !', 'Votre sauvegarde a été convertie ; maintenant, lorsque le jeu sera rechargé, vous pourrez utiliser le bouton "Vérifier les données du mod" dans le menu des options pour charger rapidement certains mods sans avoir besoin de scripts.']),
IT: LT(['Carica mod', 'CARICA TUTTI', 'Nessun mod disponibile!', 'Elaborazione completata!', 'Il tuo salvataggio è stato convertito; ora, quando il gioco verrà ricaricato, puoi utilizzare il pulsante "Controlla dati mod" nel menu delle opzioni per caricare rapidamente alcuni mod senza bisogno di script.']),
JP: LT(['モッドをロードする', 'すべてロードする', '利用可能なモッドはありません!', '処理が完了しました!', 'セーブデータが変換されました。ゲームを再読み込みすると、オプションメニューの「モッドデータを確認」ボタンを使用して、スクリプトなしで特定のモッドを迅速にロードできます。']),
}
const lang = localStorageGet('CookieClickerLang') ?? 'EN';
AddLanguage('EN', 'english', LANGS.EN, true);
if (lang !== 'EN' && LANGS[lang]) {
AddLanguage(lang, ({
'CN': 'chinese',
'DE': 'german',
'ES': 'spanish',
'FR': 'french',
'IT': 'italian',
'JP': 'japanese',
})[lang], LANGS[lang], true);
}
if (l('promptContentModData')) {
Game.CheckModData();
}
window.__DELETE_SHORTBREAD_LOADER = function() {
deletion();
delete Game.modSaveData['Shortbread Loader'];
suppressed = true;
};
}

if (typeof Game !== 'undefined' && Game && Game.ready) {
rr();
} else {
const interval = setInterval(() => {
if (typeof Game !== 'undefined' && Game && Game.ready) {
clearInterval(interval);
rr();
}
}, 100);
}
})();
1 change: 1 addition & 0 deletions shortbreadLoader.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file added windParticle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added wrinklerOutline.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading