Commit Graph

122 Commits

Author SHA1 Message Date
André Bastos Dias
5abbb6fb67
Champions: Disable IVs selector (#2655)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
* Champions: Disable IVs box

* Lint

* Undo change
2026-04-20 02:20:30 -06:00
André Bastos Dias
9420b96fed
Fix stat bars proportions for Champions, VGC and LC (#2639)
* Fix Champions stat bars proportions

* Apply changes to VGC and LC

* Lint

* Fix National Dex LC Draft

* Implementation for the new client

* New client: change Champions and Let's Go level

* Use Math and Min

* Use const
2026-04-14 14:28:08 -06:00
Kris Johnson
5581e4c465 Fix stat bars
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-04-10 21:05:59 -06:00
Kris Johnson
117043e90c
Add champions client support (#2633)
* Add champions client support

* oops

* Fix VGC/BSS builder

* oops

* Apply suggestions from code review

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
2026-04-10 20:36:57 -06:00
Guangcong Luo
c66a182521 Support AFD sprites in usercount/battlecount
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2026-04-02 07:40:21 +00:00
Guangcong Luo
20ec4440ef
Show type effectiveness on move tooltips (#2624)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
This is advanced type effectiveness that takes into account a variety of things that the games themselves don't, such as Prankster vs Dark, priority in Psychic Terrain, Tinted Lens, Water Absorb, that sort of thing.

Hardcore Mode is supported, and makes it work the way it works in the games.

Immunity is shown on buttons, but effectiveness is not (outside of Hardcore Mode), mostly because some users think it looks cluttered.
2026-04-01 01:50:13 -07:00
Guangcong Luo
8c8b11751c Fix misbehaving ad
For whatever reason, the ad code is removing any text that says
"Download", which is making searches for Porygon (which has "Download"
as an ability) stop working. This is a simple workaround for that
issue.
2026-03-15 06:23:38 +00:00
HiZo
0608b72baf
Exclude certain formats from automatically lowering to 0 attack IVs (#2595)
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
* Exclude certain formats from automatically lowering to 0 attack IVs

* shows much i know about js lol

* >_>
2026-03-01 14:45:18 -07:00
Kris Johnson
e263055242 Update custom banlists in teambuilder
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2026-02-01 12:02:57 -07:00
Kris Johnson
1bcffe4b75
Fix typo 2026-01-08 15:34:41 -07:00
André Bastos Dias
cedd472222
[Client] Implement Mega Stones as {key: value} pairs (#2590)
* [Client] Implement Mega Stones as pairs {key: value}

* Simplify conditions

* Fix

* Update play.pokemonshowdown.com/js/client-teambuilder.js

---------

Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
2026-01-08 15:04:54 -07:00
HiZo
d5c279549b
Bio Mech Mons: Add teambuilder support (#2585) 2026-01-01 02:09:02 -07:00
boughtabigk1
13ed41644f
Fix format button (#2581) 2025-12-26 05:30:22 -08:00
Mia
b698a6ef53 Remove waterfall background
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2025-12-17 22:30:06 -06:00
boughtabigk1
871fa18898
Fix long battle rewind (#2561)
---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2025-12-04 20:55:49 -08:00
Kris Johnson
a1f3f059d1 Add teambuilder support for Legends Z-A OU 2025-10-20 23:05:31 -06:00
Aurastic
8fdd889bb8
Bring back PS' true mascot Meloetta (#2533)
* Bring back Meloetta!

* add
2025-09-27 14:33:16 -06:00
Guangcong Luo
2598694835 New logo to match new icon
The new icon was way back in ad4a3ab2ff

Two years ago! But since I was redoing the logo for Malamar Showdown,
I figured I'd spruce up the regular logo, too.

The main change is just the color scheme, and the exclamation mark
being rounded. The shadows have also been tightened up. There's a lot
of pixel-perfect tweaking going on, too, with the hole in the "e",
and also some of that tweaking in "ET" in "BETA", too.

(Oh, also, so ends Malamar Showdown. o7 You'll always be _my_ friend,
Malamar!)
2025-09-15 03:50:42 +00:00
Guangcong Luo
9f53c024a2 Malamar Showdown 2025-09-15 02:35:38 +00:00
Mia
322528ff0b Always cachebuster color and coil loading
Some checks failed
Node.js CI / build (22.x) (push) Has been cancelled
2025-09-07 11:45:08 -05:00
Kris Johnson
415e41fc49 Malamar is the new PS! mascot
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-09-06 22:10:55 -06:00
ShivaD173
288a072f8f
Do not set Gimmighoul-Roaming Atk IVs to 0 by default (#2490)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-09-06 15:25:10 -05:00
Mia
b1dcb90a8c Increase max box size to 50
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
For parity with the teams database's max team size.
2025-08-08 22:00:50 -05:00
Mia
10912eba24 Storage: Unpack team natures properly
This object is specifically indexed by name instead of ID - remote teams are sometimes lowercase. To be most comprehensive, we handle this at team unpack rather than whack-a-moling callsites.
2025-08-08 21:57:46 -05:00
Mia
58f9ee482b Add /resources command, fix crash when loading resources page on refresh
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-07-24 21:21:31 +00:00
Mia
b9cb3f356a Teams: Redirect to homepage when deleting teams
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-07-24 01:51:38 -05:00
Mia
2bed05fcb9 Teams: Support copying a team to your builder 2025-07-23 22:59:56 -05:00
Mia
9ad3f03bc9 Update preactalpha cookie expiry
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-07-22 14:08:12 -05:00
Mia
fa99d0ee25
Add a resource page indexing all public commands (#2477)
* Add a resource page indexing all public commands

* Add preact
2025-07-22 13:51:10 -05:00
Guangcong Luo
d1359c3c04 Preact minor updates batch 24
- Rename to "Client rewrite" in UI
  - As we gear up for release, I don't want people to call it Preact
    too much, because that's the name of the UI library we use whose
    reputation shouldn't be affected by this too much.
- Give DM windows flex height
- Fix reconnect flow

Trivial
- Fix mistake in join/leave batching
2025-05-26 05:50:16 +00:00
André Bastos Dias
917855a0ec
Add Home sprites (#2430)
---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2025-05-22 17:41:30 -07:00
Daniel Chen
16c7bab0b2
Preact Teambuilder: Improve link importing (#2425)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
* Make link import change team title & format
* Also adds a placeholder msg to the team textbox.

---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2025-05-18 11:48:12 -07:00
Guangcong Luo
4b8260b077 Preact minor updates batch 22
- Tab complete can now complete offline users
  - This actually improves performance, too, because the userlist is
    now cached instead of needing to be re-sorted every update.

Battles
- Add `aria-disabled` to "disabled" buttons
- Make disabled buttons look more disabled

Teambuilder
- Textbox mode: Fix inner focus location when adding first pokemon
- Fix species display in certain cases
- Consistently use Dex.resourcePrefix for icons for testclient support
2025-05-18 16:54:16 +00:00
pyuk-bot
924400bba7
Fix old client player controls when maxMoves aren't in request (#2421)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-05-14 16:59:20 -07:00
pyuk-bot
c7a9d18585
Fix max move conversion for type-changing moves (#2418) 2025-05-14 08:32:48 -07:00
André Bastos Dias
73ea84c0d0
Don't force Tera types because of Hackmons (#2324)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
---------

Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2025-05-13 14:45:16 -07:00
Guangcong Luo
5e3e017773 Preact: Add a new "wizard" teambuilder
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
Major
- Team editor is now its own file, so that it can be used outside of PS.
- New wizard editor (more like old teambuilder)
- Text editor now supports undo
- Don't let species be cleared
- Finish pokemon/ability/item/move lists
  - Currently selected options are highlighted
  - Keyboard navigation
- Mobile support!
- Text editor now uses big icons on desktop
- With only a few remaining issues, we have reached parity with the old
  teambuilder.

Minor
- Fix links to abilities and moves
- New <ul class="tabbar"> CSS. Unfortunately not backportable, so it'll
  have to wait until Preact client is released before it can be used.
- Two-tone stats bar chart
- EV editor stub mobile support
2025-05-04 09:32:43 +00:00
Guangcong Luo
9019a0769e Preact minor updates batch 14
Minor
- Don't allow reconnects (force refresh) after a day of uptime
- Don't toggle <details> when selecting text
- Preserve bottom-scroll position when expanding <details>
- Prevent certain kinds of overscroll on mobile
  - Scrolling on mobile should now be "less wobbly". Also, swiping
    down to refresh no longer happens inside rooms like a chat room
    or the main menu (although you can still do it intentionally by
    swiping down in the left menu).
- Fix selection in the old newish dexsearch responses

Trivial
- Add Date.now polyfill
- Linter: `no-constant-condition` is now a warning
- Support `PS.confirm` and `PS.prompt`
- Make close buttons in the left sidebar bigger
- Add a `Net.formData` function to get form data
2025-04-21 13:16:26 +00:00
Guangcong Luo
ab44f2de45 Fix dragging teams from teambuilder to computer
Apparently this was broken in the loginserver refactor because we all
forgot it existed...
2025-04-20 12:10:38 +00:00
Guangcong Luo
64cf8dd361 Preact client minor update batch 12
Minor
- Fix "[Gen 6]" appearing in wrong places for the last time
- Fix a bunch of bugs in back/forward history
- Support short links (`news` can't be supported because it conflicts
  with the mini-window)
- Support `no-panel-intercept`
- Fix Z-move alignment
- Speed up loading by not using SockJS in newer browsers
- Fix backgrounds
  - Uploads required pressing Done, but it's supposed to be a close
    button
  - Random backgrounds weren't working
- Support ctrl+clicking and shift+clicking links
- Adjust main menu padding
  - Mini windows are now 20px wider
- Fix mini-window minimize buttons in Safari
- Add a maximize button to mini windows
- Stop special-casing News mini-window CSS
- Support mini-windows in vertical tab mode
  - PMs still default to being full tab, but News is now a mini-window
    on screens of any size, because the full tab is actually pretty
    unergonomic
- Fix highlight notification room in chat rooms
  - This is also refactored to be better code now
- Fix tab overflow
  - Give 180px space for userbar instead of 165px
  - Fix calculation of when to overflow
  - Improve tab list design
  - Add checkbox to switch to vertical tabs
- Fix race condition leading to connection failure

Trivial
- Options is now a semimodal
- Fix crash in load tracker
- Remove unused `update = forceUpdate` code in Popups
- Use the redesigned dark mode popups from the design refresh #2175
2025-04-19 11:58:16 +00:00
Guangcong Luo
5971e5151a Preact minor update batch 11
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
Minor
- Unhide right panel when choosing "Two panels" layout option
- Refactor focusing
  - Correctly focus next room when closing currently active room
  - Correctly focus room when joining new room
- Use strict mode on all compiled files
- Fix router when started on `/` (it previously required starting on a
  non-empty room ID, which wasn't noticeable back when the URL needed
  to be `/preactalpha`)
- Update teambuilder sidebar CSS, to make it easier to add regular text
  - This is mainly for the "Tournaments" button in the main menu,
    which shares the CSS
- Fix new tournament elim tree text in Safari
- Update new tournament elim tree highlighted links to reliably
  link every still-playing game
- Remove latest gen from format name displays everywhere
  - Previously, they would only be removed from the format dropdown,
    but now they're also gone from the Ladder tab, battle tabs, and
    `/rank`
- Support async d3 loading
  - This allows chatrooms to be loaded way before all our dependencies
    are fully downloaded
- Remove "[Gen 9]" from format names everywhere (previously it was only
  removed from the format dropdown)
  - Also add "[Gen 6]" to unlabeled formats in `/rank` (Gen 6 was the
    last time we didn't have format generation as part of format names)

Trivial
- Stricter JSX linting
  - (unfortunately, most of the JSX style enforcement I actually want
    isn't possible in @stylistic)
- Make room.subscribeTo's second parameter optional
- Rearrange and comment loading order
- Rename hiddenInit -> focusNextUpdate (clarity)
- Rename PSMain -> PSView (clarity)
- Fix button spacing in Change Password
- Add `touch-action: manipulation` to <a> tags
- Refactor `nodeSize` in elim tour trees
2025-04-18 05:47:58 +00:00
Guangcong Luo
b0d565a30b Preact minor update batch 10
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
Minor
- Fix crashes/bugs in backported elim tournament redesign
- Support opting into Preact client via cookie
- Fix popup positioning when parent element is unmounted (i.e. when you
  switch layouts in the Options menu)

Trivial
- Focus Main Menu and not Rooms when loading home page in single panel
  mode
- Correctly set user.registered
  ( Fixes https://github.com/smogon/pokemon-showdown/pull/11031 )
- Fix some text in the Options menu
2025-04-17 10:19:22 +00:00
Kris Johnson
7c1ffc9e39
Tournaments: Backport elim bracket redesign (#2368) 2025-04-16 21:28:45 -07:00
Guangcong Luo
8a01113f3e Update replay download link
In practice this link should never go through, but I figure it should
have some sort of message for it to make sense at all...
2025-04-13 08:12:44 +00:00
WifiLatency
9f151c3149
Collapsible Datasearches (#2338)
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
* Clientside javascript to collapse and expand datasearch results

* Fix results expanding when clicking a link in the results

* Remove for of syntax

---------

Co-authored-by: WifiLatency <michaelweger5053@gmail.com>
2025-04-07 21:18:31 -06:00
Guangcong Luo
7f1c0c6ffc Fix ability listing in PSdex
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-04-05 21:59:19 +00:00
Guangcong Luo
c5b146f41b April Fool's DLC: Add link
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run
2025-04-02 21:18:43 +00:00
Guangcong Luo
5b783ec7f3 Restore AFD code 2025-04-02 04:42:24 +00:00
Guangcong Luo
399289a3f7 April Fool's 2025 updates
The main new joke is #2337, but I made a number of other tweaks.
In particular:

- Bringing back some text from AFD 2019, and adding some more
- Showing the Taunt and Chilly Reception jokes in `/afd sprites`
2025-04-02 04:36:17 +00:00
Mia
cf2ef91360 Client: Remove default-on AFD setting 2025-04-01 23:28:19 -05:00