Ludeon Forums

Ludeon Forums

  • September 27, 2021, 09:26:57 PM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  

Show Posts

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

Topics - LWM

Pages: [1] 2 3 4
1
Help / Nested Scroll windows?
« on: April 25, 2021, 10:43:27 PM »
Hey, everyone!  UI question here:

I have a Listing_Standard with a ScrollView, and inside that scroll view I get a Rect and inside that Rect I do the ThingFilter UI.  The problem is that the ThingFilter's scroll bars do not appear!  Only the ScrollView scroll bars appear...

Does anyone know if this problem will go away if I rewrite everything without the Listing_Standard?

2
Releases / Fuel Filter
« on: April 18, 2021, 07:14:47 PM »
Hey, y'all! I got tired of my colonists burning super valuable Thrumbone in the blast furnace instead of wood, so I finally made a mod that allows you to select what is used for refueling:

https://github.com/lilwhitemouse/RimWorld-LWM.FuelFilter

(also available on Steam https://steamcommunity.com/sharedfiles/filedetails/?id=2461634904)

LWM's Fuel Filter allows you to choose which possible fuels will actually get used when refueling.

"Hey, what do you have there in your arms?"

        "A big pile of Thrumbone - it's a super expensive bone from a neat mod!"

"Really expensive, eh?"

        "Yeah!  Hard to get - we barely have any and it's great stuff - you can use it like wood!"

"I notice you're walking towards the Blast Furnace. Where are you taking it?"

        "Oh, I'm going to burn it all as fuel."

"Don't we have a lot of really cheap wood?"

        "Yeah, but this was closer!"

"..."

As a bonus, I patch anything that burns "WoodLog" (that is, wood) to burn "Woody" things (only helps if you have mods that add woody things, such as Lulu's bone mod, or some of the expanded biome mods...but unless you have a mod like that, you probably don't need this anyway!)  So the Blast Furnace from Project RimFactory can burn the sequoia wood from expanded biomes.  If a similar patch is needed for metals, I can do that too.

Enjoy, --LWM

3
Please, could you make Graphic_Linked's LinkedDrawFromMat(...) virtual? Given how Prints work, this shouldn't have any impact on performance and would allow greater flexibility for modding.

Thanks!

4
Bugs / Graphic's GetCopy() fails on Graphic_RandomRotated (for mod authors)
« on: September 29, 2020, 11:43:55 PM »
If you have a piece of apparel on the ground, the graphic used is a cached Graphic_RandomRotated.  If you take the graphic and do a GetCopy(newSize) it fails.
Code: [Select]
  var tinyGraphic = apparel.Graphic.GetCopy(new Vector2(0.5f,0.5f));
When this is attempted in game, the GraphicDatabase fails:

Exception getting Verse.Graphic_RandomRotated at : System.ArgumentException: Invalid generic arguments
Parameter name: typeArguments
  at (wrapper managed-to-native) System.Reflection.MonoMethod.MakeGenericMethod_impl(System.Reflection.MonoMethod,System.Type[])
  at System.Reflection.MonoMethod.MakeGenericMethod (System.Type[] methodInstantiation) [0x00071] in <567df3e0919241ba98db88bec4c6696f>:0
  at Verse.GenGeneric.InvokeStaticGenericMethod (System.Type baseClass, System.Type genericParam, System.String methodName, System.Object[] args) [0x00009] in <b02b390b894d4487a224faae4a3db641>:0
  at Verse.GraphicDatabase.Get (System.Type graphicClass, System.String path, UnityEngine.Shader shader, UnityEngine.Vector2 drawSize, UnityEngine.Color color, UnityEngine.Color colorTwo, Verse.GraphicData data, System.Collections.Generic.List`1[T] shaderParameters) [0x00105] in <b02b390b894d4487a224faae4a3db641>:0
Verse.Log:Error(String, Boolean)
Verse.GraphicDatabase:Get(Type, String, Shader, Vector2, Color, Color, GraphicData, List`1)
Verse.GraphicDatabase:Get(Type, String, Shader, Vector2, Color, Color)
Verse.Graphic:GetCopy(Vector2)


This is mainly of interest to mod authors who want to draw tiny suits of plate armor on conveyor belts or in storage.  At the least, if `subGraphic` were public, we could use that.  If there is another workaround (or a better way to scale the image of spawned apparel) I would happily use it?

Thanks,
LWM

5
Bugs / Colonists use telescope during hard snow
« on: August 28, 2020, 11:57:29 AM »
Colonists seem perfectly happy to use the telescope during periods of bad weather.  Unless they have the 'creepy' trait (and of course, RW has better taste than that), there isn't anything to look at.

Using the telescope should only happen during clear weather and some of the time during cloudy weather.

It's not a big thing but should be an easy fix for you all.

Thanks

6
Error:


Could not reserve Thing_DoubleBed216411 (layer: null) for Archie for job Meditate (Job_1401307) A=Thing_DoubleBed216411 (now doing job Meditate (Job_1401307) A=Thing_DoubleBed216411(curToil=-1)) for maxPawns 1 and stackCount -1. Existing reserver: Wolf doing job LayDown (Job_1401288) A=Thing_DoubleBed216411 (toilIndex=2)
Verse.Log:Error(String, Boolean)
Verse.AI.ReservationManager:LogCouldNotReserveError(Pawn, Job, LocalTargetInfo, Int32, Int32, ReservationLayerDef)
Verse.AI.ReservationManager:Reserve(Pawn, Job, LocalTargetInfo, Int32, Int32, ReservationLayerDef, Boolean)
Verse.AI.ReservationUtility:Reserve(Pawn, LocalTargetInfo, Job, Int32, Int32, ReservationLayerDef, Boolean)
RimWorld.JobDriver_Meditate:TryMakePreToilReservations(Boolean)
Verse.AI.Pawn_JobTracker:StartJob(Job, JobCondition, ThinkNode, Boolean, Boolean, ThinkTreeDef, Nullable`1, Boolean, Boolean)
Verse.AI.Pawn_JobTracker:CheckForJobOverride()


Followed by the warning:

TryMakePreToilReservations() returned false for a non-queued job right after StartJob(). This should have been checked before. curJob=Meditate (Job_1401307) A=Thing_DoubleBed216411
Verse.Log:Warning(String, Boolean)
Verse.AI.Pawn_JobTracker:StartJob(Job, JobCondition, ThinkNode, Boolean, Boolean, ThinkTreeDef, Nullable`1, Boolean, Boolean)
Verse.AI.Pawn_JobTracker:CheckForJobOverride()


Archie, for what it's worth, is a Wimp, and is in pain shock; no idea if that affects anything, especially given other reports of meditation problems with two ppl in one bed?

I have no idea if this happens in larger beds.

7
Bugs / Injury that destroys part does not wake sleeping mechanoid
« on: July 27, 2020, 12:07:55 AM »
If you shoot a mechanoid and completely destroy a body part, it does not wake the mechanoid.

Example: Jojo just shot the pikeman and shot off the rear right foot.  The mechanoid continues to sleep (its log is aware Jojo hit the pikeman with a bullet).

Expected: Jojo is murdered in so many ways by robotic horrors.

8
The defoliator ship part's description includes "These kinds of weapons are sometimes scattered across farmlands or forests during land"

This doesn't make sense?

The description isn't 100% otherwise, either - they are some sort of "Agent Orange" that doesn't hurt humans?

Thanks

9
I had several wounded enemy pawns in beds, and at one point, this error showed up:
(It looks like RimWorld.JobGiver_MeditateInBed:TryGiveJob(Pawn) tried to call the royalty function)

Meditation foci are a Royalty-specific game system. If you want to use this code please check ModLister.RoyaltyInstalled before calling it.
Verse.Log:Error(String, Boolean)
Verse.Log:ErrorOnce(String, Int32, Boolean)
RimWorld.CompMeditationFocus:GetStatOffset(Pawn)
RimWorld.StatWorker_PossibleCompOffsets:GetValueUnfinalized(StatRequest, Boolean)
RimWorld.StatWorker:GetValue(StatRequest, Boolean)
RimWorld.StatWorker:GetValue(Thing, Pawn, Boolean)
RimWorld.StatExtension:GetStatValueForPawn(Thing, StatDef, Pawn, Boolean)
RimWorld.MeditationUtility:BestFocusAt(LocalTargetInfo, Pawn)
RimWorld.JobGiver_MeditateInBed:TryGiveJob(Pawn)
Verse.AI.ThinkNode_JobGiver:TryIssueJobPackage(Pawn, JobIssueParams)

10
Bugs / [new in 1.1.2647] Colonists won't put out fire
« on: May 30, 2020, 11:10:22 AM »
If a colonist is on fire-duty, and a tree right next to them is on fire, and it's a tree in the home area and its on fire, but another pawn on the other side of the map says they'll take care of it, the pawn right next to the burning tree will decide their duty is done and will stop to eat while sparks fall around them, or maybe will walk back to bed while the fire they were right next to spreads behind them, destined to destroy half the orchard.

You can't even micro-manage them by right clicking on the fire.  (and you shouldn't have to - they're right next to a tree that's an inferno!)

Putting out fire should definitely NOT be reserved like this.  (Although it was kind of funny, in a "poor life choices" kind of way)

11
Bugs / Modding request: make TexButton public, not internal
« on: May 22, 2020, 11:36:15 PM »
Verse.TexButton is an internal class.  If it were a public class, then modders could more easily match the look of the vanilla game.

Modders can get around this by keeping a static Texture2D and using Harmony (or reflection):
Code: [Select]
        static MyThingThatNeedsTexture_StaticConstructor () {
            Drop=(Texture2D)HarmonyLib.AccessTools.Field(HarmonyLib.AccessTools
                .TypeByName("Verse.TexButton"), "Drop").GetValue(null);
        }
        private static Texture2D Drop; // == TexButton.Drop
But that is not elegant and adds unnecessary clutter to mods.

Thank you for the consideration!

12
GenConstruct's CanPlaceBlueprintOver will not allow placing a terrain (e.g., wood floor) underneath a building which has no terrainAffordanceNeeded requirement (e.g., a modded marker with terrainAffordanceNeeded of null).

Instead, the player must remove the building with no terrain requirement, put down the new floor, and then replace the building with no terrain requirement, which does not make sense.

Better would be: if the new def is a TerrainDef and the old def has no requirement, skip any terrain affordance tests.

A minor bug, but annoying when it crops up!

Thanks

13
If a pawn is blind, they can still run around an unfamiliar base at full speed.  If you check their move speed, it includes:
```
Moving: x100% (100% importance)
Multiplier for Light 100%: x100%
```
The health multiplier should probably be adjusted for a pawn's sight when moving. Blind people are quite capable of moving at a decent speed IRL, but they do need to be careful about legos left out on the floor or chairs some idiot built in the middle of the sidewalk.  (This is not much of an issue at a personal workbench, as they will know where they keep their tools, etc)

The Light modifier should not apply for pawns with very minimal vision stats - they are used to moving around with minimal light, so ambient light doesn't matter as much.

I'm not blind, so I can't give a good estimate of appropriate adjustments.

14
Stories / Who needs eyes, anyway?
« on: May 09, 2020, 02:11:35 AM »
So I have a blanket rule:  If I'm fighting a child soldier and they get downed, I do what I can to capture them and if possible recruit them.  (otherwise, I rarely recruit prisoners - seems too creepy)

Okay, current game, I'm raiding a camp that's been attacking caravans in the area, and I lure the pirates into an abandoned building where I can hit them with everything at once, and I'm bringing my melee fighter around to intercept the pirate with the incendiary launcher before he can get a shot off.  I check on the poor bastard who walked into the choke point and is getting hit hard, and I pull up the Heath tab.

Both eyes torn out by the elephant.  Wow, that's harsh.  And she's just a kid.  Ouch.  I glance at the Bio - minimal skills, terrible fighter, beginner cook, but hey, at least she's both an Undergrounder AND a Night Owl?  (If blind Night Owls get penalties while inside, I am SO filing a Bug report!)  So she should at least accept the whole "darkness" thing.

Well, maybe she'll die?  Oh hey, she went down, pirates are fleeing, and Ali is in Pain Shock.  And her only bleeding wounds are the eyes.  Okay then.  Guess it's good that the reward I was getting was a bionic eye?

I love this game.

15
General Discussion / How am I supposed to get early Plasteel now??
« on: May 07, 2020, 04:16:19 AM »
I have enjoyed playing scenarios of "crash landed on a planet really far from anywhere, and there are no trade ships, etc."  How am I supposed to get plasteel without mechanoids to disassemble?

 :(   >:(

I can't dig for it with the new deep drills, because the scanner still requires advanced components - which, guess what, you also can't get without trade.  So I'm not impressed with them much.

I guess the only option is to go on long enough that I finally get some centipedes that can give plasteel?  I can still get Advanced Components form mech ships that fall, right?

I'm not liking the restricted options here; not fun.

Pages: [1] 2 3 4