From 073a36a33e5b357ffc06a198df1d1e7f36012844 Mon Sep 17 00:00:00 2001 From: Lugiad <2070109+Adri1@users.noreply.github.com> Date: Fri, 21 Feb 2025 00:49:57 +0100 Subject: [PATCH 1/2] [Localization] Corrections move-touch-controls-handler local key names (#5365) * Update move-touch-controls-handler.ts * Update locales submodule --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> --- public/locales | 2 +- src/ui/settings/move-touch-controls-handler.ts | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/public/locales b/public/locales index 58dda14ee83..ef43efffe5f 160000 --- a/public/locales +++ b/public/locales @@ -1 +1 @@ -Subproject commit 58dda14ee834204c4bd5ece47694a3c068df4b0e +Subproject commit ef43efffe5fe454862c350f1b9393c3ad755bcc2 diff --git a/src/ui/settings/move-touch-controls-handler.ts b/src/ui/settings/move-touch-controls-handler.ts index da7ac7f0514..48677122363 100644 --- a/src/ui/settings/move-touch-controls-handler.ts +++ b/src/ui/settings/move-touch-controls-handler.ts @@ -93,9 +93,9 @@ export default class MoveTouchControlsHandler { toolbar.innerHTML = `
-
${i18next.t("settings:reset")}
-
${i18next.t("settings:saveClose")}
-
${i18next.t("settings:cancel")}
+
${i18next.t("settings:touchReset")}
+
${i18next.t("settings:touchSaveClose")}
+
${i18next.t("settings:touchCancel")}
From ed8d162125e87f7942a39a8ab8f7684948af0140 Mon Sep 17 00:00:00 2001 From: Xavion3 Date: Fri, 21 Feb 2025 10:50:39 +1100 Subject: [PATCH 2/2] [Balance] Make stat a much larger factor in moveset gen #5383 --- src/field/pokemon.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 714f1ec7026..246f82b8164 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -2348,12 +2348,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { const maxPower = Math.min(movePool.reduce((v, m) => Math.max(allMoves[m[0]].power, v), 40), 90); movePool = movePool.map(m => [ m[0], m[1] * (allMoves[m[0]].category === MoveCategory.STATUS ? 1 : Math.max(Math.min(allMoves[m[0]].power / maxPower, 1), 0.5)) ]); - // Weight damaging moves against the lower stat + // Weight damaging moves against the lower stat. This uses a non-linear relationship. + // If the higher stat is 1 - 1.09x higher, no change. At higher stat ~1.38x lower stat, off-stat moves have half weight. + // One third weight at ~1.58x higher, one quarter weight at ~1.73x higher, one fifth at ~1.87x, and one tenth at ~2.35x higher. const atk = this.getStat(Stat.ATK); const spAtk = this.getStat(Stat.SPATK); const worseCategory: MoveCategory = atk > spAtk ? MoveCategory.SPECIAL : MoveCategory.PHYSICAL; const statRatio = worseCategory === MoveCategory.PHYSICAL ? atk / spAtk : spAtk / atk; - movePool = movePool.map(m => [ m[0], m[1] * (allMoves[m[0]].category === worseCategory ? statRatio : 1) ]); + movePool = movePool.map(m => [ m[0], m[1] * (allMoves[m[0]].category === worseCategory ? Math.min(Math.pow(statRatio, 3) * 1.3, 1) : 1) ]); /** The higher this is the more the game weights towards higher level moves. At `0` all moves are equal weight. */ let weightMultiplier = 0.9;