You are on page 1of 17

ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &


TRUYỀN THÔNG VIỆT - HÀN

Khoa Khoa Học Máy Tính

BÁO CÁO ĐỒ ÁN CƠ SỞ 4
Lập trình game bắn súng và ngôn ngữ Python

Sinh viên thực hiện: Nguyễn Ngọc Ánh


Lê Văn Trường Vỹ
Lớp: 20GIT
Giảng viên hướng dẫn: PGS.TS Huỳnh Công Pháp

Đà Nẵng, tháng 12 năm 2022


ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &


TRUYỀN THÔNG VIỆT -HÀN

Khoa Khoa Học Máy Tính

BÁO CÁO ĐỒ ÁN CƠ SỞ 4
Lập trình game bắn súng và ngôn ngữ Python

Đà Nẵng, tháng 5 năm 2022

1
MỞ ĐẦU

Những năm gần đây, vai trò của các hệ thống thông tin trong doanh nghiệp đã
ngày càng lớn mạnh. Từ chỗ chỉ được sử dụng để hỗ trợ một số hoạt động
trong văn phòng, hệ thống thông tin đã trở nên có vai trò chiến lược trong
doanh nghiệp. Đặc biệt những thành tựu trong công nghệ thông tin (CNTT) đã
khiến doanh nghiệp ngày càng chú ý hơn tới việc áp dụng những nó để gia
tăngthế cạnh tranh và tạo cơ hội cho mình. Hiện nay, trào lưu ứng dụng email
maketing nhận thông báo ngay trên điện thoại và máy tính không còn xa
lạ.Thành tựu CNTT không chỉ giới hạn trong các doanh nghiệp lớn, tầm cỡ đa
quốc gia mà còn lan rộng trong tất cả các doanh nghiệp, kể cả những doanh
nghiệp vừa và nhỏ ở những nước đang phát triển. Tuy nhiên, việc ứng dụng
thành tựu CNTT một ứng dụng thành công trong lĩnh vực game cũng còn mới ở
nước ta. Vì vậy, đồ án của nhóm đó là tìm hiểu về “Lập Trình Game Bắn Súng
bằng Python” để có cái nhìn sâu hơn, thực tế hơn về việc ứng dụng hệ thống
thông tin trong các game giải trí nhẹ nhàng. Từ đó nhóm rút ra được những mặt
thành công cũng như khuyết điểm của hệ thống, kinh nghiệm triển khai ứng
dụng game và các mặt về đạo đức, xã hội trong hệ thống thông tin quản lý và
thiết lập game.Vì thời gian thực hiện không nhiều nên chắc chắn còn nhiều
thiếu sót, mong được thầy cô chỉ dẫn thêm.

2
LỜI CẢM ƠN

Trên thực tế không có sự thành công nào mà không gắn liền với những sự hỗ trợ,
giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt quãng
thời gian năm năm từ khi bắt đầu học tập tại giảng đường trường Đại học Công nghệ
thông tin và Truyền Thông Việt Hàn – Đại học Đà Nẵng, nhóm em đã nhận được rất
nhiều sự quan tâm, giúp đỡ của thầy cô và các bạn.
Với lòng biết ơn sâu sắc nhất, nhóm em xin gửi lời cảm ơn chân thành tới toàn thể
các thầy cô giáo trong trường Đại học Công nghệ thông tin và Truyền Thông Việt
Hàn – Đại học Đà Nẵng, những người đã dạy dỗ và truyền đạt vốn kiến thức vô cùng
quý báu của mình cho chúng em trong suốt quãng thời gian học tại đây. Những tình
cảm và kiến thức mà thầy cô đã gửi trao cho chúng em sẽ là hành trang cho chúng em
để bước đi trên những đoạn đường tương lai.
Nhóm em cũng xin gửi lời cảm ơn sâu sắc tới Thầy giáo – PGS.TS Huỳnh Công
Pháp , người đã tận tình hỗ trợ và dẫn dắt chúng nhóm em trong suốt quá trình thực
hiện đồ án để có được kết quả một cách tốt nhất.
Một lần nữa nhóm em xin được chân thành cảm ơn!.

Em xin trân trọng cảm ơn !!

Sinh viên,
Nguyễn Ngọc Ánh
Lê Văn Trường Vỹ
3
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………

4
MỤC LỤC

MỞ ĐẦU...................................................................................................................................................... 2

LỜI CẢM ƠN................................................................................................................................................ 3

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN.......................................................................................4

MỤC LỤC..................................................................................................................................................... 5

MỤC LỤC HÌNH ẢNH.................................................................................................................................... 5

CHƯƠNG 1. KHẢO SÁT VÀ XÁC LẬP DỰ ÁN................................................................................................. 6


1.1 Giới thiệu đề tài................................................................................................6
1.2 Phương pháp thực hiện.....................................................................................................................7
1.3 Các ứng dụng tương tự......................................................................................................................7

CHƯƠNG 2. PHÂN TÍCH VÀ THIẾT KẾ............................................................................................................ 7


2.1 Mô hình hóa yêu câu.........................................................................................7
2.1.2 Danh sách các usecase......................................................................................7
2.1.3 Biểu đồ ca sử dụng..............................................................................................................................8

CHƯƠNG 3. XÂY DỰNG ỨNG DỤNG.......................................................................................................... 11


3.1 Tìm hiểu về ngôn ngữ lập trình Pythom và demo game.................................11
3.1.1 Python là gì ?...............................................................................................................................11
3.1.2 Tính năng chính của Python?......................................................................................................11
3.2 Demo game.....................................................................................................12

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN............................................................................................................ 16


1 Kết quả đạt được.............................................................................................16
2 Hướng nghiên cứu..........................................................................................16
3 Tài liệu tham khảo..........................................................................................16

MỤC LỤC HÌNH ẢNH

5
Hình 1. Biểu đồ use case chính..............................................................................8
Hình 2. Biểu đồ hoạt động đăng nhập....................................................................9
Hình 3. Biểu đồ hoạt động đăng kí......................................................................10
Hình 4. Biểu đồ tuần tự đăng nhập......................................................................10
Hình 5. Biểu đồ giao tiếp đăng nhập....................................................................11
Hình 6. Giao diện đăng kí đang nhập của ứng dụng............................................13
Hình 7. Giao diện đăng bài và bài viết đã đăng...................................................14
Hình 8. Giao diện thích và bình luận bài viết.......................................................15
Hình 9. Người bình luận bài viết có thể xoá bình luận của mình.........................16

CHƯƠNG 1. KHẢO SÁT VÀ XÁC LẬP DỰ ÁN


1.1 Giới thiệu đề tài
Xã hội ngày càng phát triển, nhu cầu giải trí của con người ngày càng tăng
cao. Cùng với sự phát triển của công nghệ thông tin, điện tử, các thiết bị chơi
game ngày càng phổ biến. Trong những năm gần đây ngành công nghệ game
nổi lên và đem lại doanh thu khổng lồ. Có thể nói game không chỉ là một

6
phương tiện giải trí cơ bản, nó còn là một lĩnh vực đáng quan tâm và theo
đuổi. Thiết kế game là một công việc không dễ dàng đòi hỏi rất nhiều thời
gian và công sức, tuy nhiên quá đó ta có thể biến những dòng code khô khan
thành những trải nghiệm thú vị cho người chơi, đồng thời có thể học hỏi
những kiến thức mới lập trình game bằng python .

1.2 Phương pháp thực hiện


- Trước tiên ta phải nêu bài toán, phân tích và thiết kế giao diện , cơ chế của
game
- Dựa trên các mục tiêu cụ thể để tìm kiếm thông tin sử dụng, thiết kế giao diện
phù hợp
- Sau đó xây dựng ứng dụng sử dụng ngôn ngữ Python để thiết kế và xây dựng
game

1.3 Các ứng dụng tương tự


Hiện nay có rất nhiều game tương tự cùng thể loại :
Một số ứng dụng: space-shooter,bắn gà,…

CHƯƠNG 2. PHÂN TÍCH VÀ THIẾT KẾ


2.1 Mô hình hóa yêu câu
2.1.1 Danh sách các actor
- Biểu đồ use case : Có một đối tượng được sử dụng hệ thống này :
+ Người dùng

7
2.1.2 Danh sách các usecase

- Người dùng : di chuyển máy bay , di chuyển tránh địch , bắn tiêu diệt địch

2.1.3 Biểu đồ ca sử dụng

A. Usecase diagram

B. Class diagram

8
C. Activity Diagram (game player)

9
D. Sequence Diagram

10
CHƯƠNG 3. XÂY DỰNG ỨNG DỤNG
3.1 Tìm hiểu về ngôn ngữ lập trình Pythom và demo game

3.1.1 Python là gì ?
Python là một ngôn ngữ lập trình bậc cao cho các mục đích lập trình đa năng.
Ngôn ngữ lập trình Python được tạo bởi Guido van Rossum và lần đầu ra mắt vào
năm 1991. Python được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ.
Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho
người mới học lập trình. Cấu trúc của Python còn cho phép người sử dụng viết mã
lệnh với số lần gõ phím tối thiểu.

3.1.2 Tính năng chính của Python?


Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng. Nó
dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như
C++, Java, C#. Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập
trung vào những giải pháp chứ không phải cú pháp.
Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậm chí
là dùng cho mục đích thương mại. Vì là mã nguồn mở, bạn không những có thể sử
dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi
mã nguồn của nó. Python có một cộng đồng rộng lớn, không ngừng cải thiện nó
mỗi lần cập nhật.
Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng này
sang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào. Nó chạy liền
mạch trên hầu hết tất cả các nền tảng như Windows, macOS, Linux.
Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạp rất
lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ
khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho ứng dụng
của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ
lập trình khác khó có thể làm được.
Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn không
phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu
vô nghĩa,... Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ
máy tính có thể hiểu. Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào.
Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một số
lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở
hơn rất nhiều, đơn giản vì không phải tự viết tất cả code. Ví dụ: Bạn cần kết nối
cơ sở dữ liệu MySQL trên Web server? Bạn có thể nhập thư viện MySQLdb và sử
dụng nó. Những thư viện này được kiểm tra kỹ lưỡng và được sử dụng bởi hàng
trăm người. Vì vậy, bạn có thể chắc chắn rằng nó sẽ không làm hỏng code hay
ứng dụng của mình.
Hướng đối tượng: Mọi thứ trong Python đều là hướng đối tượng. Lập trình hướng
đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan. Với
OOP, bạn có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng
cách tạo ra các đối tượng.

11
3.2 Demo game

a. Giao diện màn hình chờ

b. Giao diện màn hình chính

12
c. Đối tượng: du thuyền, kẻ địch

d. Các kiếu súng

13
e. Bloked

f. Số mạng

g. Số Điểm

14
h. Mistery

i. Game over

15
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
1 Kết quả đạt được
Nhóm chúng em đã thực hiện được một sản phẩm game cơ bản nhất, đáp ứng
nhu cầu sử dụng cơ bản của một game để mọi người giải trí .

2 Hướng nghiên cứu


Với bản báo cáo này, sẽ giúp nhóm chúng em phân tích được những ưu nhược điểm
của đồ án, định ra những mục tiêu cụ thể và đưa ra những kế hoạch nhằm đạt được
mục đích đã đưa ra, làm thêm các chức năng ,tính năng game hay hơn phục vụ chị thị
yếu người đam mê về game.
- Đồ án của chúng em vẫn đang trong quá trình nghiên cứu nên vẫn chưa có được kết
quả thực tế, tuy nhiên em tin rằng nếu có thể đáp ứng được những yêu cầu đặt ra thì
nó có thể đem lại hiệu quả cao khi được đưa vào hoạt động

3 Tài liệu tham khảo


https://hocvienagile.com/lap-trinh-game-bang-python-cho-nguoi-moi-bat-dau/
https://vtc.edu.vn/lap-trinh-game-python/
https://www.youtube.com/watch?v=Q-__8Xw9KTM&t=3627s
https://www.youtube.com/watch?v=_2yUP3WMDRc&t=32s

16

You might also like