gisellevonbingen-Minecraft / MineColonies_Compatibility

https://www.curseforge.com/minecraft/mc-mods/minecolonies-compatibility
GNU General Public License v3.0
6 stars 5 forks source link

[Feature Request] Let's Do mods and Farmer's Delights Extra compatibility #29

Open YumatanGames opened 2 months ago

YumatanGames commented 2 months ago

Suggestion for MineColonies Compatibility with Let's Do Mods

Hey there,

I've got an idea to make MineColonies even more immersive by adding compatibility with the "Let's Do" mods. Here’s the gist:

Let's Do Mods to Integrate:

New Profession: Bartender

Alternative if Bartender Profession Isn't Feasible:

Recipe Integration:

Extra Compatibility (if feasible):

Enhanced Village Life:

Note: The ideas for enhanced colonist behavior are extra features I'd love to see, but I understand they might be challenging to implement.

Why This is Great:

These changes would make the Tavern a cozy and essential part of village life, not just a place for NPC spawns. It would bring more charm and depth to our gameplay.

gisellevonbingen commented 2 months ago

Recipe Integration is looks good to me. It might be fun to make wine brewed.

I don't know if I can properly implement Enhanced Village Life. Also the Villager AI ​​improvement is slightly different from the purpose of the compatibility add-on I thought.

let me review it by a few tests. and i will implement step by step. Thank you for your opinion.

I used translator for my poor English.

YumatanGames commented 2 months ago

Thanks for reviewing my suggestions. I truly believe having compatibilities with these mods will bring a lot of flavor (pun intended) to Minecolonies. I knew from the start that the colonist AI changes were likely too complex and outside of the scope of the mod; I only suggested them as a way to sell the concept with a pitch of wishful thinking.

Thank you for all your work, I truly appreciate it. :)

gisellevonbingen commented 2 months ago

Bakery compatibility is done. Baker, Chef

YumatanGames commented 2 months ago

You're awesome! ❤️

YumatanGames commented 1 month ago

Just an FYI, the Let's Do mods released a few new mods that would be really nice to have compatibility with MineColonies. They are:

Specifically, the new Bakery, Candlelight, and Brewery compat mods are new mods with compatibility for Farm & Charm. These three mods have been rewritten and are now available as 'Farm & Charm Compat' versions.

A big problem with the Let's Do series was always that they didn't really work well together. Farm & Charm fixes this by acting as a connector between Bakery, Brewery, and Candlelight, making all recipes and processes more coherent. Additionally, there are numerous improvements and QoL updates for each of these mods: new blocks, better textures, new items, and interactions. Some of the changes, or rather the most notable ones, are documented in the wikis:

I loved that you spent your time making the compatibility with the other mods from the Let's Do series that I recommended, and I would perfectly understand if you don't want to do it again. But I want to let you know that these new compat versions mods from the Let's Do series (Bakery, Brewery, and Candlelight) are crashing when having your MineColonies compat installed.

gisellevonbingen commented 1 month ago

Hmm, new bakery mod is using same 'modid(bakery)' and same package 'net.satisfy.bakery'. This is meaning can't support legacy and new version both.

From what I've reviewed, Farm & Charm will greatly reduce the reliance on the MineColonies Baker, because allows to make bread without a Baker Station. Most of the Bakery compatibility features will probably have to be transferred to Chef. Then Chef will have too many features. And in my think, difficult to clearly divide the boundary between Baker and Chef for the newly added machines Mincer and Roaster.

According to Bakery's WIKI, legacy mod support will continue. So, i want to put on hold compatibility with new mod for now. If you have any good ideas on how to solve this problem, please let me know :)

holmraven commented 1 month ago

Hmm, new bakery mod is using same 'modid(bakery)' and same package 'net.satisfy.bakery'. This is meaning can't support legacy and new version both.

From what I've reviewed, Farm & Charm will greatly reduce the reliance on the MineColonies Baker, because allows to make bread without a Baker Station. Most of the Bakery compatibility features will probably have to be transferred to Chef. Then Chef will have too many features. And in my think, difficult to clearly divide the boundary between Baker and Chef for the newly added machines Mincer and Roaster.

According to Bakery's WIKI, legacy mod support will continue. So, i want to put on hold compatibility with new mod for now. If you have any good ideas on how to solve this problem, please let me know :)

Mods CurseForge states that "Bakery will be deprecated with 1.21 and will no longer be supported.", so with the release of 1.21 version the legacy version won't be supported anymore. Same mod id can probably be tackled by getting version and parsing it as semver, since the new bakery is version >2.0.0, but it using the same package name is too tricky, all options I can think of would require too much effort to even consider. I suggest either supporting only one of those versions or opening an issue and petitioning mods author to make supporting both versions easier.

gisellevonbingen commented 1 month ago

One way might be to separate the mods based on their bakery mods.

holmraven commented 1 month ago

One way might be to separate the mods based on their bakery mods.

Or an addon to this mod

YumatanGames commented 1 month ago

I'm not a developer, so I'm unsure how much help I can offer, but I have a suggestion that might simplify compatibility handling for your mod. Perhaps the mod could include different modules that activate depending on which version of the "Let's Do" mods is installed.

One approach could be to detect whether the player has the new "Farm & Charm" mod installed. If they do, the module that offers compatibility with "Let's Do: Bakery Compat," "Let's Do: Candlelight Compat," and "Let's Do: Brewery Compat" could activate. Additionally, the mod could prompt users with "Farm & Charm" to install these compatibility versions for a smoother experience. If the player doesn't have "Farm & Charm," the legacy module could activate instead.

This way, the mod could automatically adjust to the player's setup, potentially reducing conflicts and ensuring smoother gameplay.

YumatanGames commented 1 month ago

If supporting both the legacy and new versions of the "Let's Do" mods is too complicated, I would suggest focusing exclusively on the newer versions. The newer mods, like "Farm & Charm," are designed to work seamlessly with other "Let's Do" mods, offering a far better experience, especially for players using them alongside MineColonies.

These newer versions are better integrated and provide a more cohesive gameplay experience. This makes them more suitable for modpacks and for players who want all the "Let's Do" mods to function as a unified system. Supporting the latest versions could streamline development and reduce potential issues, ensuring a smoother experience for everyone.

gisellevonbingen commented 1 month ago

I've thought about it for a while, and the current mod will support the legacy version, And the new version will be implemented in the addon mode of this mod. Starting with 1.21, only the new version will be supported.

YumatanGames commented 1 month ago

Would you notify us when the addon is implemented? Would it work together with the original mod? Thanks

alarmgoose commented 1 month ago

Forgive me if this is a dumb question, but does this mean you will support the newer version of 1.20.1 with an addon?

YumatanGames commented 1 month ago

I noticed that some modded recipes from Let's Do: Bakery and Farmer's Delight (and their addons) require a Bucket of Milk to craft. However, with Minecolonies now allowing the use of Large Bottle of Milk as a substitute for buckets, it presents a great opportunity for optimization. Since Large Bottles of Milk stack up to 64, they save a lot of space in the warehouse.

Would it be possible to add an addon to this mod where either the Cooker or Baker could automatically convert Large Bottles of Milk into Buckets of Milk as needed? This way, the efficiency of stacking could be retained while still meeting recipe requirements. Alternatively, could the game recognize Large Bottles of Milk as equivalent to Buckets of Milk for crafting purposes?

gisellevonbingen commented 1 month ago

Forgive me if this is a dumb question, but does this mean you will support the newer version of 1.20.1 with an addon?

Yes it is.

gisellevonbingen commented 1 month ago

Would it be possible to add an addon to this mod where either the Cooker or Baker could automatically convert Large Bottles of Milk into Buckets of Milk as needed?

It is simple things because just add some tags at all, so i was think it should implemented by MineColonies instead of my addons.

https://github.com/ldtteam/minecolonies/pull/10045 We had submit adove pull request simillar this past, But it is not merged yet, so I will create another pull request about Large Milk Bottle after that pr is merged.

gisellevonbingen commented 1 month ago

Would you notify us when the addon is implemented? Would it work together with the original mod? Thanks

Started, I will commit soon. https://github.com/gisellevonbingen-Minecraft/MineColonies_LetsDo ^ LetsDo addon mod need Compatibility mod for work.

Compatibility is only support Legacy versions. LetsDo addon is only work with Farm & Charm versions. Unsupported versions are ignored.

So, Compatibility addon and LetsDo addon are can work together.

alarmgoose commented 1 month ago

Would you notify us when the addon is implemented? Would it work together with the original mod? Thanks

Started, I will commit soon. https://github.com/gisellevonbingen-Minecraft/MineColonies_LetsDo ^ LetsDo addon mod need Compatibility mod for work.

Compatibility is only support Legacy versions. LetsDo addon is only work with Farm & Charm versions. Unsupported versions are ignored.

So, Compatibility addon and LetsDo addon are can work together.

Thank you for your time.

YumatanGames commented 1 month ago

Is it possible to have overlapping items removed and unified? Would it be within the scope of this mod? Like Farmer's Delight also adds Rice for example, which means there are two different crops for it. Also, the colonists are eating the foods from other mods, like let's do and farmers delight and still complaining they didn't get a decent meal. :(

gisellevonbingen commented 1 month ago

let's do and farmers delight and still complaining they didn't get a decent meal. :(

Instead, Farmer's Delight foods are can defined as decent meal to use Custom Food tag from Tweaks addon. (https://github.com/gisellevonbingen-Minecraft/MineColonies_Tweaks/wiki/Custom-Food-Tag)

There are no way foods are defined grade automatically itself, you should tag item yourself for now. I can include it as Datapack to Compatibility mod if there reference.

gisellevonbingen commented 1 month ago

Would you notify us when the addon is implemented?

Done, 'Let's Do addon for MineColonies' be getting review now. (https://legacy.curseforge.com/minecraft/mc-mods/minecolonies-letsdo)

image Chef Bakery 3 1

alarmgoose commented 1 month ago

Would you notify us when the addon is implemented?

Done, 'Let's Do addon for MineColonies' be getting review now. (https://legacy.curseforge.com/minecraft/mc-mods/minecolonies-letsdo)

image Chef Bakery 3 1

Thank you for the update!

gisellevonbingen commented 1 month ago

image image

WIP vinery compat and bartender. There no 'Manage Workers button' and 'Pickup menu' in Tavern gui. So need a new button to access that menus. I tried adding a 'Worker Menu' button, but it looks a bit inconvenient.

image

So, I think it would little better to handle Brewing beer and wine by existing other job instead of create new job. Cookery is already having almost of full compatibility features.

As an alternative, I think it would be a good idea to have an alchemist brew alcohol. They make a drinkable liquid(potion), and really, alcohol is similar with potions, right?

YumatanGames commented 1 month ago

I like the idea of the bartender. But it wouldn't make too much sense, since colonists wouldn't request the drinks. I always thought they should have a bartender profession, feels weird having the tavern unmanned. But I guess the alchemist makes sense too.

gisellevonbingen commented 1 month ago

Vinery drinks are maybe can requested/used at candlelight recipe.

Btw, The aging barrel is putting world's current year NBT data to result item. When teaching recipe, the NBT tag is may empty in the result item, but the actual created result contains NBT.

Most of the MineColonies request systems require an exact match of NBT to work. So, i think request using aging barrel maybe will doesn't work well. Any idea for this?