Closed JadeGrey closed 3 years ago
// TODO: Investigate why easy mode breaks battles
PIXI.game.prodigy.debugMisc.easyMode(1, 100); // Easy mode, 100% correct
Yeah, I know about this issue, but I'm not exactly sure why this happens. Maybe I'm missing something important? I'll definitely look into this! In the meantime, do you have any suggestions for hacks?
i have a suggestion we could find out how to get past enemies w/o getting attacked and find out how to fully complete quest w/o just quest requirements
i tried the PIXI.game.prodigy.debugQuests.completeQuestRequirements("")
with the area in the quotes but takes a while to just complete one job and not all jobs can be completed
@bruh5000, you can complete quests with the function you just said.
Here's a list of all the possible zones:
forest
shiverchill
skywatch
lamplight
dyno
bonfire_spire
house
toyzone
shipwreck_shore
darktower
academy
archives
earthtower
tower_town
Make sure you type the zone EXACTLY as it is. It's case sensitive, and if you mis-type it, it won't work.
Well, we now have Teleport.js, so this matter is a little less pressing at this point...
I noticed, that as @bruh5000 said earlier, the PIXI.game.prodigy.debugQuests.completeQuestRequirements("")
script does NOT work for all quests. We should try and look into this, and see whether different quests function in different ways...
What quests don't work?
Boss fight quests, and occasionally ones that involve picking up items. Other than that, there's no exact pattern.
On Wed, Feb 26, 2020 at 9:43 AM Mustan Pathetic notifications@github.com wrote:
What quests don't work?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1?email_source=notifications&email_token=AOQ7MLA47OKVZHRPYH77CDTREZ5ZDA5CNFSM4KR4PSMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENAPWHI#issuecomment-591461149, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOQ7MLBSEOJOSISSDSD72D3REZ5ZDANCNFSM4KR4PSMA .
Until we find gameconstants, this will be closed.
OK
On Thu, Feb 27, 2020 at 11:55 PM Mustan Pathetic notifications@github.com wrote:
Closed #1 https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1?email_source=notifications&email_token=AOQ7MLGFK4BRHVSTURH7GNDRFCKM5A5CNFSM4KR4PSMKYY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOW6N4GTI#event-3080438605, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOQ7MLGJ3WXO22FGR2UX4A3RFCKM5ANCNFSM4KR4PSMA .
I may have found an alternative to easyMode
... possibly PIXI.game.prodigy.player.modifiers.miss
would be effective in this case? Because as I see it, whenever you get a question wrong, it sets miss
to one, or a hundred, or whatever. If we were able to just set miss
back to 0, then even though you get the question wrong, you never miss???
This isn't related but you can get out of multiplayer battles using the escape hack. The battle won't count as a loss. I do it all the time to stallers.
However, you won't get any points.
That would make sense. Thanks for figuring that out.
On Tue, Mar 10, 2020 at 11:19 PM iamtheone12345 notifications@github.com wrote:
However, you won't get any points.
— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1?email_source=notifications&email_token=AOQ7MLA2RM3PXH2WO5E4LELRG37LJA5CNFSM4KR4PSMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEON7MCI#issuecomment-597423625, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOQ7MLDVFNOTOSZZCSEE6Q3RG37LJANCNFSM4KR4PSMA .
when i use escapeBattle in multiplayer, it marks that as a loss for me... and i still dont get points ;0
On March 11, 2020 at 6:42 AM Avn1114 notifications@github.com wrote:
That would make sense. Thanks for figuring that out. On Tue, Mar 10, 2020 at 11:19 PM iamtheone12345 <notifications@github.com> wrote: > However, you won't get any points. > > — > You are receiving this because you modified the open/close state. > Reply to this email directly, view it on GitHub > <https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1?email_source=notifications&email_token=AOQ7MLA2RM3PXH2WO5E4LELRG37LJA5CNFSM4KR4PSMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEON7MCI#issuecomment-597423625>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AOQ7MLDVFNOTOSZZCSEE6Q3RG37LJANCNFSM4KR4PSMA> > . > — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/PatheticMustan/ProdigyMathGameHacking/issues/1#issuecomment-597642541 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AOSEJGFWMCDAFWZYJ3BBH53RG6INVANCNFSM4KR4PSMA .
Use this, buddy: javascript:(function()%7BPIXI.game.prodigy.debugMisc.escapeBattle()%7D)()%3B
@bruh5000, you can complete quests with the function you just said.
Here's a list of all the possible zones:
forest shiverchill skywatch lamplight dyno bonfire_spire house toyzone shipwreck_shore darktower academy archives earthtower tower_town
Make sure you type the zone EXACTLY as it is. It's case sensitive, and if you mis-type it, it won't work.
What's the toyzone?
@bruh5000, you can complete quests with the function you just said. Here's a list of all the possible zones:
forest shiverchill skywatch lamplight dyno bonfire_spire house toyzone shipwreck_shore darktower academy archives earthtower tower_town
Make sure you type the zone EXACTLY as it is. It's case sensitive, and if you mis-type it, it won't work.
What's the toyzone? :(
@bruh5000, you can complete quests with the function you just said.
Here's a list of all the possible zones:
forest shiverchill skywatch lamplight dyno bonfire_spire house toyzone shipwreck_shore darktower academy archives earthtower tower_town
Make sure you type the zone EXACTLY as it is. It's case sensitive, and if you mis-type it, it won't work.
"PIXI.game.prodigy" parts are required but I'm confused and angry but I know the zone names >:(
Finally, done! Run
e=await (await fetch("https://api.prodigygame.com/game-api/status")).json();CryptoJS.MD5 = () => ({ toString: () => e.data.prodigyGameFlags.debugPassword });enableDebug('',!0)
easyMode()
to enable easyMode
without breaking battles!
Bookmarklet
javascript:console=0;e=await (await fetch("https://api.prodigygame.com/game-api/status")).json();CryptoJS.MD5=_=>({toString:_=>e.data.prodigyGameFlags.debugPassword });enableDebug('',!0);easyMode();
Now all we have to do is update the existing hacks
Pathetic is their a code for we could level up all our pets to level 100?
let x = hack.modules[0].exports.a.instance.prodigy.player.kennel.data;
for (let i=0; i<x.length; i++) {
x[i].level=100;
};
Alright, we've found a possible method using hack.constants
, but we need to look into it further.
We should still research this, it was possible with enableDebug
awhile back, so we know it is accessible.
Stop that, will >,<
we could use gameConstants to enable easy mode.
Question people does this still works https://github.com/Prodigy-Hacking/ProdigyMathGameHacking/blob/3247f89b059de1cafc4fda6e981ecda9a9d092ba/willsCheatMenu/src/hacks/misc.ts
Is the hack patched?
HOW?!
@ooo788, instead of polluting our Github issue threads, you should join our official Discord server.
whatever, easymode doesn't exist anymore.
The first issue...
indeed, I don't know if we ever finished it....
Lmao
Hey, maybe you can have a Use an older version hack to use easy mode. Maybe...
but I'm guessing it would break/crash the game.
this happening or what, it is on our TODO (#800)?
it's more difficult than it looks lmao, we're looking into it
I love how this is the first ticket and it's still open
it's impossibleeeeeeeeee stfuuu asodhasjdkahs
Pain
eternal pain
yep a big big big pain
Not sure if this helps but I found this
}, i.prototype.handleEasyMode = function() {
p.b.get("GameConstants.Debug.EDUCATION_ENABLED") || (this.questionOpened = !0)
},
it was in this
cb = function(t) {
function i(i, n) {
var e = t.call(this) || this;
return e.questionInterface = null, e.questionOpened = !1, e.logger = null, e.lastLogTime = Date.now(), e.questionInterface = i, i.OnQuestionOpened.add(e.markQuestionOpened, e), i.OnQuestionAnswered.add(e.handleEasyMode, e), e.logger = n, e
}
return Object(o.__extends)(i, t), Object.defineProperty(i.prototype, "NextState", {
get: function() {
return Ka.AnsweringQuestion
},
enumerable: !1,
configurable: !0
}), i.prototype.shouldTransition = function() {
var t = Date.now();
if (this.questionOpened || t - this.lastLogTime > 3e3) {
this.lastLogTime = t;
var i = "OpenQuestionInterfaceDecision\nTransition to " + this.NextState + "? " + (this.questionOpened ? "YES" : "NO") + "\n";
i += "\t - Interface is open? " + (this.questionOpened ? "YES" : "NO") + "\n", this.logger.logMessage(i)
}
return this.questionOpened
}, i.prototype.markQuestionOpened = function() {
this.questionOpened = !0
}, i.prototype.handleEasyMode = function() {
p.b.get("GameConstants.Debug.EDUCATION_ENABLED") || (this.questionOpened = !0)
}, i.prototype.destroy = function() {
this.questionInterface.OnQuestionOpened.remove(this.markQuestionOpened, this), this.questionInterface.OnQuestionAnswered.remove(this.handleEasyMode, this)
}, i
}(Yf),
I decoded the map file for prodigy.
In prodigy's code there is a DEBUG_CODE variable that is undefined. But using the Define Plugin for webpack they could set it for dev only.
They use it for lots of things in the game. But the functions that use DEBUG_CODE don't have it in the game. So the only way we would be able to do it is build the prodigy game file with the debug code.
We can get the debug code in the game status:
import prodigy
prodigy.gameStatus()["prodigyGameFlags"]["debugPassword"]
But after decoding the source map not all files are there.
This code in 4-21-0/src/feature/mathTower/MathTower.ts
does not work because 4-21-0/src/systems/injection/EProdigyInjectionIdentifiers.ts
does not exist
This code is the code executed when a question is popped up.
/**
* Opens a question for the player to answer
*/
public answerQuestion(): void {
if (DEBUG_CODE) {
if (!GameConstants.get('GameConstants.Debug.EDUCATION_ENABLED')) {
const wasCorrect: boolean = Math.random() < GameConstants.get('GameConstants.Debug.AUTO_ANSWER_CORRECT_PERCENT');
this.onQuestionAnswered.dispatch(wasCorrect, 0, null);
if (wasCorrect) {
this.onQuestionAnsweredCorrectly.dispatch(0, null);
} else {
this.onQuestionAnsweredIncorrectly.dispatch(0, null);
}
return;
}
}
if (!this._isOpen) {
this._isOpen = true;
const input: Input = App.instance.game.input;
const inputEnabled: boolean = input.enabled;
input.enabled = false;
const notifications: NotificationController = App.instance.prodigy.notifications;
notifications.pause(this);
notifications.clearNotifications();
App.instance.prodigy.education.question(
(wasCorrect: boolean, responseTime?: number, nFactor?: number, awardPrize?: boolean, awardInstantWin?: boolean, skill?: SkillDataSchema) => {
this._isOpen = false;
input.enabled = inputEnabled;
notifications.resume(this);
this.onQuestionAnswered.dispatch(wasCorrect, responseTime, skill);
if (wasCorrect) {
this.onQuestionAnsweredCorrectly.dispatch(responseTime, skill);
} else {
this.onQuestionAnsweredIncorrectly.dispatch(responseTime, skill);
}
},
undefined,
undefined,
undefined,
undefined,
false
);
}
}
So if we run
_.constants.constants["GameConstants.Debug.EDUCATION_ENABLED"] = true
_.constants.constants["GameConstants.Debug.AUTO_ANSWER_CORRECT_PERCENT"] = 1
it will enable easy mode but we will need to rebuild prodigy's gamefile every update with a new debug code. We probably won't even be able to build it once.
hosted why arnt u on discord?
breaks battles