Repository navigation
feat: share one-time events between an account's characters - #4
Merged
XxFran10xX merged 2 commits intoOct 18, 2026
Merged
Conversation
A per-character one_time event with share_one_time: true counts as done for every character of an account once one of them has done it. Shortly after a session starts, the character gets each such event another character has done and runs its shared action group, for example to carry the event's Player EXP. If the character leaves before that run ends, the flag is undone and shared again at its next session. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 17, 2026
XxFran10xX
marked this pull request as ready for review
October 17, 2026 20:56
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
share_one_time, so a per-character one-time event (such as a duchy title's discovery EXP) is done once per account and its EXP reaches the account's other characters.What exists today and what is new
Already on
main(v4.81.0, what Main runs):one_timeand cooldown data are kept per character by default (Keep one-time and cooldown data per character by default #2).data_scope: accountkeeps an event's data once per account (Keep one-time and cooldown data per character by default #2).Not on
main, added here:data_scope: accountonly the first character ever gets it; per character (the default), each one gets it only by entering the duchy itself.share_one_timemarks the event done for the other characters and runs itssharedgroup (for example the EXP throughcarryexp), so they don't need to enter it again.Changes
one_timeevent withshare_one_time: truecounts as done for every character of an account once one of them has done it.sharedaction group, for exampleconsole_command: rpcharacter admin carryexp %player% 40. Without asharedgroup the event is only marked done.Shared <n> one-time events of account <account> with its character <character>.Related
carryexp)Main needs the option added to its duchy events by hand when this ships (
share_one_time: trueand asharedgroup with the carryexp line). Dev has it on its 18sf_title_enter_*events.Tests
mvn verify: 41 tests, 100% line coverage ofnet.tfminecraft.conditionalevents.character. New sharing cases inCharacterTrackerTest,PlayerDataTestandCEEventScopeTest.share_one_timewas run on character A (default group). On switching to B, B got it marked and itssharedgroup ran (carryexp 70); after B's death, new character C got it too. Dev's 18 duchy events loaded with the new keys without errors.Not released yet; nothing on Main or Tutorial until the coordinated move.
🤖 Generated with Claude Code