daidodo / diablo_edit

Diablo II Character editor.
MIT License
200 stars 53 forks source link

suggestion for bigger stashes and inventory #61

Open PsxMicha opened 1 year ago

PsxMicha commented 1 year ago

hey! I really like your editor. It's easy to use and works fine

problem is: I (and many others) play with this mod:

https://www.nexusmods.com/diablo2resurrected/mods/13?tab=description

it has increased sizes of Inventory (10x8), Stash (16x13), Cube (16x13) and the merc can fully be equip

Can you programm an option into the editor to support this? that would be absolutely awesome <3 :)

WalterCouto commented 1 year ago

This is not a straightforward task as there is no indication from the d2s file that this is different from the other files.

So the task is not small, it is an "Enhancement" request, it may require lots of data to be hard coded and duplicated in the application that controls understanding of the d2s or adding completely new logic requiring the application to extract the information from the installed Mod and then digesting that new data in a way the application understands it.

jlu511 commented 1 year ago

This is not a straightforward task as there is no indication from the d2s file that this is different from the other files.

  • Detection of a mod file is one of two ways: Only support loading a file from the correct save location which includes the mod name or let the user tell you which mod it is at file open time.
  • Detection is the simple first hurdle, the 2nd one is a mod is in fact a mod of the base program, so your program's understanding of aspects of the items and/or character may not no longer be correct and again you have two choices here; Hard code for each mod and now need to keep up to date all of them or add logic to read the properties from the installed Mod. One would force a mod to be installed correctly before we can edit the mod d2s file, while the other one has the possibility of the program having the wrong information.
  • Inventory size and what a Merc is allowed is generally assumed to be the D2R's sizes, the ability to have other sizes would require hard coding for Mod detection or include logic to extract from the mod files.
  • Cube having size of a Stash really complicates the items dialog that tries to show it all and thus requires a refactoring to be able to fit it in so that it doesn't take up the whole screen for the chance someone has a cube that is now a stash. 6x4 is a more reasonable cube size for a mod IMHO, you can increase the number of shared stashes so why make a cube another stash? I would expect programs to design the UI for a realistic inventory size. So, Stashes 16x13, Inventory 10x8, belt 4x4, cube 6x4. If you have a size greater than that, you will need to scale, and it may not look as good as the expected sizes. With these upper bounds you can refactor the inventory to allow these sizes (and have logic if they exceed this upper bound) but you still have to determine the sizes at load time and d2s file does not have this information, thus you will need to hard code for every mod or add logic to read from the installed mod.

So the task is not small, it is an "Enhancement" request, it may require lots of data to be hard coded and duplicated in the application that controls understanding of the d2s or adding completely new logic requiring the application to extract the information from the installed Mod and then digesting that new data in a way the application understands it.

If it is difficult to determine the size of stashes and inventory based on mod, is it feasible for users to customize the size of boxes and backpacks, such as ds.