From 9de042be05c6d1951e8c4536557c4ae0751a2658 Mon Sep 17 00:00:00 2001 From: Ryan Barlow <7389646+ryanbarlow97@users.noreply.github.com> Date: Thu, 24 Sep 2026 14:47:28 +0000 Subject: [PATCH 1/2] refactor: consume character focus from RPCharacters --- README.md | 12 +++++++++++- pom.xml | 6 +++--- .../tfminecraft/research/manager/PlayerManager.java | 10 +++++----- src/main/resources/plugin.yml | 2 +- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index be1dce5..b66cd62 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ project produces its result item at the station. add points to the project, while unneeded aspects are eventually rejected. - **Hidden recipes** — required aspects sit among decoy rows in a shuffled station menu, and both their identity and the product are revealed as research progresses. -- **Character focus** — experiments spend TFMCCore mental points, and a configurable +- **Character focus** — experiments spend RPCharacters focus points, and a configurable MMOCore attribute lowers the reveal and confirmation thresholds. - **Weighted result pools** — outputs grant a fixed item or roll from nested, weighted result templates using TLibs item paths. @@ -32,6 +32,16 @@ Originally created by [Drefvelin](https://github.com/Drefvelin). Technical documentation is maintained in [TF-Minecraft/Docs](https://github.com/TF-Minecraft/Docs). +## Focus dependency + +This version requires RPCharacters 2.1.0 or later for character focus; Research no +longer depends on TFMCCore. Deploy the matching RPCharacters, TFMCCore ownership +handoff build (if installed), and Magic/Research consumers together, then restart. +An older installed TFMCCore makes RPCharacters stand down focus to avoid duplicate +writers, so experiments cannot spend focus until the plugin set is compatible. +Existing Research player files remain available to RPCharacters for legacy focus +imports; this change does not delete or rewrite them. + ## License Copyright (c) 2026 TF-Minecraft contributors. diff --git a/pom.xml b/pom.xml index 11d88e1..a7aa759 100644 --- a/pom.xml +++ b/pom.xml @@ -15,7 +15,7 @@ 21 UTF-8 full - 2.0.1 + 2.1.0 2.0.1 @@ -52,8 +52,8 @@ net.tfminecraft - tfmccore - ${tfmccore.version} + rpcharacters + ${rpcharacters.version} provided diff --git a/src/main/java/net/tfminecraft/research/manager/PlayerManager.java b/src/main/java/net/tfminecraft/research/manager/PlayerManager.java index ca0bb23..855d53e 100644 --- a/src/main/java/net/tfminecraft/research/manager/PlayerManager.java +++ b/src/main/java/net/tfminecraft/research/manager/PlayerManager.java @@ -2,8 +2,8 @@ import org.bukkit.entity.Player; -import net.tfminecraft.tfmccore.TFMCCore; -import net.tfminecraft.tfmccore.focus.FocusService; +import net.tfminecraft.rpcharacters.RPCharacters; +import net.tfminecraft.rpcharacters.focus.FocusService; public final class PlayerManager { @@ -18,17 +18,17 @@ public static PlayerManager getInstance() { } public int getMentalPoints(Player player) { - FocusService focus = TFMCCore.getFocusService(); + FocusService focus = RPCharacters.getFocusService(); return focus != null ? focus.getPoints(player) : 0; } public boolean trySpendMentalPoints(Player player, int amount) { - FocusService focus = TFMCCore.getFocusService(); + FocusService focus = RPCharacters.getFocusService(); return focus != null && focus.trySpend(player, amount); } public void grantMentalPoints(Player player, int amount) { - FocusService focus = TFMCCore.getFocusService(); + FocusService focus = RPCharacters.getFocusService(); if (focus != null) { focus.grant(player, amount); } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 001c943..2254407 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -3,7 +3,7 @@ api-version: '1.21.10' name: Research version: '${project.version}' author: Drefvelin -depend: [MMOItems, MythicLib, ItemsAdder, TLibs, TFMCCore] +depend: [MMOItems, MythicLib, ItemsAdder, TLibs, RPCharacters] softdepend: [MMOCore] commands: From 4a22153d7009e11042b62b0cf3d18398d369d3ed Mon Sep 17 00:00:00 2001 From: Ryan Barlow <7389646+ryanbarlow97@users.noreply.github.com> Date: Thu, 24 Sep 2026 14:56:55 +0000 Subject: [PATCH 2/2] docs: keep operational guidance in Docs --- README.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/README.md b/README.md index b66cd62..0bbee32 100644 --- a/README.md +++ b/README.md @@ -32,16 +32,6 @@ Originally created by [Drefvelin](https://github.com/Drefvelin). Technical documentation is maintained in [TF-Minecraft/Docs](https://github.com/TF-Minecraft/Docs). -## Focus dependency - -This version requires RPCharacters 2.1.0 or later for character focus; Research no -longer depends on TFMCCore. Deploy the matching RPCharacters, TFMCCore ownership -handoff build (if installed), and Magic/Research consumers together, then restart. -An older installed TFMCCore makes RPCharacters stand down focus to avoid duplicate -writers, so experiments cannot spend focus until the plugin set is compatible. -Existing Research player files remain available to RPCharacters for legacy focus -imports; this change does not delete or rewrite them. - ## License Copyright (c) 2026 TF-Minecraft contributors.