Jump to content

[A19] khzmusik's modlets


Recommended Posts

Posted (edited)

Hello, all. I'm starting a separate A19 thread for my modlets. I am unable to update the original post in the A18 thread, and this has unsurprisingly caused confusion. I will probably start a separate thread for my A20 modlets when I start porting them over.

 

The old (and now deprecated) A18 thread is here:

 

These modlets were all developed on A19.3, but they should work for any A19 version. If there are bugs or issues, feel free to let me know.

 

The Git repo for my A19 modlets is here:
https://gitlab.com/karlgiesing/7d2d-a19-modlets

 

Each modlet has its own individual README file. These files can be read on the Web by going to the modlet's directory in the GitLab repo; I have provided a link for each modlet.

 

The README files have many details about installation and usage, including whether it is recommended to create a new game world, as well as technical details about the creation of the modlet and how to modify its behavior.

 

Feel free to download them, modify them, learn from them, use the code in your own mods/modlets, and in general do whatever you like with them. Credit is appreciated but not required.

 

All these modlets should be available in the Mod Launcher as well. I highly recommend using that to install and manage your mods and modlets:
http://7d2dmodlauncher.org

 

XPath modlets
These modlets use XPath, so they are EAC friendly. Most require installation only on the server. Those that contain custom assets (usually additional icons) will need to be installed on both the server and clients. See the individual README.md files for details.

 

I am also including modlets that are dependent upon other modlets that use XPath (and/or custom assets), and do not have custom C# code or require DMT.

 

Adjustments to 0-CreaturePackZombies

 

Makes a number of adjustments to the 0-CreaturePackZombies modlet, provided by Xyth and company. Many thanks to Xyth and all the people who provided custom NPCs.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/0-CreaturePackZombies_khzmusik_Adjustments

 

Auto Mechanics

 

Adds auto mechanic traders and workstations. The workstation cannot be crafted, and can only be found at the custom trader. This means you will need to include the trader in RWG or add it by hand to Navezgane.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Auto_Mechanics

 

No Bedrolls

 

Bedrolls and beds can still be crafted but are purely decorative. They don't act as respawn points or prevent zombie spawning.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_No_Bedrolls

 

Preserved Foods

 

Adds craftable canned goods and preserved foods.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Preserved_Foods

 

Reset Skills On Death

 

On death, this modlet will reset (not remove) skill points, and remove all books read.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Reset_Skills_On_Death

 

Slow Build

 

Slows down building, and to a lesser extent upgrading. The idea is to discourage base building, and to encourage renovating existing POIs for both horde bases and dwellings.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Slow_Build

 

Snowberry Love

 

In the vanilla game, snowberries are nearly useless. This seems like a waste to me, so I added a bunch of uses for snowberries.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Snowberry_Love

 

Trader Lore

 

Adds unofficial lore and history to the trader dialogs.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Trader_Lore

 

UMA Zombies

 

Adds zombie versions of the vanilla UMA archetypes.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_UMA_Zombies

 

DMT modlets


These modlets contain custom C# code, and need to be built using the DMT tool. The Mod Launcher includes the DMT tool, and will build them for you automatically; this is how I recommend installing the modlets.

 

I am also including modlets that are dependent upon other modlets which require DMT, even if my own modlets do not.

 

Adjustments to 1-NPCPackHumans

 

Makes a number of adjustments to the 1-NPCPackHumans modlet, provided by Xyth and company. That modlet is itself dependent upon other modlets - see the README.md. Many thanks to Xyth, SphereII, and all the people who provided custom NPCs.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/2-NPCPackHumans_khzmusik_Adjustments_DMT

 

Crop Growth By Weather

 

A modlet that allows crop growth to be negatively affected by adverse weather conditions.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Crop_Growth_By_Weather_DMT

 

Food Spoilage

 

Introduces food spoilage to the game. This is dependent upon the 0-SphereIICore modlet (requires DMT), which provides the food spoilage code. Thank you to SphereII for doing the hard work!

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/1-SphereIICore_khzmusik_Food_Spoilage

 

Mostly Dead

 

A modlet that implements the "mostly dead" character death style for 7D2D. The idea is that when a player character dies, players respawn as an entirely new character, but they respawn into a (mostly) unchanged world. It can be modified for traditional "dead is dead" gameplay.

 

If you get this modlet, you don't need the "No Bedrolls" or "Reset Skills On Death" XPath modlets - those features are included.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Mostly_Dead_DMT

 

Seasonal Weather

 

Adds seasonal weather to the game.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Seasonal_Weather_DMT

 

 

More to come - stay tuned!

 

Edited by khzmusik (see edit history)
  • Like 1
  • Thanks 1
Link to post
Share on other sites

If anyone is coming here from the original A18 thread, then the only new modlet here is the Trader Lore modlet. But I'm pretty proud of how it turned out, so I really hope people check it out.

Link to post
Share on other sites
  • 2 weeks later...
Posted (edited)

And now, here's something I hope you'll really like.

 

Bad Medicine

  • You can only craft dirty bandages using cloth alone. Dirty bandages can be sterilized (to "vanilla" bandages) using alcohol in your backpack, or by boiling with clean water in a cooking pot.
  • Dirty bandages have a chance to cause infection. Treating lacerations (as opposed to just bleeding) will always cause infection.
  • To make up for the increased chance of infection, first aid items now have a very small antiseptic effect (less than honey).
  • You can now drink grain alcohol. It has the same effects as beer, but lasts slightly longer, and has a good chance of making you sick.
  • You can also drink gasoline. Don't drink gasoline.
  • If you are on fire, don't douse yourself with flammable liquids.
  • You're not Rambo. Stitch up a wound using a sewing kit, and you'll make pain sounds for everyone to hear. Unless you're drunk.

 

As always, details are in the README.md file in the repo.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Bad_Medicine

 

EDIT: Forgot to mention - this modlet is compatible with EAC. However, it does include a custom icon for the dirty bandages, so it must be installed on both client and server.

Edited by khzmusik (see edit history)
  • Like 4
Link to post
Share on other sites

Hi @khzmusik,
Been enjoying a couple of your modlets. Just discovered a bug with the Snowberry love.
When you plant your own snowberry, after harvesting a seed is not replanted (effectively meaning it's a net loss).

Just went into the blocks for the main game, there's a line in the XML that downgrades the planted crop on harvest. I think this is missing from yours.
From Vanilla blocks file.
<block name="plantedAloe3HarvestPlayer">
    <property name="Extends" value="plantedAloe3Harvest"/>
    <property name="DescriptionKey" value="plantedAloe3HarvestDesc"/>
    <property name="CustomIcon" value="plantedAloe1"/>
    <property name="CreativeMode" value="None"/>
    <drop event="Harvest" name="resourceCropAloeLeaf" count="1" tag="cropHarvest"/>
    <property name="DowngradeBlock" value="plantedAloe1"/>
</block>

Link to post
Share on other sites
Posted (edited)
10 hours ago, Dark_Shadow_231 said:

Hi @khzmusik,
Been enjoying a couple of your modlets. Just discovered a bug with the Snowberry love.
When you plant your own snowberry, after harvesting a seed is not replanted (effectively meaning it's a net loss).

Just went into the blocks for the main game, there's a line in the XML that downgrades the planted crop on harvest. I think this is missing from yours.
From Vanilla blocks file.
<block name="plantedAloe3HarvestPlayer">
    <property name="Extends" value="plantedAloe3Harvest"/>
    <property name="DescriptionKey" value="plantedAloe3HarvestDesc"/>
    <property name="CustomIcon" value="plantedAloe1"/>
    <property name="CreativeMode" value="None"/>
    <drop event="Harvest" name="resourceCropAloeLeaf" count="1" tag="cropHarvest"/>
    <property name="DowngradeBlock" value="plantedAloe1"/>
</block>

 

Nice catch.

 

I actually did not change the Snowberry blocks. I looked at the "plantedSnowberry3HarvestPlayer" XML and it is correct, it downgrades to the plant.

 

What I did not check was to make sure "plantedSnowberry2" grew into this block. It didn't, it grew into the one that is used in POIs.

 

It was an easy fix, and so I already fixed it. (EDIT: I also tested it to make sure it worked.)

 

It's pushed to the master branch for that modlet. You can download the new version directly (it's now v1.0.1). If you're using the Mod Launcher, it will show up there, but it takes time for the Mod Launcher to catch up with the updated repo. (I think it might speed things up if you clear all the caches, but I'm not sure.)

 

It's such an easy fix that you shouldn't need to start a new map. Theoretically at least.

 

Hope you're enjoying the modlet. It's sometimes hard for me to know if anyone is even paying attention. :) If you find any other issues, please let me know.

Edited by khzmusik (see edit history)
  • Like 1
Link to post
Share on other sites
On 5/31/2021 at 8:10 AM, khzmusik said:

And now, here's something I hope you'll really like.

 

Bad Medicine

  • You can only craft dirty bandages using cloth alone. Dirty bandages can be sterilized (to "vanilla" bandages) using alcohol in your backpack, or by boiling with clean water in a cooking pot.
  • Dirty bandages have a chance to cause infection. Treating lacerations (as opposed to just bleeding) will always cause infection.
  • To make up for the increased chance of infection, first aid items now have a very small antiseptic effect (less than honey).
  • You can now drink grain alcohol. It has the same effects as beer, but lasts slightly longer, and has a good chance of making you sick.
  • You can also drink gasoline. Don't drink gasoline.
  • If you are on fire, don't douse yourself with flammable liquids.
  • You're not Rambo. Stitch up a wound using a sewing kit, and you'll make pain sounds for everyone to hear. Unless you're drunk.

 

As always, details are in the README.md file in the repo.

 

https://gitlab.com/karlgiesing/7d2d-a19-modlets/-/tree/master/khzmusik_Bad_Medicine

 

EDIT: Forgot to mention - this modlet is compatible with EAC. However, it does include a custom icon for the dirty bandages, so it must be installed on both client and server.

I love all of your mods i've used so far, Bad Medicine included. I'm curious if it was your intention for the gasoline effect to translate over to using power tools as well? It seems it considers reloading an auger or chainsaw and simply using them to harvest and treats them as a though you are triggering action 0 on holding gasoline, thereby gaining dysentery every time.  I'd thought about seeing if i could add a tag to the buff or item to add a requirement not has tag tool or something to the triggered effect but can't seem to figure out the right way to implement it. Either way I will likely just make new buff that's a lowgrade annoying visual effect instead as though you were huffing gas instead of gaining dysentery. The rest of the mod is fantastic and working completely as intended i believe. That modification to the sewing needle use was genius. Such a perfect touch that makes so much sense. Love the dirty bandages as well. That makes way more sense to find in loot than what is effectively perfect doom quality med supplies every time.  And that antibiotic bump to the good medical items was an awesome discovery as infection is more likely in Purgatory. 

  • Thanks 1
Link to post
Share on other sites
1 hour ago, magejosh said:

I love all of your mods i've used so far, Bad Medicine included. I'm curious if it was your intention for the gasoline effect to translate over to using power tools as well? It seems it considers reloading an auger or chainsaw and simply using them to harvest and treats them as a though you are triggering action 0 on holding gasoline, thereby gaining dysentery every time.  I'd thought about seeing if i could add a tag to the buff or item to add a requirement not has tag tool or something to the triggered effect but can't seem to figure out the right way to implement it. Either way I will likely just make new buff that's a lowgrade annoying visual effect instead as though you were huffing gas instead of gaining dysentery. The rest of the mod is fantastic and working completely as intended i believe. That modification to the sewing needle use was genius. Such a perfect touch that makes so much sense. Love the dirty bandages as well. That makes way more sense to find in loot than what is effectively perfect doom quality med supplies every time.  And that antibiotic bump to the good medical items was an awesome discovery as infection is more likely in Purgatory. 

 

Thanks! I'm glad you like it. I don't even know how much that would be noticed (I mean, who puts themselves out with gasoline?) but I thought it would be funny.

 

Regarding power tools - no, that was definitely not intended. I didn't even consider that possibility when testing. I'll have to take another look at that, if there is no way to avoid "using" the gasoline when you refuel something, then I might have to take it out, unfortunately. (Hopefully not.)

 

...It might be a bit for me to do though, I just got a new gaming laptop and I want to play with it. :)

  • Like 1
Link to post
Share on other sites
Just now, khzmusik said:

 

Thanks! I'm glad you like it. I don't even know how much that would be noticed (I mean, who puts themselves out with gasoline?) but I thought it would be funny.

 

Regarding power tools - no, that was definitely not intended. I didn't even consider that possibility when testing. I'll have to take another look at that, if there is no way to avoid "using" the gasoline when you refuel something, then I might have to take it out, unfortunately. (Hopefully not.)

 

...It might be a bit for me to do though, I just got a new gaming laptop and I want to play with it. :)

I just fixed it. There was a ! in front of holdingitem has tags, and the tags were toolAnvil instead of gasoline.

        <effect_group tiered="false" name="Drink Tier 0">
            <requirement name="NotHasBuff" buff="buffIsOnFire" />
            <requirement name="HoldingItemHasTags" tags="gasoline"/>

is what i changed it to.

251570_20210610190734_1.png

Link to post
Share on other sites
3 hours ago, magejosh said:

I just fixed it. There was a ! in front of holdingitem has tags, and the tags were toolAnvil instead of gasoline.

        <effect_group tiered="false" name="Drink Tier 0">
            <requirement name="NotHasBuff" buff="buffIsOnFire" />
            <requirement name="HoldingItemHasTags" tags="gasoline"/>

is what i changed it to.

251570_20210610190734_1.png

 

Oh, that's interesting, I actually didn't know about that requirement or that tag. If it's just a matter of adding that requirement then I should be able to push it soon (basically as soon as I have time).

 

Thank you very much for the help!

  • Knuckle Rub 1
Link to post
Share on other sites

I'm not entirely positive the gasoline tag actually did anything. First test was just changing that so that maybe the requirement would not key onto the power tools. When that failed to prevent new dysentery buffs i went back and looked again, then copied the holding item has tags text and did a search of that text in the vanilla buffs. Didn't see the ! used in that manner so i decided to try removing it. I see it used in lots of cvar instances but not that case on a requirement in an effect group not using modifycvar.

Link to post
Share on other sites
16 hours ago, magejosh said:

I'm not entirely positive the gasoline tag actually did anything. First test was just changing that so that maybe the requirement would not key onto the power tools. When that failed to prevent new dysentery buffs i went back and looked again, then copied the holding item has tags text and did a search of that text in the vanilla buffs. Didn't see the ! used in that manner so i decided to try removing it. I see it used in lots of cvar instances but not that case on a requirement in an effect group not using modifycvar.

 

It was an easy fix. All you have to do is add the "HoldingItemHasTags" requirement to the effect_group that triggers the buff, so that it only fires if you're actually holding gasoline (or technically, an item with the "gasoline" tag).

 

I already pushed the changes to the repo. The modlet version is now 1.0.1. It should eventually show up in the Mod Launcher.

 

If you want to make it so the user is "huffing gas" (just a low-grade visual effect) that actually sounds kind of cool too. I'm sure you could also trigger some kind of player sound that sounds a bit like "huffing," but I don't know offhand which sound that would be. (Maybe the stamina sound?)

  • Like 1
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...