Skip to content

hajsdfgj/modular-overhaul

Repository files navigation

MARGO - Modular Gameplay Overhaul

A complete and comprehensive rework of Stardew Valley gameplay mechanics, offering a much more engaging and immersive "Vanilla+" experience.

License

Table of Contents

Introduction

This mod is a compilation of overhaul modules, each targeting a specific gameplay component or mechanic. Together, the modules complement each other to create a "Vanilla+" experience.

The modular nature of this mod allows users to cherry-pick features to their liking, while also preserving the deep native integration required between individual modules. This reduces the amount of redundant code which helps the mod run better and be more easily maintained.

Note about existing saves: This mod is meant to provide an entirely new experience of progression. While it can be added to existing save files, doing so would be largely pointless due to missing out on that experience. Therefore, I strongly recommend reserving this mod for your next playthrough.

🔼 Back to top

Modules

The available modules are listed below. Please read this page carefuly in its entirety. Modules can be toggled on or off in the title screen via GMCM. Each module is itself highly configurable, and will be added to the GMCM menu if enabled. Some modules require specific enabling/disabling instructions you should pay attention to. These requirements will be mentioned below.

  • PROFS is the original module, formely known as Walk Of Life. It overhauls all the game's professions with the goal of supporting more diverse and interesting playstyles. It also introduces optional Prestige mechanics for very-late game save files and Limit Breaks for Combat professions.

  • CMBT is a huge overhaul of nearly all aspects of combat; from rebalanced stats, melee and ranged weapons, rings and enchantments, to entirely new mechanics like status effects, weapon combos, a new weapon type, Gemstone Music Theory, and much more. This module adds new items via Json Assets, and thus may cause Json Shuffle on existing saves.

  • PNDS is a complement to the new Aquarist profession. It allows Fish Ponds to produce Roe with scaling quantities and qualities, spontaneously grow algae, and even enrich the nuclei of metals.

  • TXS is a complement to the new Conservationist profession. It introduces a realistic taxation system as an added challenge and end-game gold sink. Because surely a nation at war would be capitalizing on that juicy farm income.

  • TOLS is a one-stop-shop for tool customization and quality-of-life. It enables resource-tool charging, farming-tool customization, intelligent tool auto-selection, and even adds Radioactive tool upgrades, among other things.

  • TWX is the final module, and serves as a repository for smaller tweaks and fixes to inconsistencies not large enough to merit a separate module.

Please note that only the Professions and Tweex modules are enabled by default.

99% of your questions about this mod are answered in the pages above. It took me several years of workd to produce this mod, so please take 10-15 minutes to read them before asking questions.

All modules should be fully multiplayer and split-screen compatible if and only if all players have it installed. This mod is not Android-compatible, but an Android version of Chargeable Tools is available in a dedicated branch.

🔼 Back to top

Installation & Update

  1. Make sure SpaceCore is installed.
  2. Go to the Releases page (link also to the right) and download the latest ModularOverhaul.zip file.

  1. Extract the downloaded archive file into your local mods folder.
  2. Download and install any additional optional files as desired.
  3. Start the game once with SMAPI to generate a config file.
  4. Enable the desired modules in GMCM by pressing Shift+F12 in the title screen, or by manually editing the config.json file. I recommend you do this before beginning your playthrough.

Please review the compatibility sections of each specific module in the links above.

As with any mod, always delete any previous installation completely before updating. If you'd like to preserve your config settings you can delete everything except the configs.json file.

The use of Vortex or other mod managers is not recommended for Stardew Valley.

🔼 Back to top

Reporting Bugs or Issues

  1. Make sure the mod is updated to the latest version. I will not support older versions.
  2. Make sure you can reliably reproduce the issue. Write out the steps to reproduce the issue.
  3. Check whether the issue is caused by a mod conflict:
    • You can do this easily by renaming your mod folder to something else (for example, just add an underscore), creating a new one, and then copying over SpaceCore, MARGO and, optionally, CJB Cheats Menu (to help with quick testing). If the issue can no longer be reproduced in this condition, then gradually copy over your remaining mods in small groups, until you identify the conflicting mod.
  4. Check whether the issue can be reproduced on a brand new save file. If it cannot, then I will probably ask you to upload your save folder to any file-sharing service of your choice, and sharing the url.
  5. Upload your entire log to smapi.io. There you will also find instructions in case you don't know where to find your log.
  6. Go to the Issues page and check whether someone else has already reported the same issue. If not, then create a new thread. Please include:
    • A descriptive title.
    • As much detail as you can muster. Consider describing not only what happened, but also when and how it happened, and what you expected should happen instead.
    • Your results from steps 2-4 above.
    • The link to your uploaded log and, if applicable, your uploaded save folder.

🔼 Back to top

API for C# Developers

This mod offers an API for C# developers wishing to add third-party compatibility. To use it, copy both files in the API folder over to your project, and change the namespace to something appropriate. Then request SMAPI for a proxy.

Below are some usecases for the API:

  • [PROFS]: Checking the current value of dynamic perks associated with certain professions.
  • [PROFS]: Hooking custom logic into Scavenger and Prospector Treasure Hunts.
  • [PROFS]: Hooking custom logic to several stages of the Limit Break.
  • [PROFS]: Allowing SpaceCore skills to surpass level 10, and be Prestiged at levels 15 and 20.
  • [CMBT]: Checking the Resonances currently active on any given player.
  • [CMBT]: Inflicting and curing Status Effects.
  • Checking the config settings of any given player (note that you must create your own interface for this).

🔼 Back to top

Building the Source Code

In order to build this mod you will also need to clone my Stardew Valley Shared Lib and just the following lines in this project's .csproj file:

  1. Your game path, as well as (optionally) build paths:
<!-- paths -->
<PropertyGroup>
  <GamePath>G:\Steam\steamapps\common\Stardew Valley 1.5.6</GamePath>
  <GameModsPath>$(GamePath)/Mods - Build/$(Configuration)</GameModsPath>
  <ModZipPath>$(GamePath)/Mods - Build/Archive</ModZipPath>
</PropertyGroup>
  1. The path to Stardew Valley Shared Lib's Shared.projitems file:
<!-- shared projects -->
<Import Project="..\..\Shared\Shared.projitems" Label="Shared" Condition="Exists('..\..\Shared\Shared.projitems')" />

🔼 Back to top

Dependencies

This project requires the following NuGet packages:

Package Name Author Version
Pathoschild.Stardew.ModBuildConfig Jesse Plamondon-Willard 4.1.1
Pathoschild.Stardew.ModTranslationClassBuilder Jesse Plamondon-Willard 2.0.1
Leclair.Stardew.ModManifestBuilder Khloe Leclair 2.1.0
Ardalis.SmartEnum Steve Smith 2.1.0
NetEscapades.EnumGenerators Andrew Lock 1.0.0-beta04
FastExpressionCompiler.LightExpression Maksim Volkau 3.3.4
CommunityToolkit.Diagnostics Microsoft 8.0.0
JetBrains.Annotations JetBrains 2023.2.0

🔼 Back to top

Credits & Special Thanks

All hail our Lord and Savior Pathoschild, creator of SMAPI, Content Patcher and the mod-verse, as well as our Father, ConcernedApe, creator of Stardew Valley, a benevolent God who continues to support the game for both players and modders.

This mod borrows ideas and assets from Ragnarok Online, League of Legends and early Pokemon games. Credit to those, respectively, goes to Gravity, Riot Games and Game Freak. This mod is completely free and open-source, provided under Common Clause-extended MIT License.

Special thanks the translators who have contributed to this project:

You have the right to upload your own translation of this project, but I reserve the right to add your translation directly to the project.

Shout-out to JetBrains for providing a free open-source license to ReSharper and other tools, which provide an immense help to improve and maintain the quality of the code in this mod.

Pufferchick JetBrains logo.

🔼 Back to top

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published