跳到正文

VSSW Performance Fix

作者:feuerdrache0

A server-side performance addon for Valkyrien Skies Space War 0.6.18

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

VSSW Performance Fix

AI was used in the making of this project

A server-side performance addon for Valkyrien Skies Space War 0.6.18. The VSSW projectiles were lagging the game pretty hard, so here is a mod that fixes this!

Proven results

Tested live on a Forge 1.20.1 server while spamming laser cannons from a flying ship:

Metric Before After
VSSW server tick usage 3.56% 0.51%
Projectile tick cost 3.43% negligible
Sync packet overhead 3.52% 0.07%
Improvement — ~7× faster

The projectile system went from dominating the server tick to being smaller than CC:Tweaked’s tick handler.

What it fixes

1. Sync packet flood — Every projectile sent a SyncProjectilePacket to every player on the server, every physics tick (up to 4× per game tick). With 10 projectiles and 5 players this produced ~3000 packets/second. Fixed by replacing sendToAllPlayers with distance-gated, throttled sends.

2. Distance-based ticking — Every projectile ticked at full rate regardless of whether any player could see it. Fixed by bucketing projectiles into three tiers based on nearest player distance: full rate within 96 blocks, half rate within 192 blocks, and 1/4 rate beyond that.

3. Global projectile cap — No upper bound on simultaneous projectiles. Rapid-fire turrets can flood the server with thousands of live projectiles. Fixed with a configurable cap (default: 200).

4. Linear energy shield scan — Every projectile scanned all connector block entities in the world every physics tick to find shields. Fixed with a spatial grid cache that returns only nearby candidates.

5. Redundant chunk force-loading — Projectiles triggered disk I/O on already-loaded chunks every tick. Fixed by skipping the ticket if the chunk is already present.

6. Turret rotation spam — Every turret sent a block-entity sync packet every tick even when stationary. Fixed by suppressing setChanged() when rotation hasn’t changed.

Configuration

On first launch, config/vssw_perf_fix.properties is created with all defaults. Edit and restart to tune:

 
 
properties
# Tick rate tiers (blocks)
distanceTick.nearThresholdBlocks=96.0
distanceTick.midThresholdBlocks=192.0
distanceTick.farTickInterval=4

# Global cap
cap.maxProjectiles=200

# Sync packets
packets.syncIntervalTicks=3
packets.syncChunkRange=8

Requirements

  • Minecraft 1.20.1 — Forge 47.x
  • Valkyrien Skies Space War 0.6.18
  • Server-side only — clients do not need this mod

常见问题

VSSW Performance Fix 支持哪些 Minecraft 版本?

VSSW Performance Fix 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

VSSW Performance Fix 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

feuerdrache0 的其他作品

查看全部 →