Slide 1

Slide 1 text

Shinyで父親の威厳を 回復した話 @kosugitti 1

Slide 2

Slide 2 text

2 &OKPZ4QMBUPPO

Slide 3

Slide 3 text

Splatoon3とは • 特殊な武器を使ってインクを撃つ(水鉄砲のような)バトル ゲーム。インクを塗る面積で争うナワバリバトルのほか,特別 なルールで争うガチマッチ,一人で楽しむストーリーモード などがあります。 • キャラクタ性能に違いはなく,ブキ・ギア(衣装)の組み合わ せで自分にあった装備をつくってゲームに挑みます • ブキは110種類もある!(いくつかのカテゴリにわけられま すが)ので,組み合わせも多彩! 3

Slide 4

Slide 4 text

お父さんは 下手の横好きです 4 IUUQTTUBUJOLͱ͍͏αΠτͰूܭΛͱΔ͜ͱ͕Ͱ͖·͢ɻ ฏۉ,JMM%FBUI

Slide 5

Slide 5 text

子供は巧くて飽きっぽい • 基本ルールに飽き足らず,「武器をランダムに変えて遊ぶ」と いうローカールルールを追加しはじめる • 最初にキルした/された相手の武器を次の試合では使う ようにしよう! • 右隣の人の武器を次の試合では使うようにしよう! • 完全にランダムにするよう→スマホのルーレットアプリを 使って出た目を次の試合で使うようにしよう! 5 ΋ͪΖΜ͓෕͞Μ͸ࣗ෼ͷ֫෺͢Βຬ଍ʹѻ͑ͳ͍ͷͰɼΑΓνʔϜͷ͓ՙ෺ʹɻ

Slide 6

Slide 6 text

運用上の問題 • 試合の途中で次の武器が決まっても,試合中に「あれ,俺の 次の武器なんだっけ?」と忘れてしまう • ルーレットアプリでは1回で1人分の回転しかできない • 次の試合までにメンバー分の「武器の選定」「武器の変 更」「武器に合った装備の変更」が間に合わない • スマホの画面が小さく,回覧しにくい。 6 プログラム的には難しくなさそうな要件?

Slide 7

Slide 7 text

Rで実装 • ルーレットはプログラミングの初歩的演習 課題。 • Rでリスト(データセット)からsample関数 で好きな数だけ取り出せば良い。重複も含 める場合はreplace = TRUEで。 • 結果をブラウザで表示するようにすれば大 画面化&画面共有も可能,スマホでもみら れる→Shiny AppでおK 7

Slide 8

Slide 8 text

やってみたShiny App • ShinyAppはui.Rとserver.Rの2つのファイルだけ • uiとserverを行き来する変数だけイメージできれば簡単に つくれます • chatGPT先生に「ボタンを押したらルーレットが回るアプリ を作りたい」という雑な相談から始めて,半日でプログラミ ング終了(ほとんどコピペ。ありがとうGPT先生) • もちろんRstudioで作って,shinyapps.ioで公開〜 8 IUUQTLPTVHJUUJTIJOZBQQTJP4QMB@8FBQPO-PU

Slide 9

Slide 9 text

9 IUUQTLPTVHJUUJTIJOZBQQTJP4QMB@8FBQPO-PU

Slide 10

Slide 10 text

10 Կ౓͔όʔδϣϯΞοϓͯ͠ɼ $47ϑΝΠϧͰॻ͔Εͨಠ੍ࣗ໿ϧʔϧΛ௥ՃͰ͖ΔΑ͏ʹɻ

Slide 11

Slide 11 text

「おとうさん,すげえ」 • ゲーム外でゲームに貢献,子供達からの支持が(一時的に) 跳ね上がりました • 週末の自由研究ぐらいのつもりでやってみましたが,実際半 日程度で実装できました。すごく簡単だぞShinyApp!す ごく助けてくれるぞchatGPT! • これぐらいのお遊びならshinyapp.ioで公開できるから, デプロイ先をどうするかとかあんまり考えず,とりあえず やってみるというのもいいかも〜 11

Slide 12

Slide 12 text

Enjoy and !

Slide 13

Slide 13 text

宣伝 • 本業は心理統計屋です。最近はテスト理論に関するパッケー ジを開発してました。これもShinyAppにしたら便利かな? 13

Slide 14

Slide 14 text

14 宣伝2 ͓͍Ͱ·ͤ΍·͙ͪ