Commit Graph

5988 Commits

Author SHA1 Message Date
NightKev
49e9976328
Revert "[Refactor] Add TIME_OF_DAY_OVERRIDE & refactor arena tint code"
https://github.com/pagefaultgames/pokerogue/pull/6597

Revert "[Refactor] Add `TIME_OF_DAY_OVERRIDE` & refactor arena tint code"

This reverts commit 4349ee82b9.
2025-09-27 14:55:59 -07:00
Wlowscha
f8edaeb1ae
[Misc][UI/UX] See stats of other users in admin panel (#6579)
* Game stats ui handler takes save data as input

* Make admin panel functional for local testing

* Added button to show stats; mocking for local testing with current save data

* Adding pokédex to admin panel

* Many nice things

* Fixed typo

* Add backend support

* Fixed button width in admin panel

* Apply suggestions from code review

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-09-27 14:44:29 -07:00
Bertie690
4349ee82b9
[Refactor] Add TIME_OF_DAY_OVERRIDE & refactor arena tint code
https://github.com/pagefaultgames/pokerogue/pull/6554

* Removed `ARENA_TINT_OVERRIDE` + minor cleanup of arena tint code

* Added `TIME_OF_DAY_OVERRIDE` to replace tint override

* Fixed visual bug with time of day override

* Fixed the frag stuff and blah blah blah

* Update sprite-types.ts
2025-09-27 14:41:56 -07:00
Sirz Benjie
09707e62aa
[Sprite] bump assets 2025-09-27 11:30:23 -05:00
Sirz Benjie
ba5d00ae31
Update link to logo in REAMDE.md 2025-09-27 11:06:24 -05:00
Sirz Benjie
c695df777c
[Refactor][Dev] Move public to its own submodule (#6590)
* Remove public folder to prepare for submodule

* Add submodule and update licensing

* Stop serving non-asset files during build

* Update pull request template

* Update CODEOWNERS

* Add locales submodule

* Update pull request template regarding locales

* remove post-checkout lefthook in favor of git config

* chore: add license info to new script

* Update gh pages workflow

* Apply kev's suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* update assets
2025-09-27 11:01:12 -05:00
Wlowscha
62109bdaf9
[Challenge][Bug] Restrict starters with gender-based evolutions in challenges (#6564)
* Added gender restrictions

* No male Ralts in mono fairy challenge
2025-09-25 08:48:47 -05:00
Sirz Benjie
0578729799
[UI/UX] Show username now works with up to 7 local user accounts instead of 2 (#6571)
allow up to 7 usernames in panel before P02
2025-09-25 08:41:44 -05:00
Dean
e5cc11dee7
[Bug] Fix CheckSwitchPhase not appearing on new wave (#6591) 2025-09-25 08:18:23 -05:00
Sirz Benjie
6766940fa1
[Misc] Make the repo REUSE compliant (#6474)
* Add license information

* Add reuse lint workflow

* Add snippets for spdx

* fix: minor wording adjustments and typo fixes

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* chore: add FileContributor attributions for Bertie

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* begin licensing some audio assets

* Add pokemon reborn sound affect attribution

* Annotate Leavannite's section

* Add more licensing info

* Add license info to license files ._.

* Move ps1 files out of public

* Add license for animation jsons

* Add license for bat scripts in public

* Update licensing in scripts

* Fix typo in license ref

* Fix AGPL-3.0-or-later

* Add license info to typedoc.config.js

* Add MIT license for snippets

* chore: update license info for files in scripts

* chore: update license info

* chore: update license info

* chore: update license info

* Remove licenses used only by public before linting with reuse

* Add license info to new files added by docker PR

* chore: apply biome

* fix: add back linting workflow lost during merge

* Add attribution based on Hanniel's information

* Add attribution based on Officer Porkchop and Green Ninja's information

* add attribution to unicorn_power for reshiram/zekrom/kyurem epic variant

* Fixup minor typo

* Adjust sprite test to not think REUSE.toml is a sprite json

* Add missing continue-on-error to workflow

* fix: address kev's comments from code review

* docs: minor touchups

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-09-23 08:49:03 -05:00
Wlowscha
86f2963a47
[Test][UI/UX] Add save file with full, sanitized unlocks (#6514)
* Added save file with full, sanitized unlocks

* Added unlocks (achievements and game modes)
2025-09-23 08:36:10 -05:00
Fabi
84aa8601fb
[Bug] Fix capped rare candy friendship gain (#6565)
* correctly cap rare candy friendship gain

* use correct var for achv
2025-09-23 08:14:22 -05:00
Sirz Benjie
8d5ba221d8
[Refactor] Refactor boss health segment calculation to improve clarity (#6574)
* Refactor boss health bar

* Apply Kev's suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-22 20:08:39 -05:00
Lugiad
cffbafe4bd
[i18n] Language codes adjustments (#6587) 2025-09-22 05:45:28 -07:00
Dean
1c9843618c
[Misc] Blacklist more dynamic phases (#6585) 2025-09-21 12:05:13 -07:00
Sirz Benjie
d3edfb25a1
[Bug][Ability] Queenly Majesty flyout during move select (#6569) 2025-09-21 19:04:57 +00:00
Wlowscha
2fe99cc3bf
[Refactor] Refactor Starter and its handling (#6477)
* Reworked `Starter` interface with more explicit information

* Use Starter in ssui

* Fixed some bugs

* Passing starter.ivs to playerPokemon

* Using speciesIds

* Fixed getTestRunStarters

* Reverted some parameter changes

* Initialize starters in ssui

* Don't clear starters before starting run

* Fix to game manager

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Set ivs to 0 in part timer test

* Setting the right ivs

* Moved ssui to handlers folder

* Ran biome all

* Fixed broken imports

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-21 11:07:08 -07:00
Lugiad
cf5e7fd981
[UI/UX] Optimize text PNGs (#6584) 2025-09-21 06:55:54 -07:00
NightKev
be61996044 [Docs] Fix/update some comments and spacing 2025-09-21 00:22:53 -07:00
NightKev
9f851591cb [Dev] Update pnpm 2025-09-21 00:21:27 -07:00
Dean
25416ebf47
[UI] Avoid prematurely updating HP bar when applying damage (#6582)
Avoid prematurely updating HP bar when applying damage
2025-09-20 22:24:50 -05:00
Dean
87e6095a00
[Misc/Feature] Add dynamic turn order (#6036)
* Add new priority queues

* Add dynamic queue manager

* Add timing modifier and fix post speed ordering

* Make `phaseQueue` private

* Fix `gameManager.setTurnOrder`

* Update `findPhase` to also check dynamic queues

* Modify existing phase manager methods to check dynamic queues

* Fix move order persisting through tests

* Fix magic coat/bounce

* Use append for magic coat/bounce

* Remove `getSpeedOrder` from `TurnStartPhase`, fix references to `getCommandOrder` in tests

* Fix round queuing last instead of next

* Add quick draw application

* Add quick claw activation

* Fix turn order tracking

* Add move header queue to fix ordering

* Fix abilities activating immediately on summon

* Fix `postsummonphases` being shuffled (need to handle speed ties differently here)

* Update speed order function

* Add `StaticSwitchSummonPhase`

* Fix magic coat/bounce error from conflict resolution

* Remove conditional queue

* Fix dancer and baton pass tests

* Automatically queue consecutive Pokémon phases as dynamic

* Move turn end phases queuing back to `TurnStartPhase`

* Fix `LearnMovePhase`

* Remove `PrependSplice`

* Move DQM to phase manager

* Fix various phases being pushed instead of unshifted

* Remove `StaticSwitchSummonPhase`

* Ensure the top queue is always at length - 1

* Fix encounter `PostSummonPhase`s and Revival Blessing

* Fix move headers

* Remove implicit ordering from DQM

* Fix `PostSummonPhase`s in encounters running too early

* Fix `tryRemovePhase` usages

* Add `MovePhase` after `MoveEndPhase` automatically

* Implement an `inSpeedOrder` function

* Merge fixes

* Fix encounter rewards

* Defer `FaintPhase`s where splice was used previously

* Separate speed order utils to avoid circular imports

* Temporarily disable lunar dance test

* Simplify deferral

* Remove move priority modifier

* Fix TS errors in code files

* Fix ts errors in tests

* Fix more test files

* Fix postsummon + checkswitch ability activations

* Fix `removeAll`

* Reposition `positionalTagPhase`

* Re-add `startCurrentPhase`

* Avoid overwriting `currentPhase` after `turnStart`

* Delete `switchSummonPhasePriorityQueue`

* Update `phase-manager.ts`

* Remove uses of `isNullOrUndefined`

* Rename deferral methods

* Update docs and use `getPlayerField(true)` in turn start phase

* Use `.getEnemyField(true)`

* Update docs for post summon phase priority queue (psppq)

* Update speed order utils

* Remove null from `nextPhase`

* Update move phase timing modifier docs

* Remove mention of phases from base priority queue class

* Remove and replace `applyInSpeedOrder`

* Don't sort weather effect phases

* Order priority queues before removing

- Add some `readonly` and `public` modifiers

- Remove unused `queuedPhases` field from `MoveEffectPhase`

* Fix linting in `phase-manager.ts`

* Remove unnecessary turn order modification in Rage Fist test

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-20 17:49:40 -05:00
Dean
d02980dd4e
[Move] Fully implement Healing wish (/Lunar Dance) and remove nextCommandPhaseQueue (#6027)
* Remove NCPQ

* Implement PendingHealTag

* Fix test

* Code review

* Use message directly instead of as key in tag

* Update tag for serialization

* Update test import

* Update src/data/arena-tag.ts

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* Remove isNullOrUndefined uses

* Fix arena tag type(o)

* Fix pendinghealtag

* Fix hwish tests

* Arena tag denesting

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-09-20 17:32:31 -05:00
Bertie690
1691951c87
[Test] Added Map key matcher; enforced strong typing on matchers (#6561)
* Added `toHaveKey` matcher + fixed imports

* Broke up the test matchers into multiple smaller interfaces

* Added restricted typing on matchers

Now we can't call `expect(game).toHaveFullHp()`!!!!!

* Updated comment

* Renamed `toEqualArrayUnsorted` into `toEqualUnsorted`

* Moved comment at top of file

* Fix `@module` doc comment

* Remove extra space

* Fix typo

* Fixed key ssue in matchers

* Update to-have-key.ts

* Update test/@types/vitest.d.ts

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Fixed missing braces inside comment

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-20 17:24:27 -05:00
Sirz Benjie
207808f37d
[Docs] Cleanup docs in pokemon.ts (#6543)
* [Docs] Cleanup docs in pokemon.ts

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Fabi <192151969+fabske0@users.noreply.github.com>

* chore: apply biome

* revert changes to docstrings that will conflict
2025-09-20 17:15:57 -05:00
Dean
405b1d389d
[Bug] Apply Supreme Overlord only once on summon (#6575)
* Implement supreme overlord as a battler tag

* Make ability a conditionalattr

* Add tag to map

* Update test

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* Add edgeCase marker

* Extend from AbilityBattlerTag

* Run biome

---------

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-09-19 23:08:02 -05:00
Sirz Benjie
16a903b975
[Bug][Ability] Remove flyout for rivalry (#6577)
Remove flyout for rivalry
2025-09-19 20:47:35 -07:00
Sirz Benjie
773f5b23f2
[Deps] Bump typedoc version (#6576) 2025-09-19 17:23:50 -07:00
Fabi
7d83a3a24a
[UI/UX] Show correct max duration in flyout (#6566)
* Fix terrain & weather max duration flyout

* show correct max duration for tags

* maka maxDuration optional in arenaEvent constructor

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-18 13:35:22 -07:00
Madmadness65
0e87391b20
[Misc] Update biome pools in init functions (#6572)
Added new biome entries for Type: Null, Silvally, Poipole, Naganadel, Kubfu, Urshifu, Scientist, and Swimmer to their respective init functions, and reran `outputPools`.
2025-09-18 14:13:52 -05:00
Bertie690
3d9e493e5f
[Test] Updated more uses of game.scene.getEnemyField and game.scene.getPlayerField to use updated test utils (#6524) 2025-09-18 09:36:08 -05:00
Sirz Benjie
da766f364c
[Tests] Cleanup getCookie and add many unit tests (#6562)
Cleanup `getCookie` and add many unit tests
2025-09-18 12:52:15 +00:00
Fabi
37e6371eef
[Dev] Allow forcing all trainer variants in trainer override (#6391) 2025-09-16 10:48:19 -05:00
Madmadness65
e25db16326 [P3 Bug] Fix login screen not playing menu_open SFX properly
It did not properly specify that the SFX file was in the ui folder.
2025-09-16 02:45:30 -05:00
Sirz Benjie
0c921cdb4a
[Tests][Bug][Beta] Fix ditto bug and add unit tests (#6559)
* Fix ditto bug and add unit tests

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-09-15 23:26:57 -05:00
Sirz Benjie
85c38dfdbe
[Bug] Cookies being fetched improperly v2 2025-09-15 19:55:45 -05:00
Sirz Benjie
6ce59ecbd9
[Bug] Cookies being fetched improperly 2025-09-15 19:49:18 -05:00
Bertie690
65bb58a635
[Dev] Fix + rename test:create boilerplate file (#6560)
* Rename `default.ts` to `default.boilerplate.ts`

* Update `test:create` script to look in the correct location

* Update `biome.jsonc` to remove explicit boilerplate folder check

* Apply Biome
2025-09-15 13:51:28 -07:00
Sirz Benjie
8013093513
[Bug] Secondary fusions with gender evo condition can now evolve (#6510) 2025-09-15 14:04:13 -05:00
NightKev
b7cee4b313 [Misc] Remove leftover temporary comments in pokemon.ts 2025-09-15 00:25:25 -07:00
NightKev
de94e738fb [Docs] Add blank space to prevent incorrect comment attachment
Biome will "attach" comments to imports if there is no space between
them when it sorts imports (this allows suppression comments to work)
2025-09-14 20:45:01 -07:00
Sirz Benjie
793dea0024
[Bug] [Docs] Fix @module tags (#6557)
Fix `@module` tags
2025-09-14 22:35:12 -05:00
Xavion3
25a2fb4266
[Balance] Tweak trainer moveset TM generation. (#6533)
* Lower TM weight in moveset generation.

* Implement a cap on amount of TMs based on wave.

* Extract ai moveset generation to its own file

* Minor doc cleanup

* Move magic numbers to balance file and export them

* Tweak stab move weight generation

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-09-14 21:44:58 -05:00
Madmadness65
24a0ca95f4
[Balance] Change Happiny evolution method, update Chansey happiness req
https://github.com/pagefaultgames/pokerogue/pull/6551

* [Balance] Change Happiny evolution method

Happiny now evolves into Chansey by using an Oval Stone during the Dawn or Day, instead of 160 friendship (Blissey's friendship requirement of 200 remains unchanged).
Also removed unnecessary comments from Gligar's and Sneasel's evolutions.

* Update Chansey -> Blissey 200 -> 180 Friendship Required (Base 140)

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-14 14:58:56 +00:00
Sirz Benjie
521b88eabe
[Bug] [Beta] Fix bug where boss segments are not actually broken (#6553)
Fix bug where boss segments are not actually broken
2025-09-13 18:36:21 -05:00
NightKev
b170145fb8 [Dev] Update pnpm from 10.14.0 to 10.16.1 2025-09-13 14:55:13 -07:00
Sirz Benjie
3ed6a9a960
[Balance] Trainer boss Pokémon no longer gain a stat boost when a boss segment is broken #6552
Trainer boss Pokémon no longer gain a stat boost when a boss segment is broken
2025-09-13 16:21:24 -04:00
Sirz Benjie
e233f24526
[Deps] Update biome to 2.2.4 (#6550)
* Update biome and adjust rules

* Add noMisusedPromises

* Downgrade `noMisusedPromises` to info, enable noImportCycles
2025-09-13 20:13:21 +00:00
Bertie690
c217f47942
[Refactor] Added playTween utility function (#6545)
* Added `playTween` utility function

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Update comment wording for benjie

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2025-09-13 18:36:38 +00:00
Bertie690
465f0c2ced
[Refactor] getPokemonById returns undefined instead of null
https://github.com/pagefaultgames/pokerogue/pull/6544

* [Refactor] Make `BattleScene.getPokemonById` return `undefined` instead of `null`

* fixed substitute unit test :(

* Update src/phases/obtain-status-effect-phase.ts

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Update src/phases/pokemon-phase.ts

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Update battle-scene.ts comment for dean

* Add todo comment

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-09-12 22:19:48 -07:00