KK的独立开发日记(长期更新)
文章目录
NopX 的开发记录。
2024-11-05 第九天
发烧终于好了,继续研究无限内存视图的各种bug
2024-11-02 第八天
用 UIKit 重写了一切,实现了简陋的无限内存视图,不过一旦更改显示类型就会产生bug,不知道怎么办。。。
2024-11-01 第七天
学习 UIKit,真不错,比较方便控制 UI 刷新时机,加载新数据的时机,重新布局的时机。
2024-10-30 第六天
SwiftUI 是真瘠薄沙壁,各种小 bug 一大堆,例如 默认实现的输入框限制数字类型,数字多了(大概十几个就会崩溃)、alert 难以自定义,只能自己实现一个样式一摸一样的凑合用、ipad 横屏快速反复点击输入框,取消键盘,输入框会闪烁,甚至有几率给输入框卡没…竖屏则完全没问题…
还好写的不多,准备用 UIKit 重写
2024-10-29 第五天
重构一些 Rust 代码;用 SwiftUI 实现进程选择页面,搜索页面,设置页面。
2024-10-25 第四天
用 Rust 创建了 NxCore,自动生成 Swift Package,内部是 XCFramework,自动生成多个架构的绑定。
用 SwiftUI 完成了基本的界面框架,暂时打算 UI 模仿 iMemSeeker 。
2024-10-24 第三天
swift-bridge 功能实在太少了,例如 Vec
完成了获取进程列表的接口。
2024-10-23 第二天
写了一些 mach 内核API相关 rust bind。
swift 方面基本敲定了使用 swift-bridge。
恶补学习 SwiftUI 相关知识。
2024-10-22 第一天
简单调研了一下 rust 自动生成 swift 接口的方案,swift-bridge/uniffi。
swift-bridge 性能好,但安全性比较难保证,用起来也比较麻烦,支持的类型不多。
uniffi 性能比较差,好在支持的类型较多,并且可以方便的打包为 XCFramework。
2024-10-21 产品构思
打算走冷门赛道,做一款跨平台的内存修改器(名字暂定NopX)以及一个交流社区,致力于成为最优质的内存修改器。
NopX APP
目前计划中的核心功能有:
-
基本的内存扫描: 精准/模糊(i8/u8/i16/u16/i32/u32/i64/u64/string/array/group/pattern),并且资源开销尽量低
-
自动扫描指针链
-
过滤指针链: 布隆过滤器对比/哈希对比/运行时过滤
-
方便查找特征码的简洁内存视图,并且可以自动标记指针
-
断点调试: 是什么(读取/写入)了这个地址
-
自动(汇编/反汇编)指令、代码注入
-
SpeedHack 变速齿轮
-
脚本: 主要用于分享以及执行自动化任务
-
插件: 公开一些接口允许扩展功能
-
其它特定于平台的特殊功能
NopX Community
NopX 网站交流社区,用户在这里交流心得,发布脚本、插件,同时可能可以获得奖金激励。
支持平台优先级
从高到低: ios
> android
> linux/macos
> nintendo-switch
> windows
> other
ios 用户付费意愿高,并且相关工具实在少的可怜,所以放在第一优先级。
android 用户数量最多,放在第二优先级。
linux pc 和 macos 都是我正在用的,放在第三优先级。
nintendo-switch 需要一些更深度的技术储备,并且受生态影响,很多功能难以实现,还在调研中。
windows 已经有 CheatEngine 了,而且我平时很少使用 windows,优先级为最低。
当然,支持的平台可能会增加,优先级可能随时发生改变
技术选型
- NopX APP
ios/macos 使用 swift 做UI,rust 写核心功能。
android 使用 java/kotlin 做UI,rust 写核心功能。
linux pc 不做UI(已经有非常好的PINCE),rust 写部分核心功能(同时贡献给开源社区)。
nintendo-switch UI待定,rust 写核心功能。
windows 使用 win32 做UI,rust 写核心功能。
争取所有平台 APP 大小不超过 10MB,在不缺失功能的情况下,还要做到小而美。
- NopX Community
前端使用 Svelte,后端采用 go 语言。尽量看起来简洁轻快。
收费模式
程序采用设备激活方式,永久买断。
众筹阶段:每捐赠 30 元都可在未来获得一份设备激活资格。
产品上线:暂定每个设备 50 元人民币。
文章作者
上次更新 2024-10-23