kitlau
kitlau

kitlau's blog

All Posts in 2023.4


如何实现 AI 虚拟小镇?我与 NewBing 和 GPT-4 讨论了一下

基于Phaser游戏引擎和FAISS向量数据库实现RPG游戏的方法包括:通过`update`方法调用`makeDecision`更新NPC决策,并在`interactWithEnvironment`中处理与环境元素(如床、书架)的交互。此外,在`communicateWithOtherNPC`中检测两个NPC之间的距离,若小于阈值则触发对话逻辑。主循环遍历所有NPC,依次执行决策更新、环境互动和与其他NPC交流。建议将游戏逻辑模块化,例如为不同环境元素创建单独类,并使用Phaser功能实现UI、音效等其他游戏元素,以完善RPG体验。--DeepSeek

AI Phaser.js FAISS RPG Game NPC Logic Environment Interaction

C# 3 年前的 record 你现在用上了吗?

这篇文章探讨了C#中的`record`类型及其在提高代码质量和安全性方面的重要性。文章指出,`record`类型的不可变性和值语义使其成为表示数据的理想选择,并能够减少多线程环境下的竞争条件和错误修改的风险。此外,通过使用`IReadOnlyCollection<T>`等只读集合类型,可以进一步确保数据的稳定性,从而提高代码的安全性、可预测性和可维护性。然而,文章也反思了当前软件开发中对代码质量的忽视现象,特别是在追求快速迭代和交付的过程中,一些开发者更倾向于采用快速但不稳定的解决方案,导致代码质量和维护成本的问题。作者呼吁重视代码质量,并利用像`record`这样的特性来提升软件的整体质量。--DeepSeek

.NET C# Record Immutability Value Semantics Data Modeling