decay-upkeep

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Decay & Upkeep

建筑损耗与维护

Timer-based building decay and resource-based upkeep for survival games.
为生存游戏打造的基于计时器的建筑损耗与基于资源的维护系统。

Quick Start

快速开始

javascript
import { DecayManager } from './scripts/decay-manager.js';
import { UpkeepSystem } from './scripts/upkeep-system.js';
import { ToolCupboard } from './scripts/tool-cupboard.js';

// Decay without protection
const decay = new DecayManager({ 
  mode: 'rust',
  decayMultiplier: 1.0 
});
decay.addPiece(piece);
decay.tick(deltaTime); // Called every frame/tick

// Tool Cupboard protection
const tc = new ToolCupboard({
  radius: 30,
  upkeepCost: { wood: 100, stone: 50 }
});
tc.setPosition(position);
tc.depositResources({ wood: 500, stone: 250 });
// Protected pieces won't decay while upkeep is paid
javascript
import { DecayManager } from './scripts/decay-manager.js';
import { UpkeepSystem } from './scripts/upkeep-system.js';
import { ToolCupboard } from './scripts/tool-cupboard.js';

// 无保护状态下的损耗
const decay = new DecayManager({ 
  mode: 'rust',
  decayMultiplier: 1.0 
});
decay.addPiece(piece);
decay.tick(deltaTime); // 每帧/每刻度调用一次

// Tool Cupboard保护
const tc = new ToolCupboard({
  radius: 30,
  upkeepCost: { wood: 100, stone: 50 }
});
tc.setPosition(position);
tc.depositResources({ wood: 500, stone: 250 });
// 维护费用已支付时,受保护的建筑部件不会产生损耗

Reference

参考资料

See
references/decay-upkeep-advanced.md
for:
  • Decay rate formulas by material
  • Tool Cupboard mechanics (Rust pattern)
  • Upkeep scaling with base size
  • Server performance benefits
  • Anti-raid delay mechanics
查看
references/decay-upkeep-advanced.md
获取以下内容:
  • 基于材质的损耗率公式
  • Tool Cupboard机制(Rust模式)
  • 随基地规模扩展的维护成本
  • 服务器性能提升效果
  • 防突袭延迟机制

Scripts

脚本文件

  • scripts/decay-manager.js
    - Tick-based decay, material rates, damage states
  • scripts/upkeep-system.js
    - Resource drain, calculation, UI data
  • scripts/tool-cupboard.js
    - Protection radius, authorization, resource storage
  • scripts/cleanup-scheduler.js
    - Server-side cleanup of abandoned structures
  • scripts/decay-manager.js
    - 基于刻度的损耗、材质损耗率、损坏状态管理
  • scripts/upkeep-system.js
    - 资源消耗、计算、UI数据处理
  • scripts/tool-cupboard.js
    - 保护范围、权限验证、资源存储
  • scripts/cleanup-scheduler.js
    - 服务器端废弃建筑自动清理

Decay Modes

损耗模式

  • Rust: Linear decay over 8-24 hours (material dependent), prevented by Tool Cupboard
  • ARK: Slower decay (days to weeks), tribe-based protection
  • Minecraft: No decay (creative/survival), optional via mods
  • Rust:线性损耗,时长8-24小时(取决于材质),可通过Tool Cupboard阻止
  • ARK:损耗速度较慢(数天至数周),基于部落的保护机制
  • Minecraft:无损耗(创造/生存模式),可通过模组添加

Design Philosophy

设计理念

Decay serves dual purposes in survival games: gameplay balance (prevents infinite hoarding) and server performance (removes abandoned bases). The Tool Cupboard pattern elegantly ties both together—players must actively maintain bases, and inactive players' structures automatically clean up.
损耗机制在生存游戏中具有双重作用:平衡游戏玩法(防止无限囤积)和优化服务器性能(移除废弃基地)。Tool Cupboard模式巧妙地将两者结合——玩家必须主动维护基地,而闲置玩家的建筑会被自动清理。