Đặt vấn đề
Xây dựng khung nền cho trò chơi đối 
kháng dựa trên giao thức IRC.
Lập trình đa phương tiện trên Android.
Kết luận.
Trình bày demo.
              
                                            
                                
            
 
            
                 40 trang
40 trang | 
Chia sẻ: zimbreakhd07 | Lượt xem: 1816 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang nội dung tài liệu Luận văn Xây dựng khung nền trò chơi đối kháng dựa trên giao thức IRC (minh họa trò chơi ca rô trên HĐH android), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Trường Đại học Cần Thơ
Khoa công nghệ thông tin và truyền thông
Bộ môn mạng máy tính và truyền thông
Sinh viên thực hiện Giáo viên hướng dẫn
Lê An - 1071503 TS. Ngô Bá Hùng
Trương Thiện Thành - 1071555 MSCB: 1124
Thái Thanh Tín - 1071639 1
XÂY DỰNG KHUNG NỀN TRÒ CHƠI 
ĐỐI KHÁNG DỰA TRÊN GIAO 
THỨC IRC
MINH HỌA BẰNG TRÒ CHƠI CA RÔ TRÊN 
HỆ ĐIỀU HÀNH ANDROID
 Đặt vấn đề
 Xây dựng khung nền cho trò chơi đối 
kháng dựa trên giao thức IRC.
 Lập trình đa phương tiện trên Android.
 Kết luận.
 Trình bày demo.
NỘI DUNG TRÌNH BÀY
2
 Bối cảnh
 Android đang là tiêu điểm của công nghệ.
 Nắm vững kiến thức Android là một thuận 
lợi cho sinh viên mới ra trường.
 Nhu cầu chơi game trên điện thọai di động 
đang trở thành một xu hướng.
 Hệ thống server IRC mạnh, miễn phí.
ĐẶT VẤN ĐỀ (1)
3
ĐẶT VẤN ĐỀ (2)
4
Game Server
Game client Game clientGame client
 Vấn đề đặt ra
 Trò chơi đối kháng là gì?
 Mô hình trò chơi đối kháng truyền thống.
 Nghiên cứu nền tảng công nghệ Android.
 Cách thức lập trình trên Android.
 Cách lập trình game đối kháng.
 Lập trình mạng trên Android.
 Hướng giải quyết
 Đưa ra mô hình game mới dựa trên IRC.
 Xây dựng khung nền trò chơi đối kháng trên IRC.
 Tìm hiểu và làm quen với lập trình trên Android.
 Xây dựng trò chơi đánh cờ ca rô hỗ trợ hai người 
chơi trên Android.
 Cài đặt các giao thức hỗ trợ chơi Online trên 
Android.
ĐẶT VẤN ĐỀ (3)
5
Chat client
Game client
Chat client
Bot quản lý
IRC Server
Game Server
Phân chia công việc
Phân 
hệ
Người thực hiện Công việc Thời 
gian
PH001 Thái Thanh 
Tín
Tìm hiểu về cơ chế lập 
trình mạng dưới Android.
2 tháng
PH002 Trương 
Thiện Thành
Xây dựng khung nền trò 
chơi đối kháng dựa trên 
giao thức IRC.
2 tháng
PH003 Lê An Lập trình đa phương tiện 
(Multimedia) dưới Android
2 tháng
PH004 Nhóm Xây dựng một trò chơi đối 
kháng online sử dụng giao 
thức IRC.
4 tháng
6
PHÂN Hệ PH002: 
XÂY DỰNG KHUNG NỀN TRÒ 
CHƠI ĐỐI KHÁNG DỰA TRÊN 
GIAO THỨC IRC
7
Mô hình hệ thống mạng irc
Khái niệm server, client
8
Khái niệm channel, channel 
operator
 Channel
 Channel operator
Kick
Ban
Topic
Mode
9
Chat trong IRC ?
 IRC là một giao thức chat theo mô hình 
client/sevrer.
 Chat như thế nào?
Lam̀ thế naò client xchat, 
client mirc có thể chat với 
nhau
#brlink
Lúc này 3 client 
có thể chat với 
nhau thông qua 
channel brlink
List channel
10
Giao thưć IRC
 Là mô hình client/server.
 Hoàn toàn miễn phí.
Dựa vào IRC để xây dựng mô hiǹh cho 
trò chơi đối khańg
11
Mô hình trò chơi đối kháng
12
Chat client
Game client
Chat client
Bot quản lý
IRC Server
Vai trò của các thành phần trong 
mô hình trò chơi đối kháng
 Server irc
 Bot
 La ̀thành phần quan trọng trong hệ thống.
 Nó vừa la ̀chatclient (trong hệ thống irc), vưà là bot 
quản lý hệ thống (trong mô hình trò chơi) và nó đã cài 
đăṭ giao thưć cho game.
 Device
 La ̀1 client chat, sư ̉dụng giao thức cho game ở trên để 
chơi game.
13
Xây dựng kịch bản
Quy trình nối kết
 Giai đoạn khởi tạo
 Giai đoạn nối kết
 Kênh đăng ký
 Kênh đăng nhập
 Tham gia kênh chơi
 Chơi cờ
14
Các kịch bản
15
Tham gia kênh chơi
Player1 Bot Player2
INVITE Player2 INVITE Player2 
Detect 
state 
player2
INVITE_BY Player1 
YESNo
ERR_ALREADYPLAY
Invite new player
ACCEPT /REFUSE 
player1
ACCEPT /REFUSE 
player1
ACCEPT_BY 
player2
Play1 change 
mine ?
REFUSE Player2
YES
No
YES
REFUSE_BY Player1
No
Player2 accept 
invite
16
Tham gia kênh chơi
Player1 Bot Player2
START player1 player2 START player1 player2
ROOM table pass 
session_player2
ROOM table pass 
session_player1
(Create table)
(Player1 join to table) (Player2 join to table)
PLAY PLAY
STATE STATE
Notify to start game
TURN X Y
TURN X Y
TURN X Y
TURN X Y
17
Quá trình chơi cờ
Bước Me: chính miǹh You: người cùng chơi
1 Đồng ý chơi cờ Đồng ý chơi cờ
2 Bàn cờ rỗng sẽ được khởi 
tạo
Bàn cờ rỗng sẽ được khởi tạo
3 Đánh một quân cờ. Chờ quân cờ từ Me
4 Gởi tọa độ quân cờ cho you Nhận quân cờ, hiển thị lên màn 
hình.
5 Chờ nhận quân cờ từ you. Đánh một quân cờ.
6 N
hận quân cờ và hiển thị lên 
màn hình.
G
ởi tọa độ quân cờ cho me.
7 L
ặp lại các bước trên cho đến khi một bên giành được thắng lợi 
sẽ gởi lêṇh WIN lên BOT xử lý kết quả và lưu trư ̃điểm.
18
19
PHÂN Hệ PH003: 
LậP TRÌNH ĐA PHƯƠNG TIệN 
(MULTIMEDIA) TRÊN 
ANDROID
NỘI DUNG TRÌNH BÀY
20
 Android là gì? Mục tiêu của Android.
 Dựa trên nền tảng Linux.
 Có một bộ phát triển phần mềm (SDK) linh 
động.
 Ứng dụng chạy trên máy ảo Dalvik.
 Ứng dụng được viết trên nền tảng java.
TỔNG QUAN VỀ ANDROID(1)
21
TỔNG QUAN VỀ ANDROID(2)
22
CỞ SỞ LÝ THUYẾT(1)
23
 Cung cấp sẵn bộ mã hóa và giải mã đa 
dạng cho các định dạng đa phương tiện – 
android.media.
 Hỗ trợ phát tập tin media từ nhiều nguồn 
dữ liệu khác nhau – class MediaPlayer.
 Cho phép ghi lại âm thanh, hình ảnh và 
video – class MediaRecorder.
Multimedia
24
 Được hỗ trợ bởi một thư viện đồ họa tùy chỉnh 
2D và OpenGL ES1.0 cho đồ họa 3D đạt hiệu suất 
cao.
 Để vẽ đồ họa trên Android thường có hai lựa 
chọn:
- Vẽ các thành phần giao diện với lớp View, 
VewGroup.
- Vẽ với Canvas.
Android Graphics
25
XÂY DỰNG ỨNG DỤNG(1)
26
 Phát biểu bài toán.
 - Xây dựng trò chơi đánh cờ đánh cờ ca rô hỗ trợ hai 
người chơi trên Android bao gồm các yêu cầu sau:
• Thiết kế game, thành phần giao diện hỗ trợ game 
online.
• Tích hợp âm thanh, hình ảnh vào game.
• Dễ dàng cài đặt các giao thức lên game để phục chơi 
game online trên khung nền IRC.
 Sơ đồ usecase của hệ thống
XÂY DỰNG ỨNG DỤNG(2)
User
Login
Register
Change Password
Get Password
Chat
Play Game Ca Ro Online
27
 Lớp GoMoKuGame
XÂY DỰNG ỨNG DỤNG(2)
GoMoKuGame
+KEY_PLAYER: string
+gameview: GoMoKuView
+gameInProgress: boolean
+board: int
+EMPTY: int
+RED: int
+BLUE: int
+GAME_SIZE: int
+currentPlayer: int
+mp: MediaPlayer
+doNewGame()
+winner()
+count()
+getTile()
+checkWin()
+playgame()
28
 Lớp GoMoKuView
XÂY DỰNG ỨNG DỤNG(3)
GoMoKuView
+onDraw()
+onKeyDown()
+select()
+onSizeChange()
+getRect()
+onTuochEvent()
29
 Lớp BackgroundProgress
 Lớp BackgroundService
XÂY DỰNG ỨNG DỤNG(4)
30
IRC Server
Send/Receive
Message
Game
 Giao diện trò chơi
TRÌNH BÀY DEMO(1)
- Màn hình chính
31
 Giao diện trò chơi
 Đăng ký Đăng nhập
TRÌNH BÀY DEMO(2)
32
 Giao diện trò chơi
 Chơi game Cửa sổ chat
TRÌNH BÀY DEMO(3)
33
 Quá trình demo
1) Chạy demo giữa hai bộ mô phỏng.
2) Chạy demo giữa một bộ mô phỏng và 
một phần mềm chat client IRC.
TRÌNH BÀY DEMO(4)
34
Chạy demo giữa hai bộ mô phỏng
35
Bot Manager/
Chat Client
PC - Game client/
Chat Client
IRC Server
PC - Game client/
Chat Client
Demo giữa một bộ mô phỏng và 
một phần mềm chat client IRC
36
Bot Manager/
Chat Client
IRC Server
PC - Game 
client/
Chat Client
Software 
Chat Client/
Game client
 Kết quả đạt được của nhóm
 Đã xây dựng hoàn chỉnh trò chơi đánh cờ ca rô online.
 Xây dựng tốt giao thức cho trò chơi đối kháng, trên 
khung nền IRC.
 Có được kiến thức lập trình mạng, lập trình đồ họa, 
lập trình đa phương tiện dưới Android.
 Mỗi thành viên trong nhóm đều đã hoàn thành tốt đề 
tài của mình.
KẾT LUẬN(1)
37
KẾT LUẬN(2)
 Hạn chế của ứng dụng
 Thời gian chờ khi kết nối vào IRC lâu, phụ thuộc 
sống còn vào server IRC.
 Giao diện chưa đẹp lắm.
 Một số lỗi còn mắc lỗi khi sử dụng thực tế.
38
KẾT LUẬN(3)
 Hướng phát triển
 Khắc phục các lỗi còn mắc phải.
 Cải tiến giao diện.
 Bổ sung thêm một số chức năng. 
 Xây dựng thêm các game mới.
39
Cám ơn quý thầy cô và 
các bạn đã theo dõi!
40
            Các file đính kèm theo tài liệu này:
 [LVIT052] - Xây dựng khung nền trò chơi đối kháng dựa trên giao thức IRC(minh họa trò chơi ca rô trên HĐH android).pdf [LVIT052] - Xây dựng khung nền trò chơi đối kháng dựa trên giao thức IRC(minh họa trò chơi ca rô trên HĐH android).pdf