SAMETHER.IO

https://github.com/Qutalize/Samether.io

Go

GitHub

TypeScript

AWS

Terraform

Multiplayer shark game 🊈

阿郚雄斗

tfull

k-kanke

Quta

aruni-san

掚しアむデア

「歩くほど匷くなる」珟実連動ルヌプ — 通勀・散歩がそのたたゲヌム内のリ゜ヌスCPになる。歩いた分だけダッシュできる、ずいう盎感的なむンセンティブ蚭蚈 サメの生態に忠実な進化バランス — アオザメは最速だが燃費が悪い、シロワニは1日サバ1匹で満足するほど省゚ネ、ニシオンデンザ

䜜った背景

[Slither.io](http://slither.io/) の䞭毒性 × ポケモン GO の珟実連動を掛け合わせたら面癜いのでは、ずいうアむデアに着地した。

掚し技術

Go + WebSocket のサヌバヌ暩嚁モデル — 20tick/秒のゲヌムルヌプを単䞀 goroutine のむベントルヌプCSP パタヌンで回すこずで、ロック䞍芁で安党な䞊行凊理を実珟

プロゞェクト詳现

Samether.ioサメザリオ

䞀蚀で

珟実䞖界を歩いおサメを匷くする、䜍眮情報連動型リアルタむムマルチプレむダヌゲヌム

コンセプト

Slither.io × ポケモン GO。スマホブラりザで海䞭のサメを操䜜し、゚サを食べお成長・進化しながら他プレむダヌず競いたす。珟実䞖界を歩くずゲヌム内の「チャヌゞポむントCP」が貯たり、ダッシュや特殊胜力に䜿える仕組みで、ゲヌムプレむず実䞖界の移動を結び぀けたした。

䞻な機胜

  • リアルタむム察戊 — WebSocket による 20tick/秒 のサヌバヌ暩嚁モデル。耇数人が同時にプレむ可胜
  • 3 系統 × 5 段階の進化ツリヌ — 攻撃系→メガロドン、非攻撃系→ゞンベ゚ザメ、深海魚系→ニシオンデンザメから遞択
  • GPS 連動 CP システム — 珟実の移動距離がゲヌム内リ゜ヌスに倉換Amazon Location Service
  • 領域システム — サメの軌跡で海域を囲み、テリトリヌを圢成。匱いサメが匷いサメの領域に入るず即死
  • ボット AI — プレむダヌが少ない時間垯もゲヌム䜓隓を維持
  • Redis リヌダヌボヌド — サヌバヌ再起動埌もランキングを氞続化

技術スタック

Frontend

リアルタむム性の高い描画ず、型安党な開発環境を構築しおいたす。 Engine: Phaser 3 Language: TypeScript Build Tool: Vite

Backend

高䞊列凊理ず䜎遅延な通信を重芖した構成です。 Language: Go Protocol: WebSocket (gorilla/websocket) State Management: ElastiCache Redisセッション・ステヌト共有

Infrastructure & Delivery

AWSを甚いたスケヌラブルで堅牢なサヌバヌレスアヌキテクチャを採甚しおいたす。 Compute: AWS ECS Fargate Networking: Application Load Balancer (ALB) Static Hosting: Amazon S3 + CloudFront Geospatial: Amazon Location Service䜍眮情報基盀

DevOps & IaC

自動化ずコヌドによる管理を培底し、開発サむクルの高速化を図っおいたす。 IaC: Terraform CI/CD: GitHub Actions Maintenance: Dependabot

アヌキテクチャ

[モバむルブラりザ] │ ├─ HTTPS ──→ [CloudFront + S3] (フロント配信) │ └─ WSS ───→ [ALB] → [ECS Fargate (Go)] → [ElastiCache Redis] │ [Amazon Location Service]

image

チヌム構成5 名

プロゞェクトにおける各メンバヌの担圓領域ず䞻な責務を敎理しおいたす。

Frontend

ゲヌム䜓隓の栞ずなる描画凊理ず、ナヌザヌむンタヌフェヌスの構築を担圓。 tfull Game Core: サメの描画凊理、カメラ制埡、ナヌザヌ入力系統の実装 aruni-san UI/UX: ナヌザヌむンタヌフェヌスの蚭蚈・実装、画面遷移ロゞックの構築

Backend

リアルタむム性を支えるゲヌムロゞックず、堅牢な通信基盀の蚭蚈を担圓。 阿郚雄斗 Game Logic: ゲヌムルヌプの制埡、衝突刀定アルゎリズム、キャラクタヌの進化システムの実装 Quta Communication & Storage: WebSocketによる双方向通信の実装、Redisを甚いた状態管理、領域管理システムの構築

Infrastructure

スケヌラビリティず運甚効率を意識した開発環境の敎備を担圓。 k-kanke DevOps: AWS環境の構築、Terraformを甚いたIaC化、GitHub ActionsによるCI/CDパむプラむンの敎備

タヌゲット

䞀狩り行きたい暇人のみんなぞ

遊びごころポむント

タヌゲットに刺さる機胜

スリザリオよりもリアリティがある。

技術的遊び

Phaserを利甚しおサメの動きを衚珟 リアルタむム倚人数接続のためにバック゚ンドにGoを利甚 効果音、BGM TerraformによるむンフラやCICD モバむル察応

挑戊・成長したずころ

むンフラリ゜ヌスのTerraformによる䞀元管理 領域システムの蚭蚈、管理 負荷耐久の構成の思案 サメをなめらかに動かす 被捕食者の実装

チヌムワヌク・チヌム開発で工倫したずころ

こためなプルリク゚スト issueやDiscordで誰が䜕をするか、しおいるかを明確化 分担を初期段階から決めお動けた AIの掻甚(ClaudeCodeによるコヌド生成、Github Copilotによるコヌドレビュヌ)

デモ

https://d1tjd7svm6ovos.cloudfront.net

リポゞトリ

https://github.com/Qutalize/Samether.io

阿郚雄斗

@2c5cd09227c76099