Menu

#1932 Gold from enemies is not random

Cosmetic
closed-duplicate
nobody
None
4
2024-04-09
2016-02-28
Powell F
No

Here is a photo all enemies seem to drop their maximum gold.

1 Attachments

Discussion

  • Powell F

    Powell F - 2016-02-28

    2nd photo

     
  • Knight Captain

    Knight Captain - 2016-06-14

    I am seeing this problem as well. In the DOS game, the number of coins on a corpse appears determined by both the Chance % and the Count. It seems like the Chance % is of any quantity of coins appearing, and then the Count is a non-zero random up to the maximum. In Exult, it seems like only the Chance % is used, and then the Count is always the maximum.

    In the attached screenshot I have bodies of trolls (living Shape 533). In DOS they have 9, 0, and 2 coins. In Exult all three bodies have 10 coins. Note that always four gems or zero is normal.

    The food found on non-livestock bodies also does not match between DOS and Exult. On Pikemen they will have two different food items in DOS, but in Exult if you get any food from them it is the same food frame twice. Goblins have a higher Count but always the same food frame per body in Exult, see the second screenshot.

     
  • Marzo Sette Torres Junior

    After some investigation by Malignant_Manor in IRC, I took a look at the original behavior by messing with data files in the original. As it turns out, our implementation of monster equipment is horribly wrong. I will leave the details here for future implementation:

    • When creating weapons, the quantity is either the number of charges (e.g., wands) or the number of copies of the weapon. Exult does this.
    • Weapons that need ammo (bows, crossbows) create it in the 2-20 range, with a seemingly triangular probability distribution. I would guess rand()%10 + rand()%10 + 2, based on what I know of dice from playing way too much tabletop RPGs. Exult does this, but gets the amount of ammo wrong.
    • Things with quantity (I tried with gold, arrows and reagents) are indeed randomized: seems like a flat probability, likely rand()%quantity + 1. The frame of created stuff is not selected at random, so you always end up with black pearls for reagents (but the correct quantity frames are used). Exult does NOT do this.
    • Food is either always the same (like deer legs for deer) or is randomized once per entry in EQUIP.DAT. Exult does this.
    • When creating too much stuff, NPCs may gain a container. I am not 100% sure of all the factors, but having the "can't yell" flag set in monster tab prevents container creation. Containers can be bags, backpacks, unlocked chests, locked pickable chests, or trapped chests, with apparently equal odds. Exult does NOT do this.
    • Food and spells never cause the creation of a container, no matter how much of them get created. Food can end up being placed in a container, but spells never are. Exult does NOT do this.
    • Things that are equippable (ready spot is not 'backpack') don't generally end up on the container, unless there are more than one; in that case, the first one to be created will be equiped, and the others will be in the container. Exult does NOT do this.
     
  • Dominik Reichardt

    • status: open --> closed-duplicate
     
  • Dominik Reichardt

    tracked in our new issue tracker https://github.com/exult/exult/issues/273