AI 是否能完全替代码农的 1 点思考
2025-03-22 01:51:00
在最近使用 Copilot 和 Cursor 进行 Coding 的时候,偶尔会考虑现在的 AI 对于开发者到底意味着什么,我感觉其实 AI 带来的最大价值不是彻底取代开发人员,而是大幅提升了领域专家...
AI 生成 UI 设计的 Cursor 实践
2025-03-05 03:31:00
最近在探索 AI Coding in Front-End 的时候看到一篇较为🐂🍺的文章《一个提示词 claude 生成一个 app 的 ui/ux》(UC 震惊部提前预定作者入职)。虽然标题比较震惊,...
论如何打击 LLMs 过度的自信心爆棚,让其产生的内容更准确、真实
2025-02-22 02:03:00
本文为未经 AI 润色的原文如我之前的某次分享,我一直感觉 LLMs 们喜欢胡说八道满嘴放炮,平常大家都说这是「LLMs 的幻觉情况」,但我还是恶意的称呼为它们喜欢胡说八道。在《Does Fine-T...
关于 DeepSeek NSA 论文的一点思考
2025-02-19 01:09:00
今天看到 DeepSeek 团队前几日发布的论文《Native Sparse Attention: Hardware-Aligned and Natively Trainable Sparse Att...
Claude 4:混合型大模型的崭新思路与未来潜力
2025-02-15 02:21:00
今天在 Twitter(求马王爷还我 Twitter 原名!!)看到一个消息,来自一个推文大致提到:「Claude 4 in the coming weeks」,具体内容可以参考这条推文。重点是:Cl...
Deep Research:开源替代方案与未来发展潜力
2025-02-14 01:17:00
最近大家都在谈论 CloseAI 的 Deep Research 模式,称其研究效果非常强大,但面对高达 200???? 的价格,不少人却感到难以承受。幸运的是,开源社区也有不少项目尝试复现类似的效果...
观 OpenAI 广告有 1 点感
2025-02-12 03:19:00
本文为未经 AI 润色的原文今天看了 OpenAI 的广告,一开始只是觉得这个创意很有意思。视频采用了黑白点画风格,从一个小小的圆点开始,随着画面展开,逐渐呈现出越来越复杂的图像,展现了人类历史上各个...
关于 DeepSeek-R1 与 CoT 模型的提示词策略一点记录
2025-02-11 02:23:00
今天在公司和同事们开会,讨论到了 CoT(Chain of Thought)模型 和 通用模型 在提示词策略方面的差异,尤其是与 DeepSeek-R1 的训练过程有关的内容。此话题让我想起了之前阅读...
DeepSeek V3 与 AI 训练新思路:低成本硬件与技术突破
2025-02-09 01:29:00
今天在站会上和同事讨论了从一个 AI 应用团队(即 AI 的使用者)向 AI 全链路团队(即从模型训练到应用全程都参与)转型的可能性。这让我联想到了最近看到的一篇关于 DeepSeek V3 技术的访...
关于「AI 创始人的惨痛教训」系列文章的 1 点感想
2025-02-01 01:36:00
本文为未经 AI 润色的原文我个人一直不相信当前生成式 AI 的能力,认为 AI 总是会胡说八道。年前有一天中午和 Ricky 在食堂,达哥也在边上,我提到如何建立对 AI 在严肃工作领域的信任感。我...
关于「人工智能」分类下文章的说明
2025-02-01 00:43:00
在「人工智能」分类下,发布的所有文章其实来源于我工作中的一些学习笔记。为了将这些笔记更清晰、更易读地呈现给大家,我选择了使用 AI 对内容进行调整和润色。通过这种方式,文章的表达更为流畅,信息传达也更...
对 v2c 进行了一次前端的重构
2024-09-17 20:24:00
0x0自从 2019 年把博客迁移到 Typecho,再到 2020 年用 React 自己写了博客的前端进行了前后端分离后,我的博客前端就几乎没怎么动过了。期间其实也多次想开始重构,但总是因为工作忙...
如何让 uTools 通过代理服务器连接网络
2024-06-18 14:35:00
总的来说就是为 uTools 添加启动参数 --proxy-server 即可通过代理访问网络。备注:此方法只能代理掉 chromium 侧的流量,无法覆盖 uTools 本身非渲染进程的流量、插件 ...
关于这三年:我也是当过美食博主了
2024-05-26 22:15:00
是的,I am back!很久没有更新博客了,一方面是忙于工作无心更新(这是个借口),另一方面是自从 2021 年 8 月发生了丢失数据的问题,导致很多历史文章都消失在互联网长河中。虽然尽了很大的努力...
关于
FydeOS AI LogoFydeOS LogoAI
是如何诞生的
2023-12-06 22:01:00
0x0 为什么要做这个项目 FydeOS Logo AI 项目的初衷是为了让用户可以更加自然地控制操作系统,能够使用自然语言与系统进行交互。例如,通过语音或文本与系统对话,控制软件、查找信息,甚至快速解答工...
[家宴 · 2021]也许是今年最认真的一顿饭,红红火火锅
2021-12-31 23:33:00
在 2020 年,我曾经搞过几次家宴,邀请了一众好友来家里吃吃喝喝。甚至在 V 站加了不少好友,对他们说『下次家宴有空来家里一起吃』,但是事实上因为种种原因,2021 年非但没有邀请 V 友来家里吃饭...
【一场灾难】多站点数据丢失说明
2021-08-23 21:47:16
大概在一个多月前,包括 我的博客、LoveLive.tools(渣男:说话的艺术)、Mr.Task 等网站突然无法访问,服务器无法连接。本来以为只是服务提供商突发故障(之前也出现过,后来都正常恢复),...
[LoveTime] 一个与爱情和时间线相关的项目
2021-03-20 11:11:00
0x0 为什么做这个项目大概在一年前,我注册了 lovetime.tools 的域名。说来也是奇怪,我总是喜欢在脑子里冒出一个想法之后立刻注册相关的域名,但是往往实际完成上线的时间都会拖很久。比如 渣...
有目的 (di) 地 (de) 瞎折腾 —— 为了温暖的被窝而实现远程开机
2021-01-09 13:14:00
0x0这个冬天真的太 TM 的冷了,冷到我想一天 24 小时都呆在床上哪儿也不去。本来在这个美好的周六是可以实现这个同样美好的愿望,但是一大早同事来的电话击碎了我的梦想 —— 线上项目出了点问题需要排...
[家宴・2020] 入冬的第一次聚会,是带些许火辣的味道
2020-11-18 20:00:00
0x0是入冬的日子了,终于送走了盘踞在头上小两三个月的秋老虎。说来也是奇怪,在我记忆中大概七八年前,大概还是我上初中的时候,总是能精准的掐着日子算到什么时候要入冬了,左右不过是国庆过后五六天就可以翻出...
下一篇
弹出
关闭

Lode.Api:为什么要开发它

0x0 Lode.Api 是什么

Lode.Api 是一个用于 Nukkit/Bukkit(like)(1) 服务器的插件。提供了访问服务器各种数据和功能的 Http Api 接口。你可以通过这些接口来制作网站、App,以及提供让玩家在线购买物品并且在游戏中自动接收相关物品的能力。

(1):Bukkit Like - 基于 Bukkit 或 Bukkit 相兼容的服务端,譬如 Spigot、Paper 等。

0x1 初衷篇

关于开发 Lode.Api 的初衷要追溯到七八年前,我第一次接触 MineCraft 这款游戏开始说起了。当年还是高中生的我疯狂的迷恋上上了 MineCraft 这款充满创造力的游戏,为了能和朋友一起愉快的玩游戏,一步步开始摸索从租用 VPS 到搭建 MC 服务器再到各种插件和 MOD 的安装修改等,想来那时候我竟然还是个充满干劲的人,可以研究插件什么的到半夜。

后来有了一定的开服经验后为了维持服务器的生计,我又走上了当 MC 主机商的行当,也就是出租 MC 服务器给其他想开服的玩家并且代为提供维护服务。从这就开始有了远程管理 MC 服务器的问题:因为 MC 服务端是一个个运行在服务器上的程序,如果购买我们服务器的玩家想自行进行一些命令行的操作或者上传插件之类的话,就很难达到需求。我们不可能把远程桌面或者 SSH 的权限给客户,只能尽量及时响应客户的工单请求。

直到我发现了一个叫 RemoteToolkit 的插件,它可以通过 Telnet 的方式让客户连接到自己对应的命令控制台进行操作,再搭配上分配权限的 FTP 账号,也算是暂时解决了这个问题。

但是随着客户的增加,又有新的问题出现:客户如果误删除了什么文件或者客户是个完全不懂如何使用 Telnet 的小白,那么这种比较原始的管理办法对他们来说就显得很鸡肋。那么有没有更好的解决方案呢,能让客户方便快捷且没有风险的对自己的服务器进行管理?谷歌一番之后我发现了比较满意的解决方案——各种控制面板,其中以 MulticraftMcMyAdmin 为代表。但是问题是:它们是要付费的,并且还是需要国际支付渠道,当时的我还搞不明白怎么通过国际支付渠道去购买,并且当年这俩货的安装配置还是略显复杂。

这时候 JSONAPI 出现了,它也是我现在开发 Lode.Api 的灵感。JSONAPI 是一个可以通过 Http 或 Socket 调用接口对服务器进行管理的插件。其所提供的众多接口也算是满足了基本管理的需求,我靠当年仅有的一点编程技术制作了基于 JSONAPI 的 SimplePanel 以及其后继 SeanPanel(因为年久失修已经找不到当时的信息了……)。这俩靠着百度谷歌找代码示例进行拼拼凑凑的作品也算是我第一次认真的基础了变成,说起来也算是我从电脑爱好者到编程爱好者的桥梁呢。

靠着 JSONAPI 和我写的控制面板,我当年也算在 MC 服务器商领域小有名气并且赚了人生第一桶金。我记得当时有一个月营业额达到 9K 多,利润的话也有个四五千,这在当时还是学生的我来看真是一笔大钱。不过随着后来面临着人生的一些抉择以及同行低价策略的围攻,我也逐渐放弃了这门生意,顺带着也慢慢离开了 MineCraft 这款游戏。

一直到 2017 年,无意中又在 Windows 10 自带的 Microsoft Store 上看到了微软重制的 UWP 版 MineCraft (曾经的 MineCraft PE 也就是现在的 基岩版 MineCraft),我又购买了这款游戏想着趁着工作之余可以娱乐一下。不过在了解基岩版 MC 开服的途径后,我发现因为服务端和 PC 版 MC 的割裂以及 JSONAPI 未更新对 PocketMine(一款基岩版 MC 的服务端)的支持,所以管理起来并不方便,于是我只是在单机模式下自娱自乐一下。直到 2018 年,我发现了一个新的基岩版 MC 服务端 Nukkit,Nukkit 基于 Java 并且 API 架构和 PC 版 MC 服务端 Bukkit 类似(而 PocketMine 是基于 PHP 开发的),可以方便的开发插件,于是便萌生了开发一款能用于 Nukkit 的管理插件的想法。

毕竟此时我已经步入秃头程序员行列多年,已经有了阅读并理解 JSONAPI 源代码的能力,在拜读了 JSONAPI 的代码后,我发现 JSONAPI 的代码结构略为混乱,并且调用 API 的方式过于繁琐,对基于 JSONAPI 进行二次开发的用户不太友好(天知道当年我是踩了多少坑才做了 SimplePanel 和 SeanPanel)。所以我便放弃了将 JSONAPI 移植到 Nukkit 的想法,转而决定继承 JSONAPI 的通过 Http 对服务端进行管理的思想开发一款新的插件。

因为工作繁忙加上近几年拖延症愈发严重,拖拖拉拉到今年(2019年)八月我才实际开始动工。本来是想实现一套完整的 RESTful 风格的 API 调用风格。但是在架构搭建到一半的时候我意识到我为了在最简代码的情况(不引入 Spring 等第三方包,只使用 JDK 自带 API)下搭建 RESTful API 响应框架浪费的时间太多了,完全背离了插件管理服务端的开发初衷,而更像在从头做一个 Web 框架一样。所以权衡之下,我决定发放弃对 API 接口进行 RESTful 风格化的想法,而是转为通过全部 API 使用 POST 方法并在 Body 中传输需要的数据这种可以迅速开发并且满足插件需求的方法。事实证明,这节省了我不少时间也对插件功能没什么影响。

截止到今天,Lode.Api 已经发布了三个测试版本,并且有了一些服主在使用。接下来我会把插件的开发思路和开发中遇到的问题整理成一系列的文章,这篇就作为《初衷篇》告一段落吧。