[REQUEST] Moonstone Island

Ask about cheats/tables for single player games here
tamasu
Novice Cheater
Novice Cheater
Posts: 19
Joined: Tue May 16, 2023 5:57 pm
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by tamasu »

So, no cheat table can be done? Perhaps at least for item multiplier, or spirit experience multiplier

MarshmallowChest
What is cheating?
What is cheating?
Posts: 3
Joined: Sat Nov 18, 2023 12:06 am
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by MarshmallowChest »

Shimmerstrike wrote:
Thu Nov 23, 2023 12:14 pm
I have managed to get the Chrome Developer Console to pop up for the game by pressing F12 while in-game. Could anyone help me figure out how to add Moonstone quality Sparkstar and Cinderfish? I need 1 of each.
As of today, when you're in the debugger, you have to pause the 'main' thread. There isn't a 'runtime' thread as previously mentioned.

Currently, this should work for you. It will add one of each to the first empty slots in your inventory.

Code: Select all

for (let i of runtime$jscomp$1._instancesByUid.values()) {
    if (i._objectType._jsPropName == "inventoryArray") {
            let x = 0;
            const ssFish = ['cinderfishM','sparkstarM'];
            let t = i._sdkInst._arr;
            for (let j = 0; j <= 38; j++) {
                    if (t[j][0] == 0) { 
                        t[j] = [[1],[ssFish[x]],['']];
                        x++;
                    }
                    if (j == 39 || x == ssFish.length) { break; }
            }
    }
}
Paste and run that and you should have your fish.

If it gives you an error about runtime$jscomp$1 not being defined, you'll need to use this, but the first line will need to be checked; it seems to change for me every time I pause.

Code: Select all

let ia = this._localRuntime._instancesByUid.get(16);
if (ia._sdkInst._arr) {
    let t = ia._sdkInst._arr;
    let x = 0;
    const ssFish = ['cinderfishM','sparkstarM'];
    for (let j = 0; j <= 38; j++) {
        if (t[j][0] == 0) { 
            t[j] = [[1],[ssFish[x]],['']];
            x++;
        }
        if (j == 39 || x == ssFish.length) { break; }
    }
}
In the console, if you start typing 'this._' you can see if you need one of the three for the first line:

Code: Select all

this._instancesByUid.get(16);
this._runtime._instancesByUid.get(16);
this._localRuntime._instancesByUid.get(16);
They all do the same thing, but only one seems to ever be available per pause.

MarshmallowChest
What is cheating?
What is cheating?
Posts: 3
Joined: Sat Nov 18, 2023 12:06 am
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by MarshmallowChest »

After much fiddling (because I don't know what I am doing) I figured out a way to determine which way to get the instances automagically.

Code: Select all

/*
 *  For my sanity, I should standardize some variables.
 *  io = instances object.
 *  ia = array data.
 *  j = standard for loop iterator.
 *  x = use this for item array iterators when adding several items in a loop.
 *  let o in ia = o for object in instance array.
 */
 
 //find and set the proper property:
let io = '';
if (this.hasOwnProperty("_instancesByUid")) { io = this._instancesByUid; }
else if (this.hasOwnProperty("_runtime")) { io = this._runtime._instancesByUid; }
else if (this.hasOwnProperty("_localRuntime")) { io = this._localRuntime._instancesByUid; }

let ia = io.get(16)._sdkInst._arr;
let x = 0;
const ssFish = ['cinderfishM','sparkstarM'];
for (let j = 0; j <= 38; j++) {
    if (ia[j][0] == 0) { 
        ia[j] = [[1],[ssFish[x]],['']];
        x++;
    }
    if (j == 39 || x == ssFish.length) { break; }
}
Obviously, you don't need to use my comments, but it they're there for some clarity for my bs code.

Chindopopito
Expert Cheater
Expert Cheater
Posts: 50
Joined: Wed Apr 26, 2023 4:40 pm
Reputation: 21

Re: [REQUEST] Moonstone Island

Post by Chindopopito »

Games made with this engine, most likely will never have a 100% functioning cheat table. It's too much work that can go down the gutter with any given update.

FeeLyne
What is cheating?
What is cheating?
Posts: 2
Joined: Sat Oct 30, 2021 7:15 pm
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by FeeLyne »

If anyone's wondering, the 'hearts' value of NPCs are stored as a number between around 1070000000 and 1085000000 so if you're looking for one, first scan for a value bigger than 1070000000, next scan for one smaller than 1085000000 and finally, go talk to the person and scan for changed value each time, you should find it at some point.

Technolord3233
What is cheating?
What is cheating?
Posts: 3
Joined: Sat Dec 31, 2022 2:17 am
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by Technolord3233 »

MarshmallowChest wrote:
Sun Dec 10, 2023 3:25 am
Shimmerstrike wrote:
Thu Nov 23, 2023 12:14 pm
I have managed to get the Chrome Developer Console to pop up for the game by pressing F12 while in-game. Could anyone help me figure out how to add Moonstone quality Sparkstar and Cinderfish? I need 1 of each.
As of today, when you're in the debugger, you have to pause the 'main' thread. There isn't a 'runtime' thread as previously mentioned.

Currently, this should work for you. It will add one of each to the first empty slots in your inventory.

Code: Select all

for (let i of runtime$jscomp$1._instancesByUid.values()) {
    if (i._objectType._jsPropName == "inventoryArray") {
            let x = 0;
            const ssFish = ['cinderfishM','sparkstarM'];
            let t = i._sdkInst._arr;
            for (let j = 0; j <= 38; j++) {
                    if (t[j][0] == 0) { 
                        t[j] = [[1],[ssFish[x]],['']];
                        x++;
                    }
                    if (j == 39 || x == ssFish.length) { break; }
            }
    }
}


Paste and run that and you should have your fish.

If it gives you an error about runtime$jscomp$1 not being defined, you'll need to use this, but the first line will need to be checked; it seems to change for me every time I pause.

Code: Select all

let ia = this._localRuntime._instancesByUid.get(16);
if (ia._sdkInst._arr) {
    let t = ia._sdkInst._arr;
    let x = 0;
    const ssFish = ['cinderfishM','sparkstarM'];
    for (let j = 0; j <= 38; j++) {
        if (t[j][0] == 0) { 
            t[j] = [[1],[ssFish[x]],['']];
            x++;
        }
        if (j == 39 || x == ssFish.length) { break; }
    }
}
In the console, if you start typing 'this._' you can see if you need one of the three for the first line:

Code: Select all

this._instancesByUid.get(16);
this._runtime._instancesByUid.get(16);
this._localRuntime._instancesByUid.get(16);
They all do the same thing, but only one seems to ever be available per pause.

I tried doing this after the recent update, it seems to have been patched. After i run 1 of the 3 variant code, I try run the first one as a test to add the fish and it doesn't work, saying that the runtime jscomp couldnt be found or something.
If there is a similar way to do this now, would there be a way to add holo potions with this? I tried down patching to the old version (both halloween and december), but i could only get the holo potions on a new save, can't get them on my current save.


An idea I had was to just go back to a patch where the scripts work, so I managed to add the 2 fish to my inventory. But now idk how to find outthe holo potion id/name

Technolord3233
What is cheating?
What is cheating?
Posts: 3
Joined: Sat Dec 31, 2022 2:17 am
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by Technolord3233 »

So after some testing in an old version (the december holo potion hunt), I managed to figure it out. So I used Marshmallow's code (in an old version), modified it so instead of adding to the inventory, it just console.log() the entire inventory, so I was able to find the name of the Holo potion, which I had on me from making a new save, 'potionHolo'.

Then just subbing into his code to get

Code: Select all

for (let i of runtime$jscomp$1._instancesByUid.values()) {
    if (i._objectType._jsPropName == "inventoryArray") {
            let x = 0;
            //expand this array if you want to add more items
            const ssFish = ['holoPotion'];
            let t = i._sdkInst._arr;
            for (let j = 0; j <= 38; j++) {
                    if (t[j][0] == 0) { 
                    //change the first number of the array to change number of items to add
                        t[j] = [[100],[ssFish[x]],['']];
                        x++;
                    }
                    if (j == 39 || x == ssFish.length) { break; }
            }
    }
}
This gave me the 100 holo potions in the old version, then just save and open up updated game. I am not sure if this will have messed anything up, as I am using a new save on an old version, however it looks like it worked fine.

Eretai
What is cheating?
What is cheating?
Posts: 2
Joined: Tue Mar 07, 2023 5:13 am
Reputation: 0

Re: [REQUEST] Moonstone Island

Post by Eretai »

"it's easy to cheat this."

I've read through 7 pages and nothing about this seems easy.

Is there a table, or is someone working on one, or no?
I just want to edit my money.

Post Reply

Who is online

Users browsing this forum: kke84696, Livaliz, Phloggo, Solrak