Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

In multiplayer randomly drop unique quest reward or magic item of same type #5619

Merged
merged 1 commit into from
May 31, 2023

Conversation

obligaron
Copy link
Contributor

This pr changes how unique quest rewards (like Valor, Griswold's Edge or Bovine Plate) drop in multiplayer. Normal unique items that drop randomly from monsters are not affected.
The unique quest rewards only have a change of 25% to drop.
In the other 75% they drop a magic item of the same type (Sword, Axe, Helm, Light Armor, Medium Armor, ...).

Currently this is done for all unique quest rewards (including hellfire quest reward items like Bovine Plate).
The idea is to make the quests more interesting to play again in multiplayer and don't spam the unique quest reward items.

This pr could also be changed

  • change drop change
  • enable this only for the diablo unique quest rewards
  • even change it to never drop unique quest reward uniques in multiplayer

This is up to a discussion.
I hope this pr helps to give us more options how to proceed with this topic (unique quest rewards). 🙂

@qndel
Copy link
Member

qndel commented Dec 17, 2022

Cool idea!

@AJenbo
Copy link
Member

AJenbo commented Dec 17, 2022

I like this, but I would do it 100% of the time in multiplayer :)

@obligaron
Copy link
Contributor Author

I would like something less then 100% 😉
Cause I would like to see these items also in multiplayer. They add something to the game and make the quest more interesting.
How we want to define the change of dropping them is another topic. I would also be okay with 98% magic items and only 2% unique quest rewards. 😁

@qndel
Copy link
Member

qndel commented Jan 5, 2023

I would like something less then 100% 😉 Cause I would like to see these items also in multiplayer. They add something to the game and make the quest more interesting. How we want to define the change of dropping them is another topic. I would also be okay with 98% magic items and only 2% unique quest rewards. 😁

That'd be best imo :D

@AJenbo
Copy link
Member

AJenbo commented Jan 22, 2023

I have been convinced that something like this is not bad, just have to think some more about how exactly it should work :)

@ghost
Copy link

ghost commented Mar 1, 2023

I have a range of ideas really. One idea i had was to have some of the quests have the possibility of dropping "undropable uniques" as an alternative. Another thought was to have some of the higher tier quests drop "wirt only items". I also had the thought of their loot table only consisting of "logical" items - For example the butcher only dropping axes.

One worry i have is that some items will be more difficult to acquire after implementing this. The helm of spirits is most easily farmed on nm butcher in vanilla, although that obviously matters less if the undead crown is available.

My first thought was that they only drop the actual quest unique the first time you complete the quest with each character.

Some specific quest reward ideas:
Black mushroom
First time you get the Spectral elixir, second time you have a drop table ala:

  • 10% chance of getting three random elixirs
  • 25% chance of getting two random elixirs
  • 65% chance of getting one random elixir

Anvil of fury
First time you get Griswold's edge. Second time it will give you a high tier weapon base item with high tier mods, possibly even wirt-only "Strange".

Diablo
This one is a bit strange, but i thought about a few high tier items just appearing in town next game after defeating him. It's a bit sad that there is currently no point in killing Diablo.

Just tossing ideas out there.

Edit: You could base the item quality on character level.

@obligaron
Copy link
Contributor Author

This pr only drops the same type as the original unique item (Sword, Axe, Helm, Light Armor, Medium Armor, ...).
So it's similar to what you described. 😉

For the undroppable uniques we have a issue #628 (and also a pr open #2930)

For black mushroom we have a discussion in #5770 😉

For everything "drop only once per play" It's not that easy 😢
Not every quest reward is triggered by a player, for example arkain's valor and halls of the blind (the items are on the ground when generating the level).
Another issue is that one player could "steal" the item from the other. But this could be more minor. And we need to store the state in a additional save game. But that should be doable.

For diablo:
This is already a issue in singleplayer and I think another topic. I checked if we have a issue for it, but couldn't find one. I only remember we discussed it somewhere (on github or discord) and most people thought it was to much of a mod change. But feel free to open a issue. 🙂

@D1-Constantine
Copy link

I would like something less then 100% wink Cause I would like to see these items also in multiplayer. They add something to the game and make the quest more interesting. How we want to define the change of dropping them is another topic. I would also be okay with 98% magic items and only 2% unique quest rewards. grin

Yeah I like that idea a lot. I think if Blizzard ever made quest for multiplayer they would have integrated them somehow. If you get Leorics Crown or Veil of Steel every time those quest become useless as you won't do them more than once. Repetition and farming is the name of the game in multiplayer. I think having less than 5% for the quest uniques rewards is more than generous as you'll probably do them thousands of times.

@ghost
Copy link

ghost commented Mar 1, 2023

For everything "drop only once per play" It's not that easy 😢 Not every quest reward is triggered by a player, for example arkain's valor and halls of the blind (the items are on the ground when generating the level). Another issue is that one player could "steal" the item from the other. But this could be more minor. And we need to store the state in a additional save game. But that should be doable.

I thought about checking the character and stash to see if they already have the quest reward in possession?

Source/items.cpp Outdated Show resolved Hide resolved
@AJenbo
Copy link
Member

AJenbo commented May 30, 2023

With the two suggested changes and a rebase I'm all for merging this for 1.5.0 :)

AJenbo
AJenbo previously approved these changes May 30, 2023
Source/items.cpp Outdated Show resolved Hide resolved
@AJenbo AJenbo merged commit 571e770 into diasurgical:master May 31, 2023
@obligaron obligaron deleted the uniquemp branch May 31, 2023 20:56
@ikonomov
Copy link
Contributor

ikonomov commented Jun 1, 2023

Yes! :)

@ikonomov
Copy link
Contributor

ikonomov commented Jun 2, 2023

I've been thinking about this for a while and came up with an idea that maybe worth considering as well for the condition of the quest item:

if (sgGameInitInfo.nDifficulty == DIFF_NORMAL || item._iMagical == ITEM_QUALITY_UNIQUE)

@AJenbo
Copy link
Member

AJenbo commented Jun 2, 2023

It's a good suggestion, let me run it by some people and think about it a bit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants