<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>服务端权威 on PlumePHP</title><link>https://plumephp.com/tags/%E6%9C%8D%E5%8A%A1%E7%AB%AF%E6%9D%83%E5%A8%81/</link><description>Recent content in 服务端权威 on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Thu, 09 Sep 2021 09:12:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/%E6%9C%8D%E5%8A%A1%E7%AB%AF%E6%9D%83%E5%A8%81/index.xml" rel="self" type="application/rss+xml"/><item><title>战斗输入仲裁架构：服务端如何在预测、延迟和公平之间取舍</title><link>https://plumephp.com/game-server-combat-input-arbitration-architecture/</link><pubDate>Thu, 09 Sep 2021 09:12:00 +0800</pubDate><guid>https://plumephp.com/game-server-combat-input-arbitration-architecture/</guid><description>&lt;h2 id="背景问题通常不是突然出现的"&gt;背景：问题通常不是突然出现的&lt;/h2&gt;
&lt;p&gt;实时战斗服务端最难的地方，不是收到输入后执行技能，而是判断这个输入在当时是否应该成立。玩家本地看到自己在 320ms 前按下格挡，对手看到的是已经命中，服务端收到两个输入时又晚了几十毫秒。若完全相信客户端时间戳，外挂可以伪造过去；若完全相信服务端到达时间，高延迟玩家几乎没法玩。输入仲裁就是把这件事变成一套有边界、可观测、可解释的规则。&lt;/p&gt;</description></item></channel></rss>