QuestNotes開発ブログ

MMOTRPG「QuestNotes(クエストノーツ)」を開発しています。不具合や要望があればぜひご一報ください。 

ゼルダTotKからの学び

2023年も早くも半分が終わりました。。。
6月は無事ハイラルを救ってきて、ゼルダ新作からたくさんの大切なことを教えてもらいました。
失敗を恐れず一歩踏み出す勇気、発想の転換と柔軟な思考の大切さ、そして、時にはごり押しが問題を解決すること。

アクティブシーンのリトライ

ともあれ、一歩踏み出して挑戦するためには「失敗してもやり直せる」という後ろ盾があってこそだとも思うので、QuestNotesにも「リトライ」がやはりほしいなーと思いました。
というわけで、今回は「アクティブシーンのリトライ」の実装の再挑戦をしてみました。

以前も一度挑戦して挫折したのですが、方針を少し変えて改めて取り組んでみました。
(クエストキャンセルのデータリセットもサーバー側で処理していたので、それの延長で実装しようとしてたのですが、前回それは実装コストもサーバーの負担も大きすぎるのであきらめてました。。。)
今回はクライアント側とサーバー側で半々で処理をする形ならばいくつかの懸念点が緩和するので、後はごり押しで実現できればと思いました。

とりあえず試しにシングルプレイだけで実装になります。
(依然サーバー負担はあるので一旦様子見を兼ねて回数制限はつけました。。。)
あと、パブリックは構造上難しいのですが、パーティー組んで普通のクエスト遊ぶときにはできるようにできればと思ってます。

その他、以下の制限があります。
・グローバル変数は巻き戻りません。
・コントロールは消えます(ボード再参加と同じ)

この辺の兼ね合いだったりでリトライしてほしくない場合や自前の救済の仕組みだけを使ってほしい場合は、シナリオ設定でリトライ禁止に設定してもらえればと思います。

以上!
失敗しても前に進んでいければと思っています!
色々踏み出していければと思うので、引き続きよろしくお願いします。
そういえば、最近Diablo4のハードコア(死んだらコンティニューなしのキャラロスト)を見てて、あれはあれで緊張感あってよいなーとも思いました。