Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Distman

#1
TL;DR : Do you want to help me make a technology restriction mod for playing medieval/fantasy setting?

Hi,

I'm slowly getting back into Rimworld playing and modding after about 1.5 year hiatus. I love the idea of playing Rimworld in a medieval/fantasy setting but always get disappointed when suddenly a mechanoid cluster with inferno turrets arrives (HEY! DIDN'T I DISABLE THOSE??). Or when rewards from a quest include [SUPER HIGHTECH DOOMSDAY WEAPON], [LASER CUTTING MEGA BLASTER EYE BIONIC] etc. You know what I mean...
While there are a lot of magnificent mods that add content, few mods restrict futuristic events, rewards, gear and such. And none of those (I've tried) fix it all.

So, I'm looking for some collaborators in making a mod that restricts the world to medieval technologies, meant to be used in conjunction with mods that adds the content the player wants. While the intention is not to add a ton of new appropriate content, other mods can do that, my idea is to rewrite/retexture some vanilla aspects/items to fit in with this fantasy vibe. Some events and items will be cut out completely.

Still doing some def research and working on a to-do list, but here are some spontaneous ideas:
* Rewrite royalty faction to be medieval in technology level. This includes reworking some royalty specific gear to get more in line with the concept.
* Rewrite events (sometimes only changing texture and descriptive text), rework ancient dangers/shrines/temples whatever (undead guarding loot??).
* Remove all advanced items from faction pawns, traders and quest rewards. Add in medieval rewards from vanilla and patch in items from curated mods. Rewrite artifacts/high tier items/serums to be more fantasy-friendly ( healer mech serum -> healing serum)
* Remove mechanoids faction and events.
* Re-balance insect spawning (they can be pretty OP when trying to destroy 70 of them with clubs and swords), with alternative option to remove them altogether.
* Rewrite description of some world conditions (psychic drone for instance)

So, who's in?

Also any suggestions from the community are much appreciated. Share your experiences running medieval playthroughs. And any input from mod makers about approach and pitfalls is also golden.

Raise your sword, stand tall, destroy your enemies
//Distman (of Ministry Of MOM)

#2
Yeah, this has been a problem for many modders since the beginning. It's not super easy to solve.
You have to get down and dirty with c# modding.

If you look at the two for loops in the method, it will chose the last TerrainDef it can find that corresponds with all those IF statements. If it can't find any, it uses Concrete.

The best way would be to have a bool variable in Def, something like <useForBaseGen>, so it can be skipped in a modified version of that BaseGenUtility method. I'm just a nood at Harmony so i can't supply any solution to you, unfortunately.
#3
Thanks for the insight and link.
I had to do some more detective work since the parts are not children of def, rather the lists themselves.

Might be a quicker and easier way to solve this, but here is what i got if anybody else wanna patch bodies:
Defs/BodyDef[defName="Human"]/corePart/parts//li[def="Neck"]/ancestor:parts//li[def="Head"]/ancestor:parts//li[def="Nose"]/ancestor:groups

/Distman

Quote from: Mehni on January 31, 2019, 04:53:18 AM
Defs/BodyDef[defName="Human"]/corePart/parts/li[def="Neck"]/parts/li[def="Head"]/parts/li[def="Nose"]/groups

Defs/BodyDef[defName="Human"]/corePart/parts//li[def="Nose"]/groups

* is a wildcard that only skips a single node. // is a wildcard that looks in all nodes. Note that // is a LOT slower for general searches. In this case, since you're already a few nodes deep, the performance cost doesn't have that much impact.

For using text, the syntax is text() = "sometext". See also https://gist.github.com/Lanilor/e36af29ce5ce725b9b29768c63b00ef2#some-more-selectors and whatever other documentation you can find.

Xpath isn't a mystical art; it's a well documented standard that's been around since 1999. The more you read and learn about it, the more the mysticism disappears.
#4
Help / Re: Can't have different stages of moods?
January 30, 2019, 06:04:36 PM
I think you should look more into how watching artworks(sculptures) work, since corpses gives a bad mood just for being there. Also i think you are missing a ThoughtWorker class somewhere. And multiple stages of moods/thoughts work fine.
#5
Help / Re: All my mods poofed
January 30, 2019, 04:10:13 PM
Reinstall Rimworld?
#6
So, i'm just a dabbler in the mystical arts of xpath.
Simple operations i have no problem with, but when messing with defs with a lot of lists and children my mind explodes.

What i want to do is patch a bodypart in a body with an added <Groups> node.
path is (i think): BodyDef/Human/corePart/parts/li/Neck/parts/li/Head/parts/li/Nose/groups
Defined in Bodies_Humanlike.xml

Should look something like this? Havn't tried it yet...
<Operation Class="PatchOperationAdd">
<xpath>*/BodyDef[defName="Human"]/corePart/parts/li[.="Neck"]/parts/li[.="Head"]/parts/li[.="Nose"]/groups</xpath>
<value>
<li>Face</li>
</value>
</Operation>


I guess my question is; can i use wildcards to reach the node easier?
I see a lot of talk about *text(), but not fully understand how it works. (Just shooting from the hip here...)
<Operation Class="PatchOperationAdd">
<xpath>*/BodyDef[defName="Human"]/*[text("Nose")]/groups</xpath>
<value>
<li>Face</li>
</value>
</Operation>


Thanks in advance!
/Distman
#7
Releases / Re: [B19] Gas traps and gas shells for mortars
September 05, 2018, 01:12:57 AM
New update:

V0.9
Updated for Beta 19. Also introducing my most horrible creation yet: the corrosive gas trap/shell... Let's barbeque!

Non-steam download: https://www.dropbox.com/s/beqc32u3kypcwsw/GasTrap_v09.zip

Updated on steam as well:
https://steamcommunity.com/sharedfiles/filedetails/?id=964388988

/Distman
#8
Yeah, of course. But, I like how steam mods auto-update. :D

Quote from: KWPAllDay on April 03, 2018, 02:41:58 PM
Quote from: SansMasterBudaa :3 on April 03, 2018, 03:12:33 AM

Literally i have 87 mod at same time running in my rimworld, so thats the problem  :(

Yeah that's probably it lol

Quote from: Distman on April 03, 2018, 01:04:44 PM
Steam release please! Seems interesting... <3

You know you can install non-steam mods right?
#9
Steam release please! Seems interesting... <3
#10
Gonna call it quits for now as well.
I'll let you know if i make any progress at a later date.
#11
Try starting a new colony using the modlist you played before.
Seems to work fine, but then something happens after a while that triggers the error messages and the endless party mode.
Don't know if it's after raids or traders that makes it go boink.

Shit starts hitting the fan after about one day, but this is probably on the fast side, since i used dev tools to setup a base, name colony, spawn raid, spawn visitors, spawn traders...

:(
#12
No luck. Doesn't matter if Hospitality is on or off.
Error messages gallore and still endless parties.
#13
It's seems like the problem are more complex then that.
I've tried a bunch of things; disabling suspecting mods. Still same error message spam.

Then i tried creating a new colony with same modlist. No spam and parties ending as they should.

So, it's either something that you build as you progress that starts the spam error. Or it's some event or something that triggers after a while.

Will try removing Hospitality on my save... Brb

Quote from: verity on April 02, 2018, 10:02:13 AM
I THINK I GOT IT, IT'S HOSPITALITY

I just made tests with new colonies in devmode , build them a small house, then forced a party. It ended after a few hours with Hospitality turned off!!!

I also noticed that with the bugged parties my pawns never gained the party buff or gained any joy from it whereas in the test without Hospitality, they got the normal buffs.

I assume it's not Hospitality by itself, but rather a combination of one of our other mods with it. I will leave a message in Hospitality's thread, maybe the author knows more about it.
#14
Great! You have the same error message spam as me! Maybe we can solve this.
I have a save just before a party triggers (are these scheduled??), and one save just when the party has started.

On the top of my head, , i'm running these mods like you:
ModSwitch
HugsLib
JecsTools
GiddyUp (all of them)
Vegetable Garden
MegaFauna
Set-up Camp
Pick Up and Haul
Cults
Cosmic Horrors
Industrial-Age
Straitjackets
More Trait Slots
CampingStuff
Vampires
Werewolves
Hospitality
RimMagic

My suspicions lie with GiddyUp, Pick Up and Haul and even possibly Megafauna (just because it's new in my library and problems started after that)

Another question: have you had problems with caravans not packing up items when you sending them out? They just walk around, slowly dying/going berserk because of boredom and starvation. I had this problem in my last colony, which used more or less the same modlist.

Quote from: verity on April 02, 2018, 09:19:18 AM
I have been checking my log on a new colony, and yeah, even though no party has happenend yet, I also fear that wasn't the solution. Wanna compare modlists? Maybe we could at least narrow it down.

Here's mine, sorry for ugly formatting:
<ModsConfigData>
  <buildNumber>1722</buildNumber>
  <activeMods>
    <li>Core</li>
    <li>ModSwitch</li>
    <li>HugsLib</li>
    <li>JecsTools-1.0.9.5</li>
    <li>AlienRaces-master</li>
    <li>GiddyUpCore-18.7.5</li>
    <li>Miscellaneous_Core</li>
    <li>RW_ArchitectSense-master</li>
    <li>StuffedFloors-master</li>
    <li>Vegetable Garden</li>
    <li>AnimalsLogic</li>
    <li>AnimalTab</li>
    <li>AreaUnlocker</li>
    <li>Better_Sandbags-1.1</li>
    <li>ButchersCanCountMeat-18.1.0</li>
    <li>DontShaveYourHead-0.18.2</li>
    <li>FluffyBreakdowns</li>
    <li>ImprovedAnesthetic</li>
    <li>kNumbers-master</li>
    <li>ManhunterPacksRebalanced</li>
    <li>MassGraves</li>
    <li>Megafauna_b18</li>
    <li>Miscellaneous_MapGenerator</li>
    <li>Miscellaneous_MapGenerator_FactionBase</li>
    <li>Nandonalt - Set-up Camp</li>
    <li>Nandonalt_SnowyTrees-b18</li>
    <li>ParasiteTendsMatter</li>
    <li>PickUpAndHaul-master</li>
    <li>PlantCuttingIsForGrowers</li>
    <li>Quarry-master</li>
    <li>RF - Archipelagos</li>
    <li>RF - Basic Bridges</li>
    <li>RF - Fishing</li>
    <li>RF - Smooth Stone Walls</li>
    <li>RF - More Trait Slots</li>
    <li>Rimsenal_Hair</li>
    <li>RimTweaks-master</li>
    <li>Room Food - Release</li>
    <li>Rumours and Deception</li>
    <li>SF [B18] Rain Removes All Filth</li>
    <li>ShootingSkillEnhanced</li>
    <li>SkillOverhead</li>
    <li>StackMerger</li>
    <li>T-ExpandedCloth</li>
    <li>T-RawCropThoughts</li>
    <li>TradingSpot</li>
    <li>[B18]ConduitDeconstruct</li>
    <li>Call-of-Cthulhu---Cosmic Horrors</li>
    <li>Call-of-Cthulhu---Elder-Things</li>
    <li>Call-of-Cthulhu---Factions</li>
    <li>Call-of-Cthulhu---Industrial-Age</li>
    <li>Call-of-Cthulhu---Straitjackets</li>
    <li>ExtendedStorage-master</li>
    <li>A_Dog_Said-Lite-A18</li>
    <li>battlemounts-18.7.1</li>
    <li>GiddyUpCaravan-18.3.2</li>
    <li>GiddyUpRideAndRoll-18.1.6</li>
    <li>Nandonalt_CampingStuff-b18</li>
    <li>RBSE - Lite Edition 1.81</li>
    <li>Rim-of-Madness---Vampires</li>
    <li>Rim-of-Madness---Werewolves-(1.18.0.1 - Stat fixes)(03-15-2018)</li>
    <li>RIMkea 1.2 -A18</li>
    <li>Rimsenal_Feral</li>
    <li>SF [B18] Simple Oil Lantern</li>
    <li>Survivalists-Additions-18.09</li>
    <li>T-MiscStuff</li>
    <li>T-MoreBedsCloth</li>
    <li>TMagic</li>
    <li>VGP_Tools</li>
    <li>Animal Feed Trough B18</li>
    <li>MinifyEverything-master</li>
    <li>Hospitality</li>
    <li>Psychology</li>
    <li>Allow Tool</li>
    <li>AllowDeadMansApparel</li>
    <li>Extended Turrets</li>
    <li>MT - No Mechanoid Raids</li>
    <li>Prepare Landing</li>
  </activeMods>
</ModsConfigData>


Also, this is a message I have in my log that is going up in the thousands very quickly. Might be unrelated, might not.
System.NullReferenceException: Object reference not set to an instance of an object
  at Verse.AI.Group.Lord.LordTick () [0x00000] in <filename unknown>:0
  at Verse.AI.Group.LordManager.LordManagerTick () [0x00000] in <filename unknown>:0
  at Verse.Map.MapPostTick () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.Map:MapPostTick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

#15
Thanks, but i'm not using that mod.
I'm using Medieval World (along side Medieval Times), but it's not using the same way of disabling mechanoids.