Ludeon Forums

RimWorld => Mods => Releases => Topic started by: jecrell on May 26, 2017, 10:16:37 AM

Title: [1.4] JecsTools [10/21/2022]
Post by: jecrell on May 26, 2017, 10:16:37 AM
(https://github.com/jecrell/JecsTools/raw/master/About/Preview.png)


(https://img.shields.io/badge/release-1.4.0.0-brightgreen) (https://github.com/jecrell/JecsTools/releases/) (https://img.shields.io/badge/documentation-Wiki-4BC51D.svg?style=flat) (https://github.com/roxxploxx/RimWorldModGuide/wiki) (https://img.shields.io/badge/support%20me%20on-Patreon-red.svg?style=flat) (https://www.patreon.com/jecrell)




Adds components to RimWorld: vehicles, spell casting, weapon slots, oversized weapons, and more!




Download the Latest Version (Github) (https://github.com/jecrell/JecsTools/releases)
Workshop Page (Steam) (http://steamcommunity.com/sharedfiles/filedetails/?id=932008009)




**Note to players:** This mod will not change your game, but rather it lets modders do more, so you can have an even more amazing RimWorld experience.
   
**Note to modders:** This mod contains components that allow you to do many new and different things in RimWorld. Check out RoxxPloxx's guide for more info here: https://github.com/roxxploxx/RimWorldModGuide/wiki
   
Total list of components:

*CompAbilityUser*
- Adds spell/ability casting to humanlikes.

*CompActivatableEffect*
- Adds an activation graphic for weapons (e.g. lightsaber beam).

*CompDeflector*
- Allows the ability to knock projectiles away with melee weapons.

*CompExtraSounds*
- Adds extra melee sounds to weapons.

*CompLumbering*
- Gives pawns a staggered walking animation that cycles between two images. (e.g. ATST walking effect)

*CompOversizedWeapon*
- Allows weapons to have graphic sizes that can be bigger than RimWorld's vanilla limits.

*CompSlotLoadable*
- Adds slots to objects, weapons, apparel, etc that can be filled to have effects. (e.g. an ammo slot for guns with different kinds of ammunition, crystal slots for lightsabers, etc)

*CompVehicle* (Experimental)
- Allows for a pawn to be treated as a vehicle that can be loaded with pilots, gunners, crew, and passengers

*CompInstalledPart*
- Allows for a part to be installable and uninstallable onto another thing. This is particularly useful for vehicle weapons.

*CompToggleDef*
- Allows for a thing to despawn, change its def, and respawn.

*CompAnimated*
- Allows for animating various things.

*CompDelayedSpawner*
- Allows many customizable options for spawning one or many things into RimWorld -- similar to the vanilla spawner with more options.

*CompOverlays*
- Allows modders to add graphics on top of existing ones -- for example, a dozen lit candles can have overlays of tiny fires.

*PawnShields*
- Adds shields to RimWorld.

Total List of Classes

JecsTools.Hediff_TransformedPart
- Similar to added part, however, transformed parts will not remove the original parts when removed from the character. This allows for us to "transform" pawn parts. Such as having a colonists' hands turn into deadly claws.

JecsTools.JobGiver_AIFirelessTrashColonyClose
JecsTools.JobGiver_AIFirelessTrashColonyDistant

- These classes lets us call a special jobgiver for raiders that does not include setting fire to objects. This is good for monstrous creatures that do not have the ability to start fires but still want to break things.

JecsTools.DamageWorker_Cleave
JecsTools.DamageDefCleave

- Adds a new damage worker called "cleave" that allows for an attack to swipe multiple targets in front of a user based on XML settings defined in a new damage def. This update is in the preparation of the upcoming Werewolves mod.

JecsTools.HediffCompDamageOverTime
- Causes damage over time to a target.

JecsTools.HediffComp_DamageSoak
- Shrugs off certain types of damage.

JecsTools.HediffComp_ExtraMeleeDamages
- Adds extra melee damages.

JecsTools.HediffComp_Knockback
- Adds knockback, optionally explosive, to attacks.

JecsTools.PlaceWorker_Outline
- Adds outlines to objects when placing their blueprints.

JecsTools.ApparelExtension
- Allows apparel, such as glasses, earrings, nose-rings, or whatever more you can imagine, to be worn alongside hats. Let's accessorize!

Additions by ChJees
Additions by roxxploxx
Additions by Swenzi
Additions and transpilers by Erdelf
Extensive hours of testing, debugging, and fixes by Xen.
"Hey, should we make this into a public toolset for people to take advantage of all this cool stuff?" - Jecrell
"Hell yes - this is awesome stuff - people will love it!" - Xen

Special thanks to Pardeike's amazing non-destructive patching library, Harmony. Without his work, none of this would be possible.

(https://s24.postimg.org/58bl1rz39/logo.png) (http://"https://github.com/pardeike/Harmony")




(https://img.shields.io/badge/[email protected]?style=flat) (http://"mailto:[email protected]") (https://img.shields.io/badge/license-MIT-lightgray.svg?style=flat) (http://"https://raw.githubusercontent.com/jecrell/JecsTools/master/LICENSE")
Title: Re: [A17] JecsTools [5/26/2017]
Post by: kaptain_kavern on May 26, 2017, 11:24:49 AM
Just WoW  8)
Title: Re: [A17] JecsTools [5/26/2017]
Post by: Katarumi on May 26, 2017, 11:34:44 AM
The tools are amazing! Thank you so much for releasing them for general use, and thank you for the comprehensive documentation too.
Title: Re: [A17] JecsTools [5/26/2017]
Post by: Razzoriel on May 26, 2017, 12:10:21 PM
Is there a documentation file for what kinds of stats can be loaded in the compslotloadable, besides the vanilla? I saw something called vampiric healing, and damage bonuses, but is there support for things like reducing weapon cooldown, increasing range or messing with anything in their stats, including their graphic or fire sound (for those willing to use a suppressor, for instance)?
Title: Re: [A17] JecsTools [5/26/2017]
Post by: jecrell on May 27, 2017, 12:15:44 AM
Quote from: Razzoriel on May 26, 2017, 12:10:21 PM
Is there a documentation file for what kinds of stats can be loaded in the compslotloadable, besides the vanilla? I saw something called vampiric healing, and damage bonuses, but is there support for things like reducing weapon cooldown, increasing range or messing with anything in their stats, including their graphic or fire sound (for those willing to use a suppressor, for instance)?

Yes. StatModifiers! Simply load in an array of StatModifiers on the ThingDef that goes in the slot. Check out a bit of lightsaber crystal code for an example.


  <ThingDef ParentName="KyberCrystalBaseSynthetic">
    <defName>PJ_KyberCrystalRed</defName>
    <label>synthetic crystal (red)</label>
    <description>This synthesized crystal has been further enhanced, giving it a slightly more powerful blade, and it's trademark red hue. Synthetic crystals like this are often favored by the Sith.</description>
    <graphicData>
      <texPath>Items/KyberCrystal</texPath>
      <graphicClass>Graphic_Single</graphicClass>
  <drawSize>(1,1)</drawSize>
  <color>(206,12,44)</color>
    </graphicData>
  <statBases>
  <Beauty>5</Beauty>
      <MarketValue>1800</MarketValue>
      <Mass>0.3</Mass>  
</statBases>
  <comps>
<li Class="CompSlotLoadable.CompProperties_SlottedBonus">
<color>(206,12,44)</color>
<statModifiers>
<MeleeWeapon_DamageAmount>28</MeleeWeapon_DamageAmount>
</statModifiers>
</li>
</comps>
  </ThingDef>


This one adds 28 melee damage to the weapon. If you know the stat and want to apply it, it should work for nearly everything.

Currently I have CompActivatableEffect that adds a graphic, but I imagine it wouldn't be too hard to add to CompSlotLoadable a "LoadedGraphicAddon" in the form of GraphicData.
Title: Re: [A17] JecsTools [5/26/2017]
Post by: Razzoriel on May 27, 2017, 01:37:27 AM
So, this is what I could gather from this: the StatDef does not allow me to add my own modifiers for modded damage types, weapon range, projectile, soundcast or even muzzleflashscale. Is that correct? I tried creating a custom statdef, but it seems it needs to be coded in the assembly.
Title: Re: [A17] JecsTools [5/26/2017]
Post by: jecrell on May 29, 2017, 11:30:15 AM
Quote from: Razzoriel on May 27, 2017, 01:37:27 AM
So, this is what I could gather from this: the StatDef does not allow me to add my own modifiers for modded damage types, weapon range, projectile, soundcast or even muzzleflashscale. Is that correct? I tried creating a custom statdef, but it seems it needs to be coded in the assembly.

Okiedokie.
It's a bit tough to do, but I'll try to do it this weekend.
Title: Re: [A17] JecsTools [5/31/2017]
Post by: Wishmaster on June 01, 2017, 08:02:53 PM
I just tried to make my own vehicule: an ambulance.  I've used your code from AT-AT and modified it but does not what I want.
I basically want it to have one pilot seat and 4 passengers seat. I could create my own pawn, with body and kind. that wasn't a problem.

There is way for vanilla pawns to get in the vehicle and drive it right ? When I right click on my ambulance, I don't see anything like "get in" or "load". nothing happens.
Also I use the built-in think tree you made so the vehicle wanders even when it says "movements systems: offline".


  <!-- Ambulance -->
  <ThingDef ParentName="WMVehicleBase">
    <defName>WM_Medivac_Ambulance</defName>
    <label>Ambulance</label>
    <description>amblance...ambubulance ??!</description>
    <statBases>
      <MoveSpeed>6</MoveSpeed>
      <ArmorRating_Blunt>0.1</ArmorRating_Blunt>
      <ArmorRating_Sharp>0.3</ArmorRating_Sharp>
      <MeatAmount>0</MeatAmount>
    </statBases>
    <verbs>
    </verbs>
    <race>
      <intelligence>ToolUser</intelligence>
      <thinkTreeMain>CompVehicle_Simple</thinkTreeMain>
      <body>WM_Medivac_AmbulanceBody</body>
      <baseBodySize>1.0</baseBodySize>
      <baseHealthScale>10.0</baseHealthScale>
      <lifeStageAges>
        <li>
          <def>MechanoidFullyFormed</def>
          <minAge>0</minAge>
          <soundWounded>Pawn_Mech_Scyther_Wounded</soundWounded>
          <soundDeath>Pawn_Mech_Scyther_Death</soundDeath>
          <soundCall>Pawn_Mech_Scyther_Call</soundCall>
        </li>
      </lifeStageAges>
      <soundCallIntervalRange>
        <min>1000</min>
        <max>2000</max>
      </soundCallIntervalRange>
      <soundMeleeHitPawn>Pawn_Melee_MechanoidSlash_HitPawn</soundMeleeHitPawn>
      <soundMeleeHitBuilding>Pawn_Melee_MechanoidSlash_HitBuilding</soundMeleeHitBuilding>
      <soundMeleeMiss>Pawn_Melee_MechanoidSlash_Miss</soundMeleeMiss>
    </race>
<!--    <recipes>
      <li>SWFactions_RepairsATST</li>
    </recipes>
-->
    <butcherProducts>
      <Steel>40</Steel>
      <Plasteel>25</Plasteel>
      <Component>1</Component>
    </butcherProducts>
<comps>
  <li Class="CompVehicle.CompProperties_Vehicle">
    <soundEntry>Pawn_Mech_Centipede_Wounded</soundEntry>
<soundEject>Pawn_Mech_Centipede_Wounded</soundEject>
<ejectIfBelowHealthPercent>0.25</ejectIfBelowHealthPercent>
<seatHitDamageFactor>1.75</seatHitDamageFactor>
<seatHitCriticalHitChance>0.03</seatHitCriticalHitChance>
<canBeDowned>true</canBeDowned>
<canWiggleWhenDowned>false</canWiggleWhenDowned>
<canMoveWithoutHandler>false</canMoveWithoutHandler>
<canFireWithoutHandler>false</canFireWithoutHandler>
<roles>
  <li>
    <label>pilot</label>
<labelPlural>pilots</labelPlural>
<handlesMovement>true</handlesMovement>
<slots>1</slots>
<slotsToOperate>1</slotsToOperate>
<slotTag>PilotSeat</slotTag>
  </li>
<!--   <li>
    <label>gunner</label>
<labelPlural>gunners</labelPlural>
<handlesWeapons>true</handlesWeapons>
<slots>1</slots>
<slotsToOperate>1</slotsToOperate>
<slotTag>GunnerSeat</slotTag>
  </li>
-->
  <li>
    <label>passenger</label>
<labelPlural>passengers</labelPlural>
<slots>4</slots>
<slotTag>PassengerSeat</slotTag>
  </li>
</roles>
  </li>
<!--   <li Class="CompLumbering.CompProperties_Lumbering">
    <cycledGraphic>
<texPath>Imp/Walkers/ATSTCycle/ATST</texPath>
<graphicClass>Graphic_Multi</graphicClass>
<drawSize>4.3</drawSize>
<shadowData>
<volume>(0.4, 0.8, 0.4)</volume>
</shadowData>
</cycledGraphic>
<sound>PJ_ATST_Step</sound>
        <secondsPerStep>1.15</secondsPerStep>
<secondsBetweenSteps>0.5</secondsBetweenSteps>
  </li>
-->
</comps>
  </ThingDef>

Title: Re: [A17] JecsTools [5/31/2017]
Post by: jecrell on June 02, 2017, 09:03:26 PM
Quote from: Wishmaster on June 01, 2017, 08:02:53 PM
I just tried to make my own vehicule: an ambulance.  I've used your code from AT-AT and modified it but does not what I want.
I basically want it to have one pilot seat and 4 passengers seat. I could create my own pawn, with body and kind. that wasn't a problem.

There is way for vanilla pawns to get in the vehicle and drive it right ? When I right click on my ambulance, I don't see anything like "get in" or "load". nothing happens.
Also I use the built-in think tree you made so the vehicle wanders even when it says "movements systems: offline".


  <!-- Ambulance -->
  <ThingDef ParentName="WMVehicleBase">
    <defName>WM_Medivac_Ambulance</defName>
    <label>Ambulance</label>
    <description>amblance...ambubulance ??!</description>
    <statBases>
      <MoveSpeed>6</MoveSpeed>
      <ArmorRating_Blunt>0.1</ArmorRating_Blunt>
      <ArmorRating_Sharp>0.3</ArmorRating_Sharp>
      <MeatAmount>0</MeatAmount>
    </statBases>
    <verbs>
    </verbs>
    <race>
      <intelligence>ToolUser</intelligence>
      <thinkTreeMain>CompVehicle_Simple</thinkTreeMain>
      <body>WM_Medivac_AmbulanceBody</body>
      <baseBodySize>1.0</baseBodySize>
      <baseHealthScale>10.0</baseHealthScale>
      <lifeStageAges>
        <li>
          <def>MechanoidFullyFormed</def>
          <minAge>0</minAge>
          <soundWounded>Pawn_Mech_Scyther_Wounded</soundWounded>
          <soundDeath>Pawn_Mech_Scyther_Death</soundDeath>
          <soundCall>Pawn_Mech_Scyther_Call</soundCall>
        </li>
      </lifeStageAges>
      <soundCallIntervalRange>
        <min>1000</min>
        <max>2000</max>
      </soundCallIntervalRange>
      <soundMeleeHitPawn>Pawn_Melee_MechanoidSlash_HitPawn</soundMeleeHitPawn>
      <soundMeleeHitBuilding>Pawn_Melee_MechanoidSlash_HitBuilding</soundMeleeHitBuilding>
      <soundMeleeMiss>Pawn_Melee_MechanoidSlash_Miss</soundMeleeMiss>
    </race>
<!--    <recipes>
      <li>SWFactions_RepairsATST</li>
    </recipes>
-->
    <butcherProducts>
      <Steel>40</Steel>
      <Plasteel>25</Plasteel>
      <Component>1</Component>
    </butcherProducts>
<comps>
  <li Class="CompVehicle.CompProperties_Vehicle">
    <soundEntry>Pawn_Mech_Centipede_Wounded</soundEntry>
<soundEject>Pawn_Mech_Centipede_Wounded</soundEject>
<ejectIfBelowHealthPercent>0.25</ejectIfBelowHealthPercent>
<seatHitDamageFactor>1.75</seatHitDamageFactor>
<seatHitCriticalHitChance>0.03</seatHitCriticalHitChance>
<canBeDowned>true</canBeDowned>
<canWiggleWhenDowned>false</canWiggleWhenDowned>
<canMoveWithoutHandler>false</canMoveWithoutHandler>
<canFireWithoutHandler>false</canFireWithoutHandler>
<roles>
  <li>
    <label>pilot</label>
<labelPlural>pilots</labelPlural>
<handlesMovement>true</handlesMovement>
<slots>1</slots>
<slotsToOperate>1</slotsToOperate>
<slotTag>PilotSeat</slotTag>
  </li>
<!--   <li>
    <label>gunner</label>
<labelPlural>gunners</labelPlural>
<handlesWeapons>true</handlesWeapons>
<slots>1</slots>
<slotsToOperate>1</slotsToOperate>
<slotTag>GunnerSeat</slotTag>
  </li>
-->
  <li>
    <label>passenger</label>
<labelPlural>passengers</labelPlural>
<slots>4</slots>
<slotTag>PassengerSeat</slotTag>
  </li>
</roles>
  </li>
<!--   <li Class="CompLumbering.CompProperties_Lumbering">
    <cycledGraphic>
<texPath>Imp/Walkers/ATSTCycle/ATST</texPath>
<graphicClass>Graphic_Multi</graphicClass>
<drawSize>4.3</drawSize>
<shadowData>
<volume>(0.4, 0.8, 0.4)</volume>
</shadowData>
</cycledGraphic>
<sound>PJ_ATST_Step</sound>
        <secondsPerStep>1.15</secondsPerStep>
<secondsBetweenSteps>0.5</secondsBetweenSteps>
  </li>
-->
</comps>
  </ThingDef>



Right right. It's STILL a bit WIP, but it should work when you click your ambulance to have options to load characters.
You click the ambulance itself and you should have a list of buttons to load pawns and so forth.
Also, it needs to be your player's faction, otherwise those buttons can't appear.

*mutters to self about making a right click option*
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: jecrell on June 03, 2017, 09:27:11 PM
I just updated this for A17b fellows. The last hotfix that dropped changed a decompiled method name that caused a worldgen bug. This should be fixed now.

Bless
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: SurrealSadi on June 03, 2017, 10:44:18 PM
Hey.. I keep getting this error with the DRM-free version: Could not execute post-long-event action. Exception: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompVehicle ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompVehicle..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__80F () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:ExecuteToExecuteWhenFinished()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent()
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()


And yes, I updated to the newest version. Kinda prevents the game from generating a map.
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: Jonnymaxed on June 04, 2017, 03:25:39 AM
Yeah I can confirm this is broken. Same error as Sadi.

Could not execute post-long-event action. Exception: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompVehicle ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompVehicle..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__814 () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:ExecuteToExecuteWhenFinished()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent()
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update()
Verse.Root_Entry:Update()


Please fix this, I wanted to play the cults :(
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: jecrell on June 04, 2017, 03:47:19 AM
Quote from: SurrealSadi on June 03, 2017, 10:44:18 PM
[...]
And yes, I updated to the newest version. Kinda prevents the game from generating a map.

Quote from: Jonnymaxed on June 04, 2017, 03:25:39 AM
Yeah I can confirm this is broken. Same error as Sadi.
[...]
Please fix this, I wanted to play the cults :(

My deepest apologies. I hate to see these sorts of errors pop up.
The DRM free version isn't updated to A17b yet then, I'm guessing. Please use the PREVIOUS version of JecsTools for A17.
Tynan released a hotfix that messed up the main set of tools.
https://github.com/jecrell/JecsTools/releases/tag/1.0.4.1
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: Canute on June 04, 2017, 06:02:10 AM
17b is even realeased for DRM-free, but no new email is send, so many people didn't notice this.
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: Jonnymaxed on June 04, 2017, 06:32:42 AM
1.0.4.1 doesn't work either with the cult mod. But instead of actual tools breaking, its the cult mod, from looking at the debug log.

I'll update to the newest version of the game and i'll let you know. Your mods were pretty much the only reason I wanted to replay Rimworld so this has been kind of a bummer so far.

EDIT: IT WORKS! Now time to pay respects to the dark ones.
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: SurrealSadi on June 04, 2017, 02:18:21 PM
I did update to A17b, that's the thing...
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: pktongrimworld on June 04, 2017, 09:36:12 PM
got it to work, but  all animals throws a vechilecomp error. lagging the game to unplayable.
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: SurrealSadi on June 05, 2017, 02:54:54 AM
Yeah, they work fine for Steam, but the DRM-free version.... Not so much. the compvehicle error basically prevents the game from generating a map, so you can't get past that point if you want to start a new game. I dunno if you can load an existing game with that set up, I haven't tried yet, but I'd assume it would break.
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: jecrell on June 05, 2017, 10:53:10 PM
Quote from: SurrealSadi on June 05, 2017, 02:54:54 AM
Yeah, they work fine for Steam, but the DRM-free version.... Not so much. the compvehicle error basically prevents the game from generating a map, so you can't get past that point if you want to start a new game. I dunno if you can load an existing game with that set up, I haven't tried yet, but I'd assume it would break.

It could be simply the assembly of the DRM-free version is different. What's the version number?
Title: Re: [A17b] JecsTools [6/4/2017]
Post by: SurrealSadi on June 05, 2017, 10:57:29 PM
QuoteIt could be simply the assembly of the DRM-free version is different. What's the version number?
For DRM-free? 0.17.1557.
Title: Re: [A17b] JecsTools [6/6/2017]
Post by: Diedel on June 06, 2017, 02:03:16 AM
AS is also posted on steam, the ev is different

Steam:
UnloadTime: 0.741549 ms
RimWorld 0.17.1557 rev1153

non DRM:
UnloadTime: 0.811990 ms
RimWorld 0.17.1557 rev1146

This could just be the difference between steam and no steam, but i can't check if that was also the case with A16.

exe and core mod are identical, the only different is that the Assembly-CSharp.dll and Assembly-CSharp-firstpass.dll are different.

Update:
I replace the 2 DLLs with the steam version it now seems to work, i could create a new colony and got all the way into the game, though i am not sure that just swapping those DLLs will not have some problems later.
Title: Re: [A17b] JecsTools [6/6/2017]
Post by: SurrealSadi on June 06, 2017, 12:45:25 PM
Replacing those two DLLs seems to make the DRM-free version point to the steam version. Which I don't think is the intended outcome.
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: jecrell on June 08, 2017, 09:51:46 AM
https://github.com/jecrell/JecsTools/releases/tag/1.0.4.8

DRM-FREE VERSION OF RIMWORLD IS NOW WORKING (thanks to Erdelf again!)

Bless
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: SurrealSadi on June 08, 2017, 09:52:45 PM
I installed in the proper order, and still get this error:Could not execute post-long-event action. Exception: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompVehicle ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompVehicle..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__80F () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:ExecuteToExecuteWhenFinished()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent()
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: laston on June 08, 2017, 11:40:08 PM
I am getting the same error as SurrealSadi.  New install of Alpha 17b.  No other mod active.   I am overriding the save location, but don't think that will effect anything.

Edit:  Using latest JecsTools 6/8/17
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: S1lverw0lf on June 10, 2017, 11:00:27 AM
Installed the update, still get th error and world creation broken.

[quote]Log uploaded on Saturday, June 10, 2017, 5:56:41 PM
Loaded mods:
Core: (no assemblies)
HugsLib[3.1.0]: 0Harmony(1.0.9.1), HugsLib(0.17.0.0)
JecsTools: 0Harmony(1.0.9.1), AbilityUser(1.17.0.3), CompActivatableEffect(1.17.0.2), CompDeflector(1.17.0.2), CompExtraSounds(1.17.0.2), CompInstalledPart(1.17.0.0), CompLumbering(1.17.0.0), CompOversizedWeapon(1.17.0.2), CompSlotLoadable(1.17.0.3), CompToggleDef(1.17.0.0), CompVehicle(1.17.0.1)
Star Wars - Fully Functional Lightsabers: 0Harmony(1.0.9.1), SWSaber(1.17.0.3)
Star Wars - The Force: 0Harmony(1.0.9.1), ProjectJedi(1.17.4.1)
Star Wars - Factions: SWFactions(1.17.0.3)

Active Harmony patches:
Building_CrashedShipPart.<TrySpawnMechanoids>m__4A2: post: CompVehicle.HarmonyCompVehicle.MechanoidsFixer
DamageWorker_AddInjury.FinalizeAndAddInjury: post: CompVehicle.HarmonyCompVehicle.FinalizeAndAddInjury_PostFix
DebugWindowsOpener.DrawButtons: TRANS: HugsLib.Patches.DebugWindowsOpener_Patch.DrawAdditonalButtons
Dialog_Options.DoWindowContents: TRANS: HugsLib.Patches.Dialog_Options_Patch.ReplaceModOptionsButton
EditWindow_Log.DoMessagesListing: PRE: HugsLib.Patches.EditWindow_Log_Patch.ExtraLogWindowButtons
FloatMenuMakerMap.AddHumanlikeOrders: post: CompInstalledPart.HarmonyCompInstalledPart.AddHumanlikeOrders_PostFix, CompSlotLoadable.HarmonyCompSlotLoadable.AddHumanlikeOrders_PostFix
Game.DeinitAndRemoveMap: post: HugsLib.Patches.Game_DeinitAndRemoveMap_Patch.MapRemovalHook
Game.FinalizeInit: post: HugsLib.Patches.Game_FinalizeInit_Patch.WorldLoadedHook
HealthCardUtility.DrawOverviewTab: PRE: CompVehicle.HarmonyCompVehicle.DrawOverviewTab_PreFix
HealthUtility.GetGeneralConditionLabel: PRE: CompVehicle.HarmonyCompVehicle.GetGeneralConditionLabel_PreFix
ITab_Pawn_Gear.DrawThingRow: post: CompSlotLoadable.HarmonyCompSlotLoadable.DrawThingRow_PostFix
ITab_Pawn_Gear.InterfaceDrop: PRE: CompInstalledPart.HarmonyCompInstalledPart.InterfaceDrop_PreFix
JobDriver_Wait.CheckForAutoAttack: TRANS: CompVehicle.HarmonyCompVehicle.CheckForAutoAttackTranspiler
LanguageDatabase.SelectLanguage: PRE: HugsLib.Patches.LanguageDatabase_Patch.ForceRestartAfterLangChange
Map.ConstructComponents: post: HugsLib.Patches.Map_ConstructComponents_Patch.MapComponentsInitHook
Map.FinalizeInit: post: HugsLib.Patches.Map_FinalizeInit_Patch.MapLoadedHook
Page_ModsConfig.PostClose: TRANS: HugsLib.Patches.ModsConfig_PostClose_Patch.QuickRestartInDevMode
Pawn.CurrentlyUsable: post: CompVehicle.HarmonyCompVehicle.CurrentlyUsable_PostFix
Pawn.ExitMap: PRE: CompActivatableEffect.HarmonyCompActivatableEffect.ExitMap_PreFix
Pawn.GetGizmos: post: CompActivatableEffect.HarmonyCompActivatableEffect.GetGizmosPrefix, CompSlotLoadable.HarmonyCompSlotLoadable.GetGizmos_PostFix
Pawn.PostApplyDamage: post: CompSlotLoadable.HarmonyCompSlotLoadable.PostApplyDamage_PostFix
Pawn.get_IsColonistPlayerControlled: post: CompVehicle.HarmonyCompVehicle.IsColonistPlayerControlled_PostFix
PawnDownedWiggler.WigglerTick: PRE: CompVehicle.HarmonyCompVehicle.WigglerTick_PreFix
PawnRenderer.DrawEquipmentAiming: PRE: CompInstalledPart.HarmonyCompInstalledPart.DrawEquipmentAiming_PreFix, CompOversizedWeapon.HarmonyCompOversizedWeapon.DrawEquipmentAimingPreFix post: CompActivatableEffect.HarmonyCompActivatableEffect.DrawEquipmentAimingPostFix, CompDeflector.HarmonyCompDeflector.DrawEquipmentAimingPostFix
Pawn_ApparelTracker.Notify_ApparelAdded: post: AbilityUser.HarmonyPatches.Notify_ApparelAdded_PostFix
Pawn_ApparelTracker.Notify_ApparelRemoved: post: AbilityUser.HarmonyPatches.Notify_ApparelRemoved_PostFix
Pawn_DraftController.set_Drafted: (no patches)
Pawn_EquipmentTracker.Notify_EquipmentAdded: post: AbilityUser.HarmonyPatches.Notify_EquipmentAdded_PostFix
Pawn_EquipmentTracker.Notify_EquipmentRemoved: post: AbilityUser.HarmonyPatches.Notify_EquipmentRemoved_PostFix
Pawn_EquipmentTracker.TryDropEquipment: PRE: CompActivatableEffect.HarmonyCompActivatableEffect.TryDropEquipment_PreFix, CompInstalledPart.HarmonyCompInstalledPart.TryDropEquipment_PreFix
Pawn_HealthTracker.ShouldBeDowned: PRE: CompVehicle.HarmonyCompVehicle.ShouldBeDowned_PreFix
Pawn_PathFollower.StartPath: PRE: CompVehicle.HarmonyCompVehicle.StartPath_PreFix
PlayDataLoader.DoPlayLoad: post: HugsLib.Patches.PlayDataLoader_Patch.InitModsHook
Root.Update: post: HugsLib.Patches.Root_Patch.UpdateHook
Root_Play.SetupForQuickTestPlay: TRANS: HugsLib.Patches.RootPlay_TestPlay_Patch.InjectCustomQuickstartSettings
StatExtension.GetStatValue: post: CompSlotLoadable.HarmonyCompSlotLoadable.GetStatValue_PostFix
StatWorker.StatOffsetFromGear: post: CompSlotLoadable.HarmonyCompSlotLoadable.StatOffsetFromGear_PostFix
Targeter.ProcessInputEvents: PRE: AbilityUser.HarmonyPatches.ProcessInputEvents_PreFix
Targeter.TargeterUpdate: PRE: AbilityUser.HarmonyPatches.TargeterUpdate_PostFix
Thing.TakeDamage: PRE: CompDeflector.HarmonyCompDeflector.TakeDamage_PreFix
Thing.get_DefaultGraphic: (no patches)
ThingWithComps.InitializeComps: post: AbilityUser.HarmonyPatches.InitializeComps_PostFix
UIRoot.UIRootOnGUI: post: HugsLib.Patches.UIRoot_Patch.OnGUIHook
Verb.TryStartCastOn: PRE: CompActivatableEffect.HarmonyCompActivatableEffect.TryStartCastOnPrefix
Verb_MeleeAttack.DamageInfosToApply: post: CompSlotLoadable.HarmonyCompSlotLoadable.DamageInfosToApply_PostFix
Verb_MeleeAttack.SoundHitBuilding: post: CompExtraSounds.HarmonyCompExtraSounds.SoundHitBuildingPrefix
Verb_MeleeAttack.SoundHitPawn: post: CompExtraSounds.HarmonyCompExtraSounds.SoundHitPawnPrefix
Verb_MeleeAttack.SoundMiss: post: CompExtraSounds.HarmonyCompExtraSounds.SoundMissPrefix
Verb_Shoot.TryCastShot: PRE: CompVehicle.HarmonyCompVehicle.TryCastShot_PreFix
Harmony versions present: UnlimitedHugs.HugsLib:1.0.9.1, rimworld.jecrell.abilityuser:1.0.9.1, rimworld.jecrell.comps.activator:1.0.9.1, rimworld.jecrell.comps.slotloadable:1.0.9.1, rimworld.jecrell.comps.installedpart:1.0.9.1, rimworld.jecrell.comps.oversized:1.0.9.1, rimworld.jecrell.comps.deflector:1.0.9.1, rimworld.jecrell.comps.sounds:1.0.9.1, rimworld.jecrell.comps.pilotable:1.0.9.1

Platform information: (hidden, hold Shift while publishing to include)

Log file contents:
Loaded file (Scenario) is from version 0.16.1393 rev536, we are running version 0.17.1557 rev1146.

Could not load reference to Verse.ThingDef named PFStimpak

Could not load reference to Verse.ResearchProjectDef named SimpleProsthetics

Could not load reference to Verse.ResearchProjectDef named sd_bridges_research_bridge

Exception from asynchronous event: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompVehicle ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompVehicle..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__80F () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0 [/quote]

https://gist.github.com/32221e0b01166fe01b496f299e47a390
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: tgbps4 on June 12, 2017, 10:11:28 PM
I have the same problem, it isn´t working
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: jecrell on June 14, 2017, 11:24:00 AM
Hey fellows, we're still figuring out what's not working for folks.
Give this latest version of JecsTools a try, would you? Bless.

https://github.com/jecrell/JecsTools/archive/master.zip
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: Luncario on June 14, 2017, 03:05:29 PM
Hi, Had the same problem with the missing thing, but no problems when load with this one :)
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: SurrealSadi on June 14, 2017, 06:51:07 PM
Hey, look at that! It works now! Thanks Jecrell, for working on this issue!
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: tgbps4 on June 14, 2017, 10:41:48 PM
Quote from: jecrell on June 14, 2017, 11:24:00 AM
Hey fellows, we're still figuring out what's not working for folks.
Give this latest version of JecsTools a try, would you? Bless.

https://github.com/jecrell/JecsTools/archive/master.zip

I don´t know if it´s because of load order or what, but I´m still getting the same error as before the update. Help?
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: jecrell on June 14, 2017, 11:41:39 PM
Quote from: tgbps4 on June 14, 2017, 10:41:48 PM
Quote from: jecrell on June 14, 2017, 11:24:00 AM
Hey fellows, we're still figuring out what's not working for folks.
Give this latest version of JecsTools a try, would you? Bless.

https://github.com/jecrell/JecsTools/archive/master.zip

I don´t know if it´s because of load order or what, but I´m still getting the same error as before the update. Help?

Share your output log, would you kindly?
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: tgbps4 on June 15, 2017, 06:50:36 PM
Quote from: jecrell on June 14, 2017, 11:41:39 PM
Quote from: tgbps4 on June 14, 2017, 10:41:48 PM
Quote from: jecrell on June 14, 2017, 11:24:00 AM
Hey fellows, we're still figuring out what's not working for folks.
Give this latest version of JecsTools a try, would you? Bless.

https://github.com/jecrell/JecsTools/archive/master.zip

I don´t know if it´s because of load order or what, but I´m still getting the same error as before the update. Help?

Share your output log, would you kindly?

The same exact error that started this whole "fix the mod" mess
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: Canute on June 16, 2017, 02:49:41 AM
tgbps4,
I think you got hugslib mod installed to.
Could you made an log upload with "share logs" button down left on the debug log window and post the link here ?

I got these error previously too, but with the latest jecstools all is fixed.
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: Magus_Nex on June 16, 2017, 01:19:23 PM
Quote from: jecrell on June 14, 2017, 11:24:00 AM
Hey fellows, we're still figuring out what's not working for folks.
Give this latest version of JecsTools a try, would you? Bless.

https://github.com/jecrell/JecsTools/archive/master.zip

Thank the Maker!
this works now, thanks for your dedication.  :)
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: tgbps4 on June 16, 2017, 06:31:33 PM
Quote from: Canute on June 16, 2017, 02:49:41 AM
tgbps4,
I think you got hugslib mod installed to.
Could you made an log upload with "share logs" button down left on the debug log window and post the link here ?

I got these error previously too, but with the latest jecstools all is fixed.

Every time I try to generate a world with JecsTools on, it spits out this: https://gist.github.com/8b39cd01355ce55f1b68eaf78f2c6328
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: tgbps4 on June 16, 2017, 06:31:39 PM
Quote from: Canute on June 16, 2017, 02:49:41 AM
tgbps4,
I think you got hugslib mod installed to.
Could you made an log upload with "share logs" button down left on the debug log window and post the link here ?

I got these error previously too, but with the latest jecstools all is fixed.
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: rambo on June 23, 2017, 09:05:48 PM
Does this mod work for regular use or is it still in development if it is it should be on the unfinished section plz explain
Title: Re: [A17b] JecsTools [6/8/2017] [DRM-Free Fix Out]
Post by: jecrell on June 23, 2017, 09:42:42 PM
Quote from: rambo on June 23, 2017, 09:05:48 PM
Does this mod work for regular use or is it still in development if it is it should be on the unfinished section plz explain

It's for regular use. It just suffered a huge hiccup when the game went to A17b and the assemblies were changed.

Also, updated with a fix for regular users.
Title: Re: [A17b] JecsTools [6/24/2017]
Post by: Resten on June 30, 2017, 07:58:06 AM
Can i get a fix for this? not sure if its caused by this mod though when i googled part of the error it only popped up this page, so here is the log https://gist.github.com/HugsLibRecordKeeper/b0ecad142fdff23cf0baa1462e1e5704
Title: Re: [A17b] JecsTools [6/24/2017]
Post by: mrsebseb on June 30, 2017, 08:16:56 AM
Quote from: Resten on June 30, 2017, 07:58:06 AM
Can i get a fix for this? not sure if its caused by this mod though when i googled part of the error it only popped up this page, so here is the log https://gist.github.com/HugsLibRecordKeeper/b0ecad142fdff23cf0baa1462e1e5704

It looks like the same error I have, which is caused by Humanoid Alien Races 2.0.
Title: Re: [A17b] JecsTools [6/24/2017]
Post by: Resten on June 30, 2017, 08:24:29 AM
Quote from: mrsebseb on June 30, 2017, 08:16:56 AM
Quote from: Resten on June 30, 2017, 07:58:06 AM
Can i get a fix for this? not sure if its caused by this mod though when i googled part of the error it only popped up this page, so here is the log https://gist.github.com/HugsLibRecordKeeper/b0ecad142fdff23cf0baa1462e1e5704

It looks like the same error I have, which is caused by Humanoid Alien Races 2.0.

Were you able to fix it?
Title: Re: [A17b] JecsTools [6/24/2017]
Post by: Canute on June 30, 2017, 08:39:40 AM
I was playing Orassan together with Star Wars and don't got any error.
Be sure you have latest Rimworld and latest version of all mods.
Title: Re: [A17b] JecsTools [6/24/2017]
Post by: mrsebseb on June 30, 2017, 08:52:23 AM
Quote from: Resten on June 30, 2017, 08:24:29 AM
Were you able to fix it?

I've not tried it yet, but if you have the mod on Steam, there should've been another update. If it hasn't updated try unsubscribing and then resubscribe to the mod
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: jecrell on July 04, 2017, 12:56:11 PM
Updated the mod recently to have readiness for the new vehicles update for Star Wars - Factions.
Be sure to update Factions as well.
https://github.com/jecrell/Star-Wars---Factions
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: rambo on July 05, 2017, 03:08:56 PM
Exception from asynchronous event: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompPilotable ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompPilotable..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__80F () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__84C()

got this error what does it mean
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: rambo on July 05, 2017, 03:23:46 PM
Quote from: rambo on July 05, 2017, 03:08:56 PM
Exception from asynchronous event: System.TypeInitializationException: An exception was thrown by the type initializer for CompVehicle.HarmonyCompPilotable ---> System.ArgumentNullException: Argument cannot be null.
Parameter name: key
  at System.Collections.Generic.Dictionary`2[System.Reflection.MethodBase,System.Byte[]].TryGetValue (System.Reflection.MethodBase key, System.Byte[]& value) [0x00000] in <filename unknown>:0
  at Harmony.GeneralExtensions.GetValueSafe[MethodBase,Byte[]] (System.Collections.Generic.Dictionary`2 dictionary, System.Reflection.MethodBase key) [0x00000] in <filename unknown>:0
  at Harmony.HarmonySharedState.GetPatchInfo (System.Reflection.MethodBase method) [0x00000] in <filename unknown>:0
  at Harmony.PatchProcessor.Patch () [0x00000] in <filename unknown>:0
  at Harmony.HarmonyInstance.Patch (System.Reflection.MethodBase original, Harmony.HarmonyMethod prefix, Harmony.HarmonyMethod postfix, Harmony.HarmonyMethod transpiler) [0x00000] in <filename unknown>:0
  at CompVehicle.HarmonyCompPilotable..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor (intptr)
  at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (RuntimeTypeHandle type) [0x00000] in <filename unknown>:0
  at Verse.StaticConstructorOnStartupUtility.CallAll () [0x00000] in <filename unknown>:0
  at Verse.PlayDataLoader.<DoPlayLoad>m__80F () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__84C()

got this error what does it mean
this error wouldnt let me launch the game
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: asquirrel on July 06, 2017, 09:41:42 AM
Jec, is this error from your mod? 



[attachment deleted by admin due to age]
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: rambo on July 10, 2017, 02:57:44 PM
does the vehicles work now? or is it not finished
Title: Re: [A17b] JecsTools [7/5/2017]
Post by: Razzoriel on July 10, 2017, 03:12:34 PM
I'm still waiting for this mod to support verb modifiers for weapon slots.
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: jecrell on July 31, 2017, 11:17:27 PM


JecsTools Update 1.0.5


8/1/17

-Fixed faction issue when entering/exiting vehicles. (Hooray!)
-Added new primary assembly, JecsTools with several new classes.
-New Classes

JecsTools.Hediff_TransformedPart

- Similar to added part, however, transformed parts will not remove the
original parts when removed from the character. This allows for us to
"transform" pawn parts. Such as having a colonists' hands turn into
deadly claws.
((Will see use in upcoming Werewolf mod))

JecsTools.JobGiver_AIFirelessTrashColonyClose
JecsTools.JobGiver_AIFirelessTrashColonyDistant


- These classes lets us call a special jobgiver for raiders that does
not include setting fire to objects. This is good for monstrous
creatures that do not have the ability to start fires but still want to
break things.
((Will see use in Werewolf mod and Cosmic Horrors))

Example usage

  <!--============= Mental states (critical) ============-->

  <ThinkTreeDef>
<defName>ROM_WerewolfFuryThinkTree</defName>
    <insertTag>Humanlike_PostMentalState</insertTag>
    <insertPriority>50</insertPriority>
    <!-- thinkRoot Class="ThinkNode_Tagger">
      <tagToGive>InMentalState</tagToGive>
      <subNodes -->
        <thinkRoot Class="ThinkNode_ConditionalMentalState">
          <state>ROM_WerewolfFury</state>
          <subNodes>
            <li Class="ThinkNode_Priority">
              <subNodes>
                <li Class="Werewolf.JobGiver_WerewolfHunt" />
                <li Class="JecsTools.JobGiver_AIFirelessTrashColonyClose" />
                <li Class="JecsTools.JobGiver_AIFirelessTrashColonyDistant" />
                <li Class="JobGiver_AIGotoNearestHostile" />
                </subNodes>
            </li>
          </subNodes>
        </thinkRoot>
      <!-- /subNodes>
    </thinkRoot -->
</ThinkTreeDef>
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: Light_Kota on August 04, 2017, 12:47:32 AM
Hey, I got Rimworld a couple days ago and have loved it so far. I have version Alpha 17b and am getting these errors whenever I load up my game. I've been trying to figure this out for ages and haven't come up with anything. My current version of JecsTools is 5.0, the newest one I believe? Same with all the other mods on the list as far as I can tell. I've tried removing the Prepare Carefully mod to see if that's the issue, doesn't change anything. I've tried an older version of JecsTools, only creates more errors. I've moved the order of the mods around a little, only creates more errors as well. As of right now, with the mods loaded in the order you see I get those errors and simply cannot generate a world. Loads for a few seconds then just goes back to the generate world screen. Again, completely new to Rimworld so sorry if this seems like a stupid question, but it's driving me nuts.

http://imgur.com/a/BmQMZ

http://imgur.com/a/d7QTC
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: jecrell on August 04, 2017, 11:27:53 AM
8/5/17
v1.0.5.1

- Added new component - CompDelayedSpawner.

CompDelayedSpawner allows us to create things or pawns after a set amount of time. For instance, I created an invisible spawner for the Star Vampire (as of this update) that uses this CompDelayedSpawner. This lets me trigger the Star Vampire incident, drop down some delayed spawners, and enjoy results after a short period of time. The CompDelayedSpawner is highly customizable for things, pawns, and even allows for setting mental states and hediffs.
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: jecrell on August 04, 2017, 11:29:41 AM
Quote from: Light_Kota on August 04, 2017, 12:47:32 AM
Hey, I got Rimworld a couple days ago and have loved it so far. I have version Alpha 17b and am getting these errors whenever I load up my game. I've been trying to figure this out for ages and haven't come up with anything. My current version of JecsTools is 5.0, the newest one I believe? Same with all the other mods on the list as far as I can tell. I've tried removing the Prepare Carefully mod to see if that's the issue, doesn't change anything. I've tried an older version of JecsTools, only creates more errors. I've moved the order of the mods around a little, only creates more errors as well. As of right now, with the mods loaded in the order you see I get those errors and simply cannot generate a world. Loads for a few seconds then just goes back to the generate world screen. Again, completely new to Rimworld so sorry if this seems like a stupid question, but it's driving me nuts.

http://imgur.com/a/BmQMZ

http://imgur.com/a/d7QTC

Use the latest Star Wars Factions update from GitHub.
https://github.com/jecrell/Star-Wars---Factions (get the non-release version)
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: jecrell on August 12, 2017, 12:25:52 PM


JecsTools Update 1.0.5.3


8/13/17
New Classes:
JecsTools.DamageWorker_Cleave
JecsTools.DamageDefCleave


--Adds a new damage worker called "cleave" that allows for an attack to swipe multiple targets in front of a user based on XML settings defined in a new damage def. This update is in preparation of the upcoming Werewolves mod.
https://github.com/jecrell/JecsTools/releases/tag/1.0.5.3

Example usage

<?xml version="1.0" encoding="utf-8" ?>
<Defs>

  <JecsTools.DamageDefCleave>
    <defName>ROM_CrinosSlash</defName>
    <label>slash</label>
    <workerClass>JecsTools.DamageWorker_Cleave</workerClass>
<externalViolence>true</externalViolence>
    <deathMessage>{0} has been slashed to death.</deathMessage>
    <hediff>Scratch</hediff>
    <hediffSolid>Crack</hediffSolid>
    <harmAllLayersUntilOutside>true</harmAllLayersUntilOutside>
    <impactSoundType>Slice</impactSoundType>
    <armorCategory>Sharp</armorCategory>
    <cleaveTargets>2</cleaveTargets>
<cleaveFactor>0.8</cleaveFactor>
<cleaveDamage>Scratch</cleaveDamage>
  </JecsTools.DamageDefCleave>

</Defs>
Title: Re: [A17b] JecsTools [8/1/2017]
Post by: faltonico on August 12, 2017, 10:04:35 PM
Quote from: jecrell on August 12, 2017, 12:25:52 PM

--Adds a new damage worker called "cleave" that allows for an attack to swipe multiple targets in front of a user based on XML settings defined in a new damage def.
Time to make an Odachi, a Claymore or an Espada Bastarda!
Thanks!

Edit:Typo!
Title: Re: [A17b] JecsTools [8/13/2017]
Post by: Canute on August 13, 2017, 04:42:02 AM
And what about a sawoff chainshotgun  or claymore trap? :-)
Title: Re: [A17b] JecsTools [8/13/2017]
Post by: qxevtnulu on August 22, 2017, 08:43:58 AM
Bug report:(Hosiptality mod and jecstools mod)
Situation A: The mod order :Hugslib>hospitality>jecstools:When the visitors or business come by vehicle , the item on the map or the movement location of the charactors cannot be chosen.
Situation B: The mod order :Hugslib>jecstools>hospitality: When the visitors or business come by vehicle , the item on the map or the movement location of the charactors can be chosen.However,all charactors stand by and stop their job except eating.
I'm not sure this Bug caused by which mod(Hosiptality mod or Jecstools mod). Thanks.
Title: Re: [A17b] JecsTools [8/13/2017]
Post by: qxevtnulu on August 22, 2017, 09:24:08 PM
Error report:
when the visitor come by vehicle ATV,the man cannot order to work and the item cannot be selected. thanks.

Null key while loading dictionary of Verse.ResearchProjectDef and System.Single.
Verse.Log:Error(String)
Verse.Scribe_Collections:Look(Dictionary`2&, String, LookMode, LookMode, List`1&, List`1&)
Verse.Scribe_Collections:Look(Dictionary`2&, String, LookMode, LookMode)
RimWorld.ResearchManager:ExposeData()
Verse.ScribeExtractor:SaveableFromNode(XmlNode, Object[])
Verse.Scribe_Deep:Look(ResearchManager&, Boolean, String, Object[])
Verse.Scribe_Deep:Look(ResearchManager&, String, Object[])
Verse.Game:ExposeSmallComponents()
Verse.Game:LoadGame()
Verse.SavedGameLoader:LoadGameFromSaveFile(String)
Verse.Root_Play:<Start>m__854()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__851()

Exception ticking VehicleATV169141: System.NullReferenceException: Object reference not set to an instance of an object
  at TFH_VehicleBase.Components.CompGasTank.CompTick () [0x00000] in <filename unknown>:0
  at Verse.ThingWithComps.Tick () [0x00000] in <filename unknown>:0
  at Verse.Pawn.Tick () [0x00000] in <filename unknown>:0
  at TFH_VehicleBase.Vehicle_Cart.Tick () [0x00000] in <filename unknown>:0
  at Verse.TickList.Tick () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.TickList:Tick()
Verse.TickManager:DoSingleTick()
Verse.Game:<LoadGame>m__848()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent()
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Play:Update()
Title: Re: [A17b] JecsTools [8/13/2017]
Post by: CannibarRechter on August 29, 2017, 08:16:27 PM
I didn't see an example for the oversized weapon. Here's how I made it work:

   <Operation Class="PatchOperationAdd">
      <xpath>*/ThingDef[@Name = "BaseWeapon"]/comps</xpath>
      <value><li Class="CompOversizedWeapon.CompProperties_OversizedWeapon"/></value>      
   </Operation>
   <Operation Class="PatchOperationAdd">
      <xpath>*/ThingDef[@Name = "BaseWeapon"]/graphicData</xpath>
      <value><drawSize>(2,2)</drawSize></value>      
   </Operation>

IOW, this makes it so that all weapons in the game will honor drawSize, when equipped.

Jec, I have a request: can we get a version that honors ground drawing increases also? Anyway, I can compile C#, but don't know my way around Rimworld very well. If you can suggest what to detour, I can make a DLL like that, and perhaps play around with a custom property.
Title: Re: [A17b] JecsTools [8/13/2017]
Post by: jecrell on October 03, 2017, 08:13:29 AM
Quote from: CannibarRechter on August 29, 2017, 08:16:27 PM
I didn't see an example for the oversized weapon. Here's how I made it work:

   <Operation Class="PatchOperationAdd">
      <xpath>*/ThingDef[@Name = "BaseWeapon"]/comps</xpath>
      <value><li Class="CompOversizedWeapon.CompProperties_OversizedWeapon"/></value>      
   </Operation>
   <Operation Class="PatchOperationAdd">
      <xpath>*/ThingDef[@Name = "BaseWeapon"]/graphicData</xpath>
      <value><drawSize>(2,2)</drawSize></value>      
   </Operation>

IOW, this makes it so that all weapons in the game will honor drawSize, when equipped.

Jec, I have a request: can we get a version that honors ground drawing increases also? Anyway, I can compile C#, but don't know my way around Rimworld very well. If you can suggest what to detour, I can make a DLL like that, and perhaps play around with a custom property.

I will get around to it sometime my good man.

Also...
JecsTools - 10-3-17 - CaravaJobs and WorldObjectBlueprint

Added CaravanJob systems.
Added WorldObjectBlueprint to allow for construction of WorldObjects through the CaravanJob system.

For implementation -- see RimRoads.
Title: Re: [A17b] JecsTools [10/3/2017]
Post by: CannibarRechter on October 03, 2017, 08:48:14 AM
Hey, Jec,

Haven't seen you around in a while. I implemented the version that draws big on the ground.  It basically leaves your comp alone except to add an attribute, and if the attribute is set, also draws the item big on the ground. I'm at work, but I can link you a copy of it later today if you would like to incorporate it.

Title: Re: [A17b] JecsTools [10/3/2017]
Post by: jecrell on October 03, 2017, 10:09:21 AM
Quote from: CannibarRechter on October 03, 2017, 08:48:14 AM
Hey, Jec,

Haven't seen you around in a while. I implemented the version that draws big on the ground.  It basically leaves your comp alone except to add an attribute, and if the attribute is set, also draws the item big on the ground. I'm at work, but I can link you a copy of it later today if you would like to incorporate it.

Sounds great, my good man.
Whenever you have time.
Title: Re: [A17b] JecsTools [10/3/2017]
Post by: CannibarRechter on October 03, 2017, 05:35:41 PM
Okay. Look in my CR all downloads link in my sig. Download "BigGuns".
Title: Re: [A17b] JecsTools [10/3/2017]
Post by: jecrell on October 19, 2017, 12:13:52 PM
JecsTools - 10-20-17 - CompAbilityUser Update


NOTE TO MODDERS:
Change all AbilityDefs from <ThingDef> to <AbilityUser.AbilityDef>

https://github.com/jecrell/JecsTools/releases/tag/1.0.7.0
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: kamuii on November 22, 2017, 07:51:41 AM
Will there be an update to this for B18?
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: CS_Hague on December 04, 2017, 03:06:17 PM
I like the idea of slot attachments and I think that more could be done with them. Could you add something that allows attachments on slotted Things to render on the item itself? For instance: scopes, colored magazines, stocks appearing when slotted in an appropriate weapon. Perhaps you could use the game's current CutoutRender to allow layered textures?

Notably, the game's current version has a bug that prevents multiple pieces of headwear from being worn. If things like eyewear or facemasks can be slotted into other headwear and still be rendered, it would allow people to work around the current bug.
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: Canute on January 15, 2018, 02:08:20 PM
Jecrell,
could you tell me if this error come from jecstools/vampire maybe ?
When i search the "mods" folder for "LordToilTick" i got 2 mods in result jecstools and hospitality.
System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.LordToil_PrisonerEscape.LordToilTick () [0x00000] in <filename unknown>:0
  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()

https://gist.github.com/02da3d64a1dd119f194cd27883d76c66
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: koni on February 21, 2018, 08:57:40 AM
I just found out that you added the possibility to have shields, Jecrell. Thank you for that ;) . But there is one thing, that doesn't really work: I've forced non-player faction pawns to wield a specific shield via <apparelRequired>. Then testing I've tried to spawn those pawns, which didn't work.

RandomElementByWeight with totalWeight=0 - use TryRandomElementByWeight.
Verse.Log:Error(String)
Verse.GenCollection:RandomElementByWeight(IEnumerable`1, Func`2)
RimWorld.PawnApparelGenerator:GenerateWorkingPossibleApparelSetFor(Pawn, Single, Boolean)
RimWorld.PawnApparelGenerator:GenerateStartingApparelFor(Pawn, PawnGenerationRequest)
Verse.PawnGenerator:GenerateGearFor_Patch1(Pawn, PawnGenerationRequest)
Verse.PawnGenerator:GeneratePawnInternal(PawnGenerationRequest)
Verse.PawnGenerator:GeneratePawn(PawnGenerationRequest)
Verse.PawnGenerator:GeneratePawn(PawnKindDef, Faction)
Verse.<DoListingItems_MapTools>c__AnonStorey34:<>m__0()
Verse.DebugTool:DebugToolOnGUI()
Verse.DebugTools:DebugToolsOnGUI()
RimWorld.UIRoot_Play:UIRootOnGUI()
Verse.Root:OnGUI()

Object reference not set to an instance of an object
at RimWorld.ApparelUtility.GenerateLayerGroupPairs (Verse.BodyDef,Verse.ThingDef,System.Action`1<RimWorld.ApparelUtility/LayerGroupPair>) <0x000b9>
at RimWorld.PawnApparelGenerator/PossibleApparelSet.Add (RimWorld.ThingStuffPair) <0x0009e>
at RimWorld.PawnApparelGenerator.GenerateWorkingPossibleApparelSetFor (Verse.Pawn,single,bool) <0x001e8>
at RimWorld.PawnApparelGenerator.GenerateStartingApparelFor (Verse.Pawn,Verse.PawnGenerationRequest) <0x002c2>
at (wrapper dynamic-method) Verse.PawnGenerator.GenerateGearFor_Patch1 (Verse.Pawn,Verse.PawnGenerationRequest) <0x0004a>
at Verse.PawnGenerator.GeneratePawnInternal (Verse.PawnGenerationRequest) <0x005b9>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnGenerationRequest) <0x00024>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnKindDef,RimWorld.Faction) <0x00127>
at Verse.Dialog_DebugActionsMenu/<DoListingItems_MapTools>c__AnonStorey34.<>m__0 () <0x00049>
at Verse.DebugTool.DebugToolOnGUI () <0x00072>
at Verse.DebugTools.DebugToolsOnGUI () <0x00020>
at RimWorld.UIRoot_Play.UIRootOnGUI () <0x00178>
at Verse.Root.OnGUI () <0x000c6>

This are the both errors that occurred in the debug log.
I kindly ask you to fix this, or is there another way to spawn them with shields
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: Ruisuki on February 21, 2018, 05:39:45 PM
Jecrell do you use any mods that use your tools mod? Wondering if you'd recommend any
Title: Re: [A17b] JecsTools [10/20/2017]
Post by: ChJees on February 21, 2018, 05:44:31 PM
Quote from: koni on February 21, 2018, 08:57:40 AM
I just found out that you added the possibility to have shields, Jecrell. Thank you for that ;) . But there is one thing, that doesn't really work: I've forced non-player faction pawns to wield a specific shield via <apparelRequired>. Then testing I've tried to spawn those pawns, which didn't work.
<snip>
This are the both errors that occurred in the debug log.
I kindly ask you to fix this, or is there another way to spawn them with shields

Simply add this to your PawnKindDef to make them able to spawn with shields. They do not count as apparel.
Code (XML) Select
<modExtensions>
<li Class="PawnShields.ShieldPawnGeneratorProperties">
<shieldMoney>
<min>0</min>
<max>2000</max>
</shieldMoney>
<!-- Looks in weapons for these tags. -->
<shieldTags>
<li>ShieldBasic</li>
</shieldTags>
</li>
</modExtensions>
Title: Re: [B18] JecsTools [2/20/2018]
Post by: jecrell on March 04, 2018, 08:36:46 AM
***JecsTools***
1.0.9.5 (3/4/18)
============
+ Added support for a mirror / dual graphic on CompOversizedWeapon, so it appears that a weapon is being dual wielded.
Title: Re: [B18] JecsTools [2/20/2018]
Post by: gana4 on March 07, 2018, 04:01:24 PM
Quote from: jecrell on March 04, 2018, 08:36:46 AM
***JecsTools***
1.0.9.5 (3/4/18)
============
+ Added support for a mirror / dual graphic on CompOversizedWeapon, so it appears that a weapon is being dual wielded.
Title: Re: [B18] JecsTools [2/20/2018]
Post by: Canute on March 09, 2018, 02:40:29 AM
Translation error i saw in a bug report
Exception loading from translation file [Rimworld_dir]\Mods\D0a-JecsTools-master\Languages\French\Keyed\CompVehicle.xml: System.Xml.XmlException: Expected =, but found � [65533] file:///[Rimworld_dir]/Mods/D0a-JecsTools-master/Languages/French/Keyed/CompVehicle.xml Line 22, position 49.
  at Mono.Xml2.XmlTextReader.ExpectAfterWhitespace (Char c) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.ReadAttributes (Boolean isXmlDecl) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.ReadStartTag () [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.ReadContent () [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.Read () [0x00000] in <filename unknown>:0
  at System.Xml.XmlTextReader.Read () [0x00000] in <filename unknown>:0
  at Mono.Xml.XmlFilterReader.Read () [0x00000] in <filename unknown>:0
  at Mono.Xml.XmlFilterReader.Read () [0x00000] in <filename unknown>:0
  at System.Xml.XmlReader.ReadEndElement () [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XElement.LoadCore (System.Xml.XmlReader r, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XNode.ReadFrom (System.Xml.XmlReader r, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XContainer.ReadContentFrom (System.Xml.XmlReader reader, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XElement.LoadCore (System.Xml.XmlReader r, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XNode.ReadFrom (System.Xml.XmlReader r, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XContainer.ReadContentFrom (System.Xml.XmlReader reader, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XDocument.ReadContent (System.Xml.XmlReader reader, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XDocument.LoadCore (System.Xml.XmlReader reader, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XDocument.Load (System.String uri, LoadOptions options) [0x00000] in <filename unknown>:0
  at System.Xml.Linq.XDocument.Load (System.String uri) [0x00000] in <filename unknown>:0
  at Verse.DirectXmlLoaderSimple+<ValuesFromXmlFile>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at Verse.LoadedLanguage.LoadFromFile_Keyed (System.IO.FileInfo file) [0x00000] in <filename unknown>:0

https://gist.github.com/HugsLibRecordKeeper/ab26d7ce7bc27a859c3a4f8696570cce
Title: Re: [B18] JecsTools [2/20/2018]
Post by: clr2299 on April 01, 2018, 12:43:36 PM
I have a suggestion/idea, something that's commonly requested/talked about is the ability for "true" shotguns in mods. I'm not sure how you'd want to go about it, but maybe two different setups, one for a projectile with a definable amount of sub projectiles that explode from it instantly, or just multiple projectiles within the same tick. Since these two different methods could be used for a lot more than just shotguns with some imagination i'm sure it would be put to good use.
Title: Re: [B18] JecsTools [2/20/2018]
Post by: Legacy_ on April 08, 2018, 06:40:13 PM
Er... I keep getting this error when trying to create a new world. I'm using the non-DRM version with a bunch of mods that require Hugslib, which btw definately doesnt work beside JecsTools. I've read them replies and noticed that JecsTools and Hugslib didnt work before together on DRM-free but Jecs had it fixed.

Anyway, the error logs are as follow:
Error in WorldGenStep: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes (bool) <0x00004>
at System.Reflection.Assembly.GetTypes () <0x0001b>
at AbilityUser.AbilityUserUtility.GetAllChildrenOf (System.Type) <0x000f4>
at AbilityUser.AbilityUserUtility.TransformPawn (Verse.Pawn) <0x00047>
at AbilityUser.AbilityUserMod.InternalAddInAbilityUsers (Verse.Pawn) <0x0005b>
at AbilityUser.AbilityUserMod.InitializeComps_PostFix (Verse.ThingWithComps) <0x0004a>
at (wrapper dynamic-method) Verse.ThingWithComps.InitializeComps_Patch1 (object) <0x00112>
at Verse.ThingWithComps.PostMake () <0x0001e>
at Verse.ThingMaker.MakeThing (Verse.ThingDef,Verse.ThingDef) <0x00258>
at Verse.PawnGenerator.TryGenerateNewNakedPawn (Verse.PawnGenerationRequest&,string&,bool) <0x0009d>
at Verse.PawnGenerator.GenerateNewNakedPawn (Verse.PawnGenerationRequest&) <0x00174>
at Verse.PawnGenerator.GeneratePawnInternal (Verse.PawnGenerationRequest) <0x0054f>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnGenerationRequest) <0x00024>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnKindDef,RimWorld.Faction) <0x00127>
at RimWorld.Faction.GenerateNewLeader () <0x001ec>
at RimWorld.FactionGenerator.NewGeneratedFaction (RimWorld.FactionDef) <0x00287>
at RFC_Code.FactionGenerator_GenerateFactionsIntoWorld.Prefix () <0x00668>
at (wrapper dynamic-method) RimWorld.FactionGenerator.GenerateFactionsIntoWorld_Patch1 () <0x0001b>
at RimWorld.Planet.WorldGenStep_Factions.GenerateFresh (string) <0x0002e>
at RimWorld.Planet.WorldGenerator.GenerateWorld (single,string,RimWorld.Planet.OverallRainfall,RimWorld.Planet.OverallTemperature) <0x001ac>

Verse.Log:Error(String)
RimWorld.Planet.WorldGenerator:GenerateWorld(Single, String, OverallRainfall, OverallTemperature)
RimWorld.Page_CreateWorldParams:<CanDoNext>m__0()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


There was an exception thrown by the PawnGenerator during generating a starting pawn. Trying one more time...
Exception: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes (bool) <0x00004>
at System.Reflection.Assembly.GetTypes () <0x0001b>
at AbilityUser.AbilityUserUtility.GetAllChildrenOf (System.Type) <0x000f4>
at AbilityUser.AbilityUserUtility.TransformPawn (Verse.Pawn) <0x00047>
at AbilityUser.AbilityUserMod.InternalAddInAbilityUsers (Verse.Pawn) <0x0005b>
at AbilityUser.AbilityUserMod.InitializeComps_PostFix (Verse.ThingWithComps) <0x0004a>
at (wrapper dynamic-method) Verse.ThingWithComps.InitializeComps_Patch1 (object) <0x00112>
at Verse.ThingWithComps.PostMake () <0x0001e>
at Verse.ThingMaker.MakeThing (Verse.ThingDef,Verse.ThingDef) <0x00258>
at Verse.PawnGenerator.TryGenerateNewNakedPawn (Verse.PawnGenerationRequest&,string&,bool) <0x0009d>
at Verse.PawnGenerator.GenerateNewNakedPawn (Verse.PawnGenerationRequest&) <0x00174>
at Verse.PawnGenerator.GeneratePawnInternal (Verse.PawnGenerationRequest) <0x0054f>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnGenerationRequest) <0x00024>
at Verse.StartingPawnUtility.NewGeneratedStartingPawn () <0x0019f>

Verse.Log:Error(String)
Verse.StartingPawnUtility:NewGeneratedStartingPawn()
RimWorld.ScenPart_ConfigPage_ConfigureStartingPawns:PostWorldGenerate()
RimWorld.Scenario:PostWorldGenerate()
RimWorld.Planet.WorldGenerator:GenerateWorld(Single, String, OverallRainfall, OverallTemperature)
RimWorld.Page_CreateWorldParams:<CanDoNext>m__0()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


Exception from asynchronous event: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes (bool) <0x00004>
at System.Reflection.Assembly.GetTypes () <0x0001b>
at AbilityUser.AbilityUserUtility.GetAllChildrenOf (System.Type) <0x000f4>
at AbilityUser.AbilityUserUtility.TransformPawn (Verse.Pawn) <0x00047>
at AbilityUser.AbilityUserMod.InternalAddInAbilityUsers (Verse.Pawn) <0x0005b>
at AbilityUser.AbilityUserMod.InitializeComps_PostFix (Verse.ThingWithComps) <0x0004a>
at (wrapper dynamic-method) Verse.ThingWithComps.InitializeComps_Patch1 (object) <0x00112>
at Verse.ThingWithComps.PostMake () <0x0001e>
at Verse.ThingMaker.MakeThing (Verse.ThingDef,Verse.ThingDef) <0x00258>
at Verse.PawnGenerator.TryGenerateNewNakedPawn (Verse.PawnGenerationRequest&,string&,bool) <0x0009d>
at Verse.PawnGenerator.GenerateNewNakedPawn (Verse.PawnGenerationRequest&) <0x00174>
at Verse.PawnGenerator.GeneratePawnInternal (Verse.PawnGenerationRequest) <0x0054f>
at Verse.PawnGenerator.GeneratePawn (Verse.PawnGenerationRequest) <0x00024>
at Verse.StartingPawnUtility.NewGeneratedStartingPawn () <0x00213>
at RimWorld.ScenPart_ConfigPage_ConfigureStartingPawns.PostWorldGenerate () <0x0002f>
at RimWorld.Scenario.PostWorldGenerate () <0x0005e>
at RimWorld.Planet.WorldGenerator.GenerateWorld (single,string,RimWorld.Planet.OverallRainfall,RimWorld.Planet.OverallTemperature) <0x002b0>
at RimWorld.Page_CreateWorldParams.<CanDoNext>m__0 () <0x00048>
at Verse.LongEventHandler.RunEventFromAnotherThread (System.Action) <0x00028>

Verse.Log:Error(String)
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()



I thank thou for the attention.
Title: Re: [B18] JecsTools [5/2/2018]
Post by: jecrell on May 02, 2018, 11:58:44 AM
v1.0.9.9 (May Patch)
Added a new patch for allowing multiple apparel items to stack. "Apparel Extension" adds extra body part tags that are checked before a piece of apparel is determined to be unwearable. This is great for adding things such as glasses, monocles, earrings, and more.

For example, here is a ThingDef for a piece of "spectacles" apparel. This can now be worn alongside a hat, instead of taking up the hat's slot.


  <ThingDef ParentName="HatMakeableBase">
<defName>Apparel_IndSpectacles</defName>
<label>spectacles</label>
    <description>A pair of eyeglasses that make the user look slightly smarter. Can also improve vision.
<!-- Cut out lots of code -->
    <modExtensions>
  <li Class="JecsTools.ApparelExtension">
    <coverage>
  <li>Eyes</li> <!-- This is a string, not an enum, so feel free to use any custom named part. Want to make a nose-ring? Type in Nose and it can be equipped alongside this and many others. -->
</coverage>
  </li>
    </modExtensions>
<!-- End of example -->
  </ThingDef>
Title: Re: [B18] JecsTools [5/2/2018]
Post by: orgre45 on June 08, 2018, 04:11:17 AM
Thanks!  ;D
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Plymouth on June 23, 2018, 11:59:13 AM
Hey there!
Any ETA on 1.0 version?
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Canute on June 23, 2018, 12:02:23 PM
ETA: 4 days ago
Check the Github page.
Title: Re: [B18] JecsTools [5/2/2018]
Post by: kolt16 on June 26, 2018, 11:45:00 AM
I would like to ask for some help with vehicles (I couldn't find a thing about it on the git wiki)

Is there a way to get rid of the needs check, or make a vehicle go without a driver?

I use a ton of mods and maybe because of some added "needs bar" 99% precent of the time pawns are ejected with the needs too low message, regardless of their vitals.

I already tried setting these:

      <movementHandling>NoHandlerRequired</movementHandling>
      <weaponHandling>NoHandlerRequired</weaponHandling>

no effect so far
Title: Re: [B18] JecsTools [5/2/2018]
Post by: evilcats on July 06, 2018, 05:04:59 PM
I am having a little trouble with making Vehicles, they work and are refillable, but I can't figure out how to make it drop the pawn after drafted or how to undraft it, any help is much appreciated, full details of the issue here https://github.com/jecrell/JecsTools/issues/24
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Anni on July 24, 2018, 04:16:46 PM
Quote from: Canute on June 23, 2018, 12:02:23 PM
ETA: 4 days ago
Check the Github page.

not working for me. The version on github gives me nothing but errors
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Walkaboutout on July 24, 2018, 10:47:46 PM
Yeah, the last update (1974 I think?) seems to have broken Jec'sTools, (and his Star Wars mods) rather thoroughly.
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Walkaboutout on July 25, 2018, 03:28:33 PM
Looks like Jec got an update out on his Github for this, today. :)
Title: Re: [B18] JecsTools [5/2/2018]
Post by: AnotherFireFox on July 30, 2018, 11:40:03 PM
So...vehicles work fine now?
Title: Re: [B18] JecsTools [5/2/2018]
Post by: raziel86 on August 13, 2018, 08:54:00 AM
I can't even start a new game I get an error and the world won't generate, no other mod is loaded, I'm using the latest version of Jesctools.
Please advise what should i do
Added the document because its to big to fit into the forum format

[attachment deleted due to age]
Title: Re: [B18] JecsTools [5/2/2018]
Post by: Canute on August 13, 2018, 09:12:38 AM
raziel86,
welcome at the world of unstable versions with daily broken mods.

Basicly you need to wait for a new update.
But is the rimworld version the latest, since i don't play the unstable i can't verify it, but the number looked a bit small.

Title: Re: [B19] JecsTools [8/29/2018]
Post by: jecrell on August 29, 2018, 08:49:03 AM
Alright folks! JecsTools is out for B19!
Time to start the update-a-thon. Most of my mods are ready.

DDL: https://www.patreon.com/posts/jecstools-for-0-21059900
GitHub: https://github.com/jecrell/JecsTools/releases/tag/1.1.0
Steam: https://steamcommunity.com/sharedfiles/filedetails/?id=932008009
Title: Re: [B19] JecsTools [8/29/2018]
Post by: onerous1 on September 06, 2018, 04:41:49 AM
 If you load Jecstools before Fluffy's Relations Tab mod it results in the relation tab reverting back to its default state.

I must have hallucinated the whole thing because I can't reproduce the problem after getting some sleep. Sorry about the post. I'll refrain from testing mod incompatibilities while suffering from insomnia.  :-[
Title: Re: [B19] JecsTools [8/29/2018]
Post by: Canute on September 06, 2018, 05:24:08 AM
Since jecstools is a libary for many mods, and mosttimes loaded as one of the first mods.
You should metion the Relation tab issue to fluffy.
Title: Re: [B19] JecsTools [8/29/2018]
Post by: Ruisuki on September 06, 2018, 06:10:47 AM
did the yes vehicles guys ever get in touch with you or were they lying
Title: Re: [B19] JecsTools [8/29/2018]
Post by: ferofax on September 08, 2018, 04:36:47 AM
Can I use B19 JecsTools on B18 so that Crinos cleave will work as intended? Because it seems my version of Werewolves targets B18 but Crinos cleave refers to something that is ONLY on JecsTools B19, which is weird (I have both versions of JecsTools and B18 doesn't have the source folder that contains the damage worker for Cleave, but B19 does). Also, any idea what's wrong with werewolves turning into headless stumps the second they take damage? It's like the blood spatter wonks the pawn graphics or something.

On a tangent: I manually edited ROMV_Flight.xml for Vampires to make Lightweight work with CE defs (changed CarryingCapacity to CarryWeight and CarryBulk, kept the 40 offset, which will probably make my Gargoyles and their ghouls uber haulers. Haven't tried yet but will probably adjust to keep it from becoming too ridiculously imbalanced). Also, lmao, Long Flight would be crazy crazy crazy, but I like it. Too bad it's not implemented, but the code is there. The gap between Short Flight and Long Flight would be ridiculous though, since Short Flight's range is a measly 14 (that's like just a short glide or something, barely a fraction of the normal map's size, but I understand it's to keep it from being OP) but Long Flight's range is what, 8 world tiles? Wheeeeeeeeewwwww

EDIT: Wow. Super disappointed that Zulo form and War form both have just vanilla wolf stats. :( I guess I'm tweaking that too.
Title: Re: [B19] JecsTools [9/14/2018]
Post by: jecrell on September 14, 2018, 08:33:27 AM
JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: B19.642
Updated: 09-14-2018
Description: Fixed issue where CompDeflector was preventing code from executing.


Download now on...
Patreon (https://www.patreon.com/posts/jecstools-for-0-21059900)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [B19] JecsTools [9/14/2018]
Post by: laffin on September 14, 2018, 05:39:58 PM
I dont have the right click ability when I use this mod v19.642 with Doors Expanded
Title: Re: [B19] JecsTools [9/14/2018]
Post by: Canute on September 15, 2018, 03:36:09 AM
laffin,
the mod only work's correct with the current stable Rimworld release
0.19.2006
Title: Re: [B19] JecsTools [9/14/2018]
Post by: laffin on September 15, 2018, 01:24:20 PM
Quote from: Canute on September 15, 2018, 03:36:09 AM
laffin,
the mod only work's correct with the current stable Rimworld release
0.19.2006

Thanks, I was on the latest dev build testing things out
Title: Re: [B19] JecsTools [9/14/2018]
Post by: rkagerer on September 15, 2018, 03:26:22 PM
Which version should I use for playing with Rimworld v 0.17.1557?  (Also should I use RimRoads v1.17.0.2?)
Title: Re: [B19] JecsTools [9/14/2018]
Post by: jecrell on September 16, 2018, 05:02:49 AM
JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.1.0.2
Updated: 09-16-2018
Description: Fixed the second error caused by deflection systems (from Xen)


Download now on...
Patreon (https://www.patreon.com/posts/jecstools-for-0-21059900)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [B19] JecsTools [9/14/2018]
Post by: rawrfisher on September 16, 2018, 09:37:54 AM
Hey jec what version of harmony do you use?
Title: Re: [B19] JecsTools [9/14/2018]
Post by: jecrell on September 16, 2018, 10:43:24 PM
Quote from: rawrfisher on September 16, 2018, 09:37:54 AM
Hey jec what version of harmony do you use?
Currently using an older version of harmony, due to the massive explosion of issues that happened when I tried to update to the latest. I recommend using HugsLib above my mod to have all harmony dlls autoupdate.
Title: Re: [B19] JecsTools [9/14/2018]
Post by: jecrell on September 16, 2018, 10:43:46 PM

JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.1.0.3
Updated: 09-17-2018
Description: Neglected to include latest compiled fix.


Download now on...
Patreon (https://www.patreon.com/posts/jecstools-for-0-21059900)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [B19] JecsTools [9/17/2018]
Post by: jecrell on September 17, 2018, 09:34:55 AM
JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.1.0.4
Updated: 09-17-2018
Description: A (potential) fix for an issue shared between Hospitality and JecsTools.


Download now on...
Patreon (https://www.patreon.com/posts/jecstools-for-0-21059900)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [B19] JecsTools [9/17/2018]
Post by: jecrell on September 21, 2018, 11:40:46 PM
JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.1.0.5
Updated: 09-22-2018
Description: Added a max range check to make GetInRangeToil fire for pawns who target enemies outside of max range.


Download now on...
Patreon (https://www.patreon.com/posts/jecstools-for-0-21059900)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [B19] JecsTools [9/17/2018]
Post by: ilikegoodfood on October 17, 2018, 05:45:57 PM
Hello there.

I have spent the last six days, trying to learn how to write advanced transpiler patches in order to implement some features for my mod. During updating it, and my subscription list, for RimWorld 1.0, I noticed the description for your tools and suddeny realised that your framework probably does everything I need. I can't help but feel stupid for not remembering it in the first place...

So, to clarify what I am trying to do, and to check that JecsTools can indeed support this, here it is:

I am trying to create a hediff that, once installed in a pawn, gives them a ranged verb.
I would like them to work for animals (my mod already uses the Animal Range Framework by Broken Valkirie, updated to 1.0 by SargBjornson), NPC humanoids and colonists.
I would like them to have a visible element on the UI, for player controlled pawns, and a means for the player to toggle between primary verbs and control their free-fire state.

Does JecsTools support these behaviors and how easy would it be to implement?

Thanks for your help and time. I know time is especially precious now, with a fresh update.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: jecrell on October 18, 2018, 09:07:01 AM

JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.1.0.8
Updated: 10-18-2018
Description: RimWorld 1.0 Update!
Changed very few issues to allow for the update for RimWorld 1.0.


Download now on...
Patreon (https://www.patreon.com/posts/22139730)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: bigheadzach on October 29, 2018, 12:23:16 PM
How stable are the releases that don't get posted here first?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Canute on October 29, 2018, 12:34:14 PM
bigheadzach,
maybe you didn't notice.
Jecrell treat the discord first, then Workshop and the forum mosttimes last.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: bigheadzach on October 29, 2018, 12:55:11 PM
What I meant is that if I'm someone who subscribes to GitHub releases (not commits, releases) of modders, if Jec releases JecsTools 1.1.0.11, is that an indication that it is stable enough for use?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Canute on October 29, 2018, 01:01:40 PM
i don't know abput 1.1.0.11, but ...10 caused trouble with Rim of Magic.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Kapun on October 29, 2018, 02:00:36 PM
Jecrell, are you planning to add new features to the mod? I think it would be really great if your tool could add the ability to create a apparel piece that covers the whole body.  For example now we have marine armor and marine armor helmet. But you can't make marine armor suit as a single item. I mean so that a single item could have 2 textures  for each direction/bodytype combo (body texture and head texture). I tried to add such a thing myself but modding graphics seems rather complicated
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Kiame on October 29, 2018, 07:08:18 PM
Quote from: Kapun on October 29, 2018, 02:00:36 PM
Jecrell, are you planning to add new features to the mod? I think it would be really great if your tool could add the ability to create a apparel piece that covers the whole body.  For example now we have marine armor and marine armor helmet. But you can't make marine armor suit as a single item. I mean so that a single item could have 2 textures  for each direction/bodytype combo (body texture and head texture). I tried to add such a thing myself but modding graphics seems rather complicated

What apparel covers is all in the apparel's def. The base game allows a single piece to cover all body parts. Whoever writes the def just needs to specify each layer and body part it covers

Example: https://github.com/KiameV/rimworld-animalcostumes/blob/master/Defs/ThingDefs_Misc/Apparel_Costumes.xml

The <bodyPartGroups> section defines torso, neck, shoulders, amrs, and legs

Pants are never rendered so it's a just 1 texture
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Kapun on October 30, 2018, 04:18:08 AM
Yes, the stats will work but the texture will no be applied correctly without C# modding. When i say 2 textures i mean not legs and torso but head and torso. It could probably be done with a single large texture but that will cause certain problems. Either way, it requires C# modding.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: publicuser on November 13, 2018, 04:42:26 AM
Add some Simplified Chinese translations which untranslated based on existing translation, by master_wu. In attachment

[attachment deleted due to age]
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 21, 2018, 11:49:59 PM
If I'm developing a mod that makes use of the assemblies found in the mod library of the core mod (JecsTools itself) do I need to include the assembly/assemblies associated with what I'm using in my mod folders as suggested by the wiki guide?

I would have thought that if the library has been loaded from the main core mod itself this would be unnecessary?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Canute on December 22, 2018, 03:36:35 AM
I suggest to ask jecrell on discord for faster responce.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 22, 2018, 05:39:20 AM
I did try that but after hours of waiting with a message in the help channel with no response, I decided to post here.

Understandably with it being the Christmas period, I didn't want to press things etc. but thought best to at least document it here as a contigency.

I have however satisfied myself that assemblies do operate from the core library through testing and that it isn't essential to include/duplicate them in your own mod source files.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 22, 2018, 05:40:13 AM
Bug with Jecstools: CompSlotLoadable; when a person slots an item into something and they pull the item from a stack of items, they take the whole stack and not just one item from it. Removing what has been slotted in this case only results in 1 item being returned, so the rest of the other items are lost.

Ideally, the process should accommodate the ability to only pull one item from a stack.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 22, 2018, 09:02:08 PM
Additional notes for Jecstools: CompSlotLoadable.

1) The slots display a subtext value of -1% in parentheses at the bottom of the slot GUI box, unsure what the reason or purpose is for this, but seems redundant and potentially only adds a little confusion/mystery. It displays this pre and post slotting.

2) Trying to slot an item with the item to be slotted in the pawns inventory can end up with a bugged slottable item that can no longer make use of the slotting capabilities.

Initially, it doesn't recognize that the item is in the pawns inventory with the pawn trying to make use of stock inventory items only. Then on subsequent attempts trying to open the slot GUI to slot an item comes back with the following error: "Created FloatMenu with no options. Closing."

Note: This bug seems specific to that pawn and item, however (so am assuming it is an item object related error/issue), other items useable by the pawn or other pawns with slot capable items will still be able to use the GUI.

So when this occurs the item is not slotted and the item to be slotted loses any capability to be slotted. This obviously needs correcting, but also ideally it would be useful if the slotting process could also include or try to make use of items in the Pawn's inventory (priority) as well as any items that might be registered in the stock inventory for the colony. This feature would expand the capabilities of the process since pawns would then more readily be capable of changing slotted items from their inventory, which provides tactical flexibility/battle effective weapon modes. (Pretty sure however that this might be the intended functionality?)

(( *** Please see notes below as addendum *** ))
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 22, 2018, 09:54:11 PM
Important update to above:

The above error with the inventory issue may be a one-off (first item applied issue?) or rare occurrence issue. Been trying to reproduce the error but struggling to do so.

Normally the GUI will simply not register or recognize any item in the pawns inventory, but the GUI can be used on subsequent attempts.

It would however still be a very useful and desirable feature for pawns to utilise items from their inventory for slotting capabilities as a priority process to then making use of items in the stock inventory.

(It would also be a very useful feature if compatibility could be found with the mod "Pick up and haul", or similar functionality applied that any unslotted items could be identified as items to retain in a pawns inventory (where not full). Though this implies a capable way of picking up slottable items and marking them for retention as opposed to then hauling those items. With these additional capabilities, it would better provide tactical/dynamic changes with slottable items. The "Pick up and haul" mod process provides a way of retaining specific items in a pawns inventory for later use.

In its simplest form even if the option to make use of slottable items from a pawns inventory was added (maybe dropping unslotted items), then this would work alongside other mods that handle the pick-up and inventory process?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on December 29, 2018, 08:33:24 PM
Get the following error trying to use CompToggleDef: (Please see attached graphic).

Trying to swap verb values of a ThingDef.



** Update 08/02/2019 **

Verbs can be assigned in the TOGGLEDEF definitions and this removes the error of using any abstract definitions.
However, when the items are toggled, the verb values do not change and remain fixed as per the original definition.

[attachment deleted due to age]
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Pelador on January 30, 2019, 10:35:02 AM
Another useful addition to the compslotloadable process would be for pawns to recognise if the slottable item has been toggled as forbidden to use. At the moment the routine simply ignores this setting.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: NinjaSiren on February 28, 2019, 02:51:47 AM
I am now stuck with this bug, but I will still continue Yes, Vehicles, Finally mod in the Unfinished mod section:
JobDriver threw exception in initAction for pawn Tank15920 driver=JobDriver_Wait (toilIndex=0) driver.job=(Wait (Job_22662)) lastJobGiver=null
System.NullReferenceException: Object reference not set to an instance of an object
  at Verse.AI.JobDriver_Wait.CheckForAutoAttack () [0x00000] in <filename unknown>:0
  at Verse.AI.JobDriver_Wait+<MakeNewToils>c__Iterator0.<>m__0 () [0x00000] in <filename unknown>:0
  at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x00000] in <filename unknown>:0

Anyone who could help me here, the vehicles are already moving as intended. But the weapons gets disabled by this bug.
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: AnotherFireFox on June 06, 2019, 03:52:59 AM
Is this still alive? Can I ask him for the Vehicle fix?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Ruisuki on August 17, 2019, 05:53:00 AM
might be more likely as a custom request via patreon
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: Apposl on November 21, 2019, 03:12:59 PM
Building a half sized custom race. Would some part of this help me with having them build/have half-sized vanilla weapons?
Title: Re: [1.0] JecsTools [10/18/2018]
Post by: linkrag on March 01, 2020, 01:50:36 PM
Its updated! Thanks!!
Title: Re: [1.3] JecsTools [7/24/2021]
Post by: jecrell on July 24, 2021, 06:31:29 PM
JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.3.0.1
Updated: 07-24-2021
Description: Now supports RimWorld 1.3.
Hotfix #1: Fix regression in RW 1.1 & 1.2 by using separate defs for 1.1+1.2 and 1.3


Download now on...
Patreon (https://www.patreon.com/posts/54071148)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Title: Re: [1.3] JecsTools [7/24/2021]
Post by: jecrell on October 21, 2022, 09:00:52 PM

JecsTools
(https://raw.githubusercontent.com/jecrell/JecsTools/master/About/Preview.png)


JecsTools
Version: 1.4.0.0
Updated: 10-21-2022
Description: Initial update for RimWorld 1.4 of JecsTools



Download now on...
Patreon (https://www.patreon.com/posts/73617775)
GitHub (https://github.com/jecrell/JecsTools)
Steam (https://steamcommunity.com/sharedfiles/filedetails/?id=932008009)
Discuss the mod on...
Discord (https://discord.gg/AaVFA7V)
Ludeon (https://ludeon.com/forums/index.php?topic=32868.0)