diff --git a/README.md b/README.md index 5f9697d..4d2a82c 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,59 @@ +# 9/20/24 + +## 1.0 +- Added 20 more random splash texts +- Added JSON Save File Length Check to make sure you can't just load a random JSO and corrupt shit +- Added Pup skin Buffs and Debuffs (Affects any and all automatic counters) +- Added Final Translations +- ADDED RANK DISPLAY TO MAIN MENU (Username Set Menu) +- ADDED 7 NEW RANKS + - Added Atrocious Rank + - Added Awful Rank + - Added Bad Rank + - Added Good Rank + - Added Excellent Rank + - Added Perfect Rank + - Added Complete Rank +- Added OFFICIAL PUPET ANIMATED RIG SYSTEM + - Added Animation Rig for Rank intro (arrive on the Main Menu) +- Added Custom Terminal for the Game +- Added Debugger Console Extension (recommended by drago_cuven) +- Added New Background Track for when you have an Excellent Rank or higher (Song Swaps every Track Update : Settings Refresh, Song ends, etc) +- Added Music Sprite (guess what it is for) +- Added PUPPY SELECTOR + - Added new Background Track for this Menu +- Added ScriptCall Broadcasts +- Added VERY MINIMAL "Shader" Support (effefts only certain things until a more optimized method of application is found) +- ADDED 2 NEW PUP SKINS + - Added the "Bull" Pup Skin + - Unlocked when you have 2,000 Pets or more + - Added the "Cap" Pup Skin + - Unlocked when you have 50,000 Pets or more +- Added "?" Buttons to MainMenu (outline for future buttons) +- Added little Container Sprite to MainMenu + +- Fixed Bug where the Shop Button click amount didn't reset +- Fixed Treats Shop Item Costumes +- Fixed Button some Shop Button code whenever it is maxed out +- Fixed Username Wrapping in Spanish Translation +- Fixed Buttons being click able even when they are maxed out +- Fixed suble Shadow of splash text on Main Menu +- Fixed Missing Brightness Fade Application to Savedata Username Text +- Fixed Double Click button not working. FINALLY. +- Fixed Bug where autosave display wouldn't work properly +- Fixed Bug where Petters wouldn't load if you left and came back to gameplay + +- Changed how Upgrading a Shop Item works +- Changed how the Pup loads Pup Skins +- Changed Positions of the MainMenu Button +- Changed Position of Volume Option in settings + +- Removed Spanish Setting Replace +- Removed ability to exceed Treat Bonus Button Level Limit with the "lagman" username +- Removed JSON Autosaving (got annoying) +- Removed Fade from MainMenu to Gameplay +- Removed Loading Text from Public Display (aka visible only in dev mode) + # 9/11/2024 ## pre-1.12 diff --git a/assets/data/credits.json b/assets/data/credits.json index 2288aa5..823f1e9 100644 --- a/assets/data/credits.json +++ b/assets/data/credits.json @@ -4,7 +4,8 @@ "short-cuts": [ { "identifier":"idealist", "content": "IdealistCat", "type":"person" }, { "identifier":"djottaflow", "content":"Djotta Flow", "type":"person" }, - { "identifier":"paulleps", "content":"Paul Leps", "type":"person" } + { "identifier":"paulleps", "content":"Paul Leps", "type":"person" }, + { "identifier":"drago", "content":"Drago Cuven", "type":"person" } ], "content": [ @@ -13,6 +14,7 @@ { "job": "Director", "shortcut": "idealist" }, { "job": "Co-Director", "shortcut": "djottaflow" }, { "job": "Playtester", "shortcut": "paulleps" }, + { "job": "Co-Programmer", "shortcut": "drago" }, { "type":"tab", "content": "Directors", "color":"yellow" }, { "job": "Lead Director", "shortcut": "idealist" }, @@ -22,8 +24,9 @@ { "job_display": "nojob", "shortcut": "idealist" }, { "job_display": "nojob", "shortcut": "djottaflow" }, - { "type":"tab", "content": "Coders", "color":"blue" }, - { "job_display": "nojob", "shortcut": "idealist" }, + { "type":"tab", "content": "Programmers", "color":"blue" }, + { "job": "Lead Programming", "shortcut": "idealist" }, + { "job": "Assistant Programmer", "shortcut": "drago" }, { "type":"tab", "content": "Composers", "color": "purple" }, { "job_display": "nojob", "shortcut": "idealist" }, diff --git a/assets/data/ext/DragoLua.js b/assets/data/ext/DragoLua.js new file mode 100644 index 0000000..a36e490 --- /dev/null +++ b/assets/data/ext/DragoLua.js @@ -0,0 +1,345 @@ +// @ts-nocheck +;(async function (Scratch) { + if (Scratch.extensions.unsandboxed === false) { + throw new Error('Sandboxed mode is not supported') + } + + function waitFinish(script) { + return new Promise(resolve => { + script.addEventListener('load', resolve) + }) + } + + const script = document.createElement('script') + script.src = 'https://cdn.jsdelivr.net/npm/ace-builds@1.36.2/src-min/ace.js' + document.head.appendChild(script) + await waitFinish(script) + + Scratch.gui.getBlockly().then(ScratchBlocks => { + ScratchBlocks._LightenDarkenColor = function (col, amt) { + const num = parseInt(col.replace('#', ''), 16) + const r = (num >> 16) + amt + const b = ((num >> 8) & 0x00ff) + amt + const g = (num & 0x0000ff) + amt + const newColor = g | (b << 8) | (r << 16) + return (col.at(0) === '#' ? '#' : '') + newColor.toString(16) + } + function _setCssNattr(node, attr, value) { + node.setAttribute(attr, String(value)) + node.style[attr] = value + } + function _delCssNattr(node, attr) { + node.removeAttribute(attr) + delete node.style[attr] + } + + // These should NEVER be called without ScratchBlocks existing + function _fixColours(doText, col1, textColor) { + const LDA = -10 + const LDC = ScratchBlocks._LightenDarkenColor + const self = this.sourceBlock_ + const parent = self?.parentBlock_ + if (!parent) return + const path = self?.svgPath_ + const argumentSvg = path?.parentNode + const textNode = argumentSvg.querySelector('g.blocklyEditableText text') + const oldFirstColour = parent.colour_ + self.colour_ = col1 ?? LDC(parent.colour_, LDA) + self.colourSecondary_ = LDC(parent.colourSecondary_, LDA) + self.colourTertiary_ = LDC(parent.colourTertiary_, LDA) + self.colourQuaternary_ = LDC( + parent?.colourQuaternary_ ?? oldFirstColour, + LDA + ) + _setCssNattr(path, 'fill', self.colour_) + _setCssNattr(path, 'stroke', self.colourTertiary_) + if (doText && textNode) + _setCssNattr(textNode, 'fill', textColor ?? '#FFFFFF') + } + const _endBlockDrag = ScratchBlocks.BlockDragger.prototype.endBlockDrag + ScratchBlocks.BlockDragger.prototype.endBlockDrag = function (a, b) { + _endBlockDrag.call(this, a, b) + for (const childBlock of this.draggingBlock_.childBlocks_) { + if ( + childBlock.inputList.length === 1 && + childBlock.inputList[0].fieldRow.length === 1 && + childBlock.inputList[0].fieldRow[0] + ) { + const field = childBlock.inputList[0].fieldRow[0] + if (field.constructor.inline === true) { + childBlock.render() + } + if (!field.constructor.acceptReporters === false) { + childBlock.outputConnection.targetConnection.setHidden(true) + } + } + } + } + // based on https://github.com/LLK/scratch-blocks/blob/893c7e7ad5bfb416eaed75d9a1c93bdce84e36ab/core/field_angle.js + class FieldAceEditor extends ScratchBlocks.Field { + static inline = true + static acceptReporters = true + constructor(opt_value) { + opt_value = opt_value && !isNaN(opt_value) ? String(opt_value) : '0' + super(opt_value) + this.addArgType('String') + this.addArgType('aceeditor') + } + updateWidth() { + if (this._textarea) { + const width = this._textarea.offsetWidth + 1, + height = this._textarea.offsetHeight + 1 + this._textareaHolder.setAttribute('width', String(width + 3)) + this._textareaHolder.setAttribute('height', String(height + 3)) + this.size_.width = width + 8 + this.size_.height = height + 16 + } + } + dispose() { + super.dispose() + this.editorInstance.destroy() + delete this.editorInstance + } + init(...initArgs) { + ScratchBlocks.Field.prototype.init.call(this, ...initArgs) + const textNode = this.sourceBlock_.svgPath_.parentNode.querySelector( + 'g.blocklyEditableText text' + ) + if (textNode) textNode.style.display = 'none' + if (this.sourceBlock_.parentBlock_) + _fixColours.call(this, false, this.sourceBlock_.parentBlock_.colour_) + const textareaHolder = document.createElementNS( + 'http://www.w3.org/2000/svg', + 'foreignObject' + ) + textareaHolder.setAttribute('x', '16') + textareaHolder.setAttribute('y', '8') + textareaHolder.addEventListener('mousedown', e => e.stopPropagation()) + const div = document.createElement('div') + div.textContent = this.getValue() + if (this.editorInstance) this.editorInstance.destroy() + div.style.width = '500px' + div.style.height = '300px' + this.editorInstance = window.ace.edit(div, { + mode: 'ace/mode/lua', + selectionStyle: 'text' + }) + this.editorInstance.session.on('change', () => { + const value = this.editorInstance.getValue() + this.setValue(value) + }) + // div.addEventListener('input', () => this._onInput()) + if (this.fieldGroup_) { + this.fieldGroup_.insertAdjacentElement('afterend', textareaHolder) + textareaHolder.appendChild(div) + this._textareaHolder = textareaHolder + this._textarea = div + } + this.sourceBlock_.outputConnection.x_ -= 16 + this.sourceBlock_.outputConnection.y_ -= 8 + } + showEditor_() {} + } + ScratchBlocks.Field.register('field_DragonianLua_aceeditor', { + fromJson(args) { + return new FieldAceEditor(args['aceeditor']) + } + }) + }) + const { LuaFactory } = await import( + 'https://cdn.jsdelivr.net/npm/wasmoon@1.16.0/+esm' + ) + + async function resetLua() { + lua.global.close() + const threads = vm.runtime.threads + //pause + const oldStatus = [] + for (var i = 0; i < threads.length; i++) { + const thisThread = threads[i] + oldStatus.push(thisThread.status) + thisThread.status = 5 + } + //readd system + const lua = await factory.createEngine() + // jscmdinlua() + //unpause + for (var i = 0; i < threads.length; i++) { + threads[i].status = oldStatus[i] + } + } + + const factory = new LuaFactory() + const lua = await factory.createEngine() + + const _getVarObjectFromName = (name, util, type) => { + const stageTarget = runtime.getTargetForStage() + const target = util.target + let listObject = Object.create(null) + + listObject = stageTarget.lookupVariableByNameAndType(name, type) + if (listObject) return listObject + listObject = target.lookupVariableByNameAndType(name, type) + if (listObject) return listObject + } + + // Scratch devs forgot to add functionality to change color1, color2, color3 + // for custom fields separately from the category colors, even though + // it is important feature used by almost all default inputs. Example: + // https://github.com/LLK/scratch-blocks/blob/bdfeaef0f2021997b85385253604690aa24f299a/blocks_common/math.js#L52-L54 + const vm = Scratch.vm + const runtime = vm.runtime + // const bcfi = runtime._buildCustomFieldInfo.bind(runtime) + // const bcftfsb = runtime._buildCustomFieldTypeForScratchBlocks.bind(runtime) + // let fi = null + // runtime._buildCustomFieldInfo = function ( + // fieldName, + // fieldInfo, + // extensionId, + // categoryInfo + // ) { + // fi = fieldInfo + // return bcfi(fieldName, fieldInfo, extensionId, categoryInfo) + // } + // runtime._buildCustomFieldTypeForScratchBlocks = function ( + // fieldName, + // output, + // outputShape, + // categoryInfo + // ) { + // let res = bcftfsb(fieldName, output, outputShape, categoryInfo) + // if (fi) { + // if (fi.color1) res.json.colour = fi.color1 + // if (fi.color2) res.json.colourSecondary = fi.color2 + // if (fi.color3) res.json.colourTertiary = fi.color3 + // fi = null + // } + // return res + // } + // @ts-ignore + const cbfsb = runtime._convertBlockForScratchBlocks.bind(runtime) + // @ts-ignore + runtime._convertBlockForScratchBlocks = function (blockInfo, categoryInfo) { + const res = cbfsb(blockInfo, categoryInfo) + if (blockInfo.outputShape) { + res.json.outputShape = blockInfo.outputShape + } + return res + } + + // Your extension's code + class DragonianLua { + runtime + constructor(runtime) { + Scratch.vm.runtime.on('PROJECT_START', () => resetLua()) + Scratch.vm.runtime.on('PROJECT_STOP_ALL', () => resetLua()) + this.runtime = runtime + } + + getInfo() { + return { + id: 'DragonianLua', + name: 'Lua', + color1: '#0b0080', + color2: '#00006b', + blocks: [ + { + blockType: Scratch.BlockType.REPORTER, + outputShape: 3, + opcode: 'runLuaReporter', + text: 'Run Lua code [code]', + arguments: { + code: { + type: 'aceeditor', + defaultValue: `--setScratchVar("variable", "value", is a list?) \nsetScratchVar("my variable", "Success!", false) \nreturn(getScratchVar("my variable"))` //#ff0000, + } + } + }, + { + blockType: Scratch.BlockType.COMMAND, + outputShape: 3, + opcode: 'runLua', + text: 'Run Lua code [code]', + arguments: { + code: { + type: 'aceeditor', + defaultValue: `--setScratchVar("variable", "value", is a list?) \nsetScratchVar("my variable", "It works!", false) \nprint(getScratchVar("my variable"))` //#ff0000, + } + } + }, + { + opcode: 'executeblock', + blockType: Scratch.BlockType.COMMAND, + text: 'execute [CODE]', + arguments: { + CODE: { + type: Scratch.ArgumentType.STRING, + defaultValue: "print('hello world')" + } + } + }, + { + opcode: 'executereporter', + blockType: Scratch.BlockType.REPORTER, + text: 'evaluate [CODE]', + arguments: { + CODE: { + type: Scratch.ArgumentType.STRING, + defaultValue: 'return 1+1' + } + } + } + ], + customFieldTypes: { + aceeditor: { + output: 'string', + outputShape: 3 + } + } + } + } + + + async runLuaReporter({ code }, util) { + luascratchcmds(util) + const returnValue = await lua.doString(code) + return returnValue + } + async runLua({ code }, util) { + luascratchcmds(util) + const script = await lua.doString(code) + } + async executeblock(args, util) { + luascratchcmds(util) + const script = await lua.doString(args.CODE) + } + async executereporter(args, util) { + luascratchcmds(util) + const returnValue = await lua.doString(args.CODE) + return returnValue + } + } + + function luascratchcmds(util){ + lua.global.set('setScratchVar', (varName, value, isList) => { + isList = isList || false + _getVarObjectFromName(varName, util, isList ? 'list' : '').value = value + }) + + lua.global.set('getScratchVar', (varName, isList) => { + isList = isList || false + return _getVarObjectFromName(varName, isList ? 'list' : '').value + }) + + lua.global.set('runScratchBlock', (extension, blockName, args) => { + + }) +} + + + // The following snippet ensures compatibility with Turbowarp / Gandi IDE. If you want to write Turbowarp-only or Gandi-IDE code, please remove corresponding code + if (Scratch.vm?.runtime) { + // For Turbowarp + Scratch.extensions.register(new DragonianLua(Scratch.runtime)) + } +})(Scratch) diff --git a/assets/data/metadata.json b/assets/data/metadata.json index 7b88f5e..51d4703 100644 --- a/assets/data/metadata.json +++ b/assets/data/metadata.json @@ -10,6 +10,26 @@ "puppy freeman", "JAY SON", "JSON", - "boonpets" + "boonpets", + "supports funkin", + "supports geometry", + "supports new grounds", + "supports D.R.Y. Programming", + "for the friends and fellas", + "buds and bluds", + "inch by inch", + "day by day", + "off baffling your reality", + "week by week", + "with no control", + "wager your thousands", + "dont drag your reputation through countless muds", + "supports frame by frame", + "supports sprite atlas animations", + "supports JSON overload", + "doesnt support custom scripting files (for now)", + "erect samplin", + "supports unity devs", + "doesnt support unity team" ] } diff --git a/assets/data/skins/brown.json b/assets/data/skins/brown.json new file mode 100644 index 0000000..fcd66c3 --- /dev/null +++ b/assets/data/skins/brown.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":0, + "negativeOffset":0 +} diff --git a/assets/data/skins/bud.json b/assets/data/skins/bud.json new file mode 100644 index 0000000..3726b6e --- /dev/null +++ b/assets/data/skins/bud.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":2, + "negativeOffset":5 +} diff --git a/assets/data/skins/bull.json b/assets/data/skins/bull.json new file mode 100644 index 0000000..25bc2fc --- /dev/null +++ b/assets/data/skins/bull.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":0, + "negativeOffset":6 +} diff --git a/assets/data/skins/cap.json b/assets/data/skins/cap.json new file mode 100644 index 0000000..5967375 --- /dev/null +++ b/assets/data/skins/cap.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":4, + "negativeOffset":0 +} diff --git a/assets/data/skins/spot.json b/assets/data/skins/spot.json new file mode 100644 index 0000000..4e58269 --- /dev/null +++ b/assets/data/skins/spot.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":2, + "negativeOffset":0 +} diff --git a/assets/data/skins/white.json b/assets/data/skins/white.json new file mode 100644 index 0000000..4a67b22 --- /dev/null +++ b/assets/data/skins/white.json @@ -0,0 +1,4 @@ +{ + "positiveOffset":0, + "negativeOffset":2 +} diff --git a/assets/data/tests/Animation rig test.sb3 b/assets/data/tests/Animation rig test.sb3 new file mode 100644 index 0000000..62ead63 Binary files /dev/null and b/assets/data/tests/Animation rig test.sb3 differ diff --git a/assets/data/tests/OPARS 1.1.sb3 b/assets/data/tests/OPARS 1.1.sb3 new file mode 100644 index 0000000..6f8842d Binary files /dev/null and b/assets/data/tests/OPARS 1.1.sb3 differ diff --git a/assets/data/tests/modding/idealist/mod-stuf.txt b/assets/data/tests/modding/idealist/mod-stuf.txt new file mode 100644 index 0000000..b6f8671 --- /dev/null +++ b/assets/data/tests/modding/idealist/mod-stuf.txt @@ -0,0 +1 @@ +:4 diff --git a/assets/data/tests/modding/idealist/nonworkingFolder./doesntwork.txt b/assets/data/tests/modding/idealist/nonworkingFolder./doesntwork.txt new file mode 100644 index 0000000..eeabb27 --- /dev/null +++ b/assets/data/tests/modding/idealist/nonworkingFolder./doesntwork.txt @@ -0,0 +1 @@ +this doesnt load diff --git a/assets/data/tests/modding/idealist/workingFolder/working.txt b/assets/data/tests/modding/idealist/workingFolder/working.txt new file mode 100644 index 0000000..6a9637d --- /dev/null +++ b/assets/data/tests/modding/idealist/workingFolder/working.txt @@ -0,0 +1 @@ +this folder is loaded diff --git a/assets/data/tests/modding/info.txt b/assets/data/tests/modding/info.txt new file mode 100644 index 0000000..30a4f46 --- /dev/null +++ b/assets/data/tests/modding/info.txt @@ -0,0 +1,3 @@ +the idealist folder is IdealistCat's take +on modding, not the Lua way Drago wants +to do it diff --git a/assets/data/translations/english.json b/assets/data/translations/english.json index c2c263c..9ec6c85 100644 --- a/assets/data/translations/english.json +++ b/assets/data/translations/english.json @@ -3,7 +3,7 @@ "name":"english", "author":"IdealistCat", - "file_version":"0.1.2.1", + "file_version":"0.1.2.2", "api_version":"0.1.0", }, @@ -20,6 +20,40 @@ "petter":"petters:", "treat2s":"treats every 2 seconds:", "pup_load":"pupet loading", - "isload":"is loading" + "isload":"is loading", + "pet":"pet", + "splash_text":[ + "puppy game", + "puppy clicker", + "pup pup", + "clicker frenzy", + "petter frenzy", + "pet the dog", + "made with petting", + "puppy freeman", + "JAY SON", + "JSON", + "boonpets", + "supports funkin", + "supports geometry", + "supports new grounds", + "supports D.R.Y. Programming", + "for the friends and fellas", + "buds and bluds", + "inch by inch", + "day by day", + "off baffling your reality", + "week by week", + "with no control", + "wager your thousands", + "dont drag your reputation through countless muds", + "supports frame by frame", + "supports sprite atlas animations", + "supports JSON overload", + "doesnt support custom scripting files (for now)", + "erect samplin", + "supports unity devs", + "doesnt support unity team" + ] } } diff --git a/assets/data/translations/spanish.json b/assets/data/translations/spanish.json index 322d3de..883c7ea 100644 --- a/assets/data/translations/spanish.json +++ b/assets/data/translations/spanish.json @@ -4,8 +4,9 @@ "author":"IdealistCat", "costume_suffix":"_sp", + "costume_prefix":"sp_", - "file_version":"0.1.0.2", + "file_version":"0.1.1.1", "api_version":"0.1.0" }, @@ -23,6 +24,7 @@ "treat2s":"trata cada 2 segundos:", "pup_load":"cargando marioneta", "isload":"se esta cargando", + "pet":"mascota", "splash_text":[ "juego de cachorros", "clicker de cachorros", @@ -34,7 +36,27 @@ "cachorro freeman", "JAY SON", "JSON", - "boonpets" + "boonpets", + "compatible con funkin", + "compatible con geometría", + "compatible con nuevos terrenos", + "compatible con programación DRY", + "para los amigos y compañeros", + "brotes y bluds", + "pulgada a pulgada", + "día a día", + "desconcertando tu realidad", + "semana a semana", + "sin control", + "apuesta tus miles", + "no arrastres tu reputación por innumerables lodos", + "compatible con cuadro por cuadro", + "compatible con animaciones de atlas de sprites", + "compatible con sobrecarga JSON", + "no admite archivos de scripting personalizados (por ahora)", + "erect samplin", + "compatible con desarrolladores de Unity", + "no admite equipos de Unity" ] } } diff --git a/assets/img/1.0releaseArt.png b/assets/img/1.0releaseArt.png new file mode 100644 index 0000000..8d3f96f Binary files /dev/null and b/assets/img/1.0releaseArt.png differ diff --git a/assets/img/1.0releaseArt.psd b/assets/img/1.0releaseArt.psd new file mode 100644 index 0000000..f8a9d51 Binary files /dev/null and b/assets/img/1.0releaseArt.psd differ diff --git a/assets/img/archive/arch.txt b/assets/img/archive/arch.txt deleted file mode 100644 index 8b13789..0000000 --- a/assets/img/archive/arch.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/assets/img/archive/spinning-spin.mp4 b/assets/img/archive/spinning-spin.mp4 new file mode 100644 index 0000000..59ccef9 Binary files /dev/null and b/assets/img/archive/spinning-spin.mp4 differ diff --git a/assets/img/iconPx/bull.png b/assets/img/iconPx/bull.png new file mode 100644 index 0000000..bfbff36 Binary files /dev/null and b/assets/img/iconPx/bull.png differ diff --git a/assets/img/iconPx/cap.png b/assets/img/iconPx/cap.png new file mode 100644 index 0000000..cef97cf Binary files /dev/null and b/assets/img/iconPx/cap.png differ diff --git a/assets/img/iconPx/pixelz b/assets/img/iconPx/pixelz new file mode 100644 index 0000000..213b869 --- /dev/null +++ b/assets/img/iconPx/pixelz @@ -0,0 +1,11 @@ +00000000 +01111110 +11011011 +11011011 +10111101 +10111101 +01111110 +00000000 + +0 = #000 +1 = #630 diff --git a/assets/img/randomShit/file.png b/assets/img/randomShit/file.png new file mode 100644 index 0000000..5146655 Binary files /dev/null and b/assets/img/randomShit/file.png differ diff --git a/assets/img/randomShit/json.png b/assets/img/randomShit/json.png new file mode 100644 index 0000000..78b1e67 Binary files /dev/null and b/assets/img/randomShit/json.png differ diff --git a/assets/img/randomShit/md.png b/assets/img/randomShit/md.png new file mode 100644 index 0000000..58ad9e9 Binary files /dev/null and b/assets/img/randomShit/md.png differ diff --git a/assets/img/randomShit/modSupportConcept.png b/assets/img/randomShit/modSupportConcept.png new file mode 100644 index 0000000..9ca4290 Binary files /dev/null and b/assets/img/randomShit/modSupportConcept.png differ diff --git a/assets/img/randomShit/terminalFileIcons.psd b/assets/img/randomShit/terminalFileIcons.psd new file mode 100644 index 0000000..8ebf3a6 Binary files /dev/null and b/assets/img/randomShit/terminalFileIcons.psd differ diff --git a/assets/img/randomShit/txt.png b/assets/img/randomShit/txt.png new file mode 100644 index 0000000..3c8fb7d Binary files /dev/null and b/assets/img/randomShit/txt.png differ diff --git a/assets/music/ProPets.wav b/assets/music/ProPets.wav new file mode 100644 index 0000000..26eff19 Binary files /dev/null and b/assets/music/ProPets.wav differ diff --git a/assets/music/Pup-Inst.wav b/assets/music/Pup-Inst.wav new file mode 100644 index 0000000..23f2808 Binary files /dev/null and b/assets/music/Pup-Inst.wav differ diff --git a/assets/music/Pup-vocals.wav b/assets/music/Pup-vocals.wav new file mode 100644 index 0000000..f979c4c Binary files /dev/null and b/assets/music/Pup-vocals.wav differ diff --git a/assets/music/samples/palmtree-panic-p-mix-sonic-the-hedgehog-cd-slowed-reverb-made-with-Voicemod.mp3 b/assets/music/samples/palmtree-panic-p-mix-sonic-the-hedgehog-cd-slowed-reverb-made-with-Voicemod.mp3 new file mode 100644 index 0000000..a8289ff Binary files /dev/null and b/assets/music/samples/palmtree-panic-p-mix-sonic-the-hedgehog-cd-slowed-reverb-made-with-Voicemod.mp3 differ diff --git a/assets/music/visualizers/Music-pets_u.sb3 b/assets/music/visualizers/Music-pets_u.sb3 new file mode 100644 index 0000000..1a8f8d3 Binary files /dev/null and b/assets/music/visualizers/Music-pets_u.sb3 differ diff --git a/assets/music/visualizers/Visualizer - ProPets.sb3 b/assets/music/visualizers/Visualizer - ProPets.sb3 new file mode 100644 index 0000000..e7498ef Binary files /dev/null and b/assets/music/visualizers/Visualizer - ProPets.sb3 differ diff --git a/assets/music/week-based.wav b/assets/music/week-based.wav new file mode 100644 index 0000000..70d653b Binary files /dev/null and b/assets/music/week-based.wav differ diff --git a/assets/videos/1.0_buffs_debuffs.webm b/assets/videos/1.0_buffs_debuffs.webm new file mode 100644 index 0000000..04f5688 Binary files /dev/null and b/assets/videos/1.0_buffs_debuffs.webm differ diff --git a/assets/videos/bull-edited.mp4 b/assets/videos/bull-edited.mp4 new file mode 100644 index 0000000..b9fdde5 Binary files /dev/null and b/assets/videos/bull-edited.mp4 differ diff --git a/assets/videos/bull.webm b/assets/videos/bull.webm new file mode 100644 index 0000000..ed6ed26 Binary files /dev/null and b/assets/videos/bull.webm differ diff --git a/assets/videos/credits-censored.mp4 b/assets/videos/credits-censored.mp4 new file mode 100644 index 0000000..8a39859 Binary files /dev/null and b/assets/videos/credits-censored.mp4 differ diff --git a/assets/videos/credits-color.webm b/assets/videos/credits-color.webm new file mode 100644 index 0000000..fa6b0d5 Binary files /dev/null and b/assets/videos/credits-color.webm differ diff --git a/assets/videos/credits-early.webm b/assets/videos/credits-early.webm new file mode 100644 index 0000000..0dbfd03 Binary files /dev/null and b/assets/videos/credits-early.webm differ diff --git a/assets/videos/doubleUnlocks.webm b/assets/videos/doubleUnlocks.webm new file mode 100644 index 0000000..08e2299 Binary files /dev/null and b/assets/videos/doubleUnlocks.webm differ diff --git a/assets/videos/headTurn.webm b/assets/videos/headTurn.webm new file mode 100644 index 0000000..5091beb Binary files /dev/null and b/assets/videos/headTurn.webm differ diff --git a/assets/videos/pupBull_animTesting.webm b/assets/videos/pupBull_animTesting.webm new file mode 100644 index 0000000..77d0de9 Binary files /dev/null and b/assets/videos/pupBull_animTesting.webm differ diff --git a/assets/videos/pupSelFinal.webm b/assets/videos/pupSelFinal.webm new file mode 100644 index 0000000..7f2eaa0 Binary files /dev/null and b/assets/videos/pupSelFinal.webm differ diff --git a/assets/videos/pupSel_early.webm b/assets/videos/pupSel_early.webm new file mode 100644 index 0000000..00cc8c0 Binary files /dev/null and b/assets/videos/pupSel_early.webm differ diff --git a/assets/videos/puppySelector_PublicPreview.webm b/assets/videos/puppySelector_PublicPreview.webm new file mode 100644 index 0000000..7d2ce37 Binary files /dev/null and b/assets/videos/puppySelector_PublicPreview.webm differ diff --git a/assets/videos/rankIntro.webm b/assets/videos/rankIntro.webm new file mode 100644 index 0000000..b9836fa Binary files /dev/null and b/assets/videos/rankIntro.webm differ diff --git a/assets/videos/riggedMenuPup.webm b/assets/videos/riggedMenuPup.webm new file mode 100644 index 0000000..3a69b62 Binary files /dev/null and b/assets/videos/riggedMenuPup.webm differ diff --git a/assets/videos/splash.webm b/assets/videos/splash.webm new file mode 100644 index 0000000..81efeac Binary files /dev/null and b/assets/videos/splash.webm differ diff --git a/assets/videos/teaserAttempt.webm b/assets/videos/teaserAttempt.webm new file mode 100644 index 0000000..3f22a53 Binary files /dev/null and b/assets/videos/teaserAttempt.webm differ diff --git a/assets/videos/teaserTrailers/seperate.txt b/assets/videos/teaserTrailers/seperate.txt new file mode 100644 index 0000000..8328a97 --- /dev/null +++ b/assets/videos/teaserTrailers/seperate.txt @@ -0,0 +1 @@ +seperate stuf \ No newline at end of file diff --git a/assets/videos/teaserTrailers/shipment1/bull.mp4 b/assets/videos/teaserTrailers/shipment1/bull.mp4 new file mode 100644 index 0000000..d471df5 Binary files /dev/null and b/assets/videos/teaserTrailers/shipment1/bull.mp4 differ diff --git a/assets/videos/teaserTrailers/shipment1/capSelector.mp4 b/assets/videos/teaserTrailers/shipment1/capSelector.mp4 new file mode 100644 index 0000000..c4f681c Binary files /dev/null and b/assets/videos/teaserTrailers/shipment1/capSelector.mp4 differ diff --git a/assets/videos/teaserTrailers/shipment1/capUnlock.mp4 b/assets/videos/teaserTrailers/shipment1/capUnlock.mp4 new file mode 100644 index 0000000..9e074bc Binary files /dev/null and b/assets/videos/teaserTrailers/shipment1/capUnlock.mp4 differ diff --git a/assets/img/img.txt b/assets/videos/teaserTrailers/shipment1/githubreister similarity index 100% rename from assets/img/img.txt rename to assets/videos/teaserTrailers/shipment1/githubreister diff --git a/assets/videos/teaserTrailers/shipment1/pupSelector.mp4 b/assets/videos/teaserTrailers/shipment1/pupSelector.mp4 new file mode 100644 index 0000000..d4920af Binary files /dev/null and b/assets/videos/teaserTrailers/shipment1/pupSelector.mp4 differ diff --git a/assets/videos/teaserTrailers/shipment1/splash.mp4 b/assets/videos/teaserTrailers/shipment1/splash.mp4 new file mode 100644 index 0000000..4a8eeec Binary files /dev/null and b/assets/videos/teaserTrailers/shipment1/splash.mp4 differ diff --git a/assets/videos/terminal.webm b/assets/videos/terminal.webm new file mode 100644 index 0000000..a5f29f4 Binary files /dev/null and b/assets/videos/terminal.webm differ diff --git a/assets/videos/unlockedCap.webm b/assets/videos/unlockedCap.webm new file mode 100644 index 0000000..88874fd Binary files /dev/null and b/assets/videos/unlockedCap.webm differ diff --git a/assets/videos/unlockedPupMsg.webm b/assets/videos/unlockedPupMsg.webm new file mode 100644 index 0000000..d680573 Binary files /dev/null and b/assets/videos/unlockedPupMsg.webm differ diff --git a/assets/videos/update-v1.mp4 b/assets/videos/update-v1.mp4 new file mode 100644 index 0000000..a717aa5 Binary files /dev/null and b/assets/videos/update-v1.mp4 differ diff --git a/curLog.txt b/curLog.txt index 5b395ad..1c93bd6 100644 --- a/curLog.txt +++ b/curLog.txt @@ -1,22 +1,86 @@ -#9/11/2024 +#9/20/24 # -#pre-1.12 -#- Fixed Missing Credits for Dev Fork -#- Fixed Lower-Row Buttons Moving up after -#clicking them in Username Set Menu -#- Fixed Clone Issues caused by the Back -#Button -#- Fixed how Loading Settings works +#1.0 +#- Added 20 more random splash texts +#- Added JSON Save File Length Check to +#make sure you can't just load a random +#JSON and corrupt shit +#- Added Pup skin Buffs and Debuffs +#(Affects any and all automatic counters) +#- Added Final Translations +#- ADDED RANK DISPLAY TO MAIN MENU +#(Username Set Menu) +#- ADDED 7 NEW RANKS +# - Added Atrocious Rank +# - Added Awful Rank +# - Added Bad Rank +# - Added Good Rank +# - Added Excellent Rank +# - Added Perfect Rank +# - Added Complete Rank +#- Added OFFICIAL PUPET ANIMATED RIG SYSTEM +# - Added Animation Rig for Rank intro +#(arrive on the Main Menu) +#- Added Custom Terminal for the Game +#- Added Debugger Console Extension +#(recommended by drago_cuven) +#- Added New Background Track for when you +#have an Excellent Rank or higher (Song +#Swaps every Track Update : Settings +#Refresh, Song ends, etc) +#- Added Music Sprite (guess what it is +#for) +#- Added PUPPY SELECTOR +# - Added new Background Track for this +#Menu +#- Added ScriptCall Broadcasts +#- Added VERY MINIMAL "Shader" Support +#(effefts only certain things until a more +#optimized method of application is found) +#- ADDED 2 NEW PUP SKINS +# - Added the "Bull" Pup Skin +# - Unlocked when you have 2,000 Pets +#or more +# - Added the "Cap" Pup Skin +# - Unlocked when you have 50,000 Pets +#or more +#- Added "?" Buttons to MainMenu (outline +#for future buttons) +#- Added little Container Sprite to +#MainMenu # -#- Added new Pet skin: Spot -#- Added new Pet skin: Bud -#- Added Back button to Gameplay -#- Added code to replace Saves with the -#spanish setting to english +#- Fixed Bug where the Shop Button click +#amount didn't reset +#- Fixed Treats Shop Item Costumes +#- Fixed Button some Shop Button code +#whenever it is maxed out +#- Fixed Username Wrapping in Spanish +#Translation +#- Fixed Buttons being click able even +#when they are maxed out +#- Fixed suble Shadow of splash text on +#Main Menu +#- Fixed Missing Brightness Fade +#Application to Savedata Username Text +#- Fixed Double Click button not working. +#FINALLY. +#- Fixed Bug where autosave display +#wouldn't work properly +#- Fixed Bug where Petters wouldn't load +#if you left and came back to gameplay # -#- Changed Default Settings: Music enabled -#by default -#- Changed Position of Status Text +#- Changed how Upgrading a Shop Item works +#- Changed how the Pup loads Pup Skins +#- Changed Positions of the MainMenu Button +#- Changed Position of Volume Option in +#settings +# +#- Removed Spanish Setting Replace +#- Removed ability to exceed Treat Bonus +#Button Level Limit with the "lagman" +#username +#- Removed JSON Autosaving (got annoying) +#- Removed Fade from MainMenu to Gameplay +#- Removed Loading Text from Public +#Display (aka visible only in dev mode) # -#- Removed Spanish Translation (temporary) -#- Removed Username Status Text diff --git a/docs/TASKLIST.md b/docs/TASKLIST.md new file mode 100644 index 0000000..fb9938a --- /dev/null +++ b/docs/TASKLIST.md @@ -0,0 +1,24 @@ +# Development Stuff + +## Quality of life + +- [x] In-game Terminal + +## Modding Related + +- [ ] ScriptCalls for every needed call + +# Game Stuff + +- [ ] Pup Phases + +## More Upgrades + +- [ ] Treat Type: Pupio (random brand name) + +## More Animations + +- [x] Puppy Selector Selected Animation +- [ ] Puppy Selector Transition Animation +- [ ] Main Menu **Puppy** Rank Loaded Animation +- [ ] Lua Modding Support (drago) diff --git a/docs/UPDATE_LABELS.md b/docs/UPDATE_LABELS.md new file mode 100644 index 0000000..8f9d995 --- /dev/null +++ b/docs/UPDATE_LABELS.md @@ -0,0 +1,26 @@ +# Shipment Updates +Shipment Updates are the MEATY Updates +with alot of content like v1.0 + +# Cargo Updates +Cargo Updates are the Buns to the +Shipment Updates. + +They are the little Content Updates +in-between the Shipment Updates + +They got content, +but not too much and not to little + +# Mail Updates +Mail Updates are little Content Updates +for the game that go in-between +Cargo updates. + +These Updates dont have much content +and most likely have alot of Fixes + +# Resue Updates +A resue update is a patch update to +fix any and (hopefully) all bugs in Mail, +Cargo, and Shipment Updates. diff --git a/source/Pupet [v1.0].sb3 b/source/Pupet [v1.0].sb3 new file mode 100644 index 0000000..444ed53 Binary files /dev/null and b/source/Pupet [v1.0].sb3 differ