1. Trang chủ
  2. » Tất cả

Đồ án 2 đề tài dungeon escape game

62 6 0
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

Tiêu đề Đồ Án 2 Đề Tài Dungeon Escape Game
Tác giả Trần Lộc Tài, Lê Trần Thanh Duy
Người hướng dẫn Trần Anh Dũng
Trường học Trường Đại Học Công Nghệ Thông Tin, Đại Học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Khoa Công Nghệ Phần Mềm
Thể loại Báo cáo đồ án
Năm xuất bản 2022
Thành phố Hồ Chí Minh
Định dạng
Số trang 62
Dung lượng 1,54 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương I: GIỚI THIỆU CHUNG (10)
    • 1. Tổng quan đề tài (10)
    • 2. Lý do chọn đề tài (10)
    • 3. Đối tượng sử dụng (6)
    • 4. Phạm vi nghiên cứu (10)
  • Chương II: CƠ SỞ LÝ THUYẾT (11)
    • 1. Unity Engine (11)
    • 2. C# (12)
    • 3. Microsoft Visual Studio (13)
    • 4. GitHub (14)
  • Chương III: TỔNG QUAN ỨNG DỤNG (15)
    • 1. Giới thiệu tính năng (15)
    • 2. Giới thiệu về các GameObject (15)
      • 2.1 Trong các GameScene (15)
        • 2.1.1 MainCamera (15)
        • 2.1.2 Grid (15)
        • 2.1.3 Player (16)
        • 2.1.4 Moss_Giant_Enemy (16)
        • 2.1.5 Spider_Enemy (16)
        • 2.1.6 Skeleton_Enemy (16)
        • 2.1.7 Spike (16)
        • 2.1.8 Gate (16)
        • 2.1.9 EventSystem (16)
      • 2.2 Main Menu (17)
        • 2.2.1 Main Camera (17)
        • 2.2.2 Canvas (17)
        • 2.2.3 EventSystem (17)
    • 3. Giới thiệu các màn chơi (17)
    • 4. Hệ thống loot và shop (19)
  • Chương IV: ĐẶC TẢ USE CASE (21)
    • 1. Sơ đồ Use Case (21)
      • 1.1 Player (21)
      • 1.2 Moss Giant (22)
      • 1.3 Spider (23)
      • 1.4 Skeleton (24)
    • 2. Danh sách tác nhân (25)
    • 3. Danh sách Use Case (25)
    • 4. Mô tả chi tiết Use Case (27)
      • 4.1 Start Game (27)
      • 4.2 Quit Game (28)
      • 4.3 Người chơi di chuyển (29)
      • 4.4 Vung kiếm (30)
      • 4.5 Người chơi nhận sát thương (31)
      • 4.6 Chạm Spike (32)
      • 4.7 Trở lại menu (33)
      • 4.8 Moss Giant – Idle (34)
      • 4.9 Moss Giant – Tấn công (35)
      • 4.10 Skeleton – Idle (36)
      • 4.11 Skeleton – Tấn công (37)
      • 4.12 Spider – Tấn công liên tục (38)
      • 4.13 Enemy nhận sát thương (39)
      • 4.14 Enemy chết (40)
      • 4.15 Chạm cổng (41)
  • Chương V: PHÂN TÍCH THIẾT KẾ (42)
    • 1. Phân tích class (42)
      • 1.1 Class diagram (42)
      • 1.2 Danh sách class (43)
      • 1.3 Quan hệ (44)
      • 1.4 Chi tiết class (45)
    • 2. State Diagram (56)
      • 1.1 Player State Diagram (56)
      • 1.2 Moss Giant State Diagram (57)
      • 1.3 Skeleton State Diagram (58)
      • 1.4 Spider State Diagram (26)
    • 3. Danh sách các audio clip (60)
  • Chương VI: CÀI ĐẶT VÀ KIỂM THỬ (61)
    • 1. Môi trường cài đặt và kiểm thử (61)
    • 2. Kết quả kiểm thử (61)
  • Chương VII: KẾT LUẬN (62)
    • 1. Tổng kết (62)
    • 2. Kết quả đạt được (62)
    • 3. Khó khăn và hạn chế (62)
    • 4. Hướng phát triển (62)

Nội dung

Do ngày nay gần như ai cũng sở hữu máy tính cá nhân và các hệ thống phân phối game rất phổ biến nên các game do những nhóm phát triển nhỏ dễ đến được tay người chơi hơn.. Do ngày nay gần

Trang 1

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

Trang 2

Mục lục

LỜI CẢM ƠN 4

ĐỀ CƯƠNG CHI TIẾT 5

NỘI DUNG 9

Chương I: GIỚI THIỆU CHUNG 9

1 Tổng quan đề tài 9

2 Lý do chọn đề tài 9

3 Đối tượng sử dụng 9

4 Phạm vi nghiên cứu 9

Chương II: CƠ SỞ LÝ THUYẾT 10

1 Unity Engine 10

2 C# 11

3 Microsoft Visual Studio 12

4 GitHub 13

Chương III: TỔNG QUAN ỨNG DỤNG 14

1 Giới thiệu tính năng 14

2 Giới thiệu về các GameObject 14

2.1 Trong các GameScene 14

2.1.1 MainCamera: 14

2.1.2 Grid: 14

2.1.3 Player: 15

2.1.4 Moss_Giant_Enemy: 15

2.1.5 Spider_Enemy: 15

2.1.6 Skeleton_Enemy: 15

2.1.7 Spike: 15

2.1.8 Gate: 15

2.1.9 EventSystem: 15

2.2 Main Menu 16

2.2.1 Main Camera: 16

2.2.2 Canvas: 16

2.2.3 EventSystem: 16

3 Giới thiệu các màn chơi 16

Trang 3

Chương IV: ĐẶC TẢ USE CASE 20

1 Sơ đồ Use Case 20

1.1 Player 20

1.2 Moss Giant 21

1.3 Spider 22

1.4 Skeleton 23

2 Danh sách tác nhân 24

3 Danh sách Use Case 24

4 Mô tả chi tiết Use Case 26

4.1 Start Game 26

4.2 Quit Game 27

4.3 Người chơi di chuyển 28

4.4 Vung kiếm 29

4.5 Người chơi nhận sát thương 30

4.6 Chạm Spike 31

4.7 Trở lại menu 32

4.8 Moss Giant – Idle 33

4.9 Moss Giant – Tấn công 34

4.10 Skeleton – Idle 35

4.11 Skeleton – Tấn công 36

4.12 Spider – Tấn công liên tục 37

4.13 Enemy nhận sát thương 38

4.14 Enemy chết 39

4.15 Chạm cổng 40

Chương V: PHÂN TÍCH THIẾT KẾ 41

1 Phân tích class 41

1.1 Class diagram 41

1.2 Danh sách class 42

1.3 Quan hệ 43

1.4 Chi tiết class 44

2 State Diagram 55

1.1 Player State Diagram 55

Trang 4

1.3 Skeleton State Diagram 57

1.4 Spider State Diagram 58

3 Danh sách các audio clip 59

Chương VI: CÀI ĐẶT VÀ KIỂM THỬ 60

1 Môi trường cài đặt và kiểm thử 60

2 Kết quả kiểm thử 60

Chương VII: KẾT LUẬN 61

1 Tổng kết 61

2 Kết quả đạt được 61

3 Khó khăn và hạn chế 61

4 Hướng phát triển 61

Trang 5

LỜI CẢM ƠN

Sau quá trình học tập và rèn luyện tại khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM chúng em đã được trang bị các kiến thức cơ bản, các kỹ năng thực tế để có thể lần đầu thực hiện Đồ án 1 của mình

Để hoàn thành Đồ án này, chúng em xin gửi lời cảm ơn chân thành đến: Ban Giám hiệu trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM vì đã tạo điều kiện về cơ sở vật chất với hệ thống thư viện hiện đại, đa dạng các loại sách, tài liệu thuận lợi cho việc tìm kiếm, nghiên cứu thông tin

Chúng em xin gửi lời cảm ơn chân thành đến thầy Trần Anh Dũng đã tận tình giúp

đỡ, định hướng cách tư duy và cách làm việc khoa học Đó là những góp ý hết sức quý báu không chỉ trong quá trình thực hiện luận văn này mà còn là hành trang tiếp bước cho chúng em trong quá trình học tập và lập nghiệp sau này

Trong quá trình làm Đồ án này chúng em không tránh khỏi được những sai sót, chúng em kính mong nhận được sự chỉ dẫn và góp ý của quý thầy cô để hoàn thiện và phát triển đồ án hơn trong môn học Đồ án 2

Chúng em xin chân thành cảm ơn Xin chúc những điều tốt đẹp nhất sẽ luôn đồng hành cùng mọi người

Trang 6

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc

CÔNG NGHỆ THÔNG TIN

ĐỀ CƯƠNG CHI TIẾT

TÊN ĐỀ TÀI: Game 2D Dungeon Escape

Cán bộ hướng dẫn: ThS Trần Anh Dũng

Thời gian thực hiện: Từ ngày 05/03/2022 đến ngày 11/06/2022

Sinh viên thực hiện:

Lê Trần Thanh Duy – 19520062

Trần Lộc Tài – 19522157

1 Lý do chọn đề tài:

Hiện nay video game là một trong những hình thức giải trí phổ biến nhất của giới trẻ trong thời gian rảnh Do ngày nay gần như ai cũng sở hữu máy tính cá nhân và các hệ thống phân phối game rất phổ biến nên các game do những nhóm phát triển nhỏ dễ đến được tay người chơi hơn Dựa theo nhu cầu giải trí của mọi người, nhóm

em quyết định chọn đề tài phát triển một game 2D nhỏ

2 Nội dung sơ lược:

Người chơi sẽ điều khiển nhân vật chính vượt qua những màn chơi kết hợp giữa giải đố và tiêu diệt quái, người chơi sẽ chiến thắng khi thoát ra khỏi hầm ngục (dungeon)

3 Đối tượng sử dụng:

Tất cả người chơi có độ tuổi từ 7 tuổi trở lên

Trang 7

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

Phương pháp làm việc:

− Làm việc online và offline nhóm 2 thành viên dưới sự hướng dẫn của giảng viên hướng dẫn

Phương pháp nghiên cứu:

− Nghiên cứu tài liệu về công nghệ liên quan

Phương pháp công nghệ:

− Tìm hiểu xây dựng game 2D bằng Unity Engine, sử dụng ngôn ngữ C# để lập trình

− Tìm hiểu xây dựng môi trường game 2D bằng Tilemap

− Quản lý source code bằng Github

5 Nền tảng công nghệ:

− Unity Game Engine

− Tilemap 2D

− Visual Studio IDE

6 Kết quả mong đợi:

− Các tính năng mới hoạt động ổn định

− Game có giao diện hài hoà, đẹp mắt

− Thiết kế nội dung các màn chơi sau logic, hấp dẫn

7 Kế hoạch làm việc:

Thời gian thực hiện từ ngày 22/09/2022 đến ngày kết thúc môn học Đồ án 2 – 31/12/2022

Chia thành 2 giai đoạn cụ thể:

Giai đoạn 1: Xây dựng các cơ chế chính được dự định hoàn thiện

Thời gian: 22/09/2022 - 23/11/2022 Bao gồm các công việc dự kiến:

− Thiết kế, xây dựng giao diện + Health bars

+ Coin/loot counter

Trang 8

− Xây dựng hệ thống loot: lưu trữ đơn vị tiền do monster drop, cập nhật loot cho từng loại monster

− Xây dựng hệ thống cửa hàng sử dụng loot: sword upgrade, hit points upgrade

− Xây dựng thêm màn chơi (và kẻ địch), thêm tutorial

Giai đoạn 2: Hoàn thiện các cơ chế trong giai đoạn 1 và viết báo cáo

Thời gian: 24/11/2022 – 31/12/2022

Bao gồm các công việc dự kiến:

− Xây dựng hệ thống âm thanh

+ Ambience music + Sound effects: monster attacks, sword swing, sword hit…

− Kiểm thử ứng dụng

− Viết báo cáo

Thời gian thực hiện cụ thể cho từng công việc được phân chia như sau: Giai đoạn Thời gian Nội dung thực hiện

Giai đoạn 1

22/09 – 24/09 Project review 25/09 – 09/10 Thiết kế, xây dựng giao diện 10/10 – 24/10 Xây dựng hệ thống loot, thiết kế vẽ màn chơi mới

25/10 – 8/11 Xây dựng hệ thống cửa hàng, thiết kế background

cho màn chơi mới

Giai đoạn 2

9/11 – 23/11 Hoàn thành màn chơi mới và tutorial 24/11 – 7/12 Xây dựng hệ thống âm thanh

8/12 – 17/12 Xây dựng hệ thống save/load 18/12 – 31/12 Kiểm thử ứng dụng và viết báo cáo

8 Phân công công việc:

Công việc chung:

− Kiểm thử ứng dụng game

− Triển khai ứng dụng

Trang 9

− Xây dựng thêm màn chơi (và kẻ địch)

Công việc riêng:

Thành viên Công việc Trần Lộc Tài

Xây dựng giao diện Xây dựng hệ thống âm thanh

Lê Trần Thanh Duy

Xây dựng hệ thống loot Xây dựng hệ thống cửa hàng sử dụng loot

Trang 10

NỘI DUNG

Chương I: GIỚI THIỆU CHUNG

1 Tổng quan đề tài

Tên đề tài: Dungeon Escape Game

Nền tảng công nghệ: Unity Engine

Môi trường phát triển: Desktop - Windows 10

2 Lý do chọn đề tài

Hiện nay video game là một trong những hình thức giải trí phổ biến nhất của giới trẻ trong thời gian rảnh Do ngày nay gần như ai cũng sở hữu máy tính cá nhân và các hệ thống phân phối game rất phổ biến nên các game do những nhóm phát triển nhỏ dễ đến được tay người chơi hơn Dựa theo nhu cầu giải trí của mọi người, nhóm quyết định chọn

đề tài phát triển một game 2D nhỏ

+ Game 2D đa màn chơi

+ Một nhân vật do người chơi điều khiển với hệ thống di chuyển cơ bản - đi trái phải và nhảy – và khả năng chiến đấu cơ bản – nhấn chuột để vung kiếm

+ Nhiều enemy NPC (quái vật) tự di chuyển và hành động theo AI được cài đặt sẵn, phản ứng theo hành vi của người chơi

+ Màn chơi được thiết kế thủ công, sử dụng asset có sẵn, với độ rộng thấp

+ Một menu chính khi mở ứng dụng game lên và kết thúc game với các nút cơ bản + Hệ thống loot diamond và shop bán trang bị mua bằng diamonds

Trang 11

Chương II: CƠ SỞ LÝ THUYẾT

1 Unity Engine

Hình II.1: Unity Logo

Unity là một game engine đa nền tảng được phát triển bởi Unity Technologies, lần đầu tiên được công bố và phát hành vào tháng 6 năm 2005 tại Apple Worldwide Developers Conference dưới dạng game engine cho Mac OSX Unity Engine đã dần dần được mở rộng để hỗ trợ các loại nền tảng desktop, mobile, console và Virtual Reality Nó đặc biệt phổ biến trên IOS, Android và được coi là dễ sử dụng cho người mới bắt đầu phát triển game và các nhà phát triển indie Công cụ có thể được sử dụng để tạo ra game 3D và 2D, cũng như mô phỏng tương tác và các trải nghiệm khác Engine đã được được chấp nhận bởi các ngành bên ngoài trò chơi điện tử, chẳng hạn như phim, ô tô, kiến trúc,

kỹ thuật và xây dựng Unity cung cấp cho người dùng khả năng tạo ra game và trải nghiệm ở cả 2D và 3D, đồng thời engine cung cấp một scripting API chính trong C# bằng cách sử dụng Mono, cho cả trình soạn thảo Unity editor ở dạng plugin và bản thân các game, cũng như chức năng kéo và thả Trước khi C# trở thành ngôn ngữ lập trình chính được sử dụng trong engine, trước đây engine hỗ trợ Boo, nhưng đã bị xóa khi phát hành Unity 5 và triển khai dựa trên Boo của JavaScript được gọi là UnityScript, và không được dùng nữa vào tháng 8 năm 2017, sau khi phát hành Unity 2017.1, để sử dụng C# Trong các game 2D, Unity cho phép import các sprite và 2D world renderer tiên tiến Đối với game 3D, Unity cho phép đặc tả kỹ thuật texture compression, mipmap và cài đặt độ phân giải cho mỗi nền tảng mà engine hỗ trợ và cung cấp hỗ trợ cho bump mapping, reflection mapping, parallax mapping, screen space ambient occlusion (SSAO), dynamic shadows using shadow maps, render-to-texture và full-screen post-processing effects

Trang 12

2 C#

Hình II.2: C# Logo

C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ kỹ

sư của Microsoft vào năm 2000 C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java

Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành

Trong các ứng dụng sử dụng NET Framework, mã nguồn chương trình (C#, VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language) Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành

C# với sự hỗ trợ mạnh mẽ của NET Framework giúp cho việc tạo một ứng dụng Windows Forms hay WPF (Windows Presentation Foundation), phát triển game, ứng dụng Web, ứng dụng Mobile trở nên rất dễ dàng

Trang 13

3 Microsoft Visual Studio

Hình II.3: Visual Studio Logo

Microsoft Visual Studio là một môi trường phát triển tích hợp (IDE) từ Microsoft Microsoft Visual Studio còn được gọi là "Trình soạn thảo mã nhiều người sử dụng nhất thế giới ", được dùng để lập trình C++ và C# là chính Nó được sử dụng để phát triển chương trình máy tính cho Microsoft Windows, cũng như các trang web, các ứng dụng web và các dịch vụ web Visual Studio sử dụng nền tảng phát triển phần mềm của Microsoft như Windows API, Windows Forms, Windows Presentation Foundation, Windows Store và Microsoft Silverlight Nó có thể sản xuất cả hai ngôn ngữ máy và mã

số quản lý

Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phép trình biên tập

mã và gỡ lỗi để hỗ trợ (mức độ khác nhau) hầu như mọi ngôn ngữ lập trình Các ngôn ngữ tích hợp gồm có C,[4] C++ và C++/CLI (thông qua Visual C++), VB.NET (thông qua Visual Basic.NET), C# (thông qua Visual C#) và F# (như của Visual Studio 2010[5]) Hỗ trợ cho các ngôn ngữ khác như J++/J#, Python và Ruby thông qua dịch vụ cài đặt riêng rẽ Nó cũng hỗ trợ XML/XSLT, HTML/XHTML, JavaScript và CSS

Microsoft cung cấp phiên bản "Express" (đối với phiên bản Visual Studio 2013 trở về trước) và "Community" (đối với bản Visual Studio 2015 trở về sau) là phiên bản miễn phí của Visual Studio.[6]

Trang 14

4 GitHub

Hình II.4: GitHub Logo

GitHub là một hệ thống quản lý dự án và phiên bản code, hoạt động giống như một mạng xã hội cho lập trình viên Các lập trình viên có thể clone lại mã nguồn từ một repository và Github chính là một dịch vụ máy chủ repository công cộng, mỗi người có thể tạo tài khoản trên đó để tạo ra các kho chứa của riêng mình để có thể làm việc

Github có đầy đủ những tính năng của Git, ngoài ra nó còn bổ sung những tính năng

về social để các developer tương tác với nhau Github cung cấp các tính năng social networking như feeds, followers, và network graph để các developer học hỏi kinh nghiệm của nhau thông qua lịch sử commit

Trang 15

Chương III: TỔNG QUAN ỨNG DỤNG

1 Giới thiệu tính năng

− Sau khi nhấn Start, người chơi sẽ được điều khiển một nhân vật có các khả năng chạy, nhảy và vung kiếm bằng các nút điểu khiển sau:

+ A: di chuyển trái

+ D: di chuyển phải

+ Space: nhảy

+ Left Click: vung kiếm

− Mục tiêu chính của người chơi là thoát ra khỏi màn chơi bằng cách đi đến cổng nằm bên trái bức tường ban đầu, vượt qua hiểm nguy của vô số kẻ địch và các hố chông trên màn chơi

− Người chơi có thể sử dụng khả năng chiến đấu cơ bản của mình để tiêu diệt địch và tiếp tục di chuyển về đích

− Game kết thúc khi người chơi bị kẻ địch đánh trúng 3 lần, hoặc rơi vào hố chông

2 Giới thiệu về các GameObject

2.1 Trong các GameScene

2.1.1 MainCamera:

Camera object do Unity Engine cung cấp với tác dụng kiểm soát màn hình người chơi (những gì người chơi thực sự thấy khi chơi game) MainCamera object trong game có nhiệm vụ theo dõi Player object, nhờ đó màn hình game luôn luôn quan sát hành động của nhân vật chính và môi trường xung quanh

2.1.2 Grid:

Là hệ thống vẽ bao gồm các lớp (layer) để thiết kế và vẽ map

Grid bao gồm 4 layer: Ground, MidGround, FarGround, Foreground

- Ground: vẽ các bề mặt (có collision) để nhân vật và các kẻ địch có thể đứng

và di chuyển được trên bề mặt

- MidGround: dùng để vẽ nền (background) cho game, có độ ưu tiên cao hơn FarGround nên khi render sẽ nằm đè lên FarGround

Trang 16

- FarGround: dùng để vẽ nền (background) cho game, có độ ưu tiên thấp hơn MidGround nên khi render sẽ nằm dưới MidGround

- ForeGround: dùng để vẽ những chi tiết nhỏ trên bề mặt (như cỏ cây, đá, đèn, …)

2.1.3 Player:

Nhân vật chính của game Hệ thống logic game xoay quanh object Player và cập nhật trạng thái game dựa trên object này Player object tương tác với thế giới game thông qua những script file Player.cs – quản lý logic – và PlayerAnimation.cs – quản lý animation

2.1.4 Moss_Giant_Enemy:

Một loại quái trong game có hình dạng là người khổng lồ Di chuyển qua lại giữa

2 điểm được lập trình sẵn Chuyển sang trạng thái “combat” khi bị người chơi đánh trúng và gây sát thường cho người chơi bằng cách đấm trả

2.1.5 Spider_Enemy:

Một loại quái trong game có hình dạng là nhện Không có khả năng di chuyển Gây sát thương cho người chơi bằng cách phun ra axid (axid được tạo ra bằng acid prefab)

Acid prefab: tạo ra acid objects (tạm thời) khi Spider trong trạng thái phun acid

2.1.6 Skeleton_Enemy:

Một loại quái trong game có hình dạng là bộ xương Di chuyển qua lại giữa 2 điểm được lập trình sẵn Chuyển sang trạng thái “combat” khi bị người chơi đánh trúng và gây sát thường cho người chơi bằng cách đánh trả

Trang 17

- BackGround: vẽ hình nền cho màn hình Menu chính

- Title: vẽ tựa đề Dungeon Escape cho màn hình Menu chính

- Symbol: vẽ hình ảnh tượng trưng cho màn hình Menu chính

- Start_Button: bắt đầu trò chơi khi người chơi nhấp vào (chuyển sang màn hình GameScene để bắt đầu trò chơi)

- Quit_Button: thoát khỏi trò chơi (đóng cửa sổ trò chơi lại)

2.2.3 EventSystem:

Hệ thống xử lí các sự kiện của MenuScene

3 Giới thiệu các màn chơi

3.1 Tutorial

Một màn chơi ngắn với tác dụng hướng dẫn người chơi các phím di chuyển, tấn công và nhặt diamond Bước qua cổng cuối đường sẽ đưa người chơi đến scene

1

Trang 18

3.2 Scene 1

Bao gồm shop ở đầu level, kế cổng qua scene 2 Người chơi cần đi hết màn chơi

và vòng lại chỗ ban đầu để mua (ít nhất) gate key để có thể qua màn chơi tiếp theo Ngoài ra, người chơi hoàn toàn có thể kiếm đủ diamond trong màn chơi thứ nhất để mua toàn bộ mọi trang bị trong shop trước khi qua màn chơi thứ 2

3.3 Scene 2

Là một màn chơi tuyến tính với cửa kết thúc nằm cuối màn chơi, đây cũng là mục tiêu của trò chơi Người chơi không thể mua trang bị ở màn chơi này

Trang 19

4 Hệ thống loot và shop

4.1 Loot

Rải rác khắp màn chơi thứ nhất và xuất hiện ở xác của các quái vật là diamond dành chơi người chơi thu thập Có tác dụng như đơn vị tiền tệ chính của game, dùng để mua trang bị và chìa khoá mở cổng ở shop

4.2 Shop

Nằm ở đầu màn chơi thứ nhất Cung cấp trang bị người chơi, bao gồm: chìa khoá mở cổng, nâng cấp kiếm, nâng cấp máu

Trang 21

Chương IV: ĐẶC TẢ USE CASE

1 Sơ đồ Use Case

1.1 Player

Hình IV.1: Player Use Case Diagram

Trang 22

1.2 Moss Giant

Hình IV.2: Moss Giant Use Case Diagram

Trang 23

1.3 Spider

Hình IV.3: Spider Use Case Diagram

Trang 24

1.4 Skeleton

Hình IV.4: Skeleton Use Case Diagram

Trang 25

3 Danh sách Use Case

STT Use case Mô tả/Ghi chú

1 Start Game Người chơi nhấn nút “Start” ở MenuScene

2 Quit Game Người chơi nhấn nút “Quit” ở Menu Scene

3 Player Move Người chơi nhấn một hoặc nhiều nút di chuyển –

A,W,D,Space – trong game

4 Vung kiếm Người chơi click chuột trái trong game

5 Cập nhật HP

Cập nhật giảm chỉ số Hitpoint cho người chơi hoặc enemy

khi một trong hai nhận sát thương

6 Nhận sát thương Xảy ra khi người chơi hoặc enemy tấn công trúng nhau

Trang 26

7 Chết

Xảy ra khi chỉ số Hitpoint của người chơi hoặc enemy bị

giảm xuống 0

8 Trở lại menu Người chơi nhấn nút Esc trong game

9 Moss Giant – Idle Trạng thái mặc định của Moss Giant

10 Moss Giant – Tấn công Xảy ra khi Moss Giant bị người chơi tấn công trúng hoặc va chạm với người chơi

11 Skeleton – Idle Trạng thái mặc định của Skeleton

12 Skeleton – Tấn công Xảy ra khi Skeleton bị người chơi tấn công trúng hoặc va chạm với người chơi

13 Spider – Idle Diễn ra trong vòng 4 giây sau use case Spider – Bắn Acid

14 Spider – Bắn Acid Diễn ra theo chu kì 4 giây một lần

15 Chạm cổng Người chơi di chuyển đến cổng kết thúc game

16 Chạm Spike Người chơi chạm trúng chông dưới hố chông

Trang 27

4 Mô tả chi tiết Use Case

4.1 Start Game

Mô tả Bắt đầu game khi người chơi nhấn Start

Luồng sự kiện

Luồng chính

1 Người chơi nhấn nút “Start” trong MenuScene

2 Game chuyển qua GameScene, người chơi bắt

đầu chơi game Luồng phụ Không Yêu cầu đặc biệt Không

Điều kiện trước - Ứng dụng đang mở

- Ứng dụng đang trong MenuScene Điều kiện sau - Ứng dụng chuyển sang GameScene

Mở rộng Không

Trang 28

Điều kiện trước

- Ứng dụng đang mở

- Ứng dụng đang trong MenuScene Điều kiện sau - Ứng dụng bị tắt

Mở rộng Không

Trang 29

4.3 Người chơi di chuyển

Mô tả Người chơi di chuyển nhân vật

Luồng sự kiện

Luồng chính

1 Người chơi nhấn các nút di chuyển: A, W, D,

Space

2 Nhân vật bắt đầu di chuyển theo đúng hướng

người chơi mong muốn Luồng phụ Không

Yêu cầu đặc biệt Hướng di chuyển mà người chơi chỉ định phải

không tồn tại địa hình cản trở Điều kiện trước - Ứng dụng đang trong GameScene Điều kiện sau - Vận tốc của Player Object thay đổi

Mở rộng Không

Trang 30

4.4 Vung kiếm

Mô tả Người chơi cho nhân vật tấn công

Luồng sự kiện

Luồng chính

1 Người chơi nhấn chuột trái

2 Nhân vật chuyển sang trạng thái tấn công Luồng phụ Không

Yêu cầu đặc biệt - Nhân vật không ở trạng thái tấn công Điều kiện trước - Ứng dụng đang trong GameScene Điều kiện sau - Nhân vật chuyển sang trạng thái tấn công

Mở rộng Nếu tấn công trúng enemy: Use Case ‘Nhận sát

thương’

Trang 31

4.5 Người chơi nhận sát thương

Mô tả Nhận vật bị enemy tấn công trúng

Điều kiện trước

- Ứng dụng đang trong GameScene

- Nhân vật còn sống

- Nhân vật bị tấn công trúng Điều kiện sau - HP nhân vật trúng giảm đi 1

Mở rộng Nếu HP = 0 : Use Case ‘Trở lại Menu’

Ngày đăng: 01/02/2023, 21:10

w