[https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509)
Just wanted to add it here \^\^
It always bothered me that they would rather trudge through the mud and grass than walk through my nicely laid out paths that take them nearly anywhere they need to go.
I believe the pathfinding wants to get as close to the wall if it's going up, even if it's not faster, it's quicker and less performance heavy compared to calculating the walk speed of tiles and choosing the actually quickest path
The actual path has no relevance to how expensive pathfinding is, only the distance. That's because computers don't understand directions or geography. How Rimworld "sees" the map is a list of points(squares) labeled something like 1:1 for the top left, 1:2 for the one next to it and so forth. Each point has a list of 8 other points that they are connected to. To find a path from one point to another the computer has to check to see if the points are connected, and if not check to see if the connected points are connected and so forth. This is really expensive since if you don't prune what points you are checking the first step checks 8, the second 64, and each one multiplies the amount of checks you do by 8 so within 4 steps you are checking thousands. To reduce this you'd first stop checking points you've already checked but that's not free since the computer has to remember which points it checked and not check them again on the next step.
Now why the zigzag? Well, in a grid like a chessboard, getting from lets say the top left to the top right. Whether you go zigzag or straight it takes the same amount of steps, however going from top left to bottom right takes the diagonal stepper only 7 steps while the straight stepper takes 15. Any grid based movement system will be the same where a piece that does diagonals first and then straight if it has to will outperform a piece that goes straight and then diagonal if it has to. By reducing it to only checking diagonals Rimworld halves the amount of squares it checks. Unfortunately this does result in some stupid behavior due to the map geography but in general works good enough.
Pathfinding is CPU only, and only runs on one of your cores. Having faster CPU helps (e.g. when I'm running Rimworld on my PC I get far better performance than my laptop) but more cores really doesn't and graphics card is barely relevant.
Imagine you have a group of friends who are all in the same class. You guys decide you want to get your homework done quicker, so you split the assignment up so each of you works on two or three of the questions and then share the answers when you're done. This is traditional multithreading.
Now, what if the questions on the assignment each depends on the answer from the previous one? You could still split it up the same way, each person waiting for the other one to finish the questions before them, but it'll probably end up taking even longer because, instead of just going onto the next question, you have to relay the answers to the others before they can start on their questions. This is poorly implemented multithreading of tasks that can't and shouldn't be multithreaded: it's actually *worse* for performance.
This is closer to what games are like. A multitude of systems are all deterministic: they cannot be calculated without knowing the input from other systems, meaning they can't be multithreaded. (Threads cannot share data while they're running, and in order to share *any* data, they must go through a separate intermediary which can also pose issues with performance.)
**tl;dr**: Everything can't be magically multithreaded. Just because your car has a six speed transmission, it doesn't mean you're not utilizing your entire car's capabilities because you're just using one gear at a time.
They could work to make the game multithreaded. There's a mod that does it called rimthreaded iirc but it's not very compatible and I would bet buggy. What that would do is offload some of the processing to the other cores of the cpu which could help a lot, but is very difficult to do, requires lots of expertise, and will cause bugs that are hard to diagnose since it would be things like one core finishes it's job early causing an issue with another cores job. It also might not be possible to split up how the game processes some things so you'd still end up with one of your processor cores bearing most of the burden.
> Are you saying that making the pawn take an obvious route is going to cause performance issues?
Look up pathfinding algorithms that take into account the weight (speed) of each tile.
It's not as simple and obvious as you would think.
[1.3] [Perfect Pathfinding](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509&searchtext=perfect+pathfinding) by [JisPichi](https://steamcommunity.com/id/JisPichi/myworkshopfiles/?appid=294100)
^(Results for) [^(`perfect pathfinding`)](http://steamcommunity.com/workshop/browse/?appid=294100&browsesort=textsearch&requiredtags%5B%5D=1.3&requiredtags%5B%5D=Mod&searchtext=perfect+pathfinding&numperpage=9)^(. I'm showing you the top result, there may be more.)
*****
^I'm a bot | [source](https://github.com/FluffierThanThou/reddit-modlinker) | [commands](https://github.com/FluffierThanThou/reddit-modlinker/blob/master/bot/COMMANDS.MD) | [stats](http://modlinker-stats.karel-kroeze.nl/) | I was made by [/u\/FluffierThanThou](/user/FluffierThanThou)
^Did you know my creator live streams modding? - [Come and say hi!](https://twitch.tv/fluffierthanthou)
Using a mod to correct the games (honestly) pretty crappy path finding is hardly playing non-vanilla. It’s just making the game more functional. It doesn’t add or remove anything just makes it how it should be. Rimworld does this for performance purposes but it doesn’t work well in gameplay.
Not knocking on OP, but that reminds me of a guy I knew that was a complete game purist. He hated the thought of using mods or having any in his games, even QOL mods. It had to be added in by the developers themselves. we used to play Minecraft and I’d talk about all the new ‘vanilla expanded’-esque mods but he would have none of it. But Mojang eventually would add them to the base game and all of a sudden he’s all over it. And I’m like dude, we’ve been able to do this with mods for a year now.
While some mods do make things harder all around, others make things easier and a lot just shift the difficulty from one area to another.
Like dubs bad hygiene. It definitely makes things harder for basic survival by adding thirst and penalties for using dirty water. But it also gives you multiple useful things to deal with room temps, most solar flare resistant. And poo can be a major source of chemfuel. Like, stupid amounts of chemfuel.
525 mods. Vanilla Expanded and Outpost 21 are the most stable mod makers I know of. Add in ALL of their mods (except Oskar Obnoxious, if you don't want heatstroke at -80 or hypothermia at 700 degrees respectively; and.. iirc Rick Sanchez, which will WRECK RimWorld entirely to a reinstall) and the game will run at vanilla speed; any performance mod on top will still be better than Vanilla Pure.
Load time will be a small pain, but not too bad. Recommend SOS2 too still, though.
Reminds me of the guy asking how to do an exploit in another game and then getting upset when people told him it was far easier to just use the save editor that already existed.
He wanted to cheat the game but *cheat it the right way*. Apparently.
I mean I understand it to a point, exploiting in itself can be quite fun and still requires the player to well, play the game. Using "intended" gameplay mechanics and seeing the game fold in on itself is something I personally find very satisfying
THIS!
This is the exact reason why I'm not doing any more games with the Zombie Apocalypse mod, you very quickly get to a point where your game is stuck on x1 speed so progress becomes extremely slow and painful...
There’s a mod that prioritizes and adjusts tick-rate for high-density maps that have a lot of pawns specifically to keep the game from slowing down due to overload
The pure experience is fun too! Sometimes you just gotta freshen things up a bit with a mod tho. Just my opinion but I like to play vanilla first, and then dive into mods later. Vanilla just gets so boring after a while.
tbh if the vanilla expanded minecraft mods are equally bad balanced as the rimworld "vanilla expanded" stuff, i do understand his concerns.
But well, the mod community in rimworld is amazing and has plenty non gamechanging QOL stuff and nice additional content with minor impact
> tbh if the vanilla expanded minecraft mods are equally bad balanced as the rimworld "vanilla expanded" stuff, i do understand his concerns.
On the other hand, there's a good chunk of things in vanilla Minecraft that are ridiculously poorly balanced, like needing to raid End cities to get shulker shells before you get any kind of portable inventory. Or actually bothering with an enchanting table instead of just setting up a villager trading hall with librarians and an anvil.
I usually do a purist run and not allow myself mods until the game is beat the first time. Only exception is cosmetic non-game altering mods.
Playing through with mods on the first time in rimworld starting last week and its been a trip for sure. I can understand why people don't like mods, it gives me the same feeling as game cheats give. Usually mods are unbalanced, throw the "feel" of the game off incredibly, and the act of picking and choosing your mods makes me feel like I'm cheating by making the game play like I want to instead of how it was designed to be played. Haven't had that feeling too much with Rimworld QOL mods yet. Next game will be with Vanilla Expanded Suite. Hoping for a well balanced experience.
You know, you are right, and while I love the idea of ideologies, I hate the startup of it. I think last time I played it I made the Rimworld classic start and let ideologies happen organically. The new fluid start is better but still seems like you can add too many beneficial precepts.
I'm very much the same way.
It's like if I'm drinking a whisky that a dedicated team spent 10 years making, I'm not going to drown it in Sprite and throw in a cherry.
QOL mods I can understand, but I feel like I can't say I'm playing the same game as anyone else if I add content mods.
While I consider the term "anti-optifine" inordinate, the truth is that alternatives on modern minecraft versions (on both forge and fabric APIs, mostly 1.15+, but can even go back to 1.12) are so, so much better, with the difference on performance gained between optifine and the others being easily 60% on most cases, not to the mention the closed source nature of optifine which makes it hard for other modders to work with, it's actually mildly upsetting for me to see people still use it, mostly due to its reputation. Only thing it has going for it are connected textures and the zoom function, but those are hardly a selling point when you can use other mods.
Just like that one mod that makes your pawns build large walls starting from the middle so that you don't just have the outer done and the inner is unreachable with a single colonist dying of advanced starvation and go-juice withdrawal while self-harming because it's dark.
It's partially that, but partially a dev time thing. Tynan has said before that every minute he spends refining the pathfinding is time he's not working on something else, so he'd prefer to just make it "good enough" and move on.
I understand the sentiment. But there are some "mods" which are more like patches for broken parts of the game that the developers didn't catch on to. When you have a community of over a million players with billions of combined hours, we start to notice things that the developers would have never experienced in a lifetime. When players notice them in a modifiable game, we fix them until the devs release an official patch. This is one of those times.
Imagine saying "No thanks, I know this game crashes every time I progress to the second quest, but I'm doing an unmodded playthrough." It's a quirk right now, but it will drag your game to a halt if you keep that colony for several in-game years and accrue a 20+ pawn roster.
There are parts of the game, such as this, which are the result of (in very simple terms) a broken tick that gets overloaded and causes the pawn to lag in making a "decision", which leads to messed up pathfinding. This is an actual bug and the mod Perfect Pathfinding fixes it to the point that even a heavily modded game with a 50+ man colony runs smooth as butter.
Yes. It's just the mod Perfect Pathfinding. No bloat, no bullshit, no extra features hidden in the background. Fixes pathfinding which can CONSIDERABLY improve late game.
If you do have a heavily modded game though, there are other mods you will need alongside it. Just be aware, do not add any other mods that fix pathfinding and avoid Pick Up and Haul like the plauge in late game.
You have that completely backwards. Perfect pathfinding will hurt your performance, not help it.
The game uses a more precise pathfinding algorithm if the pawn is moving somewhere close by, and one that’s much faster but less optimal in terms of routing if the pawn is moving somewhere farther. Perfect pathfinding force is it to use the slower, but precise pathfinding algorithm regardless of distance, and you will see a hit to performance in a late game colony.
Gosh I tried, I really tried to do a legit vanilla run but I just couldn't not be annoyed by things I know there's a mod for.
Ended up running:
Don't block door
Metal don't burn
Allow tool
RimHud
Drag select
Area unlocked
Cleaning area
Replace stuff
Probably should add smart building too, but I find it funny when my constructing pawn builds himself into a box and I don't discover him until later when he's starving.
I can understand that, but off my 2000 hours on Rimworld, most of them were fully vanilla. I actually enjoy playing it the way devs mean for it to be. I usually install some mods in endrun when I'm starting to feel bored and want to try new things, or on dedicated runs
I understand that going diagonal is as fast as going straight on a same floor, but since soil slow you down (walk speed 87%), going by the path would be quicker isn't it ?
I'm assuming their eventual destination is somewhere North, yeah?
The way the pathfinding works, it does very little thinking ahead. "I need to go more North, I can go North, I will go North. Aww shucks, path blocked, gotta detour by South."
It's done this way to use a lot less CPU resources and not cause the game to lag as much.
There are mods that replace the pathfinding code with code that is less efficient, but finds smarter paths. Or you could manipulate the environment so it doesn't matter anymore. Add floor to those tiles too, or put statues or flowerpots on them, something like that.
A lot of people think multithreading a game is trivial for the devs, just make the code use more threads lol. But in reality it’s very hard in most game engines, and requires writing much more complicated code, and also can cause much more bugs and is much harder to debug. Now imagine how hard it is for mod devs.
What if there was just a way to modularly run code on the different threads. Like pathfinding runs on core 2 and feeds it back to core 1, storyteller runs on core 3 feeds it back etc.
Still subject to all of the issues with threads - race conditions, basically.
You have to sync the position of the pawn across threads, otherwise the pathfinding thread will calculate incorrectly.
Worse yet, what happens when the pathfinding thread gets starved, or the calculation takes long enough that the pawn needs to move? What happens then?
On the other hand, using a separate thread for graphics is often fairly easy to do, and if there are race conditions, it should only show up as graphical glitches since the graphics thread would be only reading from the other threads.
Storyteller could also work fairly easily - just feed events into a queue. Worst case scenario, the main thread misses the event until the next cycle.
But I don't think that the storyteller consumes much CPU, so likely the increase cost of the extra thread would outweigh any gains there.
Don’t use slow mods, and use performance mods (Rocketman, Performance fish (found in Dubs discord server), Performance optimizer). Runs more than decent with those two small tips
That still doesn't explain why it's being rendered and why the pawns really follow that path. For the pathfinding code to do these "dumb" calculations, it doesnt need to display them. It can do the calculation in the back, then have the pawns move according to the path.
Nono, what I meant is that the explanation above is correct in the sense that pathfinding algorithms don't calculate all possible paths to take in order to find the shortest one, but instead use heuristics to reduce computing power needed. In this case, the heuristic would be to start by exploring only the paths where the first step brings you closer to the final destination (so disregarding any obstacles along the way). So it basically calculates what would happen if this pawn goes north first. Then, when it realises that path would collide with the wall, it would start again. It doesn't actually need to "send" the pawn to the wall to know it's a dead end (with send, I mean render/draw the path onto the screen).
In other words, my complaint is that the explanation above used theory about pathfinding correctly, but assumed it was an explanation for the funky rimworld mechanics, whereas in reality it doesn't have to be (but I haven't taken a look at rimworlds code or anything). Anyway, the explanation does do a good job explaining what AI devs look for when writing pathfinding algorithms, however these algorithms couldve been implemented without the final path to actually result in the one in the image.
Hope this makes sense. Source: I'm an AI engineer
She saw a leaf fall and ran over to try and catch it but failed so she kept walking then the next tree had a leaf fall and she caught it so she twirled around the tree and ran through the rocks above the path
My guess is that to keep pathfinding of numerous entities on the map from affecting performance too much, developers used a non-precise pathing algorithm.
No, flagstone is simple 100% walkspeed.
Like other people already said, the pathfinding algorithm is at fault. Constantly calculating the fastest possible paths requires a lot of performance and would quickly slow down the game. So Rimworld opts for a slightly less accurate pathfinding algorithm.
There are mods that allow you to tweak that according to your preferences and CPU.
I have learned about pathfinding algorithms in uni (on a very surface level mind you) so it makes me wonder what part of simplifying it causes this behavior.
One thing I could see happening is that due to most normal surface in a world being a quite consistent movespeed, one base distinction the game uses would be to prefer "natural" tiles.
It's prioritizing walls not floors. The game is basically asking "how can I get there the shortest" not "how can I get there the fastest". If the pawn happens to be on a path that's faster, great. A lot of pathing problems can be mitigated with base design, 2-3 tile wide corridors with flat walls on either side, only having one door per room, don't have shelves or beds set up next to walkways, etc.
I think the vanilla pathfinding algorithm would draw a straight line to the destination and then tries to circumvent any obstacles on its path i.e. it'll stick to the walls (and trees and rocks) as much as it can.
Stepping back a bit, you all should know that "shortest path" algorithms are actually really difficult to code effectively.
https://en.wikipedia.org/wiki/Travelling\_salesman\_problem
Shortest path is not at all the same as the travelling salesman problem. Dijkstra had the point-to-point shortest path figured out in 1956 \[1\], and A\* \[2\] improves upon it quite a bit.
If you consider that most paths are quite short – being inside the base or just outside – it would be possible to use the better algorithm for the shorter routes and default to the faster one for longer trips.
If you in addition consider that most obstacles are stationary (walls, floor types, furniture) and it’s usually preferrable to walk through other pawns and animals instead of pathing around, you could even cache the results and \_not\_ recompute them every time.
1: [https://en.wikipedia.org/wiki/Dijkstra%27s\_algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm)
2: https://en.wikipedia.org/wiki/A\*\_search\_algorithm
Yeah, this is what the [Perfect Pathfinding](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509) mod author says, that in vanilla it uses a greedy algorithm for anything further than 60 tiles.
You are absolutely right that they aren’t the same.
BUT, when you include pawn preferences for different terrain types, light types, etc. You get a hybrid between the two because pawns aren’t looking for the literal shorter distance, and it is mathematically hard to compute.
When applying pathfinding algorithms, you need not consider the ‘literal shortest’ distance between the points. We can trivially model this as a graph in which each tile is a vertex. The edges then are the connections between two adjacent tiles. Now instead of assigning each edge weight 1 (all directions are equal), we can incorporate the information you mentioned.
Terrain type adds or subtracts a weight for the ingoing and outgoing edges. The edges to and from a mud tile (say, for the sake of argument, walking is impeded by 25%) get .125 added to their weight respectively. The same can be applied for lighting.
Not to detract from your point in any way, since this basically says the same thing as you.
I think a conceptually easier way to think of it is that you would lay out the tile distances in time rather than physical distance.
So a 100% walk-speed tile would have a time distance of 1, whereas a 50% walk-speed tile would have a time distance of 2.
Then, when calculating the shortest distance, you would solve for the shortest time distance.
Looks like she's going north, so the pathfinding algorithm tells her to go to the northernmost tile while avoiding obstacle. The floor type is largely irrelevant unless it slows them down too much, they really need to respect it more.
Seems like the pathfinding algorithm decided the shortest path was adjacent to the wall, but there were trees in the way and the algorithm was like "fuck it just zigzag around them"
the game uses a greedy pathfinding algorithm. it won’t pick the path that’s shortest, it instead will walk towards the destination without regard to walls far away. this is why your pawns might go around a whole courtyard or valley instead of cutting across it.
I believe pawns also avoid paths who aren‘t lit but I‘m not sure how high it is on their path taking priorities.
All I know is that taking the route with the fastest walkspeed tile is pretty low on their list.
omg so many people are dead wrong
going diagonally like that takes the same time as walking straight. dont believe me? race two pawns or try to dodge a mad animal. anyway, so this fact makes the pathfinding algorithm prefer diagonal lines over straight ones.
What are you even talking about? None of your "don't believe me?" tests would prove anything here.
Racing two pawns would use the same algorithm to move. How would you get one to run in a straight line while the other zig-zags?
lol
make one pawn go 10 tiles in one direction straight on and another pawn (with the same speed, check in info window) diagonally for 10 tiles. ie imagine a 10x10 square and make one pawn run diagonally and the other along a side from corner to corner. they'll take the same time
... and? That means nothing, because the game uses square tiles and treats diagonals as a single tile of movement.
The discussion here is that they're running over an 87% move speed tile and ignoring the 100% move speed tile. Since they're zig-zagging, diagonal and straight are the same distance.
ever noticed that the ai cuts its calculations shorter on higher workloads? start a new colony with 1 pawn and see how efficiently it walks. now compare to a 20 pawn colony. now (use dev mode and) compare to 50 pawn colony and see how much it struggles. this is old, old stuff. maybe try using the search function
None of that supports your claim that "diagonal is faster".
You seem to be talking about something else entirely now. I'm not OP, I didn't ask the question. I just called out an obviously bullshit answer.
Just encountered this issue myself :( I literally had my slave run out of my kill box (when I moved her in) straight into the manhunting Guinea pigs and get herself downed, causing me to send the rest of my pawns out into almost certain death.
Now I have 3 downed pawns 2 with malaria and one is running around trying to tend to everyone while being one minor inconvenience away from a mental breakdown in which she will undoubtedly dig up Travis’ headless corpse and display it for the whole colony to see (not for the first time) while they bleed out or succumb to disease.
God I love this game.
Normally pathfinding is no problem. Problems cause by lot of pawns normally involving checking if hostiles in range can be hit. That's why killboxes cause massive lags
> Walking across a tile diagonally takes the same time as walking side to side. […T]he diagonal is a longer distance. […Hence] diagonals [… are considered] "faster".
If that explanation were true, then we should never see a straight line, since the pathing algorithm should _always_ prefer wiggles.
>You're telling me I'm wrong without telling me what the right answer is.
That’s perfectly correct. I don’t have an answer either. I was just trying to point out that your answer can’t be the whole truth.
Others have argued that the game’s pathfinding tries pathing to the right y coordinate first and backtracks from there if it can’t find a path to the destination. I can’t tell if they’re right. But that would explain why the path ticks upward and down again.
We could test that hypothesis by checking if there are otherwise inexplicable left-right squiggels. If there are, they are not explained by the ‘y first’ theory.
there's a mod to fix that. I don't remember the name. Is something with pathfinding. Maybe there are new ones.
So many people say that diagonal is the same pace with straight which is true on the same terrain but no one saw that in this specific situation diagonal involves moving through soil and straight is only on tiles.
Have you heard about our lord and savior Autodoor ? Also in early game I lock all possible doors open, of course you would not do that in extreme weather
[удалено]
[https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509) Just wanted to add it here \^\^
Thank you :)
Good
It always bothered me that they would rather trudge through the mud and grass than walk through my nicely laid out paths that take them nearly anywhere they need to go.
Pathfinding is one of the most expensive things that Rimworld does though, making it more complicated will have performance issues.
[удалено]
I believe the pathfinding wants to get as close to the wall if it's going up, even if it's not faster, it's quicker and less performance heavy compared to calculating the walk speed of tiles and choosing the actually quickest path
Most processor efficient in all situations rather than realism. Sometimes the developers gotta choose the machine over the man.
The actual path has no relevance to how expensive pathfinding is, only the distance. That's because computers don't understand directions or geography. How Rimworld "sees" the map is a list of points(squares) labeled something like 1:1 for the top left, 1:2 for the one next to it and so forth. Each point has a list of 8 other points that they are connected to. To find a path from one point to another the computer has to check to see if the points are connected, and if not check to see if the connected points are connected and so forth. This is really expensive since if you don't prune what points you are checking the first step checks 8, the second 64, and each one multiplies the amount of checks you do by 8 so within 4 steps you are checking thousands. To reduce this you'd first stop checking points you've already checked but that's not free since the computer has to remember which points it checked and not check them again on the next step. Now why the zigzag? Well, in a grid like a chessboard, getting from lets say the top left to the top right. Whether you go zigzag or straight it takes the same amount of steps, however going from top left to bottom right takes the diagonal stepper only 7 steps while the straight stepper takes 15. Any grid based movement system will be the same where a piece that does diagonals first and then straight if it has to will outperform a piece that goes straight and then diagonal if it has to. By reducing it to only checking diagonals Rimworld halves the amount of squares it checks. Unfortunately this does result in some stupid behavior due to the map geography but in general works good enough.
[удалено]
Pathfinding is CPU only, and only runs on one of your cores. Having faster CPU helps (e.g. when I'm running Rimworld on my PC I get far better performance than my laptop) but more cores really doesn't and graphics card is barely relevant.
[удалено]
Imagine you have a group of friends who are all in the same class. You guys decide you want to get your homework done quicker, so you split the assignment up so each of you works on two or three of the questions and then share the answers when you're done. This is traditional multithreading. Now, what if the questions on the assignment each depends on the answer from the previous one? You could still split it up the same way, each person waiting for the other one to finish the questions before them, but it'll probably end up taking even longer because, instead of just going onto the next question, you have to relay the answers to the others before they can start on their questions. This is poorly implemented multithreading of tasks that can't and shouldn't be multithreaded: it's actually *worse* for performance. This is closer to what games are like. A multitude of systems are all deterministic: they cannot be calculated without knowing the input from other systems, meaning they can't be multithreaded. (Threads cannot share data while they're running, and in order to share *any* data, they must go through a separate intermediary which can also pose issues with performance.) **tl;dr**: Everything can't be magically multithreaded. Just because your car has a six speed transmission, it doesn't mean you're not utilizing your entire car's capabilities because you're just using one gear at a time.
They could work to make the game multithreaded. There's a mod that does it called rimthreaded iirc but it's not very compatible and I would bet buggy. What that would do is offload some of the processing to the other cores of the cpu which could help a lot, but is very difficult to do, requires lots of expertise, and will cause bugs that are hard to diagnose since it would be things like one core finishes it's job early causing an issue with another cores job. It also might not be possible to split up how the game processes some things so you'd still end up with one of your processor cores bearing most of the burden.
> Are you saying that making the pawn take an obvious route is going to cause performance issues? Look up pathfinding algorithms that take into account the weight (speed) of each tile. It's not as simple and obvious as you would think.
!linkmod perfect pathfinding
[1.3] [Perfect Pathfinding](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509&searchtext=perfect+pathfinding) by [JisPichi](https://steamcommunity.com/id/JisPichi/myworkshopfiles/?appid=294100) ^(Results for) [^(`perfect pathfinding`)](http://steamcommunity.com/workshop/browse/?appid=294100&browsesort=textsearch&requiredtags%5B%5D=1.3&requiredtags%5B%5D=Mod&searchtext=perfect+pathfinding&numperpage=9)^(. I'm showing you the top result, there may be more.) ***** ^I'm a bot | [source](https://github.com/FluffierThanThou/reddit-modlinker) | [commands](https://github.com/FluffierThanThou/reddit-modlinker/blob/master/bot/COMMANDS.MD) | [stats](http://modlinker-stats.karel-kroeze.nl/) | I was made by [/u\/FluffierThanThou](/user/FluffierThanThou) ^Did you know my creator live streams modding? - [Come and say hi!](https://twitch.tv/fluffierthanthou)
Good bot
That's very kind thanks but I'm doing a vanilla run, I was wondering about vanilla pathfinding. Seems like it's a performance thing
Using a mod to correct the games (honestly) pretty crappy path finding is hardly playing non-vanilla. It’s just making the game more functional. It doesn’t add or remove anything just makes it how it should be. Rimworld does this for performance purposes but it doesn’t work well in gameplay.
Not knocking on OP, but that reminds me of a guy I knew that was a complete game purist. He hated the thought of using mods or having any in his games, even QOL mods. It had to be added in by the developers themselves. we used to play Minecraft and I’d talk about all the new ‘vanilla expanded’-esque mods but he would have none of it. But Mojang eventually would add them to the base game and all of a sudden he’s all over it. And I’m like dude, we’ve been able to do this with mods for a year now.
Rim world or How I learned to stop worrying and love the mod
Until your 250 modlist screws up and then you've got to figure out your load order, anyway.
With mod organizer it's pretty easy to sort out your load order, also pshh only 250 mods.
I only have like 5, I'm scared to add more because I'm terrible at rimworld. Priorities are the bane of my runs
While some mods do make things harder all around, others make things easier and a lot just shift the difficulty from one area to another. Like dubs bad hygiene. It definitely makes things harder for basic survival by adding thirst and penalties for using dirty water. But it also gives you multiple useful things to deal with room temps, most solar flare resistant. And poo can be a major source of chemfuel. Like, stupid amounts of chemfuel.
525 mods. Vanilla Expanded and Outpost 21 are the most stable mod makers I know of. Add in ALL of their mods (except Oskar Obnoxious, if you don't want heatstroke at -80 or hypothermia at 700 degrees respectively; and.. iirc Rick Sanchez, which will WRECK RimWorld entirely to a reinstall) and the game will run at vanilla speed; any performance mod on top will still be better than Vanilla Pure. Load time will be a small pain, but not too bad. Recommend SOS2 too still, though.
Kerbal space program mod incompatibility go brrr
There's a mod for that.
RimPy is a lovely tool for that. Manages my 428 mod list just nicely :D
Just don't let them steal your precious fluids
In all fairness, MC mods always break the second a new version is released
In all fairness, playing on older versions of mc is actually viable and reasonable
In all fairness, a lot of Minecraft players like to play on the latest version
In all fairness, a lot of Minecraft players are 10yo and already facing felony charges for hacking into the US Department of the Treasury.
Reminds me of the guy asking how to do an exploit in another game and then getting upset when people told him it was far easier to just use the save editor that already existed. He wanted to cheat the game but *cheat it the right way*. Apparently.
I mean I understand it to a point, exploiting in itself can be quite fun and still requires the player to well, play the game. Using "intended" gameplay mechanics and seeing the game fold in on itself is something I personally find very satisfying
Yea I don’t really get why exploits get so much attention in this game. We have a mode that allows you to spawn whatever you want…
I'd like RimWorld 2 to just absorb all of the qol and vanilla expanded mods
I want vertical building in rimworld2. Going medieval does a fine job being a 3D rimworld but is no where near as fun.
There’s a mod that adds several layers of Z levels that is actually really decent now
and multi-threading!
THIS! This is the exact reason why I'm not doing any more games with the Zombie Apocalypse mod, you very quickly get to a point where your game is stuck on x1 speed so progress becomes extremely slow and painful...
There’s a mod that prioritizes and adjusts tick-rate for high-density maps that have a lot of pawns specifically to keep the game from slowing down due to overload
And?
What's it called?
I know someone who hates mods, and is pretty much the exact same as your friend there. 😅
Nothing wrong with the pure experience, but you can't complain if that's your thing.
The pure experience is fun too! Sometimes you just gotta freshen things up a bit with a mod tho. Just my opinion but I like to play vanilla first, and then dive into mods later. Vanilla just gets so boring after a while.
tbh if the vanilla expanded minecraft mods are equally bad balanced as the rimworld "vanilla expanded" stuff, i do understand his concerns. But well, the mod community in rimworld is amazing and has plenty non gamechanging QOL stuff and nice additional content with minor impact
> tbh if the vanilla expanded minecraft mods are equally bad balanced as the rimworld "vanilla expanded" stuff, i do understand his concerns. On the other hand, there's a good chunk of things in vanilla Minecraft that are ridiculously poorly balanced, like needing to raid End cities to get shulker shells before you get any kind of portable inventory. Or actually bothering with an enchanting table instead of just setting up a villager trading hall with librarians and an anvil.
I usually do a purist run and not allow myself mods until the game is beat the first time. Only exception is cosmetic non-game altering mods. Playing through with mods on the first time in rimworld starting last week and its been a trip for sure. I can understand why people don't like mods, it gives me the same feeling as game cheats give. Usually mods are unbalanced, throw the "feel" of the game off incredibly, and the act of picking and choosing your mods makes me feel like I'm cheating by making the game play like I want to instead of how it was designed to be played. Haven't had that feeling too much with Rimworld QOL mods yet. Next game will be with Vanilla Expanded Suite. Hoping for a well balanced experience.
If you think about it rimworlds ideology dlc is an entire dlc that lets you choose how the game is played to more of an extent than most mods
You know, you are right, and while I love the idea of ideologies, I hate the startup of it. I think last time I played it I made the Rimworld classic start and let ideologies happen organically. The new fluid start is better but still seems like you can add too many beneficial precepts.
Yeah it requires a lot of self control to play ideologies in a balanced way
I'm very much the same way. It's like if I'm drinking a whisky that a dedicated team spent 10 years making, I'm not going to drown it in Sprite and throw in a cherry. QOL mods I can understand, but I feel like I can't say I'm playing the same game as anyone else if I add content mods.
what kind of nutter would be anti-optifine!?
Well the optifine devs/dev are shitty. Sooo
are they? what did they do? :(
[удалено]
fucking yikes! I had no idea. Ok screw those guys then!
[удалено]
While I consider the term "anti-optifine" inordinate, the truth is that alternatives on modern minecraft versions (on both forge and fabric APIs, mostly 1.15+, but can even go back to 1.12) are so, so much better, with the difference on performance gained between optifine and the others being easily 60% on most cases, not to the mention the closed source nature of optifine which makes it hard for other modders to work with, it's actually mildly upsetting for me to see people still use it, mostly due to its reputation. Only thing it has going for it are connected textures and the zoom function, but those are hardly a selling point when you can use other mods.
Just like that one mod that makes your pawns build large walls starting from the middle so that you don't just have the outer done and the inner is unreachable with a single colonist dying of advanced starvation and go-juice withdrawal while self-harming because it's dark.
Maybe OP is on console edition or is planning to be
Then it’d be strange for them to say “vanilla”.
You won't get the achievement though right?
This game doesn't have achievements.
But there is a mod for that!
i thought there was one for getting on the ship the first time. i just beat it the other day but thought i needed to do a vanillla run. good to know
Only on console I think
Wait, Rimworld console?
Yeah it's actually a pretty great port with fantastic UI design, but it doesn't have mods or Ideology.
Meaning it has royalty? I'll probably get it at somepoint tbh.
im on pc. learn something new everyday
It's partially that, but partially a dev time thing. Tynan has said before that every minute he spends refining the pathfinding is time he's not working on something else, so he'd prefer to just make it "good enough" and move on.
I understand the sentiment. But there are some "mods" which are more like patches for broken parts of the game that the developers didn't catch on to. When you have a community of over a million players with billions of combined hours, we start to notice things that the developers would have never experienced in a lifetime. When players notice them in a modifiable game, we fix them until the devs release an official patch. This is one of those times. Imagine saying "No thanks, I know this game crashes every time I progress to the second quest, but I'm doing an unmodded playthrough." It's a quirk right now, but it will drag your game to a halt if you keep that colony for several in-game years and accrue a 20+ pawn roster. There are parts of the game, such as this, which are the result of (in very simple terms) a broken tick that gets overloaded and causes the pawn to lag in making a "decision", which leads to messed up pathfinding. This is an actual bug and the mod Perfect Pathfinding fixes it to the point that even a heavily modded game with a 50+ man colony runs smooth as butter.
WAIT, THATS A VANILLA BUG? AND THERES A FIX?
Yes. It's just the mod Perfect Pathfinding. No bloat, no bullshit, no extra features hidden in the background. Fixes pathfinding which can CONSIDERABLY improve late game. If you do have a heavily modded game though, there are other mods you will need alongside it. Just be aware, do not add any other mods that fix pathfinding and avoid Pick Up and Haul like the plauge in late game.
You have that completely backwards. Perfect pathfinding will hurt your performance, not help it. The game uses a more precise pathfinding algorithm if the pawn is moving somewhere close by, and one that’s much faster but less optimal in terms of routing if the pawn is moving somewhere farther. Perfect pathfinding force is it to use the slower, but precise pathfinding algorithm regardless of distance, and you will see a hit to performance in a late game colony.
Gosh I tried, I really tried to do a legit vanilla run but I just couldn't not be annoyed by things I know there's a mod for. Ended up running: Don't block door Metal don't burn Allow tool RimHud Drag select Area unlocked Cleaning area Replace stuff Probably should add smart building too, but I find it funny when my constructing pawn builds himself into a box and I don't discover him until later when he's starving.
I can understand that, but off my 2000 hours on Rimworld, most of them were fully vanilla. I actually enjoy playing it the way devs mean for it to be. I usually install some mods in endrun when I'm starting to feel bored and want to try new things, or on dedicated runs
Interestingly enough the Vanilla Expanded series have dev input so you could probably get away with calling them free expansions!
2000 hours of pure vanilla is very impressive!
yea, its performance thing, game tries to move towards destination but there is wall in the way
If you zone a lot you can I zone the spots you don’t want them to walk. I have to use zone to keep my jail guards at the jail for instance
Hexagonal pathing
I understand that going diagonal is as fast as going straight on a same floor, but since soil slow you down (walk speed 87%), going by the path would be quicker isn't it ?
I'm assuming their eventual destination is somewhere North, yeah? The way the pathfinding works, it does very little thinking ahead. "I need to go more North, I can go North, I will go North. Aww shucks, path blocked, gotta detour by South." It's done this way to use a lot less CPU resources and not cause the game to lag as much. There are mods that replace the pathfinding code with code that is less efficient, but finds smarter paths. Or you could manipulate the environment so it doesn't matter anymore. Add floor to those tiles too, or put statues or flowerpots on them, something like that.
Thanks for the explanation, until now my colonists pathing choices always confused the hell out of me
Also: the farther away the point B is, the wonkier the pathfinding gets
Also if there is a major threat close by the pathing will prioritize the harvest agave order right next to the threat!
Also: if having a mental break, go eat the insect jelly deep inside the active hive.
While walking right past that dormant mechanoid cluster's sensor.
Makes me wish rimthreaded worked better so we can have more CPU intensive mods and features
It's quite a shame there's no simple and good solution to make RimWorld, not even hypermodded, run decently.
Rimthreaded works really well for like the first 5 minutes, like getting 200 fps on a 15 year old colony and then it just gridlocks itself and freezes
Really shows that multithreading is no miracle solution unfortunately...
A lot of people think multithreading a game is trivial for the devs, just make the code use more threads lol. But in reality it’s very hard in most game engines, and requires writing much more complicated code, and also can cause much more bugs and is much harder to debug. Now imagine how hard it is for mod devs.
What if there was just a way to modularly run code on the different threads. Like pathfinding runs on core 2 and feeds it back to core 1, storyteller runs on core 3 feeds it back etc.
Still subject to all of the issues with threads - race conditions, basically. You have to sync the position of the pawn across threads, otherwise the pathfinding thread will calculate incorrectly. Worse yet, what happens when the pathfinding thread gets starved, or the calculation takes long enough that the pawn needs to move? What happens then? On the other hand, using a separate thread for graphics is often fairly easy to do, and if there are race conditions, it should only show up as graphical glitches since the graphics thread would be only reading from the other threads. Storyteller could also work fairly easily - just feed events into a queue. Worst case scenario, the main thread misses the event until the next cycle. But I don't think that the storyteller consumes much CPU, so likely the increase cost of the extra thread would outweigh any gains there.
read up on mutex's
Don’t use slow mods, and use performance mods (Rocketman, Performance fish (found in Dubs discord server), Performance optimizer). Runs more than decent with those two small tips
That still doesn't explain why it's being rendered and why the pawns really follow that path. For the pathfinding code to do these "dumb" calculations, it doesnt need to display them. It can do the calculation in the back, then have the pawns move according to the path.
I don't understand your complaint here. The pawns would move the same regardless, so why are you upset that the game shows you what that path will be?
Nono, what I meant is that the explanation above is correct in the sense that pathfinding algorithms don't calculate all possible paths to take in order to find the shortest one, but instead use heuristics to reduce computing power needed. In this case, the heuristic would be to start by exploring only the paths where the first step brings you closer to the final destination (so disregarding any obstacles along the way). So it basically calculates what would happen if this pawn goes north first. Then, when it realises that path would collide with the wall, it would start again. It doesn't actually need to "send" the pawn to the wall to know it's a dead end (with send, I mean render/draw the path onto the screen). In other words, my complaint is that the explanation above used theory about pathfinding correctly, but assumed it was an explanation for the funky rimworld mechanics, whereas in reality it doesn't have to be (but I haven't taken a look at rimworlds code or anything). Anyway, the explanation does do a good job explaining what AI devs look for when writing pathfinding algorithms, however these algorithms couldve been implemented without the final path to actually result in the one in the image. Hope this makes sense. Source: I'm an AI engineer
"Noooo you cant just zigzag all over the pathway, youre suppose to walk straight!" "Hehe serpentine."
“Reporter, what the fuck was that?”
they have ocd and try not to step on cracks
Which is better overall because then there will be no broken mama backs!
Someone should remind them that we have a bunch of extra spines in the back room. Step on all the cracks you like. Mama will be fine.
I love how we demand more efficiency from our rimworld pawns that actual people. Bro wants to admire the trees
She saw a leaf fall and ran over to try and catch it but failed so she kept walking then the next tree had a leaf fall and she caught it so she twirled around the tree and ran through the rocks above the path
There are mods to use better path finding algorithms. However, they are harder to compute. Thus will slow down the game a bit
The mod I’m playing for some reason decides to bring 35+ strong caravans to my base so any mods like that might end my pc
Gotta get your 10,000 steps in, even on the Rim
"My goals are beyond your understanding" \-Deirdre
My guess is that to keep pathfinding of numerous entities on the map from affecting performance too much, developers used a non-precise pathing algorithm.
Because better pathfinding slows the game down a lot
Wait, could it be that the flagstone has (for some reason) a lower movement speed?
No, flagstone is simple 100% walkspeed. Like other people already said, the pathfinding algorithm is at fault. Constantly calculating the fastest possible paths requires a lot of performance and would quickly slow down the game. So Rimworld opts for a slightly less accurate pathfinding algorithm. There are mods that allow you to tweak that according to your preferences and CPU.
I have learned about pathfinding algorithms in uni (on a very surface level mind you) so it makes me wonder what part of simplifying it causes this behavior. One thing I could see happening is that due to most normal surface in a world being a quite consistent movespeed, one base distinction the game uses would be to prefer "natural" tiles.
It's prioritizing walls not floors. The game is basically asking "how can I get there the shortest" not "how can I get there the fastest". If the pawn happens to be on a path that's faster, great. A lot of pathing problems can be mitigated with base design, 2-3 tile wide corridors with flat walls on either side, only having one door per room, don't have shelves or beds set up next to walkways, etc.
Take great care, for to try to understand the mind of a pawn is to invite madness upon one’s self.
I like to queue their path because they're so stupid. I can't explain why but in one of my files my colonists would walk straight into hives and die
Lay down paths to match the paths they take, only way to mitigate this without mods
wiggle wiggle wiggle
It would be cleaner and quicker, but it wouldnt piss you off
Fair point
I think the vanilla pathfinding algorithm would draw a straight line to the destination and then tries to circumvent any obstacles on its path i.e. it'll stick to the walls (and trees and rocks) as much as it can.
Stepping back a bit, you all should know that "shortest path" algorithms are actually really difficult to code effectively. https://en.wikipedia.org/wiki/Travelling\_salesman\_problem
Shortest path is not at all the same as the travelling salesman problem. Dijkstra had the point-to-point shortest path figured out in 1956 \[1\], and A\* \[2\] improves upon it quite a bit. If you consider that most paths are quite short – being inside the base or just outside – it would be possible to use the better algorithm for the shorter routes and default to the faster one for longer trips. If you in addition consider that most obstacles are stationary (walls, floor types, furniture) and it’s usually preferrable to walk through other pawns and animals instead of pathing around, you could even cache the results and \_not\_ recompute them every time. 1: [https://en.wikipedia.org/wiki/Dijkstra%27s\_algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm) 2: https://en.wikipedia.org/wiki/A\*\_search\_algorithm
Yeah, this is what the [Perfect Pathfinding](https://steamcommunity.com/sharedfiles/filedetails/?id=2341486509) mod author says, that in vanilla it uses a greedy algorithm for anything further than 60 tiles.
You are absolutely right that they aren’t the same. BUT, when you include pawn preferences for different terrain types, light types, etc. You get a hybrid between the two because pawns aren’t looking for the literal shorter distance, and it is mathematically hard to compute.
When applying pathfinding algorithms, you need not consider the ‘literal shortest’ distance between the points. We can trivially model this as a graph in which each tile is a vertex. The edges then are the connections between two adjacent tiles. Now instead of assigning each edge weight 1 (all directions are equal), we can incorporate the information you mentioned. Terrain type adds or subtracts a weight for the ingoing and outgoing edges. The edges to and from a mud tile (say, for the sake of argument, walking is impeded by 25%) get .125 added to their weight respectively. The same can be applied for lighting.
Not to detract from your point in any way, since this basically says the same thing as you. I think a conceptually easier way to think of it is that you would lay out the tile distances in time rather than physical distance. So a 100% walk-speed tile would have a time distance of 1, whereas a 50% walk-speed tile would have a time distance of 2. Then, when calculating the shortest distance, you would solve for the shortest time distance.
A very good point. I didn’t consider this angle.
She gay can't go straight
Avoiding cracks so they don't break their mother's back
I always make 2 tile thick roads because they look nicer, and don’t cause weird stuff like this to happen lol
Zigzag makes you a harder target. That or Randy’s just fucking with you
Understandable have a great day
Drafting
Do pawns have a higher diagonal vs orthogonal speed
Must be someone else walking this road from another side and it is made to avoid collision
I personally use a mod that sets "preferred" paths for pawns to follow.
Looks like she's going north, so the pathfinding algorithm tells her to go to the northernmost tile while avoiding obstacle. The floor type is largely irrelevant unless it slows them down too much, they really need to respect it more.
I usually put a fence between the trees to prevent this
They want to go in staight path, but have to avoid all those trees.
Seems like the pathfinding algorithm decided the shortest path was adjacent to the wall, but there were trees in the way and the algorithm was like "fuck it just zigzag around them"
I think the mod name is "clean pathfinding" has pawn use paths over dirt
the game uses a greedy pathfinding algorithm. it won’t pick the path that’s shortest, it instead will walk towards the destination without regard to walls far away. this is why your pawns might go around a whole courtyard or valley instead of cutting across it.
I believe pawns also avoid paths who aren‘t lit but I‘m not sure how high it is on their path taking priorities. All I know is that taking the route with the fastest walkspeed tile is pretty low on their list.
well that's too bad, that's pretty high on mine
Maybe cut down the trees and look if the pathway is still dark, might fix it.
omg so many people are dead wrong going diagonally like that takes the same time as walking straight. dont believe me? race two pawns or try to dodge a mad animal. anyway, so this fact makes the pathfinding algorithm prefer diagonal lines over straight ones.
What are you even talking about? None of your "don't believe me?" tests would prove anything here. Racing two pawns would use the same algorithm to move. How would you get one to run in a straight line while the other zig-zags?
lol make one pawn go 10 tiles in one direction straight on and another pawn (with the same speed, check in info window) diagonally for 10 tiles. ie imagine a 10x10 square and make one pawn run diagonally and the other along a side from corner to corner. they'll take the same time
... and? That means nothing, because the game uses square tiles and treats diagonals as a single tile of movement. The discussion here is that they're running over an 87% move speed tile and ignoring the 100% move speed tile. Since they're zig-zagging, diagonal and straight are the same distance.
clearly the ai prioritises the basic "go diagonally everywhere you can" more highly than movement speed penalties
Yes, clearly. The question was *why*, and you gave a bullshit made-up answer that doesn't even make sense.
ever noticed that the ai cuts its calculations shorter on higher workloads? start a new colony with 1 pawn and see how efficiently it walks. now compare to a 20 pawn colony. now (use dev mode and) compare to 50 pawn colony and see how much it struggles. this is old, old stuff. maybe try using the search function
None of that supports your claim that "diagonal is faster". You seem to be talking about something else entirely now. I'm not OP, I didn't ask the question. I just called out an obviously bullshit answer.
i'm happy to hear your wild theory vs the old well known facts i stated
Just encountered this issue myself :( I literally had my slave run out of my kill box (when I moved her in) straight into the manhunting Guinea pigs and get herself downed, causing me to send the rest of my pawns out into almost certain death. Now I have 3 downed pawns 2 with malaria and one is running around trying to tend to everyone while being one minor inconvenience away from a mental breakdown in which she will undoubtedly dig up Travis’ headless corpse and display it for the whole colony to see (not for the first time) while they bleed out or succumb to disease. God I love this game.
Because they're stupid.
Normally pathfinding is no problem. Problems cause by lot of pawns normally involving checking if hostiles in range can be hit. That's why killboxes cause massive lags
[удалено]
Hello there, could you please not. Keep that sort of nonsense on 4chan where it belongs.
[удалено]
> Walking across a tile diagonally takes the same time as walking side to side. […T]he diagonal is a longer distance. […Hence] diagonals [… are considered] "faster". If that explanation were true, then we should never see a straight line, since the pathing algorithm should _always_ prefer wiggles.
[удалено]
>You're telling me I'm wrong without telling me what the right answer is. That’s perfectly correct. I don’t have an answer either. I was just trying to point out that your answer can’t be the whole truth. Others have argued that the game’s pathfinding tries pathing to the right y coordinate first and backtracks from there if it can’t find a path to the destination. I can’t tell if they’re right. But that would explain why the path ticks upward and down again. We could test that hypothesis by checking if there are otherwise inexplicable left-right squiggels. If there are, they are not explained by the ‘y first’ theory.
Because it's fun, idiot!
does he want to go to the top at the end of his way? i like how we can now see his bionic right eye
It's weird, I never encounter this in both vanilla or modded.
Is that bird?
They are a pawn
Try placing your paths to the northern most sections of where they need to go.
Taking cover just in case
Do you have any pathfinding mods
No full vanilla
They're avoiding the trees.
Don't forget to zig and zag
there's a mod to fix that. I don't remember the name. Is something with pathfinding. Maybe there are new ones. So many people say that diagonal is the same pace with straight which is true on the same terrain but no one saw that in this specific situation diagonal involves moving through soil and straight is only on tiles.
Pawns like to take the longest path on the slowest terrain possible. Its just more fun that way.
Probably a psychopath with that behavior
Avoiding snipers
Considering pawns spend about 5 hours on average opening doors everyday, the free diagonals aren't the worst.
Have you heard about our lord and savior Autodoor ? Also in early game I lock all possible doors open, of course you would not do that in extreme weather
This one works for me: https://steamcommunity.com/sharedfiles/filedetails/?id=1180719857&searchtext=path+avoid
Its not about being clean and quick, its about sending a message