diff --git a/at.md b/at.md new file mode 100644 index 0000000..fe45ca4 --- /dev/null +++ b/at.md @@ -0,0 +1,24 @@ +atprotoを利用したゲームの仕組みを解説。 + +# 配信 + +まずは配信の仕組みを解説します。 + +https://o.syui.ai/post/syui.ai/3l7lj463zbo2m + +この仕組みはatで作成されています。コメント(チャット)はoauthでログインしているaccount(bluesky)のpdsに保存され、投稿自体もpdsに保存されます。 + +https://at.syu.is/at/did:plc:uqzpqmrjnptsxezjx4xuh2mn/ai.unravel.syui.post/3l7lj463zbo2m + +プレイヤーはlive配信中にobsで録画もします。配信終了後にvideoをrestreamer(server)にuploadします。live playerをvideo playerに置き換えたページに更新すればokです。 + +ただし、この場合、liveするたびにurlが変更されますので、配信時には新しいurlを作って共有する必要があります。 + +# ゲーム + +ゲームアカウントもこのような仕組みで実装できればと考えています。つまり、oauthでログインして、例えば、collectionに`ai.game.syui.status`を作ります。スタート時にそれを読み込んでキャラクターのパラメータに反映させます。レベルが上がると上書きされるか新たに追加されます。 + +今までは自作apiを使っていましたが、独自のpdsを立てるか、blueskyのpdsを使うとこのようなことが可能です。ゲームデータはpdsに保存されるので個人のsnsアカウントに紐づいています。 + +ゲームを削除したいときは`ai.game.syui.status`などを削除すればいいでしょう。自分でapiを実行しなければならないので開発者用ではありますが、こちらでツールやuiを用意することもできます。 +