Преглед изворни кода

Satisfy the value gate that kept X Marks The Spot access restricted

The emote's ownership flag was already set, but its plug carries a second rule
at definition offset 736 -- VAL(5549) >= 50 -- which is the objective progress
counter for the Golden Offerings triumph. An emote gated this way reads as
owned and still refuses to equip, showing "Access Restricted".

Value slots are not reachable through the flag banks, so this goes in the
family-5 override list, set to the threshold exactly rather than inflated so
that any other expression comparing the same slot still reads honestly.

Documents the multi-rule case alongside it, including the layout shift it
causes: an emote with the extra rule carries its enabled rule at offset 864
instead of 800, which accounts for the 32 emotes in this build that have no
single-flag expression at 800.
Millie пре 3 недеља
родитељ
комит
785db89f5c
2 измењених фајлова са 34 додато и 1 уклоњено
  1. 33 0
      Sunrise/docs/emote-unlocks.md
  2. 1 1
      Sunrise/resources/default_settings.json

+ 33 - 0
Sunrise/docs/emote-unlocks.md

@@ -91,6 +91,39 @@ The change added the remaining 121.
 None of the 288 slots collides with any documented entitlement, platform, or
 pre-release slot. The Director, map and orbit were verified working afterwards.
 
+## Ownership is not always the only gate
+
+An emote can carry more than one plug rule. The ownership rule at offset 720 is
+the common case, but a few items add a second rule immediately after it, and
+that one is a **value** comparison rather than a flag read. Such an emote reads
+as owned and still refuses to equip, showing *"Access Restricted"*.
+
+`X Marks The Spot` (`0x1682F6A3`) is the worked example in this build:
+
+| offset | expression | meaning |
+| ---: | --- | --- |
+| 720 | `FLAG(9004)` | ownership, set by `account_flag_runs` |
+| 736 | `VAL(5549) CONST(50) >=` | `VAL(5549) >= 50` |
+| 864 | `FLAG(9004)` | the enabled rule, pushed down by the extra rule |
+
+`VAL(5549)` is the objective progress counter for the *Golden Offerings*
+triumph, so the real requirement is completing that triumph. Value slots are
+not part of the flag banks; the route to them is the family-5 override list:
+
+```json
+"family5_value_overrides": [ ..., [5549,50] ]
+```
+
+Setting it to the threshold exactly, rather than inflating it, keeps any other
+expression that compares the same slot honest -- raising a value slot too far
+is what breaks unrelated content, per the shared-pool warning in the unlock
+documentation.
+
+Note this also shifts the layout: an emote with the extra rule has its enabled
+rule at 864 rather than 800. 32 of the 307 emotes in this build do not have a
+plain single-flag expression at 800 for this reason, which is expected and not
+a fault.
+
 ## Regenerating this
 
 The flag list is specific to this build; a content change invalidates it. To

+ 1 - 1
Sunrise/resources/default_settings.json

@@ -86,7 +86,7 @@
   "state": {
     "investment": {
       "family5_flag_overrides": [[2003,2], [3698,2], [4661,2], [5901,2], [7188,2], [9144,2], [9162,2], [9164,2], [9169,2], [9171,2], [9176,2], [9178,2], [9180,2], [9183,2], [9186,2], [9279,2], [9355,2], [9567,2], [15034,2], [16840,2], [16843,2], [16846,2], [16849,2], [16852,2], [16854,2], [16856,2], [16857,2], [16860,2], [16862,2], [16865,2], [16868,2], [16871,2], [16873,2], [16875,2], [16878,2], [16884,2], [16887,2], [16889,2], [16892,2]],
-      "family5_value_overrides": [[3510,5], [462,1010], [477,1010], [12913,42], [470,1], [465,20], [12823,1000], [5159,3]]
+      "family5_value_overrides": [[3510,5], [462,1010], [477,1010], [12913,42], [470,1], [465,20], [12823,1000], [5159,3], [5549,50]]
     },
     "unlocks": {
       "character_flag_runs": [[61,1], [130,1], [135,1], [138,2], [141,1], [144,25], [200,1], [223,1], [273,1], [275,2], [312,1], [360,1], [409,4], [416,1], [418,4], [423,6], [446,2], [458,2], [470,1], [524,1], [581,4], [659,1], [661,1], [699,1], [707,1], [731,1], [744,1], [791,1], [794,1], [817,1], [821,1], [828,1], [833,1], [838,1], [849,2], [852,1], [859,1], [865,1], [924,1], [938,1], [946,1], [957,1], [959,1], [964,1], [966,1], [971,1], [980,1], [994,1], [1013,1], [1055,1], [1058,1], [1065,4], [1131,1], [1134,1], [1136,2], [1139,1], [1143,1], [1145,2], [1171,1], [1178,1], [1182,2], [1195,1], [1197,1], [1212,3], [1232,1], [1234,3], [1247,1], [1252,2], [1256,1], [1259,1], [1264,1], [1326,1], [1422,1], [1428,2], [1514,1], [1516,1], [1518,1], [1520,1], [1524,1], [1542,1], [1544,1], [1662,6], [1678,3], [1685,1], [1783,1], [1790,2], [1837,6], [1848,2], [1853,3], [1858,4], [1880,6], [2253,6], [2269,1]],