RimWorld
42 평점
TerrainMovementKit
   
어워드
즐겨찾기
즐겨찾기됨
즐겨찾기 해제
Mod, 1.1, 1.2, 1.3, 1.4
파일 크기
게시일
업데이트일
850.200 KB
2020년 4월 4일 오후 5시 36분
2022년 10월 29일 오후 5시 08분
업데이트 노트 30개 (보기)

다운로드 위해 구독하기
TerrainMovementKit

설명
Terrain Movement Kit (TMK)

A mod for other mods to add terrain specific movement options and restrictions

Description

This mod is for other mods to use, it has no direct benefit to players without writing additional rules for terrain / pawns based.

What the mod provides is a toolkit for adding rules and statistics for managing movement on various terrain types to the game. It makes pawns respect new Speed baseStats for both moving through a type of terrain and for planning pathing through that terrain. It also allows you to specify new pathCost stats to pair with Speed stats in order for pawns with the stat to move at a different speed than pawns without the stat. And finally it adds rules such that pawns can be restricted to certain terrain, or not able to enter other terrain.

What's an example of using this mod?

The SwimmingKit mod uses this mod to enable SwimSpeed to affect movement in water. It also add the aquatic tag in a mod extension to make pawns only able to traverse water tiles. This is being used in the Biomes! to support Sharks, Turtles, and other semi-aquatic or fully aquatic animals.

For modded tile types you could also add movement rules. Say you have a lava tile. You can add a Lava Monster who can only move on lava. Then add some special tech armor that lets your pawns walk on lava to go battle it.

Compatibility Warning

I have not run into compatibility issues in testing, but I believe there are some incompatibilities with some existing mods. The Swimming Kit mod has been using this mod for quite some time without reported issues. But anything that modifies pathing has a high likelihood of failure in combination with this mod. There's additional work needed to improve the code to reduce these potential incompatibilities. See FAQ[github.com] for more details.

How to Use

See the TMK wiki[github.com] for details on how to add these rules to your mod.

How to Add to your Mod

The mod can be used as a mod dependency OR as a direct DLL[github.com] in your mod assemblies. If you use the second option, be advised that you should add the following to your About.xml to help ensure multiple mods using the same kit will load the latest version.
<ModMetaData> ... <loadAfter> <li>pyrce.terrain.movement.modkit</li> <li>BiomesTeam.BiomesCore</li> </loadAfter> ...
If the mods above are not present it will still check for mod load orders of this library DLL and emit an error message (but still load) if it detects a later version lower in the users mod list.

Credits

The mod Logo above used the following free assets:

Lava: "LuminousDragonGames"[opengameart.org]
Rock: "Para"[opengameart.org]
Sand: "txturs"[opengameart.org]
Water: "Aswin Vos"[opengameart.org]
댓글 25
Ender Wiggin 2023년 8월 2일 오후 11시 54분 
This mod replaces some pathfinding methods instead of patching them, which breaks other mods that try to patch those methods.
Hoddrock 2023년 5월 22일 오전 10시 19분 
Does this mod make lava dangerous because I don’t have this mod and pawns can walk on lava naked with not even a debuff or a tick of damage
ShauaPuta 2023년 1월 23일 오전 6시 40분 
Ah, sad to hear
I was hoping to make some wheeled animals move faster on smooth terrains like concrete
pyrce  [작성자] 2023년 1월 17일 오후 5시 44분 
@shauaputa It's probably that the underlying terrain has a floor layer ontop. So it's finding the original terrain under rather than the built planks or concrete. I think the mod would need to be updated / modified some to identify built terrain.
ShauaPuta 2023년 1월 9일 오후 6시 45분 
Excuse me mod author sir dude fella
I have been trying to add terrain costs for my mod, but I have been unable to even after following the wiki and using biomes islands as a base
For some reason, I can patch my custom stats to sand, soil, and other natural terrains just fine, but artificial terrains like planks and concrete ignore my stat and use the default move instead
Could you gib me any tips on what I've been doing wrong?
pyrce  [작성자] 2022년 10월 29일 오후 4시 47분 
Updated to 1.4
Tec 2022년 8월 16일 오전 5시 38분 
@pyrce darn was hoping to avoid c# XD
pyrce  [작성자] 2022년 8월 15일 오후 8시 05분 
@Tec Yes you can still patch those. You have to do it from C# though. You need to add an instance of `TerrainMovementStatDef` to the `modExtensions` of the terrain that's generated by code. You run this after the other mod is done generating terrain, usually by making your mod load after and running your code inside a `StaticConstructorOnStartup` block
Tec 2022년 8월 9일 오전 6시 58분 
thought you should know. if you disable normal movement and try and set the speed for each TerrainDef. You cant actually seem to xpath patch the #RockBaseType#_Rough/_RoughHewn/-Smooth terrains as they are generated via code and dont produce a patchable def to add extensions or stat bases to. If there is a way to do this, i would like to know.
pyrce  [작성자] 2021년 7월 18일 오전 11시 32분 
Ok yeah, doesn't look like this mod, but I'll try to reproduce to make sure. Thanks for checking on the fix working!