• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

Grim Tales XML Modlet

JoeSloeMoe

Active member
Grim Tales 7DTD XML mod.
 ​

A small collection of short stories that give a glimpse into the lives/deaths of other survivors.

The Storylines introduce unique items mid-late game.

    1) Missing Patrol Car - break into a number of Cop Cars without lockpicking to engage.
    2) Mary's Revenge - triggered at a 3000 Kill Streak (Configurable). Kill Streak resets on death.
    3) Pigeons Carry Diseases - pigeons: some people hate them and some people absolutely adore them.
    4) Interloper - keeping your eyes and ears open can lead to interesting things.
  

Current Version 1.1.1 Download: https://github.com/JoeSloeMoe/GrimTales

Recommend starting a new game.

Notes:
 - You can increase or lower the Kill Streak requirement for Mary's Revenge. See killStreakTarget in buffs.xml, under the line <!--PLAYER CONFIG VARIABLES-->

 - These are not Trader quests or missions. They occur as you play the game (mid-late game).
 - This is an XML mod and some of the storytelling is bounded by the capabilities of the XML framework.

 - The Pigeons Carry Diseases storyline isn't about infection.
 - The mod has not been tested in a multiplayer environment. Feedback on this is welcome.

 - 7DTD V1.x compatible.

License:
The code is free to use and commented with that in mind. A thank you would be nice if you reuse the code/patterns.

This modlet comes from the Survival No Trader mod:

https://community.7daystodie.com/topic/34585-survival-no-trader-v10/

Version Info:
1.0.1 - 7th Sept 2024

1.0.2 - 5th Oct 2024
1.1.0 - 3rd Jan 2025

1.1.1 - 15 Feb 2025

           - Code fix for MP IsBloodMoon error.

           - Minor ammo loot balance.

           - Code cleanup for Pigeons Carry Diseases boss encounter.

           - Corrected spelling of Magrat's sister's name.

 
Last edited by a moderator:
Version 1.0.2 - 5th Oct 2024
 - Added sound effect and tweaked timing for final Interloper interaction to improve immersion.
 - Several minor localisation changes to improve context.
 - Added conditional to Pigeons Carry Diseases code to prevent timing issues for a specific use case.

 
Last edited by a moderator:
Version 1.1 uploaded.

- Mary's Revenge is now a full story with an end boss and an optional side quest.

 
Last edited by a moderator:
I was just tinkering with this mod yesterday! :D  Does this update work with V1.2? Its so much fun will go ahead and add the updated files anyway

 
I was just tinkering with this mod yesterday! :D  Does this update work with V1.2? Its so much fun will go ahead and add the updated files anyway


Hi ahtawulfa,

Yes, its V1.2 compatible. The update added a chunk to the Mary's Revenge storyline and I'm very glad you get a kick out of the mod.

Cheers

 
Added to a hosted v1.2 stable MP session. The “IsBloodMoon” xml tag in “Buffs” broke my friend’s game by console spamming. Definitely avoid MP usage. Great mod though from what I was able to experience before having to remove it from the list!

 
Added to a hosted v1.2 stable MP session. The “IsBloodMoon” xml tag in “Buffs” broke my friend’s game by console spamming. Definitely avoid MP usage. Great mod though from what I was able to experience before having to remove it from the list!
Hi Lupoispro

Thanks for the MP feedback. 

I'll fix this. I can sub a different requirement in instead to stop spawning during bloodmoon. Do you have a rough idea what it was spamming?

My main hesitation for MP is the events - I dont know how well they might function within a group (distributed environment). Will upload a change tomorrow.

cheers

 
Last edited by a moderator:
Hi Lupoispro

Thanks for the MP feedback. 

I'll fix this. I can sub a different requirement in instead to stop spawning during bloodmoon. Do you have a rough idea what it was spamming?

My main hesitation for MP is the events - I dont know how well the might function within a group. Will upload a change tomorrow.

cheers
NullReferenceException: Object reference not set to an instance of an object
at IsBloodMoon.IsValid (MinEventParams _params) [0x00037] in <0a824c04d551409fad5953ac8c5c40be>:0
at MinEffectGroup.canRun (MinEventParams _params) [0x0004e] in <0a824c04d551409fad5953ac8c5c40be>:0
at MinEffectGroup.FireEvent (MinEventTypes _eventType, MinEventParams _eventParms) [0x00009] in <0a824c04d551409fad5953ac8c5c40be>:0
at MinEffectController.FireEvent (MinEventTypes _eventType, MinEventParams _eventParms) [0x0001c] in <0a824c04d551409fad5953ac8c5c40be>:0
at BuffClass.FireEvent (MinEventTypes _eventType, MinEventParams _params) [0x00013] in <0a824c04d551409fad5953ac8c5c40be>:0
at EntityBuffs.FireEvent (MinEventTypes _eventType, BuffClass _buffClass, MinEventParams _params) [0x00003] in <0a824c04d551409fad5953ac8c5c40be>:0
at EntityBuffs.Update (System.Single _deltaTime) [0x0018b] in <0a824c04d551409fad5953ac8c5c40be>:0
at EntityAlive.OnUpdateEntity () [0x00030] in <0a824c04d551409fad5953ac8c5c40be>:0
at EntityPlayer.OnUpdateEntity () [0x00000] in <0a824c04d551409fad5953ac8c5c40be>:0
at EntityPlayerLocal.OnUpdateEntity () [0x001e3] in <0a824c04d551409fad5953ac8c5c40be>:0
at World.TickEntity (Entity e, System.Single _partialTicks) [0x0011e] in <0a824c04d551409fad5953ac8c5c40be>:0
at World.TickEntities (System.Single _partialTicks) [0x000ab] in <0a824c04d551409fad5953ac8c5c40be>:0
at GameManager.UpdateTick () [0x00093] in <0a824c04d551409fad5953ac8c5c40be>:0
at GameManager.gmUpdate () [0x00495] in <0a824c04d551409fad5953ac8c5c40be>:0
at (wrapper dynamic-method) GameManager.DMD<System.Void GameManager:Update()>(GameManager)
at (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.SyncProxy<System.Void GameManager:Update()>(GameManager)


That's the error. The vanilla IsBloodMoon requirement has been broken in MP forever at this point.

 
Version 1.1.1 upload with fix for IsBloodMoon requirement multiplayer error.

Also a couple other code tweaks for better story context and player interaction.

cheers

 
Back
Top