File information

Last updated

Original upload

Created by

Agent Lyoko

Uploaded by

AgentLyoko

Virus scan

Safe to use

About this mod

Allows the Desert Festival to run twice a year and allows you to modify who can be a vendor! Requires Stardew Valley 1.6.

Share
Requirements
Permissions and credits
Changelogs
1.6 SPOILERS WITH THIS MOD! Do NOT proceed unless you are willing to be spoiled.


By now (if you’re clicking on this mod, anyway!) you’ve probably experienced the Desert Festival. It’s got something for everyone, from the races, to the Skull Cavern with special rules, to the best part – Desert Festival vendors with unique items, like Abigail with her bow and planchette, Leah’s bookcases and sword, and more (that I won’t spoil since I know it might take several days for everyone to get every shop)!

Sadly, it only happens for three days in Spring. Worse, the vendors are randomized, so you might end up getting Pam and Vincent and getting nothing good, or you might end up getting Shane and Penny and walk away with some sweet, unique farmhouse decorations! And since there’s no unique vendor protection, you could end up waiting literal in game decades to get your spouse at a stall. It’s a bit of a problem, and one that, in vanilla, you have to hope you get lucky on.

Enter this mod! Desert Festival Reloaded does what it can to alleviate these issues by doing two, very important things – making the Desert Festival semi-annual and running it on Fall 8-10, as well as allowing vendor toggles. Let’s dive into each, shall we?


Desert Festival, now twice a year!


Thanks to the massive success of the Desert Festival, Mayor Lewis reached out to Sandy about possibly holding the Desert Festival again in Fall! Unfortunately, the 16th is the Stardew Valley Fair, so that’s out, so they’re holding it a week earlier instead on Fall 8 through Fall 10. That’s right – more Desert Festival, more fun! There’s even new (configurable to be enabled) variety dialogue, so you’re not just getting the same thing said every single day.

There’s a few limitations that unfortunately I’m unable to do with just a content pack – the Cactus can be re-obtained, but it will be the exact same Cactus as the Spring cactus. Desert Festival schedules also override all other schedules, so if there’s a special fall 8, 9, or 10 schedule, this will get overridden. Finally, the scholar is unable to be re-quizzed for eggs.

Couldn’t collect the Skull Key and open the bus before Summer, but still want to go to the Desert Festival in Fall Year 1 (before the first official one)? No problem! Enable Year 1 Festival in the config and you’ll be able to go then too, with a mail acknowledging this. (After Year 2, the mails will be as normal, since it’s likely you should manage the Skull Key and Bus by Spring of Year 2.)

There is an “advanced” config if you’d like to move the Desert Festival re-run to sometime that’s not Fall 8-10, but this option is unsupported – that is, if you encounter bugs, short of a game ending bug I’m not likely to patch errors if that’s done. This is due to the timeframe of Fall 8 – 10 specifically chosen not just for vanilla freedom, but also because no other mods hold festivals then. Changing it from this timeframe is liable to cause errors.


Vendor Odds


This mod also comes with toggles on who is allowed to set up shops at the Desert Festival! Normally, this would be where I state you can “choose your own vendor”, but unfortunately due to how the Desert Festival logic works that’s not exactly correct. What the toggles can do, however, is remove any vendors which you don’t want (either because you already got them or because you want to increase the odds of another vendor showing up. This is also very helpful with any mods that add NPCs as vendors – if there’s only two spots and you have several major expansion/NPC mods adding vendors, you might have up to hundreds of NPCs competing for two spots! Being able to disable vanilla vendors is thus useful in those scenarios.

A fuller explanation is contained within the spoiler section below on vendor mechanics and how this mod affects them, but please note that disabling a lot of vendors may render the game incapable of giving you two (or even one!) vendor for the day. This won’t crash the game, but it will mean you won’t have some other shops to spend eggs at. It’s advised to only disable the vendors you don’t want, rather than attempt to restrict the vendors down to a couple of people. (If you want to directly choose your own vendors, you’ll need someone to do a C# mod in order to do so!)

Spoiler:  
Show

Vendor Mechanic Spoilers

The game chooses the vendors for the Desert Festivals according to the following:
  • They must have a shop and, if they’re Leo, they must be unlocked
  • They cannot path to the festival that day (so a DesertFestival_1 schedule for Abigail and Leah mean they can never set up shop on Day 1).

If it were just that, choosing your vendor would be simple – just tell the user what days they go. Unfortunately, there’s an extra wrinkle – on Day 2, the game removes an extra two from the shop pool, and on Day 3, an extra four shopkeeps are removed from the pool. This is likely due to scheduling on each day.
Take Abigail or Leah. They both path on day 1, so they’re not allowed that day. If you then restrict the game to only allow Abigail or Leah to set up shop, you’ll never have vendors – Day 1 they’re unavailable, and days 2 and 3 the pool is two people, at which point the previous code fires and removes them from the pool, stranding the vendor list with zero people. (This means if you’re testing a vendor, you should always disable everyone and never give them a Day 1 schedule – they’ll be the only person in the pool at that point.)

As such, there’s a minimum pool on each day. On Day 1, you can choose your vendors from the list of people that can set up shop – that day is perfectly able to be determined. On Day 2, however, your pool must have at least 4 NPCs in order for vendors to show up, and they are removed at random so you can’t determine which 2 of the 4 will set up shop. Similarly, on Day 3, your minimum pool of characters is 6 – if at least 6 NPCs aren’t available, then you’ll be down vendors, and you can’t choose which one sets up shop on those days.

As such, this part of the mod is notated as “vendor odds” rather than “choose your desert festival vendors”. If you’re trying for a specific shop, mouse over the NPC in the config list to learn which days they go, and try to make a pool of people that don’t go on that day to maximize your odds of getting someone specific. (The schedule is determined at day start, so make sure to edit it at end of day if you’re planning on shifting the odds in your favor in a different way the next day!)



A few potential questions to answer, in case there’s any confusion:

HELP! I disabled people and now I have no vendors when some are still enabled! What gives?


You’ve probably fallen afoul of the same trap I fell into before I had the mechanics explained to me – the Desert Festival does not allow you to directly choose your vendors. If you have less than the required minimum of NPCs in the pool on each day (meaning they can’t be going to the DF that day normally and they must have a shop), the game won’t send anyone to man the vendor stalls. Restart the day and activate more people who are able to set up a shop – you can mouse over each character name and I’ve helpfully noted which days they can’t set up shops on.

I have a calendar mod and it’s no longer showing the Desert Festival in spring while I’m in fall? What’s happening?


The Desert Festival mostly runs in code, but its internals allow me to modify the date and time it starts with just Content Patcher. Essentially, what this mod does is “moves” the Desert Festival to Fall 8-10, but only for the fall season – after that, the Desert Festival returns to its normal spot from Spring 15-17. I did attempt to make it so it worked separately, but unfortunately since it runs on code practically everything… broke when I did that. (No one pathed to the festival, the special order strings died, etc. It was awkward.)


Can this mod help me get modded Desert Festival shops?


This mod actually works wonderfully as a debug tool for anyone wanting to create a Desert Festival shop for their NPC – simply disable all shops and patch in your Desert Festival shop (and DO NOT have a DesertFestival_1 or marriage_DesertFestival_1 schedule key). On the player side, it can disable all vanilla shops so you can get any modded vendors you’d like, but it can’t disable specific modded vendors, so you’d basically only be able to remove vanilla ones. Still, it’ll help if Sophia sets up shop or Flor (or anyone else from Ridgeside, which could lead to another 30-40 shops in the pool!) decides to go as well.


Oh god, please tell me I don’t have to make more festival positions for this! The Desert Festival is already really crowded!


Good news – since the festival is mainly determined in C# code, you’ll end up having the same spots in Spring and in Fall. The only way this is different is if you patch the DF code seasonally, and that’s up to you! Feel free to only send them there once.


WHY CAN’T I GET A NEW CACTUS???


You should be able to get a second of the same cactus from Spring – if not, that’s a bug I have to fix. However, the “seed” for the cactus (and the flag that says you got it) is seeded on a yearly basis, so without a C# mod, I can’t change the cactus seed from what it is, even if I can force a forget of the flag. This means you'll get the same cactus you got in Spring, but again, from Cactus Man. 

To at least alleviate this, there's a config to change how many Cacti you can get. While it will require a map change to get another one, choosing "Unlimited" cactus means you can get unlimited of the same cacti. If you love your Cactus, get as many as you want!



That should be it. If you encounter any bugs, please let me know and I’ll fix them (or let you know why I can’t – there’s only so much this mod can do!)


Mods shown in images: Stardew Valley Expanded, Seasonal Cuter Aesthetic, Seasonal Cuter Aesthetic - SVE, Vanilla Front Facing Sandy