Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Duel Shooting Online #TechLunch
Search
Livesense Inc.
PRO
April 23, 2014
Technology
72
0
Share
Duel Shooting Online #TechLunch
2012/06/06(水) @ Livesense TechLunch
発表者:春日 太志
Livesense Inc.
PRO
April 23, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
50
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
61
27新卒_総合職採用_会社説明資料
livesense
PRO
0
4.9k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
9.4k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
390
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
620
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
64k
Other Decks in Technology
See All in Technology
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
1
180
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
0
200
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.7k
AWSアップデートから考える継続的な運用改善
toru_kubota
2
360
なぜ、IAMロールのプリンシパルに*による部分マッチングが使えないのか? / 20260518-ssmjp-iam-role-principal
opelab
2
150
Kaggle未経験社員をメダリストに育てる「AIドラゴン桜」
lycorptech_jp
PRO
0
110
TSKaigi 2026 - Auth.jsからBetter Authへの 移行に見る「型とランタイム」の 設計思想の変化
teamlab
PRO
1
140
AI時代に改めて考える、ドメイン駆動設計 - モデリングが「AIへの共通言語」になる
littlehands
5
980
AIのために、AIを使った、Effect-TSからの脱却 〜テストを活用した安全なリファクタリングの進め方〜
bitkey
PRO
1
240
Slack MCPでインシデント対応とFAQ生成を加速する:社内ワークショップの実践
lycorptech_jp
PRO
0
250
コーポレートサイトのアクセシビリティ改善とJIS準拠への実践
lycorptech_jp
PRO
2
120
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
300
Agile that works and the tools we love
rasmusluckow
331
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
300
YesSQL, Process and Tooling at Scale
rocio
174
15k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Designing Powerful Visuals for Engaging Learning
tmiket
1
370
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
Transcript
@bar_̲row 2012年年06⽉月06⽇日 Duel Shooting Online Livesense Inc. 1
⽬目次 Livesense Inc. 2 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
⽬目次 Livesense Inc. 3 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
1. 開発のきっかけ Livesense Inc. 4 9leapで付いたコメントにモヤモヤしたから
⽬目次 Livesense Inc. 5 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
2-‐‑‒1. ゲームの仕様(機体) Livesense Inc. 6 White Demon Red Comet VS
2-‐‑‒2. ゲームの仕様(機体) Livesense Inc. 7 ???
2-‐‑‒2. ゲームの仕様(全体) Livesense Inc. 8 1. アクセスが2名単位でたまると即決闘 2. どちらかのHPが0になったら終了了(画⾯面が固まる) 3.
操作している機体のみ効果⾳音(mp3)が鳴る 4. 同じ⾊色の機体同⼠士で対戦することはない 5. ⾃自機は下に、敵機は上に表⽰示される 6. フィールドの⾼高さと幅は 480*720 固定とする 7. 推奨ブラウザは Chrome※ ※Smart Device でも動くが最適化されていない ※IE8 でも動くがCSS3が適⽤用されずにレトロな感じ
2-‐‑‒3. ゲームの仕様(コマンド⼀一覧) Livesense Inc. 9
⽬目次 Livesense Inc. 10 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
3. 使った技術・サービス Livesense Inc. 11 ※Audioのみ ※routingのみ
⽬目次 Livesense Inc. 12 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
4. 開発作業⼯工程 Livesense Inc. 13 1. 前作レガシーコードの解体(2⼈人⽇日) 2. サーバーサイド Javascript
の把握(0.08⼈人⽇日) 3. PaaS の把握(0.04⼈人⽇日) 4. オンライン⽤用処理理の実装(3⼈人⽇日) 計 5.12⼈人⽇日
⽬目次 Livesense Inc. 14 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
5-‐‑‒1. C/Sの通信内容(ゲーム開始まで) Livesense Inc. 15 Server Client Http: Request Http:
Response Opening 画⾯面表⽰示 双⽅方向通信開始 WS: Connection 決闘者Queueに接続者ID追加
5-‐‑‒2. C/Sの通信内容(ゲーム開始まで) Livesense Inc. 16 Server Client WS: ⾃自機敵機⾊色情報 ⾃自機と敵機の⾊色情報を元に画⾯面作成
ゲーム開始 WS: ⾃自機敵機⾊色情報くれ マッチングしてたら「⾃自機敵機⾊色情報」を返す していなかったら「待て」を返す WS: 待て 5秒後に「⾃自機敵機⾊色情報くれ」を再送信
5-‐‑‒3. C/Sの通信内容(ゲーム中〜~終了了) Livesense Inc. 17 Server Client A WS: ⽩白が撃つ
Client B WS: ⽩白が撃つ WS: ⽩白が撃つ WS: 勝利利 WS: disconnect ⾃自機が撃つEffect 敵機が撃つEffect 通信停⽌止 画⾯面更更新停⽌止 You win 通信停⽌止 画⾯面更更新停⽌止 You lose
⽬目次 Livesense Inc. 18 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
6. 苦労した点 Livesense Inc. 19 レガシーコードいくない ・前作オフライン版のコードは拡張性が皆無だった ・⾚赤いのを動かせるようにするまで時間を要した オフラインの操作性とオンラインの整合性とを保つ ・操作性を求めるとレイテンシが整合性の邪魔をする
・厳密なゲーム進⾏行行のために同期を強めると 動きがモッサリし過ぎてストレス ・最⼩小限の同期で操作性と整合性とをトレードオフ
⽬目次 Livesense Inc. 20 1. 開発のきっかけ 2. ゲームの仕様 3. 使った技術・サービス
4. 開発作業⼯工程 5. C/Sの通信内容 6. 苦労した点 7. デュエルスタンバイ!
7. デュエルスタンバイ! Livesense Inc. 21 http://duelshooting-online.herokuapp.com/ デバッグにご協⼒力力をお願いいたします。 http://duelshooting-pocapocaunty.dotcloud.com/ Websocket Comet