Ring 70058: usable from level 1, tooltip says unlimited and no cooldown

The item_proto limit (LEVEL 30) kept new characters from using the warp
ring. ring-warp/install.sh now clears it in share/conf/item_proto.txt and
the player.item_proto mirror. The client proto gets the same limit through
a new item_limits_server.tsv fed to locale_proto_patch, and the zh
itemdesc overlay replaces the "50 uses" text.

Verified on 203: a fresh level-1 character opened the warp menu four times
in a row (one real warp in between), ring still in the bag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-30 20:59:21 +09:00
co-authored by Claude Opus 5.5
parent 01cc252a1d
commit f345bd5d3b
7 changed files with 93 additions and 13 deletions
+3 -1
View File
@@ -346,10 +346,12 @@ def build(en: Path, zh: Path, output: Path, client_base: Path,
names_dir / "item_names_zh_overlay.txt")
mob_conversion = convert_names(names_dir / "mob_names_zh.txt", mob_names,
names_dir / "mob_names_zh_overlay.txt")
# item_limits_server.tsv: item limits changed on our server, so the tooltip matches what it enforces.
limits = names_dir / "item_limits_server.tsv"
result = subprocess.run(
[str(proto_tool), str(en / "item_proto"), str(en / "mob_proto"),
str(item_names), str(mob_names), str(locale_dir / "item_proto"),
str(locale_dir / "mob_proto")],
str(locale_dir / "mob_proto")] + ([str(limits)] if limits.is_file() else []),
check=True, capture_output=True, text=True,
)
report["proto"] = {