Files

251 lines
7.8 KiB
XML

<Analyzer>
<PerformanceFish>
<!-- Settings, Tick, Update, GUI or Modder. Defaults to Modder -->
<!--Category>Modder</Category-->
<!-- On hover tooltip for the sidebar entry -->
<Tooltip>Methods patched and optimized by Performance Fish. Use this in conjunction with its mod settings to measure performance improvements or find eventual issues if a patch acts up</Tooltip>
<!-- All methods in types -->
<!--Types>
<li></li>
</Types-->
<!-- Specific methods -->
<Methods>
<!-- DesignationManager -->
<li>Verse.DesignationManager:SpawnedDesignationsOfDef</li>
<li>Verse.DesignationManager:AnySpawnedDesignationOfDef</li>
<li>Verse.DesignationManager:AllDesignationsOn</li>
<li>Verse.DesignationManager:DesignationOn</li>
<li>Verse.DesignationManager:HasMapDesignationOn</li>
<!-- Misc -->
<!--li>Verse.GenList:ListFullCopy</li--><!-- generic -->
<li>Verse.ThingFilter:CopyAllowancesFrom</li>
<li>Verse.DrawBatch:Flush</li>
<!-- HediffComp_PsychicHarmonizer -->
<li>RimWorld.HediffComp_PsychicHarmonizer:CompPostTick</li>
<!-- HediffSet -->
<li>Verse.HediffSet:HasHediff</li>
<!-- Lister -->
<li>Verse.Map:MapPreTick</li>
<li>Verse.ListerBuildings:ColonistsHaveBuilding</li>
<li>Verse.ListerBuildings:ColonistsHaveResearchBench</li>
<li>Verse.ListerBuildings:ColonistsHaveBuildingWithPowerOn</li>
<li>Verse.ListerBuildings:AllBuildingsColonistOfDef</li>
<li>Verse.ListerBuildings:AllBuildingsNonColonistOfDef</li>
<!-- StorageSettings -->
<li>RimWorld.StorageSettings:AllowedToAccept</li>
<!-- MassUtility -->
<li>RimWorld.MassUtility:GearMass</li>
<li>RimWorld.MassUtility:InventoryMass</li>
<!-- RecipeDef -->
<li>Verse.RecipeDef:get_AllRecipeUsers</li>
<li>Verse.UnfinishedThing:BillOnTableForMe</li>
<!-- Room -->
<!-- Verse.Room:get_ContainedBeds and Verse.Room:get_Owners are almost exclusively used by Pawn_Ownership.get_OwnedRoom -->
<li>RimWorld.Pawn_Ownership:get_OwnedRoom</li>
<li>Verse.Room:get_Regions</li>
<li>Verse.Room:get_ContainedAndAdjacentThings</li>
<!-- StoreUtility -->
<!-- ThingFilter -->
<li>Verse.ThingFilter:get_AllowedThingDefs</li>
<li>Verse.ThingFilter:get_AllStorableThingDefs</li>
<!-- ThingOwnerUtility -->
<!--li>Verse.ThingOwnerUtility.GetAllThingsRecursively</li--><!-- generic -->
<li>Verse.MapPawns:get_AllPawnsUnspawned</li>
<!-- ThoughtWorker_Precept_AltarSharing -->
<li>RimWorld.ThoughtWorker_Precept_AltarSharing:ShouldHaveThought</li>
<!-- GenClosest -->
<!-- Utility -->
<!-- WorkGiver_DoBill -->
<!--li>RimWorld.WorkGiver_DoBill:TryFindBestIngredientsHelper</li-->
<!--li>RimWorld.WorkGiver_DoBill+&lt;&gt;c__DisplayClass21_0:&lt;TryFindBestIngredientsHelper&gt;b__4</li-->
<!-- WorkGiver_Haul -->
<!--li>RimWorld.WorkGiver_Haul:PotentialWorkThingsGlobal</li-->
<li>PerformanceFish.JobSystem.WorkGiver_HaulOptimization+PotentialWorkThingsGlobal_Patch:Sort</li>
<li>RimWorld.WorkGiver_Haul:JobOnThing</li>
<!-- JobGiver_Haul -->
<li>RimWorld.JobGiver_Haul:TryGiveJob</li>
<!-- Toils_Bed -->
<li>RimWorld.Toils_Bed:BedNoLongerUsable</li>
<!-- IdeoUtility -->
<li>RimWorld.IdeoUtility:GetStyleDominance</li>
<!-- ThingCompPatches -->
<li>RimWorld.CompAssignableToPawn_Bed:IdeoligionForbids</li>
<!-- Reflection -->
<li>System.RuntimeType:GetField</li>
<li>System.Type:GetMethod</li>
<li>System.Type:GetConstructor</li>
<li>System.Type:GetProperty</li>
<li>System.Reflection.MonoField:GetValue</li>
<li>System.Reflection.FieldInfo:SetValue</li>
<li>System.Reflection.MethodBase:Invoke</li>
</Methods>
<!-- Specific methods of all subclasses -->
<!--DerivedMethods>
<li></li>
</DerivedMethods-->
<!-- All methods of subclasses -->
<!--DerivedTypes>
<li></li>
</DerivedTypes-->
<!-- All methods of types nested within specified types -->
<!--NestedTypes>
<li></li>
</NestedTypes-->
</PerformanceFish>
<Abilities>
<Tooltip>Ticking methods of abilities. Cooldown, effects, combat</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.Ability:AbilityTick</li>
<li MayRequire="OskarPotocki.VanillaFactionsExpanded.Core">VFECore.Abilities.Ability:Tick</li>
</DerivedMethods>
</Abilities>
<AbilityComps>
<Tooltip>Comps attached to abilities</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.AbilityComp:CompTick</li>
</DerivedMethods>
</AbilityComps>
<Genes>
<Tooltip>Ticking methods of genes. Often empty when not having any ticking genes</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li MayRequire="Ludeon.RimWorld.Biotech">Verse.Gene:Tick</li>
</DerivedMethods>
</Genes>
<HediffComps>
<Tooltip>Comps attached to Hediffs. Often responsible for the actual logic</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>Verse.HediffComp:CompPostTick</li>
</DerivedMethods>
</HediffComps>
<Hediffs>
<Tooltip>Ticking health stuff ond other things implanted in pawn bodies</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>Verse.Hediff:Tick</li>
<li>Verse.Hediff:PostTick</li>
</DerivedMethods>
</Hediffs>
<MentalStates>
<Tooltip>Tick methods of mental states like berserk, tantrum etc</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>Verse.AI.MentalState:MentalStateTick</li>
</DerivedMethods>
</MentalStates>
<Precepts>
<Tooltip>Ticking methods of precepts. Ideology stuff.</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li MayRequire="Ludeon.RimWorld.Ideology">RimWorld.Precept:Tick</li>
</DerivedMethods>
</Precepts>
<RitualObligationTriggers>
<Tooltip>Tick methods ideology ritual triggers. Can scale quite badly when having a lot of precepts loaded</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.RitualObligationTrigger:Tick</li>
</DerivedMethods>
</RitualObligationTriggers>
<StatParts>
<Tooltip>TransformValue methods of StatParts. These run on every stat lookup, when not cached</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.StatPart:TransformValue</li>
</DerivedMethods>
</StatParts>
<ThingCompTick>
<Tooltip>Tick methods of comps attached to Things. Any ThingWithComps can have these, and any mod can add new ones</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>Verse.ThingComp:CompTick</li>
<li>Verse.ThingComp:CompTickRare</li>
<li>Verse.ThingComp:CompTickLong</li>
</DerivedMethods>
</ThingCompTick>
<WorldComponentTick>
<Tooltip>Tick methods of comps with one instance attached to the game world</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.Planet.WorldComponent:WorldComponentTick</li>
</DerivedMethods>
</WorldComponentTick>
<WorldObjectComps>
<Tooltip>Comps attached to settlements, caravans etc</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.Planet.WorldObjectComp:CompTick</li>
</DerivedMethods>
</WorldObjectComps>
<WorldObjects>
<Tooltip>Settlements, caravans etc</Tooltip>
<Category>Tick</Category>
<DerivedMethods>
<li>RimWorld.Planet.WorldObject:Tick</li>
</DerivedMethods>
</WorldObjects>
<ThingCompUpdate>
<Tooltip>Update methods of comps attached to Things. Any ThingWithComps can have these, and any mod can add new ones</Tooltip>
<Category>Update</Category>
<DerivedMethods>
<li>Verse.ThingComp:DrawGUIOverlay</li>
<li>Verse.ThingComp:PostDraw</li>
<li>Verse.ThingComp:PostDrawExtraSelectionOverlays</li>
<li>Verse.ThingComp:PostPrintOnto</li>
</DerivedMethods>
</ThingCompUpdate>
<WorldComponentUpdate>
<Tooltip>Update methods of comps with one instance attached to the game world</Tooltip>
<Category>Update</Category>
<DerivedMethods>
<li>RimWorld.Planet.WorldComponent:WorldComponentUpdate</li>
</DerivedMethods>
</WorldComponentUpdate>
</Analyzer>