快速导航: 中文版本 | English Version
KernelFix 是一款 Hacknet 的 Pathfinder / BepInEx 全局插件,修复原版 Hacknet 中遗留的一部分问题。
- 修复 ForkBomb / SignalScramble / ExtensionSequencer 在高刷新率屏幕(144Hz+)下 RAM 占用停止增加的问题。
- 根因:原版使用
int num = (int)(t * RAM_CHANGE_PS),高帧率下t变小导致乘积被int截断为 0。 - 修复:累积小数部分,积满 1 后补偿,并检查
ramAvaliable上限。 - 可在
BepInEx/config/com.LDTchara.KernelFix.cfg中通过EnableForkbombRamFix开关关闭。
- 在游戏窗口创建前调用
SetProcessDPIAware()。 - 避免 Windows 的 DPI 虚拟化,使游戏分辨率列表与实际屏幕一致。
- 消除全屏/窗口模式下的模糊和错误缩放。
- 可通过
EnableDPIFix开关关闭。
- 修复
SAAddIRCMessage的Delay为负数时时间戳变为未来的 bug。 - 根因:原版
d -= TimeSpan.FromSeconds(Delay)中负 Delay 变成加未来时间。 - 修复:Prefix 拦截后使用
d += TimeSpan.FromSeconds(Delay)正确回填过去时间戳。 - 可通过
EnableIRCDelayFix开关关闭,关闭后恢复原版未来消息行为。
- 在非 Windows 平台上跳过 OpenAL 音频设备枚举,防止启动崩溃。
- 根因:FNA 的
alcGetString在某些容器/无音频环境下挂起或崩溃。 - 无功能性损失(HN 没有音频设备切换功能)。
- 确保已安装 Pathfinder 框架(它自带了 BepInEx)。
- 下载
KernelFix.dll。 - 将文件放入游戏目录下的
BepInEx/plugins/文件夹内。 - 启动游戏,插件即自动生效。
无需额外安装 BepInEx – Pathfinder 已包含所需运行环境。
- 需要 Pathfinder 框架,否则插件不会加载。
- 支持 Steam 及 非 Steam 版本的 Hacknet + Labyrinths。
- 中文输入法功能已迁移至 HacknetIME。KernelFix 不再包含 IME 输入法支持,如有需要请安装 HacknetIME。
- 克隆仓库:
git clone https://github.com/LDTchara/KernelFix.git
- 使用 Visual Studio 打开
KernelFix.sln(或通过dotnet命令行构建):dotnet build KernelFix.sln -c Release
- 项目引用(Harmony、BepInEx、FNA 等)指向游戏安装目录下的
libs文件夹,可按需调整。
KernelFix is a Pathfinder / BepInEx global plugin for Hacknet that fixes several long-standing bugs in the base game.
- Fixes ForkBomb / SignalScramble / ExtensionSequencer RAM stalling on high-refresh-rate monitors (144Hz+).
- Root cause:
int num = (int)(t * RAM_CHANGE_PS)truncates to 0 whentbecomes small at high frame rates. - Fix: accumulates fractional remainder, compensates when ≥ 1, and respects
ramAvaliablecap. - Toggle via
EnableForkbombRamFixinBepInEx/config/com.LDTchara.KernelFix.cfg.
- Calls
SetProcessDPIAware()before the game window is created. - Prevents Windows DPI virtualization, matching the in‑game resolution list to the actual display.
- Eliminates blurry text and improper scaling in both fullscreen and windowed modes.
- Toggle via
EnableDPIFix.
- Fixes
SAAddIRCMessagetimestamps becoming future times whenDelayis negative. - Root cause:
d -= TimeSpan.FromSeconds(Delay)with a negative value adds time instead of subtracting. - Fix: Prefix intercepts and uses
d += TimeSpan.FromSeconds(Delay)to correctly backdate the timestamp. - Toggle via
EnableIRCDelayFix— disable to restore vanilla future-message behavior.
- Skips OpenAL audio device enumeration on non-Windows platforms to prevent startup crashes.
- Root cause: FNA's
alcGetStringhangs or crashes in containerized or audio-less environments. - No functional loss (Hacknet does not have an audio device switching feature).
- Always active, no toggle needed.
- Make sure Pathfinder is installed (it bundles BepInEx).
- Download
KernelFix.dll. - Place it into
BepInEx/plugins/inside your Hacknet directory. - Launch the game – the plugin loads automatically.
No separate BepInEx installation is required – Pathfinder already provides it.
- Requires Pathfinder; the plugin will not load without it.
- Works with both Steam and non‑Steam versions of Hacknet + Labyrinths.
- IME support has been moved to HacknetIME. KernelFix no longer includes IME functionality — install HacknetIME if you need it.
- Clone the repository:
git clone https://github.com/LDTchara/KernelFix.git
- Open
KernelFix.slnin Visual Studio (or build withdotnet):dotnet build KernelFix.sln -c Release
- The project references (Harmony, BepInEx, FNA, etc.) point to the
libsfolder inside your Hacknet installation; adjust them if necessary.