DarkflameUniverse / DarkflameServer

The main repository for the Darkflame Universe Server Emulator project.
https://www.darkflameuniverse.org/
GNU Affero General Public License v3.0
654 stars 173 forks source link

BUG: team loot option not working #1612

Closed rlnt closed 5 months ago

rlnt commented 5 months ago

Make sure you've done the following:

DarkflameServer Version

sha256:ea884c80dbcbf532241fea068b1c846dcecf5e5e04944b4aad81891ae64730d2

Issue Description

The team loot option doesn't seem to do anything. It's always the live accurate shared loot. The setting in sharedconfig.ini called default_team_loot is set to 1 which means Free for All. In the game, it does indeed set the option to Free for All but it's not working. Loot will still spawn for each character in the team and you can't pick it up. It has no difference from when you set it to Shared Loot. Even switching between the two settings will not take any effect.

We had some very rare occasions where the loot was Free for All after opening the team but it seems to be rather random. We didn't find a way to achieve the same result on purpose yet. On all the occasions where we had Free for All loot, the team was created by the same person but that's not always the case.

Reproduction Steps

  1. Set the sharedconfig.ini config option default_team_loot to 1 (default value)
  2. Create a team in the game (we are 3 if that matters)
  3. Check the team settings and make sure Free for All is selected as specified in the config
  4. Farm some enemies to see that they still drop character-specific loot.

Expected Behavior

The team setting should affect the gameplay.

Environment

DarkflameServer is running on the official Docker image in the provided docker-compose setup with the database and the Nexus Dashboard.

The containers are hosted on a Debian 11.9 system.

No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye

The DarkflameServer was installed yesterday and all the environment variables are default except for the ones you have to change like the IP, the account manager secret, and the database password. Only a single config option has been changed because of desync which is the maximum_outgoing_bandwidth inside the sharedconfig.ini. Its value has been set to 0 which fixed the desync.

EmosewaMC commented 5 months ago

Correct, this is by design in LU. "Free for all" is actually dropping loot for each member of the team and rotating each drop one for each member of the team, as it did in live, and "Shared Loot" drops all of a single enemies' loot for a single member in a round robin style. The text shown for the options isn't exactly clear on this, but that should be the behavior you are experiencing and it should currently be correct. Does this sound like the behavior you are experiencing?

rlnt commented 5 months ago

Thanks for the clarification. I misinterpreted the behavior then. Thanks a lot for the fast response. This is solved now. :)