Rewrite Cache Rule
Right now, cache forces all variable names to be globally unique, even if everywhere else it is designed in a way that they only need to be unique per-world.
cache[player][var]=(wid, val) →
cache[player][wid]={var: val, var: val, var: val}
cache[player]=dlist() autogenerating a dict()
Special dict with onget if not in keys return 0
Essentially.
However, everything reading the cache would need to be updated, and this could cause disruption/bugs, so I am opening a ticket instead of trying to resolve.