見出し画像

第二百二十回「タスクをしなかったら20000ダイス(=二百円相当)を誰かにあげるサービスを作る その4」

’23年12月23日


今日はひたすら寝てサボりにサボりまくったため、日記を書かなかったため、一時的に書いて、後にきちんと更新します。すみません。

内容を何を書いていいのか分からなかったから、更新しないでおこうと思ったのですが、メンターの方から質問が来ていたので、そちらの返答をこちらに書かせていただきます。

メンターの方からのメッセージ

note確認致しました。
しっかり仕様を把握したいため、いくつか質問がございます。
お手隙にご回答いただけるとありがたいです。
ーーー

A2 なるべく可能にしたいです。ダイスをベットする際にポイントを一旦預かる形にすれば、二つ以上同時に進行して同時に失敗してもダイスがマイナスになるということはなくせると思います。

「ダイスをベットする際にポイントを一旦預かる」という内容について、
ダイスとポイントは別物という事でしょうか?
もしそうであれば、それらの関係性について知りたいです。
(どこかに既に記載があり、私が読めていなかったとしたらすみません)

今書いてて思ったのは、タスクを一度にできる個数を無制限にしてしまうといくらでも成功数を増やすことができてしまうので、一度にタスクを別途する個数は成功数が例えば十回成功すれば一つ増やすといった形で制限したいと思います。

・タスクが10回成功する「前」は、タスクを10個まで一気に登録できる。
・タスクを10回成功した「後」は、タスクを1個ずつ登録できる。
こういった意味でしょうか?

兄貴にプレゼンするとかいうリンク先にどんなアイディアを考えているのか書いておいているのでご参考までにどうぞ。

拝見致しました。他サービスの内容についてもざっと把握しました。ありがとうございます。
記事を拝見した上で、会社の取り分があるとの事なので、取り分を記録する用のDBテーブルが追加で必要と考えますので、設計いただいた方が良いでしょう。
また、優先順位は低くて良いですが、将来的に、ユーザー側の画面とは別に管理者側(熊谷さん向け)の管理画面を作った方が良いと思います。
その画面で、取り分の金額を確認したり、ユーザーごとのデータを表示したりといった機能があると便利です。

A5 今考えている案ではベットできない(タスクを制作できない)ようにする予定です。ポイントが入らないと面白くないので、いつやめるのかは未定ですが、ログインボーナスが入ってくるようにしたいと思います。

ダイスが0を下回ってしまう場合の具体的な仕様としては、以下のような形で合ってますしょうか?
・ダイスがマイナスで表示される
・ベット可能な最低限のダイスが無いと、タスクを制作できない
・ログインボーナス or ダイス購入 をする必要がある
また、ログインボーナスについての仕様について、現段階で検討されていることがありましたら、教えていただきたいです。

もしタスクを同時に作る個数を制限する場合、タスクを最初に取り掛かった時間(最後というか最初というか現行のタスクが一つなくなる瞬間)を出す上でこのカラムが必要になる可能性があるなと感じました。ただ、その設計をすると、このカラムだけではnull以外の方法でタスクに取り掛かり中か終わったかを判断する方法を設定するのが難しいと言う問題があります。

statusのカラムを作る方法はいかがでしょうか?
値については、「タスク取り掛かり中」「タスク成功」「タスク失敗」と言う形です。
時間についてのカラムは別で作成しつつ、statusの管理はstatusカラムでやってしまうのが良さそうに感じます。
この方法にする場合、「タスクの成功・失敗フラグ(null許容)」カラムを、「status」カラムに置き換える形となります。
ーーー
クリスタで画面作れるのはすごいです。
仕上がった際には、是非確認させてください。
それでは、引き続きよろしくお願いします。

メンターの方からの質問の答え

Q1

A2 なるべく可能にしたいです。ダイスをベットする際にポイントを一旦預かる形にすれば、二つ以上同時に進行して同時に失敗してもダイスがマイナスになるということはなくせると思います。

「ダイスをベットする際にポイントを一旦預かる」という内容について、
ダイスとポイントは別物という事でしょうか?
もしそうであれば、それらの関係性について知りたいです。
(どこかに既に記載があり、私が読めていなかったとしたらすみません)

A1
ポイントの部分をダイスと書き換えてお読みください。僕の中でダイスとポイントが一緒くたになっている部分があります。単純ミスで申し訳ないです。

Q2

今書いてて思ったのは、タスクを一度にできる個数を無制限にしてしまうといくらでも成功数を増やすことができてしまうので、一度にタスクを別途する個数は成功数が例えば十回成功すれば一つ増やすといった形で制限したいと思います。

・タスクが10回成功する「前」は、タスクを10個まで一気に登録できる。
・タスクを10回成功した「後」は、タスクを1個ずつ登録できる。
こういった意味でしょうか?

A2

説明がわかりづらくてすみません。ここの部分の別途はベットです。
まず一個ずつタスクを登録できるようになっている状態でして、タスクを10個まで成功したら、それからあとはタスクを一個ずつ作れるようにするところから、一つ増やす形で二つずつ作れるようにする、と言ったような感じでした。その後、もう10個タスクが成功するごとにその都度3個を作れるようにする、と言った感じです。10個成功するごとに、一度に作れるタスクが一つ増えるという意味です。これでも説明が分からないということであればまた連絡ください。


Q3

兄貴にプレゼンするとかいうリンク先にどんなアイディアを考えているのか書いておいているのでご参考までにどうぞ。

拝見致しました。他サービスの内容についてもざっと把握しました。ありがとうございます。
記事を拝見した上で、会社の取り分があるとの事なので、取り分を記録する用のDBテーブルが追加で必要と考えますので、設計いただいた方が良いでしょう。
また、優先順位は低くて良いですが、将来的に、ユーザー側の画面とは別に管理者側(熊谷さん向け)の管理画面を作った方が良いと思います。
その画面で、取り分の金額を確認したり、ユーザーごとのデータを表示したりといった機能があると便利です。

A3
了解しました。今回のものはあまり必要でないと思いますが、今後必要になった時に作ることを検討してみたいと思います。

Q4

A5 今考えている案ではベットできない(タスクを制作できない)ようにする予定です。ポイントが入らないと面白くないので、いつやめるのかは未定ですが、ログインボーナスが入ってくるようにしたいと思います。

ダイスが0を下回ってしまう場合の具体的な仕様としては、以下のような形で合ってますしょうか?
・ダイスがマイナスで表示される
・ベット可能な最低限のダイスが無いと、タスクを制作できない
・ログインボーナス or ダイス購入 をする必要がある
また、ログインボーナスについての仕様について、現段階で検討されていることがありましたら、教えていただきたいです。

A4
将来的にはダイスがマイナスでも多少は使えるようにしようか悩んでいますが、今回に関してはゼロになってしまうとタスクを制作できない形にしたいと思います。
ログインボーナスに関しては20000ダイス(数字が無駄にでかい気もするので、2000ダイス=一回タスクが作れる分くらいの量)1日1回、特定の時間を過ぎたあとに特定のところをクリックするともらえるようにしようかと思います(クリックしないともらえない仕様です)。以前作ったこともあるのですが、戻るで何度も貰えてしまうザル設計だったので、(他の部分もですが)JavaScriptなどを駆使してポイント周りは一回しか加算されないようにしたいと思います。

Q5

もしタスクを同時に作る個数を制限する場合、タスクを最初に取り掛かった時間(最後というか最初というか現行のタスクが一つなくなる瞬間)を出す上でこのカラムが必要になる可能性があるなと感じました。ただ、その設計をすると、このカラムだけではnull以外の方法でタスクに取り掛かり中か終わったかを判断する方法を設定するのが難しいと言う問題があります。

statusのカラムを作る方法はいかがでしょうか?
値については、「タスク取り掛かり中」「タスク成功」「タスク失敗」と言う形です。
時間についてのカラムは別で作成しつつ、statusの管理はstatusカラムでやってしまうのが良さそうに感じます。
この方法にする場合、「タスクの成功・失敗フラグ(null許容)」カラムを、「status」カラムに置き換える形となります。
ーーー

A5
 了解しました。
 ただ、どちらにしろ「タスクが予定より早く終わった」というのを設定するのはプログラムが煩雑になる可能性があるのではと思いましたが、タスクを現状幾つ同時に進めているのかが分かればそんなのは気にしなくていいのだと気づきました。

Q6

クリスタで画面作れるのはすごいです。
仕上がった際には、是非確認させてください。
それでは、引き続きよろしくお願いします。

A6
クリップスタジオを使うと言っても、
文字を表示させているだけなので、(このノートの記事の上に表示するヘッダーが文字を表示させるだけど、一応クリップスタジオで作ってます。)しょぼいです。期待されるとガッカリすると思います。

また何か足りない部分がありましたら返答しますので、
よろしくお願いします。


この記事が気に入ったらサポートをしてみませんか?