Jump to content

Some bugs with AdvancedStatus compatibility

Pending 1.2.11

dFxPhoeniX
dFxPhoeniX

Posted

Hey, I think I found a few compatibility issues between SimpleStatus and AdvancedStatus.

The main one is background transparency: when AdvancedStatus is installed, SimpleStatus creates the bar with the correct transparency, but on updates it only sends the color and not the transparency value. Because of that, AdvancedStatus seems to fall back to its default transparency, so fully opaque backgrounds become semi-transparent.

While checking that, I also noticed a few other possible bridge issues:

  • progress color update seems to use ProgressColor, but AdvancedStatus expects Progress_Color
  • text/icon/progress transparency values do not seem to be updated properly
  • icon updates may be incomplete in the AdvancedStatus bridge
  • text offset does not seem to refresh if progress is added or removed later
  • there may also be a small plugin name mismatch in the duration/bar existence calls

So the main visible issue is the semi-transparent background, but there seem to be a few other SimpleStatus - AdvancedStatus compatibility problems too.

Thanks

dFxPhoeniX

Posted (edited)

Also, I found what seems to be another related issue with the AdvancedStatus bridge.

When a status property is updated while AdvancedStatus is enabled, SetStatusProperty() calls AS_UpdateBar(), but it does not appear to persist the updated values into the player status data first.

Because of that, if the bar later gets recreated instead of updated, it can fall back to the old/default values from the stored status data. On my side this shows up as the background color resetting to the default gray instead of keeping the updated color.

I think this is related to a few things:

SetStatusProperty() updates the AdvancedStatus bar directly, but does not seem to save the new property values for that player

SetStatus() checks BarExists using Name instead of createdStatus.PluginName, so if that check fails, the bar may be recreated using stale/default data

there may also be a similar plugin name mismatch in AS_SetDuration(), where it uses status.Plugin instead of status.PluginName

I also noticed that icon color updates do not seem to work while AdvancedStatus is enabled.

AS_CreateBar() appears to set the icon color correctly on creation, but AS_UpdateBar() does not seem to forward icon color updates properly, so changing iconColor later has no effect.

On top of that, SetStatusIconColor() may also have a separate issue, because some overloads seem to call SetStatusIcon() instead of SetStatusIconColor(), which could also break icon color updates.

So the issue is not only the transparency update - there also seems to be a broader state sync/update problem where some updated properties are not always preserved or forwarded correctly when AdvancedStatus is active.

Edited by dFxPhoeniX
2.3m

Downloads

Total number of downloads.

10.6k

Customers

Total customers served.

152.8k

Files Sold

Total number of files sold.

3.3m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.