diasurgical / devilutionX

Diablo build for modern operating systems
Other
8.05k stars 793 forks source link

[Improvement proposal] Auto pickup gold #1120

Closed Chance4us closed 3 years ago

Chance4us commented 3 years ago

Auto pickup gold is in fact a useful function. Unfortunately it feels a bit unnatural because there is no feedback (no sound, no graphical message) when gold is collected at all. Therefore a suggestion to display a short message with the amount of gold received.

AJenbo commented 3 years ago

Just to clarify it originally played the gold drop sound when picking up gold, but I personally found it distracting. But we should defiantly consider how to provide feedback, maybe a second option :/

Chance4us commented 3 years ago

Gold Drop sound on pickup would be irritating indeed. Unfortunately, I don't remember what it was like in Diablo 2.

AJenbo commented 3 years ago

D2 did not have an auto pickup feature. D3 has a shorter version of the chime when picking it up.

AJenbo commented 3 years ago

I was thinking that maybe this could be "Audio Feedback" and also play a sound when leveling up.

Chance4us commented 3 years ago

That would be a good option. Is there a matching unused sound in the MPQ file?

galaxyhaxz commented 3 years ago

I was thinking that maybe this could be "Audio Feedback" and also play a sound when leveling up.

It's sad that even the PSX had a sound for leveling up, putting stats in, and other UI button presses. Even sadder is when you walked over several piles of gold, it would pick all of them up at once pressing one button. :S

Chance4us commented 3 years ago

@AJenbo Perhaps PSX sounds and features should be built in optionally. Anyone who have the PSX MPQ files could use it then.

joewis commented 3 years ago

I was thinking that maybe this could be "Audio Feedback" and also play a sound when leveling up.

There is a patch for sound at level up - I haven't checked how it works, because it just works, but could probably back(forward?)-port it.

galaxyhaxz commented 3 years ago

Level up sound from PSX below, fix the extension, renamed for github.

levelup.wav.txt

EDIT: you could also use the Diablo 2 sound. I think the problem is adding new sounds requires also distributing extra assets along the usual executable.

joewis commented 3 years ago

Distributing assets would certainly be a problem, I wouldn't even link to it.

I just checked the patch - it's using the sound for IS_QUESTDN, which is nice but may be confusing.

galaxyhaxz commented 3 years ago

Yep, you won't be able to do much without providing a new MPQ, even with free/hand made graphics and sounds, it still has to be provided to the end user.

yuripourre commented 3 years ago

If I may add my two cents, the level up sound could be a procedural sound. So there would be no need to include extra assets.

Example: https://stackoverflow.com/a/10111570

galaxyhaxz commented 3 years ago

If I may add my two cents, the level up sound could be a procedural sound.

That's soooo 1986. Are we gonna have cool 8-bit sounds soon? :P

joewis commented 3 years ago

If I may add my two cents, the level up sound could be a procedural sound.

That's soooo 1986. Are we gonna have cool 8-bit sounds soon? :P

On a side note, Diablo was released closer to 1986 than to 2021.

Maybe we we can train an AI to talk like Farnham to announce level ups (I'm still looking for a purpose for him).

yuripourre commented 3 years ago

@galaxyhaxz

That's soooo 1986. Are we gonna have cool 8-bit sounds soon? :P

Well, we can fit the real sound data to a set of (math) functions and generate more high-quality sounds it may not sound so synthetic depending on how it's done.

@joewis

Maybe we we can train an AI to talk like Farnham to announce level ups (I'm still looking for a purpose for him).

Oh, you are not alone! I've been thinking a lot about it. That's the main reason I wanted to transcribe the missing audios (#1093) because it would require as much data as possible. https://github.com/mozilla/TTS#example-training-and-fine-tuning-lj-speech-dataset

qndel commented 3 years ago

@yuripourre I actually used AI on wirt but the results weren't impressive : P

yuripourre commented 3 years ago

@qndel that's good to know, do you have any sample? What AI did you use?

qndel commented 3 years ago

I don't remember : P I could probably dig something up on discord

malvarenga123 commented 3 years ago

Can't you use the same sound that is played when you pickup gold manually? That is what Basemod does for D2.

AJenbo commented 3 years ago

Can't you use the same sound that is played when you pickup gold manually? That is what Basemod does for D2.

We already play no sound...

malvarenga123 commented 3 years ago

Sorry, I was thinking of the generic pickup sound from the inventory (which is the one Basemod uses).

julealgon commented 3 years ago

...and also play a sound when leveling up.

That reminds me of the level-up sound from the PSX version. I quite liked that one.

AJenbo commented 3 years ago

Other mods appear to have used IS_QUESTDN as the level-up sound.

galaxyhaxz commented 3 years ago

That reminds me of the level-up sound from the PSX version. I quite liked that one.

I did too, and a download for it is provided above. Though I still liked the D2 sound better.

DevilutionX is slowly reaching yet another roadblock. Just as there are many game-breaking bugs that won't be fixed to maintain save compatibility, there are many features/improvements/additional fixes that can't be made without providing additional assets.

You have to make a decision on how far you are going to take it. Given users already have to download additional libraries (SDL) and a TTF alongside DevilX, you might as well throw in an additional MPQ. Want a graphic for stash? Want sound for leveling up? Want to fix the broken player animations? You have no choice but to provide the assets. I think it should be fine, so long as the assets come from Diablo or the author gives permission. Example:

DEVILX.MPQ asset credits

As long as you aren't stealing music from other games or taking assets without permission (unless they come from PSX/D2), I think you will be fine.

AJenbo commented 3 years ago

We already have devilutionx.mpq in the zip. We will not be distributing content from other games, ports etc. If people want to use content from other games they must own those games and extract the content item selfs.

galaxyhaxz commented 3 years ago

Yeah, I figured. You are really shooting yourself in the foot here, especially if you won't even provide user-created content.

AJenbo commented 3 years ago

You are really shooting yourself in the foot here, especially if you won't even provide user-created content.

??? I just said we already provide user-created content.

galaxyhaxz commented 3 years ago

I didn't see a devilutionx.mpq in the zip, at least for the windows release. Are you also against providing fixed/modified versions of existing assets from D1?

Japoncuk commented 3 years ago

I can't use it. I don't understand. There is a problem.

Trihedraf commented 3 years ago

@galaxyhaxz it is in the circleci windows and linux zips

AJenbo commented 3 years ago

I can't use it. I don't understand. There is a problem.

@alican3437 what are you referring to?

Japoncuk commented 3 years ago

Who are you talking to whom are you artificial intelligence a real person?

galaxyhaxz commented 3 years ago

Found it, so I see you have provided widescreen versions of some of the ui art, which is nice. Are there credits provided for the author? The credits background looks so natural it had to have originated from the original 3d models.

AJenbo commented 3 years ago

It's a 2D drawing done by BillieJoe, there is more on its way.

galaxyhaxz commented 3 years ago

Wow, what an artist. Can't believe how great it looks, I seriously thought it came from some blizzard movie or the like.

EDIT: and why I don't mind using stuff from D2 is because usually user created content sucks. Especially graphics.

Chance4us commented 3 years ago

The gold pickup sound is really suitable. When we talk about a devilutionx.zip, where can it be found and what's content in there?

galaxyhaxz commented 3 years ago

I agree, the pickup sound is also played in d2 when picking up items.

It's not a zip file it's the MPQ here: https://github.com/diasurgical/devilutionX/blob/master/Packaging/resources/devilutionx.mpq

The zip just contains the release builds and SDL.

Chance4us commented 3 years ago

The credits and the support screen are looking really nice.

Chance4us commented 3 years ago

@all What do you think about to "PlaySFX(IS_IGRAB);" also on manual pickup gold?

julealgon commented 3 years ago

@Chance4us

@ALL What do you think about to "PlaySFX(IS_IGRAB);" also on manual pickup gold?

We already discussed this on discord. I'm going to implement that for all items on a toggle, so it will make the IGRAB sound for every pickup (like D2).