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
0
66
Duel Shooting Online #TechLunch
2012/06/06(水) @ Livesense TechLunch
発表者:春日 太志
Livesense Inc.
PRO
April 23, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
2.5k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
53
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.5k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
440
26新卒_総合職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
38k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
270
EM候補者向け転職会議説明資料
livesense
PRO
0
130
Other Decks in Technology
See All in Technology
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
160
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
3
360
Create Ruby native extension gem with Go
sue445
0
130
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
460
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
400
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
490
Apache Spark もくもく会
taka_aki
0
140
テストを軸にした生き残り術
kworkdev
PRO
0
220
今日から始めるAWSセキュリティ対策 3ステップでわかる実践ガイド
yoshidatakeshi1994
0
120
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
200
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
270
Bedrock で検索エージェントを再現しようとした話
ny7760
1
110
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How GitHub (no longer) Works
holman
315
140k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Automating Front-end Workflow
addyosmani
1370
200k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
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