GithubHelp home page GithubHelp logo

pairofdocs / d2-drop-simulator Goto Github PK

View Code? Open in Web Editor NEW
19.0 2.0 3.0 79.16 MB

Diablo 2 / D2R Boss quest drop simulator

License: GNU Affero General Public License v3.0

Python 100.00%
diablo2 diablo-ii diablo2lod d2r

d2-drop-simulator's Introduction

Diablo 2 / D2R Bossq and Monster Drop Simulator Pyinstaller workflow

The drop simulator uses item type and quality generating functions and data files from D2 (TreasureClassEx.txt, ItemRatio.txt, ...) to reproduce the game's random loot drop mechanic. Quest bosses and other units like Cows, Countess, Council are available.

  • The code is open source and available here
  • To play, download the zip here extract and double click dropsim.exe
  • Note: Windows will complain that the app is not signed by a verified source the first time it's launched. I click on "Show more" then "Run anyway"
  • An online drop simulator can be used here: https://pairofdocs.github.io/d2-dropsim-web/

App window with andy

App window with diablo

App window with cow level

App window with countess

Each session's drops are logged to a file session.txt
session.txt drop log

Will RNG drop a Shako? Vipermagi, Gheeds, Occy?
Vampgaze, Duriels, Skullders?

Todos

  • Enable/disable check for same unique per run
  • Ethereal status

Run x times

Specify the number of runs to simulate with the text input field underneath the button Run x times. The results of the runs will be logged to the file session.txt. Drop sounds are disabled if the number of runs is more than 1.

Drop Sounds

A button to toggle drop sounds enables/disables playing a sound effect while loot is 'dropped' by a boss/monster.
D2 mp3 files from this reddit thread are included in the sound/ folder.
To use one of these sound files as the app's drop sound, rename the file to dropsound.mp3. To use your own drop sound effect, place your mp3 sound file in sound/ and rename it to dropsound.mp3.

Random Seed

The Seed text input field allows setting a random number generator seed (an integer value) so that drops for a series of runs can be reproduced. The seed can only be set once for the duration of the app. If another seed is wanted the app has to be restarted.

Modifying Drop Rates

Modding the drop rates can be done through the data files in data-113d/. For example: Meph's drop treasure classes and item probabilities can be edited on line 692 in TreasureClassEx.txt. Once edited, restart dropsim.exe and test. The Phrozen Keep has this great guide for TreasureClassEx.txt.

Credits and Tools

Copyrights

Diablo II and Diablo II: Resurrected are copyrighted by Blizzard Entertainment, Inc. All rights reserved. Diablo II, Diablo II: Resurrected and Blizzard Entertainment are trademarks or registered trademarks of Blizzard Entertainment, Inc. in the U.S. and/or other countries.
All trademarks referenced here are the properties of their respective owners.

For the sake of convenience some text files and image files that the drop simulator requires are provided in this repository. These files are part of the Diablo II game series and are copyrighted by Blizzard Entertainment. They are provided only to save you the trouble of extracting them from the Diablo II game files.
Promotional material from Blizzard Entertainment was used for background images in the drop simulator.

This project and its maintainers are not associated with or endorsed by Blizzard Entertainment, Inc.

d2-drop-simulator's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.