SLG游戏
文章平均质量分 92
SLG服务器游戏开发经验分享
颯沓如流星
Putty本无树,MinGW亦非台
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
领域驱动设计(DDD)实现SLG游戏中的「联盟」功能
清晰的边界:联盟上下文。高度内聚的模型:联盟、申请列表、联盟仓库等聚合各司其职。明确定义的交互方式:通过领域事件和领域服务来协调跨聚合的操作,保证了模型的纯粹性和系统的可扩展性。这种设计使得代码易于理解、维护和扩展,能够很好地应对SLG游戏中联盟功能的复杂业务逻辑和未来可能的需求变更。原创 2025-10-13 14:00:00 · 1439 阅读 · 0 评论 -
【SLG游戏服务器开发手册】资源分布的均衡性(Poisson Disk Sampling)探索
比如下图,左边是随机生成的点,右边是泊松盘采样生成的点。任意两个采样点之间的距离不小于预设阈值(最小距离), 任何两个点的距离都不会隔得太近。这一特性完美适配 SLG 初始区域的资源分布需求既能保证资源点的随机性,又能避免聚集(防止玩家扎堆争夺)或过度分散(避免玩家跑图成本过高)。玩家出生点选择也可以参考这种算法,保证每位玩家两两之间的初始分布不会过近在二维空间中,这种分布类似棋盘上的棋子摆放:每个棋子周围一定范围内不会有其他棋子,但整体布局仍保持随机自然的视觉效果。原创 2025-09-18 19:24:58 · 1087 阅读 · 0 评论 -
SLG游戏中沙盘元素(通常指资源点、野怪、宝箱等可交互对象)的刷新设计
设计沙盘刷新系统是一个多维度的决策过程,没有唯一的最优解。明确设计目标:你希望玩家有什么样的行为?采用混合模式:不要只使用一种刷新模式,对不同价值、不同目的的元素采用不同的策略。持续迭代与调整:通过后台数据监控资源采集情况、玩家冲突热点,不断调整刷新参数,使服务器生态保持健康活力。最终,一个好的刷新系统应该让玩家感觉这个世界是“活”的,既有规律可循,又总有惊喜等待发现。原创 2025-09-09 09:40:57 · 1103 阅读 · 0 评论 -
【扫盲篇】游戏行业术语汇总
这类术语与游戏上线后的运营、收入和用户维护相关。这类术语与游戏的技术实现、硬件和发行平台相关。这类术语与游戏的推广、发行和品牌建设相关。这类术语源于玩家文化,并被行业广泛使用。这类术语主要与游戏本身的创作过程相关。原创 2025-09-04 11:38:55 · 1481 阅读 · 0 评论 -
【BigWorld 游戏服务器引擎】数据同步方案详解,及Java实现方案的探索
/ 属性数据类型枚举INTEGER, FLOAT, VECTOR3, // ... 其他类型// 属性定义// 是聚合同步还是差分同步// 标记是否为脏数据(仅对差分同步有效)if (!// 设置脏标记// 游戏实体// 用于差分同步的上次快照if (prop!= null) {// 深拷贝当前状态,用于创建快照// 计算当前状态与上次快照的差异if (!// ... 其他方法BigWorld 同步框架核心基于属性的分类同步机制。原创 2025-09-04 10:11:46 · 739 阅读 · 0 评论 -
【SLG游戏服务器开发手册】战争迷雾(Fog of War)存储设计
方案适用场景优点缺点精细位图中小型地图,RTS/MOBA精度高,速度快存储和同步开销大区块化位图大型SLG(首选)存储和同步开销小精度为区块级坐标集合超大地图,极稀疏视野极端稀疏时效率高集合大了以后效率骤降对于你正在设计的SLG游戏,采用“区块化混合方案”并结合“差分同步”,是最稳健和高效的选择。它完美地平衡了内存、网络和CPU计算资源。原创 2025-09-10 09:00:00 · 706 阅读 · 0 评论 -
【SLG游戏服务器开发手册】沙盘地图的Scale设计
特性Zoning (分区)Offloading (卸载)核心思想水平缩放 (Scale Out):通过增加机器来分担负载。垂直解耦 (Scale Up & Decouple):通过优化架构来提升单点能力或分离职责。解决主要问题数据容量和总吞吐量。将海量地图状态分布到多台机器。热点瓶颈和系统耦合。防止单个功能拖累整体。粒度粗粒度,按地理空间划分。细粒度,按功能或数据类型划分。关系基础:没有Zoning,地图根本无法承载大量用户。优化:在Zoning的基础上,让系统变得更健壮、高效。原创 2025-09-08 11:00:00 · 1000 阅读 · 0 评论 -
【BigWorld 游戏服务器引擎】Cell 架构设计介绍,及Java实现方案的探索
横向扩展(Scalability):通过动态增减CellApp和BaseApp的数量,可以轻松应对玩家人数的变化。世界可以做得非常大,只需增加更多的 Cell。负载分离(Load Separation):将不同性质的负载分离,避免了单一进程瓶颈。CPU 密集型的实时计算(CellApp)和 I/O 密集型的数据操作(BaseApp)互不影响。高效的视野管理(AOI):每个 Cell 只关心自己区域内和边界上的实体,大大降低了计算复杂度。容错性:某个CellApp。原创 2025-09-04 14:30:00 · 783 阅读 · 0 评论 -
【BigWorld 游戏服务器引擎】数据落地方案自动化详解,及Java实现方案的探索
当开发者在.def[Player]...BigWorld 的构建工具在编译时会动态地修改实体类的源代码。它不会生成一个简单的# 这是BigWorld自动生成的代码(概念性代码)# 1. 创建一个属性描述符对象来管理health值# 这个描述符知道它的数据类型是float,初始值是100# 2. 定义一个名为“health”的property,将其getter和setter绑定到上面的描述符@property。原创 2025-09-03 10:19:03 · 1056 阅读 · 0 评论 -
【SLG游戏服务器开发手册】开发规范——软件开发准则
本规范旨在旨在为 SLG(策略类游戏)服务器开发团队建立统一的软件开发准则,确保代码质量可维护性和扩展性,以应对 SLG 游戏复杂的游戏逻辑、庞大的数据量和长期运营的需求。原创 2025-08-27 11:54:17 · 706 阅读 · 0 评论 -
【游戏项目】大型项目Git分支策略与开发流程设计构想
对于大多数游戏项目,**方案一(特性开关)+ 方案四(功能分支隔离)**的组合通常是最佳选择,既能保持开发流程的流畅性,又能灵活控制功能发布。这种分支策略和开发流程提供了结构化的方法来管理游戏开发中的复杂性,同时保持了足够的灵活性来应对游戏开发中常见的变化和迭代需求。通过这种规范化的流程,可以确保功能开发有序进行,减少合并冲突,方便团队协作和代码追溯。代码审查通过后,合并到develop分支。当develop分支功能足够发布时,创建。对于游戏项目开发,我推荐采用改进的。在功能分支上进行开发,定期提交。原创 2025-06-11 17:00:00 · 973 阅读 · 0 评论 -
【SLG游戏服务器开发手册】常用算法与数据结构归纳。持续更新中......
一般状态数很少的,比如常见的一些城池状态切换,我都会采用状态机。而在战斗中,状态行为过多的,最好采用行为树实现层次化、动态的决策逻辑。核心原理:基于启发式搜索(如曼哈顿距离、欧几里得距离),通过评估函数(F=G+H)平衡路径代价与目标距离,优先扩展最优节点。在游戏中,为了简化物体之间的碰撞检测运算,通常会对物体创建一个规则的几何外形将其包围。FSM 是离散的数学模型,描述对象在有限个预定义状态中的切换逻辑,每个状态对应特定行为。将地图按菱形网格分块(如32x32),服务器仅同步玩家视野内的区块数据。原创 2025-08-18 11:51:05 · 881 阅读 · 0 评论 -
【SLG游戏服务器开发手册】后端研发技术规范 (持续更新中...)
【代码】【SLG游戏服务器开发手册】后端研发技术规范 (持续更新中...)原创 2025-08-20 17:30:00 · 1395 阅读 · 0 评论 -
【SLG游戏服务器开发手册】(ROK Like)沙盘地图篇一,菱形瓦片与笛卡尔坐标系的转换(附调试工具)
轴向坐标:以菱形网格对角方向为基准轴,记作(q, r)菱形瓦片宽度 w=2a,高度 h=a(宽高比2:1)原创 2025-07-09 11:09:13 · 514 阅读 · 0 评论 -
【SLG游戏服务器开发手册】命名规范篇——英文术语关键字定义约束指南
沙盘刷新元素现在三种分类: Resource、Threat、Military Facility。Raid、War、Military Facility: 邮件战报的分类(讨伐、战争、军事设施)Inferior(Good、Greate) Resource Zone: 低(中、高)级资源带。Peace Phase: 和平阶段、Protection Phase。Restricted HQ Area: 总部禁区(黑土地)Reinforce、Reinforcement: 增援。Ark Gene HQ: 方舟基因总部。原创 2025-07-07 14:23:45 · 913 阅读 · 0 评论
分享