Major Content update for Stardew Valley
### Features
- New BundleRandomization Value: Meme Bundles - Over 100 custom bundles, designed to be jokes, references, trolls, etc
- New Setting: Bundles Per Room modifier
- New Setting: Backpack Size
- New Setting: Secretsanity - Checks for triggering easter eggs and secrets
- New Setting: Moviesanity - Checks for watching movies and sharing snacks with Villagers
- New Setting: Eatsanity - Checks for eating items
- New Setting: Hatsanity - Checks for wearing Hats
- New Setting: Start Without - Allows you to select any combination of various "starting" items, that you will actually not start with. Notably, tools, backpack slots, Day5 unlocks, etc.
- New Setting: Allowed Filler Items - Allows you to customize the filler items you'll get
- New Setting: Endgame Locations - Checks for various expensive endgame tasks and purchases
- New Shipsanity value: Crops and Fish
- New Settings: Jojapocalypse and settings to customize it
- Bundle Plando: Replaced with BundleWhitelist and BundleBlacklist, for more customization freedom
- Added a couple of Host.yaml settings to help hosts allow or ban specific difficult settings that could cause problems if the people don't know what they are signing up for.
Plus a truckload of improvements on the mod side, not seen in this PR.
### Removed features
- Integration for Stardew Valley Expanded. It is simply disabled, the code is all still there, but I'm extremely tired of providing tech support for it, plus Stardew Valley 1.7 was announced and that will break it again, so I'm done. When a maintainer steps up, it can be re-enabled.
* create building data object and rename ItemSource to Source to be more generic
# Conflicts:
# worlds/stardew_valley/content/game_content.py
# Conflicts:
# worlds/stardew_valley/data/artisan.py
# worlds/stardew_valley/data/game_item.py
# worlds/stardew_valley/data/harvest.py
# worlds/stardew_valley/data/shop.py
* remove compound sources, replace by other requirements which already handle this usecase
* add coops to content packs
* add building progression in game features
* add shippping bin to starting building; remove has_house
* replace config check with feature
* add other buildings in content packs
* not passing
* tests passes, unbelievable
* use newly create methods more
* use new assets to ease readability
* self review
* fix flake8 maybe
* properly split rule for mapping cave systems
* fix tractor garage name
* self review
* add upgrade_from to farm house buldings
* don't override building name variable in logic
* remove has_group from buildings
* mark some items easy in grinding logic so blueprints buildings can be in more early spheres
* move stuff around to maybe avoid future conflicts cuz I have like 10 PRs opened right now
* remove price_multiplier, turns out it's unused during generation
* disable shop source for mapping cave systems
* bunch of code review changes
* add petbowl and farmhouse to autobuilding
* set min easy items to 300
* fix farm type
* create tool progression feature and unwrap option
* replace option usage with calling feature
* add comment explaining why some logic is a weird place
* replace item creation logic with feature
* self review and add unit tests
* rename test cuz I named them too long
* add a test for the trash can useful stuff cuz I thought there was a bug but turns out it works
* self review again
* remove price_multiplier, turns out it's unused during generation
* damn it 3.11 why are you like this
* use blacksmith region when checking vanilla tools
* fix rule
* move can mine using in tool logic
* remove changes to performance test
* properly set the option I guess
* properly set options 2
* that's what happen when you code too late
* create a first draft of the feature
* use feature in items and locations
* add content to more places
* use feature in logic
* replace option check by feature
* remove unused code
* remove weird white space
* some import nitpicking
* flip negative if
* - Created a test for the "Mapping Cave Systems" book
* - Added missing rule to marlon's bedroom
* - Can kill any monster, not just green slime
* - Added a compound source structure, but I ended up deciding to not use it here. Still keeping it as it will probably be useful eventually
* - Use the compound source of the monster compoundium (ironic, I know)
* - Add required elevators
---------
Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
* Fix logic bug on daggerfish
* Make new region for pond.
* Fix SVE logic for crops
* Fix Distant Lands Cropsanity
* Fix failing tests.
* Reverting removing these for now.
* Fix bugs, add combat requirement
* convert str into tuple directly
* add ginger island to mod tests
* Move a lot of mod item logic to content pack
* Gut the rules from DL while we're at it.
* Import nuke
* Fix alecto
* Move back some rules for now.
* Move archaeology rules
* Add some comments why its done.
* Clean up archaeology and fix sve
* Moved dulse to water item class
* Remove digging like worms for now
* fix
* Add missing shipsanity location
* Move background names around or something idk
* Revert ArchaeologyTrash for now
---------
Co-authored-by: Jouramie <jouramie@hotmail.com>
* - Extracted walnut logic to a Mixin so it can be used in content pack requirements
* - Add 100 walnut requirements to the Queen of Sauce Cookbook
* - Woops a file wasn't added to previous commits
* - Make the queen of sauce cookbook a ginger island only thing, due to the walnut requirement
* - Moved the book in the correct content pack
* - Removed an empty class that I'm not sure where it came from
Focus of the Update: Compatibility with Stardew Valley 1.6 Released on March 19th 2024
This includes randomization for pretty much all of the new content, including but not limited to
- Raccoon Bundles
- Booksanity
- Skill Masteries
- New Recipes, Craftables, Fish, Maps, Farm Type, Festivals and Quests
This also includes a significant reorganisation of the code into "Content Packs", to allow for easier modularity of various game mechanics between the settings and the supported mods. This improves maintainability quite a bit.
In addition to that, a few **very** requested new features have been introduced, although they weren't the focus of this update
- Walnutsanity
- Player Buffs
- More customizability in settings, such as shorter special orders, ER without farmhouse
- New Remixed Bundles