Menu

Show posts

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

Show posts Menu

Messages - FrodoOf9Fingers

#1
General Discussion / Re: Pathfinding
April 11, 2020, 01:31:50 PM
Redoing the pathfinder system isn't hard, You would just need to write a new pathfinder system, and then patch the old pathfinder function to do nothing but call the new pathfinder.

I've seen the code, and did some stuff with multithreading (no fruits from this, don't ask) around it before.

As far as I can tell, diagonals take the same amount of time as the 4 cardinal directions. Easy to test with 2 pawns with the same move speed, and queueing a corner path for 1 colonist (at least, this is how I tested it). I assume that bases with diagonal paths are more efficient for this reason, even if the walls todo so take more space/ cost more (or are single square uglies)
#2
Mods / [Mod Request] Schedule improvements
July 20, 2019, 02:26:01 PM
Hey, It'd be great to be able to schedule more things.

For instance, it'd be great to have a schedule for when to eat and when to take medications, or maybe a setting to restrict it to recreation times?

Thanks
#3
Ideas / Pawn v Pawn combat
July 28, 2018, 12:53:22 AM
TL:DR More creative ways to make PvP better. My personal favorite suggestion is giving pawns increased social impact for being a war hero or getting hurt trying to protect the colony.

I haven't played in the last week due to computer failures, but I know awhile ago it was mentioned that pawn v pawn (pvp) combat was less ideal than the various traps you can use, and that it led to tower defense type of game play (although pvp was forced on you from time to time).

Reasons why we avoid pvp (especially with other alternatives):
1. Large loss potential: Pawns represent lots of investment. A couple turrets and traps are not worth the person who spent a few days building them, and a few days mining the resources to make them. Additionally, rearranging work to fill the gap is tedious.
2. Large chance of loss: Pawns in combat are often hurt. Often. Death not as much as the enemy, except when you are generally losing.
3. Effort: It takes effort to control pvp. Letting enemies run into a trap room is ez pz.
4. Social / Mood: Combat always leads to sad pawns (bloodthirsty, pain loving freaks aside). Or scarred pawns that everyone avoids.

There are other reasons, although I think they are lesser:
5. PvP takes pawns: A pawn can't be fighting and growing at the same time. Especially true if you are waiting for the enemy to come to you and they are "preparing".
6. Depending on pawns is super risky: While traps, kill boxes, and turrets have their environmental vulnerabilities, pawns have much higher downtime, from being sick, mentally broken, or across the map.

Each of these reasons can be mitigated, some thoughts on that.

1.
    a. Making pawns be able to adapt to other skills easier would help this (with large consequences to balances in other parts of the game). I think this could be accomplished by adding tiers to how passion affects skill leveling. For levels 1-5 (Significant Familiarity), make it so that every pawn gains skill points at least at the rate of minor passion. This makes losing the only pawn with -any- passion in construction not be the worst thing ever.
    b. Another option is to directly lesson the effect of death. While depression is certainly a real thing, death often helps people understand mortality better, and helps them strive to become more than what they are. Perhaps a trait for pawns that gives them a bonus when someone they are friends with dies (keep the sad, but give them a "walking with greater purpose" bonus or something). Mid combat effects could happen too, such as entering a rage or increasing heroism. Maybe pawns treat each other better as they realize what loss is like (the opposite could certainly happen!)
    c. Putting on a funeral to give a minor catharsis via social interaction would be good.

2.
    a. Armor is the defacto standard to reducing the risk of losing a pawn. However, armor seems... difficult. It would be optimal to have armor stored near the kill box (but we're buffing PvP to avoid enforcing a kill box). Otherwise your wearing it and wearing it out. Making armor equipping less of a pain would go a long way to making PvP better.
    b. I'm not sure if this is already in the game, but giving your pawns a slightly higher chance of survival when wounded would help. This could be seen as having a higher chance to survive with your friends nearby than when being treated by an enemy doctor.
    c. I personally don't think that reducing the chance of death/injury directly would be good, but it's still an option.
3.
    a. Defensive Positions is a great helper mod, something like that would be great. Though it's already in place as a mod, so yeah.
    b. Reiterating the "make armor easier" bit here. A new object that is assignable like a bed that holds armor would be great. Then, when pawns are recruited, have a pre-pended (though override able) command to go to the armor stand and equip the stuff.
4.
    a. In game heroic acts. We have art pieces named after heroes, but we could also add social impact given to warriors. Say, someone is hurt: other pawns in the colony could gain "respect" for that person. Or a pawn kills more than 1 enemy pawn and is hailed as a war hero. Should offset scars.

5. Theres no helping this >.>
6. If PvP becomes more viable, the solution to this may be to nerf the other modes of defense (best through increased AI).
#4
Breaking the rule a bit to comment on the changelog... but friendly chat for prisoners was not useless. I often have a prisoner or two that I don't want in the colony to train my wardens on until I get a prisoner I like. I don't typically kill or release prisoners, especially if they are from a non-pirate faction that share my language.

\end rule breaking

My runs are doing alright. I'm playing hardest difficulty naked brutality with a custom scenario set to tribal tech. I wish I had a way to  make a freezer as a tribal, even a fridge would be nice. I know the box cooler works for avoiding heat stroke, but some way to preserve meats would be a great bonus. Mina be salts maybe? Or a fridge  (not freezer)?

Defense in the mountains is somewhat boring, relying on a maze of spring traps. Infestations get baited into a room then burned. The hardest things I dealt with were ships and drop pods. For ships as a tribal, it would awesome to be able to call on allies before the console. A caravan to a neighboring city to ask for help to kill a ship would be nice (since I have a few days).

To live, I find myself running away rather often and abandoning my home. I typically don't make it past winter. Which is expected for the difficulty, good job.

I know difficulty has been a discussion recently, but instead of making more enemies, making them smarter would be the way to go. Now, I'm not saying rewrite the waves of enemies, but keep track of the damage a wave of enemies does, and weight the chance of that type of attack higher based on previous success. Make the storyteller a little smarter. Maybe rename the difficulty levels to hostility of the story teller levels to get peoplenty away from choosing hard because they are pro gamer. This is simular to factorio biter aggresiveness.

All I can say for now from my phone, good luck!
#5
Bugs / [1.0] Animals competing for grass stack up
June 27, 2018, 02:37:26 PM
On a upper medium sized mountain ocean river  temperate map the grass doesn't grow fast enough for animals on map. At around fall of the first year (no cold snaps), competition for food is high, leading to lots of animals trying to eat the same piece of food. They will even stack up on each other to do so. Might be intended, but I haven't seen a note about it.
#6
Enjoying a lot of the changes, though I'm still heavily reliant on mods to tailor the experience to me.

If I may suggest, melee and medicine are the only two skills that don't have a good way of training automatically. Medicine not as much, as the need for medicine occurs regular. But melee is just hard to train without direct control of the pawn, unlike shooting which scales as pawns hunt. Can you make it so that there's a small amount of melee XP given when a pawn does minning? Doesn't have to be large at all, say an eight or a quarter of the XP granted to minning.
#7
Unfinished / Re: 9thFinger's ThreadingMod
June 19, 2018, 06:55:58 PM
Well, I got it to a decent point with not that many errors, but the non-intrusive approach I was taking produced minimal results in actual speed. There's just too many parts moving on a global scale.

I still graduated though, so my interest in this has died down. The work was really rough to gain little progress due to lack of good debugging tools. I've moved on to a different hobby project too that maybe someday will be fun for others to play.
#8
I forgot... but man, if you look you will find so much :)
#9
Keep putting stuff like this in your code:

if (array.Length <= num15 + 1 || num15 < 0)
{
      Log.Message("you wut");
}

EDIT: I guess I should clarify, personality in code = good. :)
#10
Help / Re: Crafting output random item?
March 24, 2018, 08:49:39 PM
It's certainly possible, though I don't know where in the code you'll have to inject your own code(Use Harmony for this).
#11
For those wondering...

The best I can find is that Mono is hiding the loading of these dlls, which makes sense because mono has to compile the dlls in a different way than a typical windows c# compiler.
#12
In fact, I do not even see the dll's loaded by mods.
#13
I am not talking about the .dll file located at "Steam\steamapps\common\RimWorld\RimWorldWin_Data\Managed"

Instead, I am talking about where the module is. For instance, when I load the game and look at the modules loaded with process explorer (or look at a dump file in visual studio), I do not see an "Assembly_CSharp" dll or module loaded, although it is obvious that the game uses code from this dll. Does anyone know how this works? Is there a separate process that runs code from this dll (doubtful)?
#14
Quote from: Dutchedark on March 19, 2018, 07:58:24 AM
Have you tried using this?

https://github.com/pardeike/Harmony

I currently use this, yes. This does not produce debug information, it only allows better code injection...

What I need are the symbol files for the Rimworld.exe, so when I look at the process I can see the full stack trace of each thread. Currently, I have the symbols of my own code, Unity's code, and Mono's code. But the error I'm debugging is within Rimworld's code (because of interaction with my code), and I cannot tell the problem function. If I knew what function in the Rimworld code base was causing issues, this would be easy to fix.
#15
Unfinished / Re: 9thFinger's ThreadingMod
March 16, 2018, 03:14:24 AM
Checking in, things are progressing. Knocking bugs out one at a time, so fast and some very, very slow (curent bug has taken about 10 hours so far).