Changelog
[0.16.6-beta] - 2025-07-07
Added:
- #320 Config option
uniqueTrainerRadius
: Specify a radius for trainers to check for the existence of other trainers with the same identity when a spawn attempt is made (default is-1
= whole world)
Fixed:
- #319 Lag spikes on player log in (experimental, a bit difficult to test/confirm situations with higher player numbers on my side)
- #318 Trainer Repel Rod being unbreakable and not dropping its item
- #317 Waterlogging a Trainer Repel Rod causing a crash
Changelog
[0.16.4-beta] - 2025-06-21
Changed:
- #315 Default translation (
en_us
) of empty series title (series.rctmod.empty.title
) to "No Series" - #314 Lowered difficulty rating of
unbound
series from9
to8
- #313 Trainer Card UI now shows current series title for the "All" trainers category
Fixed:
- #312 Reorganized some initialization logic (this might fix the startup issue some people with larger mod packs encountered on neoforge)
- #311 Trainer Card arrow not rendering while in offhand
- #310 Trainer Card gui opening while placing blocks
Removed:
- #309 Language key
trainer_type.rctmod.all.title
Changelog
[0.16.2-beta] - 2025-06-16
Changed:
- #306 Error handling of trainer entities with invalid trainer ids: A warning will now be printed in chat (for ops only) and the trainer will be ignored otherwise (instead of shutting down the server)
Fixed:
- #305 Cobblemon event registration after the mod was initialized (this hopefully fixes some rarely occurring crashes on client/server startup)
- #304 Some random crashes related to attempts of accessing a
PlayerState
before it was initialized
Changelog
[0.16.1-beta] - 2025-06-06
Changed:
- #303 Many trainer pokemon will now hold the appropriate gimmick item if mega showdown is installed
- #302 Update min dependency of rctapi to version
0.13.0-beta
: Trainers are now capable of using gimmicks like zmoves or mega evolutions (requires mega showdown)
Fixed:
- #301 Some trainer pokemon not having the correct aspect (e.g. silvally holding a memory or groudon with a red orb)
Changelog
[0.16.0-beta] - 2025-05-13
Added:
- #300 Config option
freeroamRequiresCompletedSeries
: Configure freeroam series requirement - #299 Config option
initialSeries
: Defines a series new players are automatically assigned to - #298 Language support for trainer names and pokemon nicknames (see also #294)
- #297 New language keys
commands.rctmod.errors.unknown_series
: Error when attempting to set a player to an unknwon seriesgui.rctmod.actionbar.warning.level_cap
: Notification shown to players that attempt to level up pokemon at or above their level capgui.rctmod.title.series_continued
: Title display when a series was continuedgui.rctmod.title.series_paused
: Title display when a series was pausedgui.rctmod.trainer_association.series_continue
: Notice of series continuation in trainer association trade (instead of "Important" section)series.rctmod.freeroam.description
: Freeroam series descriptionseries.rctmod.freeroam.title
: Freeroam series title
- #296 Special freeroam series: Grants players a level cap of
100
and allows to pause the current series- A trade for the freeroam series will be available at the trainer association, for players that have completed any series by default
- Players that are in the freeroam series may switch back to their previous series at the trainer association and continue where they left off (it will be the only available series trade)
Changed:
- #295 Bumped min required version of rctapi to
0.12.0-beta
- #294 Language keys are now automatically defined for certain data pack objects (if not explicitly defined otherwise)
- Pokemon
nickname
property. Format:pokemon.rctmod.<trainer_id>.<position>.nickname
(<position>
starts at0
; theliteral
of anickname
may not be empty, or the translation will be ignored) - Series
description
property. Format:series.rctmod.<series_id>.description
- Series
title
property. Format:series.rctmod.<series_id>.title
- Trainer
name
property. Format:trainer.rctmod.<trainer_id>.name
- Trainer type
name
property. Format:trainer_type.rctmod.<type_id>.name
- Pokemon
- #293 The Trainer Association will no longer list a trade for the current series of a player
- #292 Trainers that are part of a series progression may now refuse to battle players that are not in the correct series (unless a player has beaten them before)
- #291 Translatable text now uses a configured
literal
as fallback if no translation was found
Fixed:
- #290 Fixed Rotom forms of various trainers
- #289 Trainer Card mistakenly indicating that some progression trainers lower the level cap
- #288 Various messages getting displayed in the language that has been configured on the server rather than the configured language on clients (i.e. trainer dialogs and series notifications)
- #287
player set/get defeats
commands not working for trainers that are in a different series
Removed:
- #286 Config option
considerEmptySeriesCompleted
(useinitialSeries="freeroam"
instead) - #285 Identity line ("a.k.a") in Trainer Card (identities are not necessarily well formatted like names and will not get translated)
Changelog
[0.15.0-beta] - 2025-04-24
Added:
- #282 Trainer Repel Rod: Prevents trainers from naturally spawning in a
7x7
chunk area
Changed:
- #281 Added
InBattle
boolean tag to trainer entities - #280 Adjusted some default configs to slightly lower trainer spawn rates
- #279 Changed and added some dialog contexts
- Added
missing_required_trainer_light_of_ruin
- Added
missing_required_trainer_team_galactic
- Added
missing_required_trainer_team_shadow
- Added
missing_required_trainer
- Added
wrong_series
(currently not in use) - Changed
battle_lost
->on_battle_lost
- Changed
battle_start
->on_battle_start
- Changed
battle_won
->on_battle_won
- Changed
done_generic
->unknown_reason
- Changed
done_looser
->trainer_lost
- Changed
done_winner
->trainer_won
- Changed
is_busy
->trainer_busy
- Changed
missing_badges
->missing_required_trainer_leader
- Changed
missing_beaten_champs
->missing_required_trainer_champ
- Changed
missing_beaten_e4
->missing_required_trainer_e4
- Changed
missing_beaten_rival
->missing_required_trainer_rival
- Changed
missing_beaten_team_rocket
->missing_required_trainer_team_rocket
- Added
- #278 Configured distinct identities for Team Rocket Grunts, Bug Catchers and other nameless trainers so that different versions can spawn at the same time
- #277 Defeated trainers won't be immediately removed from a players spawn cap anymore but after a short period of time instead
- #276 Improved language support
- The
title
anddescription
of series, thename
of trainer types as well as dialogs now alternatively accept a json object with atranslatable
and/orliteral
field as value (setting directly a string is equivalent to defining a object with aliteral
field having that string). Support for thename
of trainers will be added at a later point in time - Updated/Added
en_us
language keys for most content from this mod
- The
- #275 New
signatureItem
property for trainers: Formerly known astrainerSpawnerItems
these are now configured per trainer mob (data pack object), yet they still serve the same purpose (items to configure a Trainer Spawner). Updated current trainers to match the previous default configuration and defined signature items for all required trainers from the bdsp and unbound series as well as the ev trainers (friendly coaches) - #274 Overhauled some features of the Trainer Spawner block
- Added
TrainerIds
block entity tag: Now also supports trainers that do not have any signature items configured (e.g. it is now possible to generate Trainer Spawners with arbitrary lists of trainer ids) - Added block state property
lootable
(default istrue
): Set tofalse
to prevent signature items from getting dropped - Can now be configured with multiple items at the same time
- Fixed some issues with trainers not properly occupying trainer spawners: A spawner may not spawn another trainer if it is already occupied
- Removed
renderItemKey
block entity tag: Render items are now derived from the configured trainer id list (see also #275) - The block now also drops all signature items for the configured trainers when destroyed
- Trainers that occupy a trainer spawner have a slight chance to switch to another non-occupied trainer spawner - with the correct signature item - in their vicinity (they did this already but somewhat uncontrolled, this should be fixed now)
- Added
- #273 Trainer cooldowns and defeat count restrictions: Trainers can now be battled indefinetely until beaten but their cooldowns will grow larger when losing frequently in a short time span against them
- #272 Trainer mobs (data pack object)
maxTrainerWins
andmaxTrainerDefeats
may now accept negative values to represent infinity (updated all trainers from this mod accordingly)
Fixed:
- #271 Some issues with the rendering of Trainer Spawner items when multiple spawners are in view
- #270 Trainer Association GUI not opening with the 'Infinite Trading' mod installed (and potentially some other issues related to that)
- #269 Trainer battles getting softlocked at the start if the trainer happened to became attached to a different entity in an unloaded chunk
Removed:
- #268 Config option
trainerSpawnerItems
(see also #275)
Changelog
Important: Version 0.14 introduces the series system. Existing player saves will automatically be assigned to the radicalred series. New players will start with the empty series and have to pick a series first (see also #233 Trainer Association).
[0.14.3-beta] - 2025-03-29
Changed:
- #267 Updated min dependency of
rctapi
to0.10.15-beta
Fixed:
- #266 Custom data packs not getting synchronized to clients (a potential cause for various issues in server environments, providing wrong or misleading information to clients)
- Added Trainer Card loading indicator
- Synchronization takes place on player log in or after
/reload