brenoepics / morningstar

An open-source Arcturus Community Fork.
GNU General Public License v3.0
3 stars 2 forks source link

Incorrect avatar effects behaviour. #915

Open brenoepics opened 3 years ago

brenoepics commented 3 years ago

In GitLab by @oshawott on Nov 26, 2020, 02:44

Build Information

Emulator Version: 2.5.0 (would exist in lower versions)

Current Behavior

After purchasing effects (type "e", not FXbox) from the catalogue, if the user refreshes or the server shuts down and the effects weren't activated beforehand, the time remaining is 00:00 when the user reconnects. When the user clicks on or activates the effect, the time goes negative. If the user then refreshes again, the effect is deleted/total is decreased.

If the effects were activated before the user refreshes for the first time, when they reconnect, the time is reset back to full time. Activating the effect makes the timer count down from 1 day again, but upon another refresh, the effect becomes permanent, timer will no longer count down, and from tests, does not get deleted/total doesn't decrease after >24hr timestamp difference.

I expect this would happen with FXbox effects also, but because they're permanent anyway I haven't tested it.

Expected Behavior

It seems to be a little backwards with a few bugs mixed in. Effects that weren't activated shouldn't have anything changed about them. Effects that were activated should have their expected time remaining / be deleted upon expiration.

Steps to Reproduce

  1. Purchase two effects (so we you can test both bugs at once) from the "temporary effects" category.
  2. Activate one of the effects and refresh or shut down server.
  3. Reconnect and check effects (activated = full, nonactivated = 00:00).
  4. Activate both effects and refresh or shut down server.
  5. Reconnect and check effects (activated = full, now permanent, nonactivated = deleted).

Context (Environment)

I think now that the effects with type "e", have been released for catalogues on Discord etc, and other community members are working on an interaction type "effectGate", it would be awesome if the effects worked as expected..

Possible Implementation

Not really sure about how a bug fix would be implemented; but, it would be awesome if effect durations weren't hardcoded, but instead, we could set duration with customparams.

brenoepics commented 3 years ago

In GitLab by @Remco on Nov 26, 2020, 08:38

This is how bugs should be reported ❤

brenoepics commented 3 years ago

In GitLab by @ghost on Nov 27, 2020, 15:33

Also to add to this;

  1. When effects run out of time, they don't get deleted like in Habbo.
  2. The timer for effects is hardcoded to 24 hours, when in reality temp effects bought can last anywhere between 12 hours to 30 days.