-
Notifications
You must be signed in to change notification settings - Fork 13
Description
It is becoming more and more necessary that we support KK in the sense of being able to maintain it, but KK is problematic because it is a large unmaintained codebase. We can use our storage-manager.lua and claude to strip it down and port it to our utilities, then make scripts/autopilot and put it there, rebrand it as autopilot to avoid confusion, and credit Klonan/EliteHunter somewhere. I can probably provide rough prompts if someone wanted to try. Here is the broad list of justifications:
- We cannot lint the codebase without putting annotations through the whole thing as it is, which leads to avoidable crashes
- We cannot get feedback on what it is doing or configure it without defining more and more remote API, then juggling it on both sides. For example, sometimes it just stops progressing but it's actually doing something dumb which doesn't have audio feedback (see below for such examples).
- We cannot share our Claud infrastructure between repositories easily
- Having to maintain two mods not in lockstep and get them to the mod portal is annoying
- It does a lot of stupid things that we would rather it not do and offers a lot of actions that are useless in practice
- It does not support quality nor does it support space age enemies and weapons.
- I do not believe it supports flight
Here's a list of the problems that justify us wanting to own it one way or the other, the things I would tweak if I had time:
- Refuel doesn't really leave enough fuel around for things to run without you. It's more of a "you are the refueller indefinitely" action
- Driving should really not kick off unless you're far enough from stuff
- When building, it:
- Tries to find items with a random algorithm rather than letting you just set a mall or something
- Will happily be like "You need iron gear wheels, this belt has 2 on it, I will stand there leeching from it" for the next 5 minutes
- Doesn't understand that it is usually easier to craft from plates and will only look for immediate prerequisites
- Is happy to grab from running assembling machines because why not?
- Does this very odd step-build-step pattern rather than just running to the middle of the next set of ghosts
- We should probably have it default to not acquiring items for you. This is closer to vanilla and less magically surprising. It could just stop and say "need 5 transport belts" instead of trying to execute on a whole plan (this is even more true with quality, which it probably cannot acquire for)
- 2.0 combat is playable without having to delegate to KK now. I wouldn't classify it as great but I now play better than Kruise Kontrol ever has, and I'm possibly one of our worse combat players. Being as it needs custom AI for space age, there is an argument to be made to get rid of it. We probably have to choose either getting rid of it or supporting space age at some point.
- When walking it sometimes silently fails to find a path. When it does find a path, it will sometimes tear down rocks and trees just because.
- I have seen bugs around deconstructing and building rails that imply that it sometimes is deconstructing more than it should be by a few entities
- We have had the "it doesn't upgrade belt corners" issue for a long, long time. Also the "it doesn't upgrade random belt pieces" issue.
To be clear I don't think this is high priority, but it also doesn't have much bearing on the rest of the codebase, and doing this is a nice stand-alone project that doesn't require background knowledge on much, which can also mostly be done by Claude.