Skip to content

Introduce trainer classes as a first class database entity - #802

Open
Aelysya wants to merge 4 commits into
developfrom
784-introduce-trainer-classes-as-a-first-class-database-entity
Open

Introduce trainer classes as a first class database entity#802
Aelysya wants to merge 4 commits into
developfrom
784-introduce-trainer-classes-as-a-first-class-database-entity

Conversation

@Aelysya

@Aelysya Aelysya commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR adds a new database page to manage Trainer classes as true entities rather than text entries, allowing to reduce the amount of duplicate data in the projetc when multiple trainers share a trainer class.
There is also an included fix of the texts shown in the SelectTrainer component that was not correctly updated after a name or class change.

closes #784

Important

This PR will break PSDK loading process without the necessary update

Related PSDK PR: https://gitlab.com/pokemonsdk/pokemonsdk/-/merge_requests/1881

Note before testing

Open your project outside of this PR's branch to prepare it.
In the trainers page, add at least two new trainers to test the de-duplication system of the migration. One should have a trainer class that is an exact copy of another existing one (across all languages). The other should only have a change in one of the languages (same name in english, different in french for example)
Save the project and switch to this PR's branch to continue the tests.

Tests to perform

  • The project loads correctly.
  • After the migration played, check that you have two new CSV files, 100078.csv and 200007.csv.
  • The 200007.csv should be in the Studio folder and only contain empty lines.
  • The 100078.csv should contain one line per pre-existing trainer classes.
  • Verify that there is no duplicate lines in the 100078.csv.
  • Trainer classes db symbols are based on their english name, verify that duplicates with the same english name correctly have a different db symbol (should be suffixed by a number)

  • In the Trainer Classes page, test the editor, creation, deletion, translation etc... all basic functionnalities should work as expected.
  • In the Trainers page, the Trainer Class text in the main frame is now clickable when holding CTRL, the shortcut should bring you to the correct page.
  • Modifying the Class of a trainer is now done through a select rather than a text field.
  • Additional bug fix: Modifying the class or the name of a trainer is correctly reflected in the select at the top of the app (you can compare to the prod version to see what the previous behaviour was).

  • Style is following Figma (minus the elements that'll be introduced in future PRs like money, AI level, resources etc...)

@Aelysya Aelysya self-assigned this Aug 25, 2026
@Aelysya Aelysya linked an issue Aug 25, 2026 that may be closed by this pull request
31 tasks
@Aelysya Aelysya added the PSDK Issues that will need changes to Pokémon SDK game engine label Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PSDK Issues that will need changes to Pokémon SDK game engine

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Introduce Trainer Classes as a First-Class Database Entity

1 participant