Skip to content

Echore-Server/StarProjectBlog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 

Repository files navigation

マインクラフトでゲームを作ろうとしたときにああ、マインクラフトってクソなんだな。
と思ったことについて書いていきます。

Note

このリポジトリの内容はQiitaに移行されました!
Qiita

衝撃吸収を貫通するダメージについて

体力と衝撃吸収を持っているプレイヤーがいるするじゃないですか。
通常のゲームプレイにはないけど、衝撃吸収を貫通してダメージを与えたい!
そうして実装した後、気づくでしょう。

サーバー側の体力はあってるのに、クライアントの表示だと体力は減らずに衝撃吸収が減っているぞ?

マジでカス。

なぜかクライアント側で勝手にダメージ計算されて衝撃吸収に肩代わりされます。

普通に体力を減らしてクライアントに送信するだけだとうまくいきません。
なのでダメージ処理、つまり体力の増減処理をする前にクライアントの衝撃吸収を0にした後、処理を実行します
こうすれば勝手に肩代わりされずに済みます

(Health = 20, Absorption = 10)

体力増減を検知 (5 の衝撃吸収貫通ダメージ)
↓
UpdateAttributesPacket (Health = 20, Absorption = 0)
↓
体力増減処理 (ダメージ処理)
↓
UpdateAttributesPacket (Health = 15, Absorption = 10)
↓
TADA!!

About

開発にっき(おおきくなったらQiitaに移植予定)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published