[1.3.0] Hospitality

Started by Orion, March 13, 2015, 11:19:16 AM

Previous topic - Next topic

mataschmata

Quote from: Orion on April 13, 2018, 02:32:34 AM
Hmm,  you could use the developer tools and trigger visitor incidents until they show up.
Or you could edit your save game, find the visitor queue and edit the first item and change the faction ID to that of the faction you want.

I did try this to see if it was possible and it worked, but I really would rather not cheat. I'd like to find out why they aren't visiting, so I can play the game normally without forcing them to come via save file editing and developer mode.

Canute

Quote from: Malacai on April 13, 2018, 10:08:12 AM
I just got a bug with my visitors. They appeared on the map as usual, but instead of heading for my base they just walked along the edge of the map for a bit and then disappeared again. I am pretty sure i had the same bug in an earlier alpha already, but no idea if it was ever fixed.
The bug is 100% not from Hospitality, some other mod cause trouble for sure.
Did you try to move Hospitality at the end of your modlist ?

mataschmata,
sometimes you just could be unlucky. Since you show this kind if visitor's can appear
the dices might be against you. Even when your relations are very high with them.
I bet you hope to wanted to recruit some pawn's from these faction, and be disapointed that they never appear.

Orion

Quote from: mataschmata on April 13, 2018, 10:25:55 AM
I'd like to find out why they aren't visiting, so I can play the game normally without forcing them to come.
Then it's pure chance. You'll just have to play longer. Generally the chances are higher that the same factions come again, if they were satisfied.
If they were very satisfied, the chance that a new faction will come increases as well.

mataschmata

Quote from: Orion on April 13, 2018, 05:49:05 PM
Quote from: mataschmata on April 13, 2018, 10:25:55 AM
I'd like to find out why they aren't visiting, so I can play the game normally without forcing them to come.
Then it's pure chance. You'll just have to play longer. Generally the chances are higher that the same factions come again, if they were satisfied.
If they were very satisfied, the chance that a new faction will come increases as well.

This save file is on year 11 and it's the closest faction to my base. I suppose it's not a bug, but it's ridiculous how unlucky I must be for this to happen. Is there a way I could specifically trigger this one tribe to visit me once so I can increase the chance? When I used console commands I had to call in 12 consecutive visitor groups before I got it.

Also small note, at one point (around year 7 I think) they had a trade caravan here and one of them got hurt so I rescued them and sent them back, and improved relations. Do chances decrease if a faction pawn gets hurt on your map?

Orion

Yeah, by editing your save file, as I mentioned before.

Pawns getting hurt won't decrease chances. A higher relationship will increase chances, though.

Canute

I think Orion mean, that when a new visitor groupd comes in, you should tell them to leave shortly before they reach your base. Don't do it right after they enter the map, then they will come back a few day's later again.
This made the visitor a bit mad, and they won't come back for a while.
And like Orion mention, this will increase the chance for another faction group to appear next.

Once the right faction came, and you entertain them well, they come's to visit your often.

leon8179

I like your mod and I play every colony with this mod since then. However, it seems that you change the behavior of gifting in comms console. It makes the sense for the cost to go up but I think there should be a hard cap. Is there anyway to modify this?

Orion

You can change the source code for the mod and recompile it. You can also edit your save game and lower the cost again.

Or you befriend a new faction where the cost is still low.

vovik

Awesome mod, now i can list through more pawns easially before recruiting. (this gave me numerous good pawns)

Other thing to notice - this mod kinda "interacts" with another mod - "pick up and haul" in a bad way - guests can leave areq with lots of stuff from my colony. I`d propose/ask adding "can haul" option to settings in addition to "enable guests helping". Or somehow fix interaction with mod, i would appreciate more haulers in colony from time to time.
Pick up and haul: https://steamcommunity.com/sharedfiles/filedetails/?id=1279012058
Nun liebe Kinder gebt fein acht
Ich bin die Stimme aus dem Leere
Ich hab euch etwas mitgebracht
Ein heller Schein am Firmament
Mein Herz brennt

Orion

I can tell that the Pick Up And Haul modder is much more active than me. So I recommend asking him for a fix first.

My code is open source so he can easily inspect it, but also submit changes to it, if necessary:
https://github.com/OrionFive/Hospitality

Sardaine

Hi,

I have Hospitality active in my play but it's not really working. I can set the beds to visitors, but the visitors won't sleep anywhere/nor do any work/prompt any message when they leave if they liked it or not/leave anything when they leave. Furthermore the tab where you see the "try to recruit/entertain" etc (can't remember the name of the tab, sorry) shows up empty.. Looks like plain vanilla visitors.
Any help would be appreciated.

Thanks. Mod list and log are below

Active mods (all other mods seem to work fine btw):

<modNames>
         <li>Core</li>
         <li>HugsLib</li>
         <li>JecsTools</li>
         <li>Miscellaneous 'CORE'</li>
         <li>Medieval Times</li>
         <li>Combat Extended</li>
         <li>Medieval Times + Combat Extended Compatibility Mod</li>
         <li>Medieval World (No Guns/Low Tech)</li>
         <li>Hospitality</li>
         <li>Expanded Prosthetics and Organ Engineering</li>
         <li>Psychology</li>
         <li>Camping Stuff</li>
         <li>[RF] Basic Bridges [b18]</li>
         <li>[RF] Basic Bridges - Fishing Add-On [b18]</li>
         <li>Set-Up Camp</li>
         <li>Mending</li>
         <li>Corrected WorkGivers</li>
         <li>Billy's Improved Caravan Formation</li>
         <li>Combat Extended Guns</li>
         <li>Call of Cthulhu - Straitjackets</li>
         <li>Horses (B18)</li>
         <li>Animals Logic</li>
         <li>Vanilla Animal Overhaul</li>
         <li>Giddy-up! Core</li>
         <li>Giddy-up! Ride and Roll</li>
         <li>Giddy-up! Caravan</li>
         <li>Giddy-up! Battle Mounts</li>
         <li>ActiveResponseTraining</li>
         <li>RunAndGun</li>
         <li>Defensive Positions</li>
         <li>Achtung! v2</li>
         <li>EdB Prepare Carefully</li>
         <li>Double Population</li>
         <li>Animal Tab</li>
         <li>QualityBuilder</li>
         <li>AllowDeadMansApparel</li>
         <li>QualitySurgeon</li>
         <li>Allow Tool</li>
         <li>MT - Mood Adjustments</li>
         <li>A Dog Said...</li>
         <li>Colony Manager</li>
         <li>Dubs Skylights</li>
         <li>Firepit + Torch Sconce</li>
         <li>[sd] bridges</li>
         <li>Tilled Soil</li>
         <li>Furnace</li>
         <li>VGP Vegetable Garden</li>
         <li>VGP Garden Fabrics</li>
         <li>VGP Garden Medicine</li>
         <li>VGP Garden Tools</li>
         <li>VGP_CoffeeTeaDrugs</li>
         <li>Quarry</li>
         <li>Misc. Bees'n'Honey</li>
         <li>[sd] medicaddons</li>
         <li>[sd] nopower comms console</li>
         <li>Tribal Essentials [b18]</li>
         <li>[RF] Smooth Stone Walls [b18]</li>
         <li>Medical Tab</li>
         <li>Children</li>
         <li>The Birds and the Bees</li>
         <li>Rimworld: Medieval Edition</li>
      </modNames>

This is the log when booting Rimworld:

RimWorld 0.18.1722 rev1198
Verse.Log:Message(String)
RimWorld.VersionControl:LogVersionNumber()
Verse.Root:CheckGlobalInit()
Verse.Root:Start()
Verse.Root_Entry:Start()

CombatExtended :: Harmony_GenRadial_RadialPatternCount :: Info: Post GenRadial patch maximum radius: 119.4194
Verse.Log:Message(String)
CombatExtended.Harmony.Harmony_GenRadial_RadialPatternCount:Patch()
CombatExtended.Harmony.HarmonyBase:InitPatches()
CombatExtended.Controller:.ctor(ModContentPack)
System.Reflection.MonoCMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoCMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MonoCMethod:Invoke(BindingFlags, Binder, Object[], CultureInfo)
System.Activator:CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])
System.Activator:CreateInstance(Type, Object[], Object[])
System.Activator:CreateInstance(Type, Object[])
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

Combat Extended :: initialized
Verse.Log:Message(String)
CombatExtended.Controller:.ctor(ModContentPack)
System.Reflection.MonoCMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoCMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MonoCMethod:Invoke(BindingFlags, Binder, Object[], CultureInfo)
System.Activator:CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])
System.Activator:CreateInstance(Type, Object[], Object[])
System.Activator:CreateInstance(Type, Object[])
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

XML Verse.ResearchProjectDef defines the same field twice: requiredResearchBuilding.

Field contents: HiTechResearchBench.

Whole XML:

<ResearchProjectDef><defName>Electricity</defName><label>electricity</label><description>Generate and use electricity for cooking and other simple tasks.</description><baseCost>1200</baseCost><techLevel>Industrial</techLevel><requiredResearchBuilding>HiTechResearchBench</requiredResearchBuilding><researchViewX>3</researchViewX><researchViewY>2.5</researchViewY><prerequisites><li>MedTimes_AdvancedMedievalSmithing</li></prerequisites><tab>AdvancedTech</tab><requiredResearchBuilding>HiTechResearchBench</requiredResearchBuilding></ResearchProjectDef>
Verse.Log:Error(String)
Verse.DirectXmlToObject:ObjectFromXml(XmlNode, Boolean)
System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MethodBase:Invoke(Object, Object[])
Verse.<AllDefsFromAsset>c__Iterator2:MoveNext()
Verse.ModContentPack:LoadDefs_Patch1(Object, IEnumerable`1)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

Combat Extended :: Ammo removed
Verse.Log:Message(String)
CombatExtended.AmmoInjector:Inject()
Verse.LongEventHandler:UpdateCurrentSynchronousEvent(Boolean&)
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()

Combat Extended :: Bounds pre-generated
Verse.Log:Message(String)
CombatExtended.BoundsInjector:Inject()
Verse.LongEventHandler:UpdateCurrentSynchronousEvent(Boolean&)
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()

Reloader: analyzing Fluffy_ColonyManager, Version=18.3.8.335, Culture=neutral, PublicKeyToken=null
Verse.Log:Warning(String)
Reloader.Reloader:<CacheExstingMethods>b__3_1(Assembly)
System.Collections.Generic.List`1:ForEach(Action`1)
Reloader.Reloader:CacheExstingMethods()
Verse.LongEventHandler:UpdateCurrentSynchronousEvent(Boolean&)
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()

Injecting guest beds into the following facilities: EndTable, Dresser, VitalsMonitor, sd_medicaddons_medieval_surg_washpan, sd_medicaddons_medieval_surg_instruments, sd_medicaddons_medieval_surg_lamp, sd_medicaddons_industrial_surg_instruments, sd_medicaddons_industrial_surg_lamp, sd_medicaddons_spacer_surg_vitalsmonitor, sd_medicaddons_spacer_surg_instruments, sd_medicaddons_spacer_surg_lamp
Verse.Log:Message(String)
Hospitality.<GetFacilitiesFor>d__6:MoveNext()
System.Collections.Generic.List`1:AddEnumerable(IEnumerable`1)
System.Collections.Generic.List`1:.ctor(IEnumerable`1)
System.Linq.Enumerable:ToArray(IEnumerable`1)
Hospitality.Hospitality_SpecialInjector:Inject()
Hospitality.ModBaseHospitality:Inject()
Hospitality.ModBaseHospitality:Initialize()
HugsLib.HugsLibController:LoadReloadInitialize()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

Created guest beds for the following beds: SleepingSpot, Bed, DoubleBed, RoyalBed, HospitalBed, Bedroll, BedrollDouble, MedTimes_Cot, MedTimes_CotDouble, DoubleSleepingSpot
Verse.Log:Message(String)
Hospitality.Hospitality_SpecialInjector:CreateGuestBedDefs(ThingDef[], CompProperties_Facility[])
Hospitality.Hospitality_SpecialInjector:Inject()
Hospitality.ModBaseHospitality:Inject()
Hospitality.ModBaseHospitality:Initialize()
HugsLib.HugsLibController:LoadReloadInitialize()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

[HugsLib] v4.1.1 initialized Hospitality, Psychology, GiddyUpCore, GiddyUpRideAndRoll, GiddyUpCaravan, BattleMounts, RunAndGun, DefensivePositions, AllowTool, Children
Verse.Log:Message(String)
HugsLib.Utils.ModLogger:Message(String, Object[])
HugsLib.HugsLibController:LoadReloadInitialize()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

Combat extended loaded: True
Verse.Log:Message(String)
GiddyUpRideAndRoll.Base:DefsLoaded()
HugsLib.HugsLibController:OnDefsLoaded()
HugsLib.HugsLibController:LoadReloadInitialize()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


XML Verse.ResearchProjectDef defines the same field twice: requiredResearchBuilding.

Field contents: HiTechResearchBench.

Whole XML:

<ResearchProjectDef><defName>Electricity</defName><label>electricity</label><description>Generate and use electricity for cooking and other simple tasks.</description><baseCost>1200</baseCost><techLevel>Industrial</techLevel><requiredResearchBuilding>HiTechResearchBench</requiredResearchBuilding><researchViewX>3</researchViewX><researchViewY>2.5</researchViewY><prerequisites><li>MedTimes_AdvancedMedievalSmithing</li></prerequisites><tab>AdvancedTech</tab><requiredResearchBuilding>HiTechResearchBench</requiredResearchBuilding></ResearchProjectDef>
Verse.Log:Error(String)
Verse.DirectXmlToObject:ObjectFromXml(XmlNode, Boolean)
System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MethodBase:Invoke(Object, Object[])
Verse.<AllDefsFromAsset>c__Iterator2:MoveNext()
Verse.ModContentPack:LoadDefs_Patch1(Object, IEnumerable`1)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()

Canute

Sardaine,
none of these error's belong to Hospitality.
But you should try to move Hospotality to the end of your modlist and check if the Guest tab don't remain blank anymore.

SetArk

Hail!
Quick question!
I've read something on Reddit about making gift shops.
And i've seen that there's the Shopping Area on guests window.
So, how does it work?
I've just create an Area and put items o Shelfs/Ground there? And if they want, they'll buy then leaving Silver?
Or there's an special furniture or building i must use?
Thx in advance.

Canute

They just buy item on the ground in the shopping area, and drop silver on ground.
No special building/furniture needed.

Orion

Shelfs should also work, but not every storage mod is supported.
Don't forget to click Make Default after selecting the area. The shopping area has to be within the guest area.