1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài 112 ứng dụng game cờ vua sử dụng java android sdk

37 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 2,74 MB

Nội dung

Cờ vua là một trò chơi chiến thuật đã tồn tại hàng thế ky, nỗi bật với tính cạnh tranh và khả năng rèn luyện tư duy của người chơi.. Cờ vua, một trò chơi chiến thuật nồi tiếng và được yê

Trang 1

BO GIAO DUC VA DAO TAO TRƯỜNG 841B@QGÔNGNGHỆ ĐÔNG Á TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

BÀI TẬP LỚN HỌC PHẢN: PHÁT TRIEN UNG DỤNG VỚI THIẾT BỊ

BÀI TRdLỚN

HOC PHAN: PHAT TRIEN UNG DUNG CHO THIET BI DI BONG

CHU DE 6: GAME GIAI TRI

Dé tai 112: Ungedgyig game eo XNA RCE Pep Android SDK

Dé tai 112: Ung dung game co vua sir dung Java Android SDK

STT Sinh viên thực hiện

Sinh viên thực hiê

1

Phạm Lương

Mã sinh viên

Lop

Diém bang so Điểm bằng chữ

oa

Pham ea uốc Trung

Trang 2

MUC LUC

LOI MO DAU

CHUONG 1: TONG QUAN VE DE TAIL

1.2 Phạm vi đề tài

1.3 Dự kiến công việc

1.3.2 Dự kiến thời gian phát triển : 8 tuần

2.1.4 Thống kê

2.2.1 — Giao diện chính

2.2.4 Giao diện chơi online

2.3 Thiết kế các thành phan ứng dụng

2.3.1 Thiết kế Acdivity chính:

2.3.2 Thiết kế Activity cho chế độ chơi 2 người trên cùng màn hình:

2.3.3 Thiết kế Activity cho chế độ chơi với bot: -5 ss<

2.3.4 _ Thiết kế Activity cho chế độ chơi online: . -55-<5

2.3.5 Thiết kế các lớp đối tượng (Model cÏaSS€S): 5.555 s<<ss5

Trang 3

2.5 Kết luận chương 2

16

18

3.1.3 Dữ liệu cho bo( chơi Cờ co 0 Y3 11 85 9 ng 20

3.2 Xây dựng giao điện ứng đỤng o0 5G S9 9 9115515151551 115 22 3.3 Xây dựng các thành phần ứng dụng (m0(uÌ€) 5 <5 5 55s ssssssssss s5 28

3.3.1 Module quản lý người chơi (Player Management) - 28

34 35

Trang 4

DANH MUC CAC BANG BIEU VÀ SƠ ĐỎ

1 Giao dién chinh 12

9 Giao dién chinh 22

13 Giao diện tạo phòng 25

15 Giao diện giới thiệu 26

Trang 5

Thông qua đề tài ứng dụng game cờ vua sử dụng java android SDK, chúng em không chỉ xây dựng một sản phâm, mà còn tạo ra một trải nehiệm đáng nhớ và thực tế trong quá trình học tập và ứng dụng kiến thức vảo thực tế Đây là một hành trình không chỉ là về kiến thức, mà còn về sự sáng tạo, học hỏi

và đóng góp tích cực vào sự phát triển của cộng đồng Chúng em đặt niềm tin vào sự thông cảm và góp ý chân thành từ phía thầy đề bài tập lớn của chúng em ngày cảng hoàn thiện và phát triển Đồng hành cùng sự phát triển này là sự cam kết tiếp tục học hỏi và nghiên cứu sâu rộng hơn về lập trình, dé ching em co thé đóng sóp tích cực và mang lại ø1á trị thực sự trone lĩnh vực này

CHƯƠNG 1: TONG QUAN VE DE TAI Giới thiệu đề tài

Trang 6

Cờ vua là một trò chơi chiến thuật đã tồn tại hàng thế ky, nỗi bật với tính cạnh tranh

và khả năng rèn luyện tư duy của người chơi Với sự phát triển nhanh chóng của công nghệ thông tin và di động, nhu cầu giải trí và học hỏi qua các ứng dụng di động ngày

cảng tăng Người chơi hiện nay mong muốn có thể tham gia vào các trận đầu cờ vua

mọi lúc, mọi nơi, từ việc luyện tập cá nhân đến việc thi đấu trực tuyến với bạn bè hoặc người chơi toàn cầu Cờ vua, một trò chơi chiến thuật nồi tiếng và được yêu thích trên toàn thế giới, không chỉ mang lại niềm vui mà còn giúp rèn luyện tư duy, khả năng lập

kế hoạch và phản ứng nhanh Trong bối cảnh công nghệ hiện đại, việc phát triển một

ứng dụng game cờ vua trên nền tảng Android là cơ hội dé đưa trò chơi này đến gần

hơn với người dùng, cho phép họ trải nghiệm ở bất kỳ đâu và bất kỳ lúc nao

Mục tiêu của đề tài

Cung cấp trải nghiệm chơi cờ vua: Tạo ra một môi trường chơi cờ vua thú vi, cho

phép người dùng trải nghiệm trò chơi ở bất kỳ đâu và bất kỳ lúc nào

Rèn luyện tư đuy chiến lược: Giúp người chơi cải thiện khả năng tư duy chiến lược

và phản ứng nhanh thông qua việc thực hành và đối đầu với các đối thủ khác

Hỗ trợ nhiều chế độ chơi: Cung cấp các chế độ chơi đa dạng, bao gồm chơi đơn với

AI và chơi trực tuyến với bạn bè hoặc người chơi khác, từ đó nâng cao tính hấp dẫn của ứng dụng

Theo dõi và phân tích ván đấu: Tính năng theo dõi lịch sử ván đấu giúp người chơi

có thê phân tích và rút kinh nghiệm từ các nước đi của mình, từ đó cải thiện kỹ năng chơi

Khuyến khích sự kết nối cộng đồng: Tạo ra một nền tảng cho những người yêu thích cờ vua giao lưu, học hỏi lẫn nhau và tham gia các giải đấu nhỏ

Dam bao tính hợp lệ và công bằng: Xây dựng một hệ thống kiểm tra tính hợp lệ của các nước đi, đảm bảo trải nghiém choi céng bang cho tat cả người dùng

Tối tu hóa hiệu suất ưng dụng: Đảm bảo hoạt động mượt mà trên nhiều thiết bị Android, mang lại trải nghiệm tốt nhất cho người dùng

Lợi ích của dé tai

Trang 7

Nâng cao kỹ năng tư duy: Ứng dụng giúp người choi phat triển khả năng tư duy

chiến lược, phân tích tình huỗng và ra quyết định nhanh chóng, từ đó cải thiện kỹ năng

tư duy tổng quát

Giải trí và thư giãn: Cung cấp một không gian giải trí lành mạnh, giúp người chơi

thư giãn sau những giờ học tập và làm việc căng thắng

Tiếp cận dễ dàng: Với việc phát trién trên nền tảng Android, người dùng có thê dễ

dàng tải xuống và chơi trò chơi trên thiết bị di động của mình mọi lúc, mọi nơi

Chơi với bạn bè và người chơi khác: Tính năng chơi trực tuyến cho phép người dùng kết nối và thi đấu với bạn bè hoặc những người chơi khác trên toàn thế giới, tạo

cơ hội p1ao lưu va học hỏi

Theo đối tiến bộ: Người chơi có thê xem lại lịch sử các ván đấu, từ đó phân tích và cải thiện chiến lược cá nhân Điều này giúp họ nâng cao trình độ qua thời gian

Khuyến khích tỉnh thân cạnh tranh: Tính nang thi đấu trực tuyến và lưu trữ thành tích tạo ra một môi trường cạnh tranh lành mạnh, khuyến khích người chơi không

ngừng cải thiện kỹ năng

Giáo đục và phát triển cá nhân: Ứng dụng không chỉ mang lại giải trí mà còn giáo dục người chơi về các chiến thuật và kỹ thuật trong cờ vua, đóng góp vào sự phát triển

cá nhân toàn diện

Xây dựng cộng đông yêu thích cờ vua: Tạo ra một không gian kết nối cho những người yêu thích cờ vua, giúp họ chia sẻ kinh nghiệm, chiến thuật và tham gia các sự kiện cộng đồng

Trang 8

Ché d6 choi véi bot: Ngwoi choi cé thé choi 1 minh dau voi bot theo từng cấp độ khó tăng dân

Chế độ chơi đa người: Hỗ trợ người chơi kết nỗi và thí đấu trực tuyến với bạn bè hoặc người chơi khác

Giao điện người dùng: Thiết kế giao điện trực quan, thân thiện và đễ sử dụng, với bàn cờ rõ ràng và các nút điều khiển đơn giản Giao diện sẽ được tối ưu hóa cho nhiều kích thước màn hình khác nhau

Kiểm tra và đâm bảo chất tượng: Thực hiện các bài kiểm tra tính năng, hiệu suất

và độ ôn định trên nhiều thiết bị Android để đảm bảo ứng dụng hoạt động mượt mả và

không gap su cô

Không bao gồm:

Phát triển cho các nền tảng khác như 1OS hoặc web

Tính năng thương mại (như mua bán quân cờ, tính phí địch vụ) sẽ không được triển khai trong giai doan nay

Các chức năng phức tạp như phân tích ván đấu tự động hoặc AI cấp cao sẽ không nam trong pham vi ban dau

Thời gian phát triển: Dự kiến hoàn thành các giai doan thiét ké, phat trién va thir nghiệm trong khoảng thời gian từ 3 đến 6 tháng, tùy thuộc vào độ phức tạp và nguồn

lực

Tài liệu và hỗ trợ: Tài liệu hướng dẫn sử dụng sẽ được phát triển để hỗ trợ người dung trong việc cải đặt và sử dụng ứng dụng Ngoài ra, tài liệu kỹ thuật sẽ được cung cap cho các lập trình viên đề thuận tiện cho việc bảo tri va nang cap sau này

1.43 Dự kiến công việc

1.3.1 Dự kiến công việc

A, Nghiên cứu và phân tích yêu cẩu

Xác định nhu cầu người dùng: Thực hiện khảo sát để thu thập ý kiến từ người chơi

cờ vua về các tính năng mong muôn

Trang 9

Lập danh sách yêu cầu: Tạo danh sách các chức năng chính và phi chức năng cho

C, Phat trién ứng dụng: Lập trình các module chính:

Xây dựng logic trò chơi (quy tắc, kiếm tra nước đi hợp lệ)

Phát triển giao điện người dùng với XMIL

Tích hợp tính năng lưu và tải ván chơi

Phát triển chế độ chơi trực tuyến và kết nối với Firebase

D, Kiểm tra và đảm bảo chất lượng

Thử nghiệm tính năng: Thực hiện kiểm tra các chức năng chính của ứng dụng để đảm bảo chúng hoạt động đúng

Kiểm tra hiệu suất: Đánh giá hiệu suất ứng dụng trên các thiết bị khác nhau đê đảm bảo tính 6n định và mượt mà

Sửa lỗi: Ghi nhận và sửa chữa các lỗi phát hiện trong quá trình kiểm tra

E, Triển khai ứng dụng

Chuan bi tai liệu hướng dẫn: Tạo tài liệu hướng dẫn sử dụng và tải liệu kỹ thuật cho

lập trinh viên

Đưa ứng dụng lên Google Play Store: Thực hiện các bước cần thiết dé phát hành

ứng dụng và thu thập phản hồi từ người dùng

F, Phản hồi và cập nhật

Thu thập phản hồi: Lắng nghe ý kiến từ người dùng sau khi phát hành để cải thiện ứng dụng

Trang 10

Cập nhật và bảo trì: Thực hiện các bản cập nhật đề sửa 161, cai thién higu suat và thêm tính năng mới dựa trên phản hồi từ người dùng

Đảnh giá dự an: Tổng kết dự án: Đánh giá kết quả dự án, rút ra bài học kinh nghiệm và chuân bị báo cáo cuôi củng

1.3.2 Dự kiến thời gian phát triển : 8 tuần

Tuân 1: Nghiên cứu và phân tích yêu câu

Khảo sát người dùng: Thu thập ý kiến từ người chơi cờ vua

Xác định yêu cầu: Lập danh sách các chức năng cần thiết và ưu tiên các tính năng chính

Tuân 2: Thiết kế kiến trúc ứng dụng

Mô hình MVC: Xây dựng kiến trúc ứng dụng

Thiết kế giao diện: Phác thảo giao diện người đùng và UX, chuẩn bị mockup

Tuân 3: Phát triển logic trò chơi

Lập trình logic cờ vua: Xây dựng các quy tắc và kiểm tra tính hợp lệ của nước đi

Thiết lập cầu trúc dữ liệu: Quản lý trạng thái bàn cờ và quân cờ

Tuân 4: Phát triển giao điện người dùng

Xây dựng giao diện: Lập trình giao diện người dùng bằng XML, tích hợp các thành

phần điều khiến

Thực hiện điều chỉnh UX: Dựa trên phản hồi từ mockup

Tuân 5: Tích hợp chế độ chơi đơn và đa người

Ché độ chơi đơn: Phát triển AI cho người chơi một mình

Chế độ chơi đa người: Tích hợp kết nối mạng và quản lý phòng chơi

Tuân 6: Lưu và tải văn chơi

Phát triển chức năng lưu: Cho phép người dùng lưu trạng thái van dau

Tạo chức năng tải: Đảm bảo người đùng có thể tiếp tục ván chơi

10

Trang 11

Tuan 7: Kiém tra va dam bao chat leong

Thử nghiệm tính năng: Kiểm tra các chức năng chính đề đảm bảo hoạt động đúng

Kiểm tra hiệu suất: Đánh giá ứng dụng trên nhiều thiết bị, sửa lỗi phát hiện

Tuân §: Triển khai và phản hôi

Chuan bi tai liệu hướng dẫn: Tạo tài liệu sử dụng và hướng dẫn cài đặt

Đưa ứng dụng lên Amazon Store: Phát hành ứng dụng và thu thập phản hồi từ người dùng

Cập nhật và bảo trì: Lập kế hoạch cho các bản cập nhật dựa trên phản hồi từ người dùng

1.3.3 Phẩm công nhiệm vụ của các thành viên

cờ,minimax, liên kết firebase

2 20214023 Phạm Lương Quốc Trung |_ Code giao diện bản cờ,

đăng nhập, đăng kí

3 20212256 Nguyễn Thị Ngọc Hân Code trang giới thiệu,

hướng dẫn, làm báo cáo

4 20212258 Hoàng Xuân Nhớ Code trang chu và các

Trang 12

CHUONG 2 THIET KE UNG DUNG

2.1 Thiết kế chức năng

Thiết kế chức năng này sẽ đảm bảo ứng dụng game cờ vua hoạt động linh hoạt và

cung cấp trải nghiệm người dùng tốt nhất, từ việc chơi đơn giản đến những tính năng

quản lý và hướng dẫn chỉ tiết

2.1.1 Chế độ chơi

Chơi 2 người: Hai người chơi có thể chơi với nhau trên cùng 1 màn hình

Chơi với máy: Người chơi có thể chọn mức độ khó khác nhau:

Dễ: AI di chuyên ngẫu nhiên, giúp người mới làm quen với luật chơi

Trung bình: AI có chiến thuật cơ bản, đưa ra các nước đi hợp lý hơn

Khó: AI sử dụng thuật toán chiến lược phức tạp tạo thử thách cho người chơi

Chơi với người: Cho phép hai người chơi cùng nhau trên cùng một thiết bị, thay phiên

nhau di chuyên quan cờ

2.1.2 Quan ly van co

Lưu ván cờ: Cho phép người chơi lưu trạng thái hiện tại của ván cờ để tiếp tục sau Người dùng có thê nhập tên ván cờ để dễ dàng nhận diện

Tải ván cờ: Tĩnh năng cho phép người chơi tải lại các ván cờ đã lưu trước đó, duy

tri liên tục quá trình chơi

2.1.3 Hướng dẫn

12

Trang 13

Thông tin luật chơi: Cung cấp hướng dẫn chỉ tiết về các luật chơi cờ vua, cach di

chuyên quân, và cách thăng trận

Chiên thuật cơ bản: Hướng dân một số chiên thuật và mẹo chơi cờ vua cho người mới bắt đâu

2.1.4 Thông kê

Lịch sứ trận đấu: Ghi lại lịch sử các trận đấu đã chơi, bao gồm thông tin neười chơi, kết quả va thoi gian

Thống kê điểm số: Cung cấp báo cáo thông kê về số ván thắng, thua và hòa cho mỗi

người chơi, giúp theo dõi tiến bộ

2.2 Thiết kế giao diện

2.2.1 Giao điện chính

Chơi 2 người Chơi với bot

bee Red Giới thiệu

Hướng dẫn

Hình Ï : Giao diện chính

2.2.2, Giao điện chơi 2 người

Trang 14

x=

Pl 1

fi ayer

Hình 2 : Giao dién chơi 2 người

2.2.3 Giao diện chơi voi bot

Hình 3 : Giao điện chơi với bot

14

Trang 15

2.2.4 Giao dién choi online

Long Phòng cờ

Hình 4 : Ciao điện chơi online

2.3 Thiết kế các thành phần ứng dụng

2.3.1 Thiét ké Activity chinh:

Đây là màn hình chính của ứng dụng, nơi người chơi có thê chọn các chế độ chơi Một MainActivity sẽ chứa các nút hoặc menu để chọn:

Chơi 2 người trên 1 màn hình

Chơi với bot

Chơi online

2.3.2 Thiết ké Activity cho ché d6 choi 2 người trên cùng màn hình:

Bàn cở: Sử dụng GridLayout hoặc Canvas để vẽ bàn cờ 8x8

Xử lý logic di chuyển quân: Thiết lập các thao tác chạm (touch events) để chọn quân cờ và di chuyên chúng đền vị trí mới

15

Trang 16

Hién thi trạng thái trận đếu: Các thông báo (ví dụ như "Vua đang bi chiếu") và nút kết thúc trận đấu

2.3.3 Thiết kế Acfivify cho chế độ chơi với bot:

Bàn cờ và giao điện người dùng tương tự chế độ chơi 2 người

Logie xứ lý bot: Ap dung thuat toan Minimax cho bot, trong đó bot có thê đánh gia

va đưa ra các nước đi dựa trên chiến thuật Ở đây, cần thiết kế một lớp cho bot, với chức năng:

Tính toán nước ổi tốt nhất dựa trên thuật toán Minimax hoặc Alpha-Beta pruning

Điều khiên bot chọn các nước ổi và thực hiện chúng trên bản cờ

2.3.4 Thiết kế Activity cho chế độ chơi online:

Giao điện kết nối với Firebase: Ứng dụng sẽ sử dụng Firebase Realtime Database

hoặc Firebase Firestore để lưu trữ và cập nhật trạng thái bàn cờ theo thời gian thực Mỗi lần người chơi thực hiện nước ởi, đữ liệu được gửi lên Firebase, sau đó cập nhật cho cả hai người chơi

Tạo và tham gia phòng chơi (room): Thiết kế một giao diện cho phép người chơi tạo phòng mới hoặc tham gia phòng hiện có bằng cách nhập ID phòng Sử dụng Firebase để tạo một bảng đữ liệu lưu trữ danh sách các phòng đang hoạt động

Trạng thái kết nối: Xử lý các trường hợp kết nỗi bị mắt, người chơi thoát khỏi

phòng øiữa chừng và cập nhật lại s1ao diện khi có lỗi kết nói

2.3.5 Thiết kế các lớp đối tượng (Model classes):

Lớp ChessPiece: Lớp đại điện cho từng quân cờ, chứa các thuộc tính như loại cờ, vị trí hiện tại, và nước đi hợp lệ

Lớp ChessBoard: Lớp quản lý toàn bộ bàn cờ, với các phương thức kiểm tra tính hợp lệ của nước ởi, tính toán nước ổi hợp lệ cho từng quân cờ

16

Trang 17

Lop Player: Dai dién cho người chơi, có thé la người dùng hoặc bot, với các thuộc tính như số điềm, các quân cờ dang nam g1ữ, và các hành động có thê thực hiện

2.3.6 Quan lp dit liéu voi Firebase:

Firebase Realtime Database: Su dung để lưu trữ trạng thái bàn cờ, điểm số, và các thông tin liên quan đến người chơi trong chế độ chơi online

Firebase Authemication: Đề người chơi có thể đăng nhập và lưu trữ thông tin cá

nhân, lịch sử trận đấu

2.4 Thiết kế cơ sở dữ liệu

Cơ sở đữ liệu FireBase (Realtime Database va Firestore): Firebase c6 hai loai co

so dir ligu chinh la Firebase Realtime Database va Firebase Firestore Day là những cơ

sở dữ liệu NoSQL cho phép lưu trữ và đồng bộ dữ liệu theo thời ø1an thực

Hình 5 : realtime database

2.5 Kết luận chương 2

Trong chương này, chúng ta đã tiễn hành phân tích và thiết kế toàn bộ các thành

phần chính của ứng dụng cờ vua trên nền tảng Android Studio Các chức năng quan trọng đã được đề cập bao gồm chơi cờ 2 người trên cùng một màn hình, chơi với bot thông minh, và chế độ chơi online với việc sử dụng Firebase để kết nối người chơi Bên cạnh đó, việc thiết kế giao dién, cầu trúc cơ sở dữ liệu, và các thành phần ứng dụng đã được xây dựng chi tiết, đảm bảo sự thuận tiện và dễ đàng khi sử dụng cho

17

Trang 18

người dùng Những thiết kế này tạo tiền đề quan trọng cho việc triển khai và phát triển ứng dụng trong các giai đoạn tiếp theo, đảm bảo tính ôn định và trải nghiệm người dùng tốt

18

Ngày đăng: 23/12/2024, 12:43

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN