# ブラウザMMORPGを作ろうとした
---
# TL;DR
ブラウザで遊べるアクションMMORPGを作った.

(完成したとは言ってない)
---
# デモ
**https://mmorpg2019.games.misw.jp**
chrome推奨
スマホも部分的に対応

---

---
## 主な機能
* 新規登録でアカウントを作ってログイン
* プレイヤーの見た目を自分で決められる
* クエストが存在.ボス部屋が存在
* チャットができる
* 複数人で協力(できないことはない)
* プレイヤーキルができる.
---
# Motivation
* 11/2,3の**早稲田祭**に公開するための企画
* Goの人とTSの人とCSSの人「**ブラウザゲ作りたくね?**」から始まった
* 6月あたりから夏休みをはさみ11月まで開発.
---
# 開発
* 人員 slackには**35人**,
* うちプログラムの人は**20人**
* 残りはグラフィック, サウンドの人
* しかし実際アクティブだったのは**1/3**程度
* プロ研のコミッターはおよそ5人程度.
---
## Contributerにありがとうを
(敬称略)
* タイトル... ろろ, はしどい, ローくん
* アニメーション... さかちゃん, ここなつ
* マップチップ... オダマキ, ごぼぬん, 藤汐
* BGM
* 校庭 ... タニシ
* バトル... ksk
---
## Contributerにありがとうを
コーディング
- backend
* Tsuzu, oguni, 白
- frontend
- oguni, かえるむ, れしい, biraki
---
## 主な使用技術
* Go
* サークルが所有するサーバー or heroku上で動いてる
* DBはpostgreSQL
* TS
* vue (ログイン画面, UI)
* PIXI.JS (ゲーム画面)
---
## 主な使用技術
* Rust
* ゲームで必要なツール作成(キャラクター生成やマップ生成)
* TsuzuがCI/CDを用意してくれた(Circle CI, GitHub Action)
---
現在のgithub

---
## 苦労した点
* サーバー絡みのバグ...
途中までちゃんとテストを書いていたが, 余裕がなくなり...
* コミッター育成
* フロントエンド人員が少ない.
* 複数言語が入り乱れると大変
---

---
* MMOは大変
* 無限にイベントを通知するJSONが
* 物理判定を導入しだすと計算量がア!
* チート対策は諦め
---
## 学んだこと
* 意外と動く.
* 限界を試してないが, 動くときはある程度動く
* 通信することを知った.
* 他プレイヤーの動きを線形補間するなど工夫
* プロマネがコードを書くのはアレ
* MMOは大変
* シャ○マスは偉大
* 使える時はUnityを使おう..
---
# 今後の展望
* 次の機会に向けて開発
* ゲームとしてのコンテンツを増やす
* いい感じのアニメーション管理(spineとか...?)
* できればチート対策を
* コミッターを増やしたい.
# まとめ
競技プログラミングだけではなくアプリケーションづくりもいいぞ
{"metaMigratedAt":"2023-06-15T01:25:51.874Z","metaMigratedFrom":"Content","title":"ブラウザMMORPGを作ろうとした","breaks":true,"contributors":"[{\"id\":\"08e6e19e-2c92-4bc4-b4e1-10388f6670e1\",\"add\":2450,\"del\":729}]"}