[SOLVED] Question about Getting All The Mines Remixed Rewards

Hi guys trying my luck here as didn't have good luck on this issue on Reddit

I am trying to collect all the items in Stardew between 2 (realistically probably 3) saves, and trying to prepare as well as possible to minimize randomness and tedium.

One pain point is the mines remixed rewards, which had the following unique items below (obtainable only from remixed rewards):
- Floor 10 - Femur
- Floor 20 - Elf Blade
- Floor 90 - Ossified Blade

These are my questions:
- Can the "Danger in the Deep" quest which resets the Mines also reset the treasure chest contents? (I plan on testing this theory but reaching Qi's Room will not be easy on the Switch)
- Can multiplayer influence treasure chest content in ANYway? (On the same day at least, a different profile receives the same chest content as the original profile [verified])
- Besides these two options above, any other way (either RNG manipulation, regular exploits, etc.) that is within the non-hack realm that can vary remixed treasure chest contents?
- What resources can I read up on to understand how seeds influence these rewards? Any existing seeds that already satisfy all these three conditions?
- If this is mathematically / programmatically impossible, can anyone provide proof or explanation of this?

These are my research thus far on the subject, and admittedly very surface level:
- Remixed Mine rewards are not truly random. A little confused over the methodology of this OP and how to reproduce the math that was done. The conclusion seems ambiguous and does not definitively prove that having all remixed mine rewards on one save is a mathematical impossibility. Wondering if anyone can clarify what the OP means and get the English analysis into a mathematical form.
- The code seems to be calling some random function though: Utility.GetRandom(valid_items, r). Admittedly, RNG and randomness in game is fascinating but also a very confusing subject for me, so I can only understand that this randomness is somehow achieved by seeds, which itself probably is not true random, and biased as the first source suggests.

Appreciate any insights!
 

FilthyGorilla

Local Legend
You could pretty easily find a seed with all three, they have a pretty big chance for each as the variability for the individual chest is low.
You could do a makeshift version and just use the predictor with your already made seed files and just look or find someone who can.
Danger in the deep and any multiplayer/rng messing also does not help in any way, the chest content is preselected by seed and nothing will influence that so all of your theories are pretty much useless in practice.
Another item I would reccomend getting is the work boots as while they are possible to get without the remixed, they are a pain, they might be a level 10 chest though, I do not care to check.
 
Thanks for all that explanation! So seed is the way to go, but seeing as I am on the Switch version, probably I will need to ask someone else I take it.
I am assuming seed is platform agnostic, and that whatever seed I could manage to find via another person's help on PC will work for Switch?
The next line of thing for me is to I guess ask someone to help find that seed then.

Yes, Work Boots is a pain, I have spent 600 hours on a previous save to find it to no avail. In comparison, the Living Hat rate is merely an "inconvenience" compared to Work Boots. Unfortunately though it is on Floor 10, so I might just have to grind it out somehow.

It's nice to have a couple of these theories confirmed as NG so I can save time on that front (to probably use it all on the Work Boots)
 
Actually I was able to find a sample save from Online, so I will take the rest of my question in my own hands. Thanks a lot FilthyGorilla (just realized that name is kinda like a counterpart to ConcernedApe, nice!)! I will mark this question as [SOLVED] for now.
 
Final? Update with findings. Will edit post if any further development happens on my end. If any of the assumed premise is wrong, please correct me:
Edit 1: Checked seed 200050001 against Switch save and Stardew Predictor. FL10 has Femur on Switch save but was "undefined" on Stardew Predictor. The premise I assumed below may be incorrect. Will verify if I can recreate the 152641855 seed rewards on Switch as predicted by Stardew Predictor when I have time again.
Edit 2: Checked 152641855 seed on Switch (FL10: Iron Dirk) vs. Predictor (FL10: Work Boots). Will buy the PC version of stardew and check the same seed on PC, Switch and Predictor and see if all three aligns.


Premise:
- save.gameID or the <uniqueIDForThisGame> tagged value in the XML formatted save should be the sole predictor of mine chests based on Stardew Predictor's predictMineChests function
- For the sake of this test, as long as the <uniqueIDForThisGame> tag value was changed or save.gameID is changed, then the values of the mine chests should correctly and correspondingly change
- Switch seed is the same as PC Edit 3: As per BlaDe's comments and my experiments to be a false premise. Since one of the four premises I made is false, the conclusion cannot be proven true.
- 1.5 save seed is the same as any previous

Conclusion (Edit 3: Unproven):
- It seems the OP of the Remixed Mine rewards are not truly random reddit post was right. The seed with this condition seems infinitesimally slight, if not outright impossible.
- Ran a modified script of Stardew Predictor to loop through seeds from 0 to 999999999, and it has been running for two hours now without finding a seed with the conditions above.

Admittedly, my modifications may contain bugs that I'm not aware of; I've only tested this with some few simple tests. When I find time to debug and double check my code, will update.
Below are two said modifications:

If any of the below is NOT content suitable for this forum. Please let me know and I will delete...

output = predictMineChests(isSearch, extra); is replaced with output = loop(0); in updateTab function and serve as the entrypoint to my modified script.

Loop function from seed 0 to potentially 999999999 if no seeds are found:
Code:
    function loop(startingSeed) {
        var output = {};
        while(startingSeed <= 999999999) {
            output = strippedPredictMineChests(startingSeed);
            // 10 Femur; 20 Elf Blade; 90 Ossified Blade
            // Unit tested with FL10 Work Boots, FL20 Wood Club, FL90 Ossified Blade with Seed 123456794 and starting Seed 123456789 and was able to quickly find a result
            if(output[10] == save.weapons[31] && output[20] == save.weapons[20] && output[90] == save.weapons[60]) {
                console.log(startingSeed);
                console.log(output[10] + " " + output[20] + " " + output[90]);
                return startingSeed;
            }
            startingSeed++;
        }
        // Seed is not found, but log the last seed reached anyway
        console.log(startingSeed);
        console.log(output[10] + " " + output[20] + " " + output[90]);
        return "Seed not found";
    }
Modified predictMineChests function without the fancy HTML formatting and returns a dictionary containing floor-item pairing:
Code:
    function strippedPredictMineChests(seed) {
        var output = {},
        floor,
        rng,
        item,
        choices = {
            10: [save.boots[506], save.boots[507], save.weapons[12], save.weapons[17], save.weapons[22], save.weapons[31]],
            20: [save.weapons[11], save.weapons[24], save.weapons[20], save.rings[517], save.rings[519]],
            30: ["(No chest)"],
            40: [save.weapons[32]],
            50: [save.boots[509], save.boots[510], save.boots[508], save.weapons[1], save.weapons[43]],
            60: [save.weapons[21], save.weapons[44], save.weapons[6], save.weapons[18], save.weapons[27]],
            70: [save.weapons[33]],
            80: [save.boots[512], save.boots[511], save.weapons[10], save.weapons[7], save.weapons[46], save.weapons[19]],
            90: [save.weapons[8], save.weapons[52], save.weapons[45], save.weapons[5], save.weapons[60]],
            100: ["Stardrop"],
            110: [save.boots[514], save.boots[878], save.weapons[50], save.weapons[28]],
            120: ["Skull Key"]
        };
        for (floor = 10; floor < 121; floor += 10) {
            // From StardewValley.Locations.MineShaft.GetReplacementChestItem()
            // save.gameID is replaced with seed to dynamically generate seed values
            rng = new CSRandom(handleBigInt(seed * 512 + floor));
            item = choices[floor][rng.Next(choices[floor].length)];
            //// Commented out wikify function as I just want the raw String item name
            // if (floor !== 30) {
            //     item = wikify(item);
            // }
       
            output[floor] = item;
        }
        // Output is a simple dictionary of floor, item pairing
        return output
    }
 
Last edited:
Last bump to conclude this thread.

Did a bit more investigation after work which confirm my theory after edit 2 and debunks the premise that gives any meaning at all to my earlier experiment conclusion.

As per this thread and my own experiments, Switch seed is different from other platform, and seed is definitely not platform agnostic :(. So there's no point in trying stardew predictor or any other tools from my end.

Furthermore, it's quite strange how some seeds have undefined values for all the floors' chest contents in the predictor (e.g., 200050001, 888888888). Wonder how that works? I haven't looked into the stardew code yet, but will there just not be a chest? A default value item is provided instead? Bug in predictor? I just don't understand how the predictor works?

Brute forcing 0-999999999 after two hours did not return any seeds that match the ask (though the process did not completely finish so I can't conclude there isn't a seed). Hoping someone can find a seed still for this, otherwise I will give up for now. Though I did not get too much response for my initial question, the response I've received was nice and I appreciate it :), thanks all.
 

Elenna101

Farmer
Yeah, the RNG is programmed differently on Switch than on PC, unfortunately as far as I know it's not possible to access the Switch code so the Switch can't be predicted because we don't know how it's programmed.
 
I asked a similar question on the forums recently and Blade replied. He told me about Dynamic Seeds which involves starting a new farm and configuring the seed then quitting to the title and loading your main save this changes the seed of your main file and allows for every remixed mine item to be obtained. The only side effect of this is that your save will be duplicated once you sleep. Now I have Switch so I used 200050001 to get the femur I’ll update this forum once I brute force the remaining seeds for Switch.
 
Hey appreciate you updating this thread in addition to creating your thread as I got notif on this [:
I'll be interested in seeing how Dynamic Seeds work - as I gave up on this endeavor quite some time ago but would be interested to pick it up again.

How do I change the seed exactly? How do I remove the side effect?
I am kicking myself in the foot right now as I did figure out two seeds which should have all the remixed rewards items in combination, but I did not record the numbers... I'll see if I can remember them tonight.

I'm assuming that for "main saves" that never (could) turn on the "Remixed Rewards in Mines" option in settings could never get the remixed rewards in mines even with Dynamicc Seeds. Is that true?
 
Hey appreciate you updating this thread in addition to creating your thread as I got notif on this [:
I'll be interested in seeing how Dynamic Seeds work - as I gave up on this endeavor quite some time ago but would be interested to pick it up again.

How do I change the seed exactly? How do I remove the side effect?
I am kicking myself in the foot right now as I did figure out two seeds which should have all the remixed rewards items in combination, but I did not record the numbers... I'll see if I can remember them tonight.

I'm assuming that for "main saves" that never (could) turn on the "Remixed Rewards in Mines" option in settings could never get the remixed rewards in mines even with Dynamicc Seeds. Is that true?
Ok so to change your seed here’s the process:

Step 1: open the game and click the “New” option.

Step 2: change the seed of the new farm to whatever you wish do not start the new farm and once you have the seed typed in quit to the title screen.

Step 3: click the “Load” option and select the save you wish to change the seed of.

And boom you’re playing on the seed you typed in for the new farm you never started the side effect can be resolved by deleting whichever file copy has fewer play time next time you go to load a save deleting the copy does not affect your main copy with more play time. Also yes your main save would not be able to get the remixed mine rewards you’d have to play on a save that hasn’t opened any chests in the mines and on one that selected Remixed Mines when it was created
 
Also yes your main save would not be able to get the remixed mine rewards you’d have to play on a save that hasn’t opened any chests in the mines and on one that selected Remixed Mines when it was created
I have a quick follow-up question on the bolded section. Can this be bypassed by a second player? Second player should have "unopened chests" and should not be constrained by this limitation unless this is some global parameter check.

I do plan to verify this claim tonight, but was curious. This could allow us to get all the Mines reward in one save.
 
I have a quick follow-up question on the bolded section. Can this be bypassed by a second player? Second player should have "unopened chests" and should not be constrained by this limitation unless this is some global parameter check.

I do plan to verify this claim tonight, but was curious. This could allow us to get all the Mines reward in one save.
Does a second player reset the chests in the mines on their screen? I guess that makes sense to allow them to get the slingshot and all key items. If that’s the case that would totally work and would most certainly allow for all mines items . If that doesn’t work I was thinking about multiplayer earlier as well however I was thinking about an entirely different scenario. If one player is on a regular mines setting and the other is on remixed and the seed is corresponding with the given remixed exclusive then maybe if the chest is opened at the same time both players will get different things from the chests. Or even crazier if both players can set different seeds that would allow for Work Boots to be obtained along with the femur
 
Does a second player reset the chests in the mines on their screen? I guess that makes sense to allow them to get the slingshot and all key items. If that’s the case that would totally work and would most certainly allow for all mines items . If that doesn’t work I was thinking about multiplayer earlier as well however I was thinking about an entirely different scenario. If one player is on a regular mines setting and the other is on remixed and the seed is corresponding with the given remixed exclusive then maybe if the chest is opened at the same time both players will get different things from the chests. Or even crazier if both players can set different seeds that would allow for Work Boots to be obtained along with the femur
The second player has unopened chests yes. That I have done in my main save some time ago so I can confirm that is a thing.
The second player creates a profile that has more limited options. Things like remixed mines reward is a global setting that is set upon the primary player setting. Subsequent players only have control over how they look etc., so remixed and standard mine items can't mix that way.

Going back to the question earlier about if standard items are included in remix. That I am unsure. Let me check the Stardew code real quick and get back to you on that.
Yep, I was thinking about scenarios like that just so I don't have to grind work boots :boot:, the standard item thing is a bonus for sure!


EDIT:

Seems the wiki should be correct. Remix should also include standard items: https://stardewvalleywiki.com/The_Mines#Remixed_Rewards
As per GetReplacementChestItem() method, these are the remixed reward content per floor:
Code:
                switch (floor)
                {
                case 10:
                    valid_items.Add(new Boots(506));
                    valid_items.Add(new Boots(507));
                    valid_items.Add(new MeleeWeapon(12));
                    valid_items.Add(new MeleeWeapon(17));
                    valid_items.Add(new MeleeWeapon(22));
                    valid_items.Add(new MeleeWeapon(31));
                    break;
                case 20:
                    valid_items.Add(new MeleeWeapon(11));
                    valid_items.Add(new MeleeWeapon(24));
                    valid_items.Add(new MeleeWeapon(20));
                    valid_items.Add(new Ring(517));
                    valid_items.Add(new Ring(519));
                    break;
                case 50:
                    valid_items.Add(new Boots(509));
                    valid_items.Add(new Boots(510));
                    valid_items.Add(new Boots(508));
                    valid_items.Add(new MeleeWeapon(1));
                    valid_items.Add(new MeleeWeapon(43));
                    break;
                case 60:
                    valid_items.Add(new MeleeWeapon(21));
                    valid_items.Add(new MeleeWeapon(44));
                    valid_items.Add(new MeleeWeapon(6));
                    valid_items.Add(new MeleeWeapon(18));
                    valid_items.Add(new MeleeWeapon(27));
                    break;
                case 80:
                    valid_items.Add(new Boots(512));
                    valid_items.Add(new Boots(511));
                    valid_items.Add(new MeleeWeapon(10));
                    valid_items.Add(new MeleeWeapon(7));
                    valid_items.Add(new MeleeWeapon(46));
                    valid_items.Add(new MeleeWeapon(19));
                    break;
                case 90:
                    valid_items.Add(new MeleeWeapon(8));
                    valid_items.Add(new MeleeWeapon(52));
                    valid_items.Add(new MeleeWeapon(45));
                    valid_items.Add(new MeleeWeapon(5));
                    valid_items.Add(new MeleeWeapon(60));
                    break;
                case 110:
                    valid_items.Add(new Boots(514));
                    valid_items.Add(new Boots(878));
                    valid_items.Add(new MeleeWeapon(50));
                    valid_items.Add(new MeleeWeapon(28));
                    break;
                }
We can convert these numbers into their respective item names via these links:
 
Last edited:
The second player has unopened chests yes. That I have done in my main save some time ago so I can confirm that is a thing.
The second player creates a profile that has more limited options. Things like remixed mines reward is a global setting that is set upon the primary player setting. Subsequent players only have control over how they look etc., so remixed and standard mine items can't mix that way.

Going back to the question earlier about if standard items are included in remix. That I am unsure. Let me check the Stardew code real quick and get back to you on that.
Yep, I was thinking about scenarios like that just so I don't have to grind work boots :boot:, the standard item thing is a bonus for sure!


EDIT:

Seems the wiki should be correct. Remix should also include standard items: https://stardewvalleywiki.com/The_Mines#Remixed_Rewards
As per GetReplacementChestItem() method, these are the remixed reward content per floor:
Code:
                switch (floor)
                {
                case 10:
                    valid_items.Add(new Boots(506));
                    valid_items.Add(new Boots(507));
                    valid_items.Add(new MeleeWeapon(12));
                    valid_items.Add(new MeleeWeapon(17));
                    valid_items.Add(new MeleeWeapon(22));
                    valid_items.Add(new MeleeWeapon(31));
                    break;
                case 20:
                    valid_items.Add(new MeleeWeapon(11));
                    valid_items.Add(new MeleeWeapon(24));
                    valid_items.Add(new MeleeWeapon(20));
                    valid_items.Add(new Ring(517));
                    valid_items.Add(new Ring(519));
                    break;
                case 50:
                    valid_items.Add(new Boots(509));
                    valid_items.Add(new Boots(510));
                    valid_items.Add(new Boots(508));
                    valid_items.Add(new MeleeWeapon(1));
                    valid_items.Add(new MeleeWeapon(43));
                    break;
                case 60:
                    valid_items.Add(new MeleeWeapon(21));
                    valid_items.Add(new MeleeWeapon(44));
                    valid_items.Add(new MeleeWeapon(6));
                    valid_items.Add(new MeleeWeapon(18));
                    valid_items.Add(new MeleeWeapon(27));
                    break;
                case 80:
                    valid_items.Add(new Boots(512));
                    valid_items.Add(new Boots(511));
                    valid_items.Add(new MeleeWeapon(10));
                    valid_items.Add(new MeleeWeapon(7));
                    valid_items.Add(new MeleeWeapon(46));
                    valid_items.Add(new MeleeWeapon(19));
                    break;
                case 90:
                    valid_items.Add(new MeleeWeapon(8));
                    valid_items.Add(new MeleeWeapon(52));
                    valid_items.Add(new MeleeWeapon(45));
                    valid_items.Add(new MeleeWeapon(5));
                    valid_items.Add(new MeleeWeapon(60));
                    break;
                case 110:
                    valid_items.Add(new Boots(514));
                    valid_items.Add(new Boots(878));
                    valid_items.Add(new MeleeWeapon(50));
                    valid_items.Add(new MeleeWeapon(28));
                    break;
                }
We can convert these numbers into their respective item names via these links:
So this means that all we have to do is find seeds for the steel smallsword work boots and obsidian edge and then add a second player! Also update found the seeds for ossified blade and crystal dagger 111222333 for the dagger and 222333444 for ossified blade
 
Top