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
Gather vanilla items for testing #1094
Comments
... |
@Grotto143 not sure what you wanted to say but you just quoted my original post? |
Can you explain what you mean by this? So essentially you want to verify that these attributes and items spawn? |
yeah load the save in 1.09 and DevilutionX and create a new game to check that the items are spawned the same in both. |
Just so I don't have to retype this every time I get new items to dump :D SDL_Log(" { %d, %d, %d, %d, %d, %d, %d, %d, %d, %d }, // %s { \"%s\", %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d },",
is->iSeed,
is->iCreateInfo,
is->idx,
is->bId,
is->bDur,
is->bMDur,
is->bCh,
is->bMCh,
is->wValue,
is->dwBuff,
id->_iIName,
id->_iIName,
id->_itype,
id->_iClass,
id->_iCurs,
id->_iIvalue,
id->_iMinDam,
id->_iMaxDam,
id->_iAC,
id->_iFlags,
id->_iMiscId,
id->_iSpell,
id->_iCharges,
id->_iMaxCharges,
id->_iDurability,
id->_iMaxDur,
id->_iPLDam,
id->_iPLToHit,
id->_iPLAC,
id->_iPLStr,
id->_iPLMag,
id->_iPLDex,
id->_iPLVit,
id->_iPLFR,
id->_iPLLR,
id->_iPLMR,
id->_iPLMana,
id->_iPLHP,
id->_iPLDamMod,
id->_iPLGetHit,
id->_iPLLight,
id->_iSplLvlAdd,
id->_iUid,
id->_iFMinDam,
id->_iFMaxDam,
id->_iLMinDam,
id->_iLMaxDam,
id->_iPrePower,
id->_iSufPower,
id->_iMinStr,
id->_iMinMag,
id->_iMinDex,
id->IDidx);
``` |
Zip Files with images of the items. Each image is labeled. The save files are the same save file just at different points. ( which is why they are separate. ) The following covered are:
Doppel, Warriors, Wirt, Adria, Book, Puncturing, Gladiator's,.zip All the above were tested on Vanilla Hellfire 1.01. The save files were tested as they are, and by starting a new game to confirm no item changes. |
More Zip Files with images of the items. Each image is labeled. The save files in 2 of them are the same save file just at different points. The resist all is it's own character. The following covered are:
Haste, White, Of Lightning.zip All the above were tested on Vanilla Diablo 1.09. The save files were tested as they are, and by starting a new game to confirm no item changes. |
Thanks, added the 12 new items to the tests: 4de1c05 Another 0,11% of of the game is not being tested 🎉 |
Even more Zip Files with images of the items stats included. Each image is labeled. All saves are the same character except for the Res Scroll. The following covered are:
Blocking, Jester's.zip The Res Scroll was tested in Vanilla Diablo 1.09. The rest were tested on Vanilla Hellfire 1.01. The save files were tested as they are, and by starting a new game to confirm no item changes. |
And additional 0,06% of the code is now tested :) |
my Save file with Ring of Truth and Empyrean Band Note: This save has not yet been verified on vanilla. |
Gnat Sting: https://dl.dropboxusercontent.com/s/821cfrm1mtz8hyy/single_0.hsv but needs verification in vanilla Hellfire. |
Do you need also the following items? |
@Chance4us Yeah, the |
If I load the savegame in vanilla-hellfire the items still are the same. |
Yes, could you also verify the two other submissions here? Ring of Truth: https://github.com/diasurgical/devilutionX/files/6225765/Ring.of.Truth.zip Gnat Sting: https://dl.dropboxusercontent.com/s/821cfrm1mtz8hyy/single_0.hsv |
Ring of Truth and Gnat Sting are still the same, also if I start a new game with the same character. |
I have found Naj's Light Plate, Eater of Souls, Blitzen, Gnat Sting, and Acolyte's Amulet in a DevilutionX Hellfire multiplayer game. Unfortunately, I accidentally sold the Blitzen, but it did generate in my game. I've also seen Plentiful and Bountiful for sale at Adria's, but I've never actually purchased any. https://dl.dropboxusercontent.com/s/pn9rppnt9a410aa/multi_3.hsv |
Verified:
|
Verified:
|
Do you need some of the following? All items are verified. |
@Chance4us could you test this https://dl.dropboxusercontent.com/s/pn9rppnt9a410aa/multi_3.hsv from @BartyMae |
@AJenbo In Windows 10 Virtualbox I was not able to load this multiplayer save. |
In linux-wine is stored a hrinfo_0.drv in C:/Windows for multiplayer if I create a multiplayer character. |
Order I dropped stuff in town (from left to right, starts near Gillian) |
oh, multiplayer is not compatible because hellfre was locked to the computer and wasent official |
I would have liked a more precise explanation of the how, too. There are two possibilities. You need a char with all res negative (maybe by wearing multiple items with a single negative res) , or you need an item that has all 3 res negative which must not inevitably reduce the chars res to negative numbers but probably will. If it's the single item with all 3 res negative, I have no idea what it could be. I have checked. There is no unique wich reduces all 3 res (there are 3 rings that only reduce 2 and buff the third) and I couldnt find a suffix/affix that allows negative res for a magic item |
We are searching for indiviudal Items, not heros ;)
I can't easily aww from the code what item/suffix/affix it would be, just that there is an option for it. It's apparently cursed, which might have been ovious from it having a negative effect:
The text would be: It does look like this effect might not be applied to any item/suffix/affix, so it might be unused just like |
@ChaosMarc you skipped the Oil of Mastery when taking screen shots :) |
All 5 saves combined increased the coverage by 0.13% 🎉 With so many new items found I think it's time to update the list again :) |
Alright went over the test coverage and it seams that we are now down to just 12 missing items fantastic work doing all this scavenging guys :) |
|
|
|
|
would generating an item in devilutionX and starting a new game in vanilla be a sufficient check too? if that's the case we could create a "mod" where every monster just drops unique rings and find the missing one very quickly :D |
its not that easy to do;p |
yes that would be perfectly fine |
Great. My "dropmod" is almost complete. No nodrop, no gold drop, every monster drops like a boss-monster. Currently I'm looking into forcing one item type. edit: hm must have broken something. I just found a ring of mystics, but it morphed to a gladiators ring in vanilla... back to square one :D |
Oh boy, we are not handling this one correct... |
Updated the list, turns out we needed items from hellfire and not multiplayer, my bad. |
@qndel did you conclude that it is impossible to find Ring of Magma/Mystics in vanilla? |
not impossible to find, but always morphing on a new game :( |
would be interesting to see if it's fixable to where a new game in devilutionx would maintain it. |
Spawn comparability is now fixed. It and the other items tess another 0.11% of the game. Just 5 more hellfire items and I think we can close this issue :) |
It's definitely fixable but the problem is setting up a save to test it with. Ideally I'd need one with modified monster seeds so that the next 2 kills would drop some unique first on the list then one that's only findable after getting the first one. Then we could play with adding additional info to the items during the item generation process. I tried to produce such a save but ... it's tricky 😅 |
this should conclude the search (minus the morphing rings):
|
lets hope so, but the pods found on the first level has a 50% of being a regular pod so they might be duds :) |
both potions came from the same chest. is there any way to verify that they're of the sort you're looking for? |
Only by running the tests and analyzing the results |
Unfortunately both the healing potions turned out to be just random items, but the others where good 👍 |
I've created an issue, which might be related: #5420 |
@AJenbo this reminded me, that there are still potions to be hunted :D If collected some for you: |
@ChaosMarc nice work, you managed to find 2 level 1 hellfire potions, and 1 from another one, so that coveres the missing potions :) 6e7ed13 gave us another 0.01% test coverage. |
In order to fully test item generation, we need to find items with each of the possible properties. If you can help find some of these it would be very helpful. Preferably the items would be verified in the original before submitted so that we know that the regeneration code works identical to the original.
You can probably even use item trainers to generate the items, as long as you test that they work after starting a new game.
Items can either be submitted as save games or
PkItemStruct
valueshttps://github.com/diasurgical/devilutionX/blob/master/SourceT/pack_test.cpp#L111
We are currently missing the following:
The text was updated successfully, but these errors were encountered: