anth64
0300e90924
feat: expose buffer geometry via ClaimLinkApi for external mods
2026-07-29 07:28:07 +02:00
anth64
c110ee2604
fix: normalize claim geometry before growing buffer (raw start/end marks aren't min/max ordered)
2026-07-27 07:40:12 +02:00
anth64
baf3ccbd93
feat: enforce buffer-zone non-overlap on /claimlink link
2026-07-26 15:30:35 +02:00
anth64
3cf6db1d2a
fix: clear PendingLoads on /land claim new to match vanilla's unconditional reset
2026-07-26 14:36:37 +02:00
anth64
12219e6ef5
feat: add ClaimLinkConfig with configurable buffer size
2026-07-26 12:07:46 +02:00
anth64
0e0e4e0f74
chore: bump version to 0.1.0
2026-07-26 11:28:08 +02:00
anth64
154e7b7848
chore: bump version to 0.0.7
2026-07-26 11:25:27 +02:00
anth64
9e37ec11cf
feat: implement admin delete/unlink/kick, fix admin unlink claim arg type
2026-07-26 11:23:21 +02:00
anth64
4d98a115ed
feat: infer claim link group from chat context when omitted; drop redundant admin info
2026-07-26 11:21:13 +02:00
anth64
99238c4744
feat: hook group leave/kick to proactively cancel pending actions with a reason
2026-07-26 10:33:46 +02:00
anth64
1c079b7e44
fix: cancel pending actions on group disband even if not yet a claim link
2026-07-26 09:08:08 +02:00
anth64
b7ca9fa53b
fix: track groupId per pending action for precise cleanup on delete/disband; split group hook into its own listener; self-heal orphaned registry entries in list
2026-07-26 08:51:54 +02:00
anth64
c55787ce40
feat: react to /group confirmdisband and recheck live membership on link confirm
2026-07-23 07:57:39 +02:00
anth64
b10d3a0f55
fix: cancel old owner's pending action on ownership transfer
2026-07-21 20:29:32 +02:00
anth64
b5ceba442a
fix: cancel kicked player's pending action to stop stale link re-add
2026-07-21 20:25:21 +02:00
anth64
d248b772dc
fix: split adminfree (by player name) from adminfreehere (by position)
2026-07-21 19:36:48 +02:00
anth64
c8fc86069b
feat: gate claim link info detail by membership/admin, count members with no claims
2026-07-20 23:36:03 +02:00
anth64
2e4cc25b20
fix: guard claim-link entries against stale indices and dead groups
2026-07-20 23:28:37 +02:00
anth64
fc7e601f5b
refactor: expose TryResolveOwnedClaim for future external mod consumption
2026-07-19 20:43:05 +02:00
anth64
a2e4a68f9e
refactor: rebuild claim link registry around live index tracking, drop ClaimLink type
2026-07-19 20:31:10 +02:00
anth64
741d283f38
refactor: clear pending actions in claim link command instead of land claim listener
2026-07-19 10:49:11 +02:00
anth64
9fcf6f1da5
fix: resolve claim on load
2026-07-19 10:48:41 +02:00
anth64
f699cd6d54
chore: log adminfree phase and claims found at caller position
2026-07-18 11:55:24 +02:00
anth64
94b6723456
feat: sanity-check claim save/free against tracked ordering state
2026-07-18 11:47:52 +02:00
anth64
de2026d239
refactor: merge land command Before/After into shared phase-aware dispatch
2026-07-18 11:46:32 +02:00
anth64
fffc046126
refactor: normalize claim link membership into flat entry storage
2026-07-15 18:46:52 +02:00
anth64
eaa79f8f52
fix: transferownership correctly sets owner level and demotes old owner to op, works for offline players, notifies members
2026-07-14 22:52:32 +02:00
anth64
1c0a5f88a1
refactor: remove "claims" text from list of claims in FormatInfo.
2026-07-14 22:21:07 +02:00
anth64
d4ef3eba06
fix: show player name in require player
2026-07-14 22:17:00 +02:00
anth64
32dbd4ad91
feat: implement claimlink admin transferownership
2026-07-13 07:56:37 +02:00
anth64
41a2f1a09d
feat: implement claimlink transferownership with debug logging
2026-07-13 07:50:50 +02:00
anth64
bee6b6434a
fix: RequireOpOrOwner allows OwnerUID holder regardless of membership level
2026-07-13 07:40:24 +02:00
anth64
979f02e7f8
feat: open info to any player, add claimlink list, bump to 0.0.6
...
Modified command messages.
2026-07-12 21:19:24 +02:00
anth64
acbc45483e
feat: implement claimlink delete
2026-07-12 19:54:13 +02:00
anth64
4e97e25b38
refactor: unlink no longer needs a groupname arg
...
A claim can only belong to one claim link at a time, so it resolves
via the new Registry.FindLinkContaining(playerUid, claimIndex).
2026-07-12 19:52:23 +02:00
anth64
1803aaaa37
fix: clear kicked player's pending action on kick
2026-07-12 19:46:08 +02:00
anth64
c035bf1a73
refactor: replace pending-link buffer with generic pending-action confirm/cancel
...
new/link/unlink/kick now stage a validated action and require confirm
to execute, instead of new alone gating a multi-edit draft. Bump to
0.0.5.
2026-07-12 19:43:00 +02:00
anth64
565f91408b
feat: implement claimlink info, bump to 0.0.4
2026-07-12 19:27:31 +02:00
anth64
e7118e259b
feat: implement claimlink kick
2026-07-12 19:23:54 +02:00
anth64
65e00e2f57
feat: stage claimlink new behind confirm/cancel pending state
2026-07-12 19:09:40 +02:00
anth64
c7e3f97a85
feat: implement claimlink unlink
2026-07-12 19:06:43 +02:00
anth64
0914d55d9a
refactor: extract guard-clause helpers for group/link resolution
2026-07-12 19:05:27 +02:00
anth64
ac79d2ac94
feat: implement claimlink link
2026-07-12 19:00:10 +02:00
anth64
3b6a44a779
chore: bump version to 0.0.3
2026-07-12 18:50:20 +02:00
anth64
deafd98f40
feat: implement claimlink new
2026-07-12 18:49:54 +02:00
anth64
3b63c5b4af
refactor: group member's claim indices into one list per player
2026-07-12 18:41:51 +02:00
anth64
cf17697a5e
feat: add member claims to the ClaimLink model
...
Each ClaimLinkMember stores an owner player uid plus that player's
local claim index (resolved fresh at use, not trusted as stable) so
a claim link can reference existing vanilla claims without copying
their data. Buffer claim is intentionally not referenced here; it
resolves on demand via group ownership.
2026-07-12 18:38:09 +02:00
anth64
02c9a22bf1
feat: add ClaimLink persistence via savegame-backed registry
...
Adds a ClaimLink data model and ClaimLinkRegistry that loads from
and writes to the savegame's keyed data store (protobuf-net, via
WorldManager.SaveGame), so claim link state survives restarts
without touching vanilla claim data. Also silences nullable
warnings on statics that are guaranteed set by StartServerSide
before any use, and on TryGetValue out-params guarded by the if.
2026-07-12 18:31:21 +02:00
anth64
a470456dcc
refactor: revert claimlink admin info to a plain stub
2026-07-12 16:23:34 +02:00
anth64
1baa20022b
feat: stub out full /land command surface as hook points
...
Table-drives dispatch for every vanilla /land subcommand (free,
info, list, adminfree, claim's new/grant/revoke/grow/shrink/etc.)
so each has a named hook to fill in.
2026-07-12 16:16:25 +02:00