Kingfisher
By tracing and measuring the vanilla source code and identifying performance bottlenecks, Kingfisher replaces them with more efficient implementations. This makes TPS/FPS gains without side effects possible.
In a typical test environment, Kingfisher’s patches themselves can achieve speedups of 2x ~ 25x. This will not translate as directly to overall TPS, because save states vary and optimization results are hard to generalize.
If you are willing to provide a save from a near vanilla late game colony, that will help Kingfisher iterate on its optimization results.
Kingfisher pursues zero runtime overhead, including:
– Uses PrePatcher to inject fields and replace methods, avoiding extra wrapping and call overhead.
– Uses Publicizer to expose private fields, avoiding reflection overhead.
– A conditionally compiled profiler, excluded from release builds.
Kingfisher is still in development, and this list will be kept in sync with updates.
Q: Can Kingfisher be added to or removed from a save?
A: Yes. There should be no issue in theory.
Q: How compatible is Kingfisher with other mods?
A: Kingfisher aims to coexist with other mods. This requires testing and feedback, and your help is appreciated.
Q: What is Kingfisher’s relationship with Performance Fish?
A: Performance Fish inspired Kingfisher and served as a reference for patch direction and implementation.
Kingfisher is open source[github.com] under a mix of MPL 2.0 and MIT licenses.
– Publicizer by krafs.
– Harmony by Brrainz.
– Prepatcher by Zetrith.
– Performance Fish & Fishery by Bradson.
Required items:
Click the title to search on this site.
Harmony — Steam Workshop
Prepatcher — Steam Workshop