đồ án 2 xây dựng game 3d top down với unity

82 0 0
Tài liệu đã được kiểm tra trùng lặp
đồ án 2 xây dựng game 3d top down với unity

Đ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

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNGNGHỆ PHẦN MỀM

ĐỒ ÁN 2

XÂY DỰNG GAME 3D TOP-DOWN VỚI UNITY

GV HƯỚNG DẪN: ThS Đinh Nguyễn Anh Dũng

SINH VIÊN THỰC HIỆN: Nguyễn Hữu Việt :20522152Trần Trung Thành :20521927

TP HỒ CHÍ MINH, 31 THÁNG 12 NĂM 2023

Trang 2

LỜI CẢM ƠN

Lời đầu tiên em xin chân thành cảm ơn sự hướng dẫn tận tình của thầy ĐinhNguyễn Anh Dũng - giảng viên hướng dẫn Đồ án 2 đã hỗ trợ những thông tin cần thiết vàgiải đáp những thắc mắc cho nhóm trong suốt quá trình thực hiện đề tài.

Đồng thời nhóm em cũng muốn gửi lời cảm ơn đến các anh chị khóa trên, đặc biệtlà những anh chị trong khoa đã chia sẻ những kinh nghiệm quý báu về môn học cũng nhưnhững kiến thức liên quan.

Vì kiến thức của chúng em vẫn còn hạn hẹp nên không thể tránh khỏi những thiếusót trong quá trình thực hiện đồ án Vì vậy nhóm chúng em luôn mong đợi nhận đượcnhững ý kiến đóng góp quý báu từ phía giảng viên để qua đó có thể rút kinh nghiệm, tựsửa chữa, hoàn thiện bản thân mình trên tinh thần nghiêm túc, tự giác học hỏi Một lầnnữa nhóm chúng em xin chân thành cảm ơn thầy.

Thành phố Hồ Chí Minh, ngày 6 tháng 7 năm 2023

Sinh viên thực hiện

Nguyễn Hữu ViệtTrần Trung Thành

Trang 3

Mục lục

LỜI CẢM ƠN 2

ĐỀ CƯƠNG CHI TIẾT 12

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

Chương 3 : GIỚI THIỆU VỀ TOP-DOWN GAME 21

3.1.Khái niệm top-down game 21

3.2.1.Hotline Miami Series 22

Trang 4

3.3.4.Roguelike và Dungeon Crawlers 26

3.3.5.Simulation và Management Games 26

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

5.1 Sơ đồ use case 29

5.3.Danh sách use case 37

5.4.Mô tả chi tiết use case 39

5.4.1.Play Game 39

Trang 6

6.3.3.Mô tả chi tiết 70

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

7.1.Môi trường cài đặt và kiểm thử 83

Trang 7

8.4.Hướng phát triển 84TÀI LIỆU THAM KHẢO 85

Trang 8

Phụ lục bảng

Bảng 5.1 Danh sách Actor 37

Bảng 5.2 Danh sách use case 39

Bảng 5.3 Đặc tả use case Play game 39

Bảng 5.4 Đặc tả use case Exit game 40

Bảng 5.5 Đặc tả use case Pause game 40

Bảng 5.6 Đặc tả use case Save game 41

Bảng 5.7 Đặc tả use case Restart game 41

Bảng 5.8 Đặc tả use case Exit to menu 42

Bảng 5.9 Đặc tả use case Move 42

Bảng 5.10 Đặc tả use case Dash 43

Bảng 5.11 Đặc tả use case Attack 43

Bảng 5.12 Đặc tả use case Update HP 44

Bảng 5.13 Đặc tả use case Take damaged 44

Bảng 5.14 Đặc tả use case CheckHP 45

Bảng 5.15 Đặc tả use case Dead 46

Bảng 5.16 Đặc tả use case Buff 47

Bảng 5.17 Đặc tả use case Interact with item 47

Bảng 5.18 Đặc tả use case Teleport 48

Bảng 5.19 Đặc tả use case Explosive 48

Bảng 5.20 Đặc tả use case IDLE 49

Bảng 5.21 Đặc tả use case Run 50

Bảng 5.22 Đặc tả use case Walk 50

Bảng 5.23 Đặc tả use case Shoot 51

Bảng 6.1 Danh sách class 53

Bảng 6.2 Chi tiết Class Health 54

Bảng 6.3 Chi tiết Class PlayerHealth 54

Trang 9

Bảng 6.4 Chi tiết Class EnemyHealth 55

Bảng 6.5 Chi tiết Class EnemyMovement 55

Bảng 6.6 Chi tiết Class FlyEnemyMovement 55

Bảng 6.7 Chi tiết Class BossMovement 56

Bảng 6.11 Chi tiết Class Vision Range 56

Bảng 6.13 Chi tiết Class PlayerController 58

Bảng 6.14 Chi tiết Class AttackBehavior 59

Bảng 6.15 Chi tiết Class AttackBase 60

Bảng 6.19 Chi tiết Class BossAttackSkill4 60

Bảng 6.20 Chi tiết Class FlyDashAttack 61

Bảng 6.23 Chi tiết Class DataPersistanceManager 61

Bảng 6.24 Chi tiết Class FileDataHandler 62

Bảng 6.25 Chi tiết Class GameData 62

Bảng 6.26 Chuyển đồi state của Player 64

Bảng 6.27 Chuyển đổi state của Player 65

Bảng 6.28 Chuyển đổi state của Destroyar 66

Bảng 6.29 Chuyển đổi state của Engineer 67

Bảng 6.30 Chuyển đổi state của SecurityCyborg1 68

Bảng 6.31 Chuyển đổi state của SecurityCyborg2 68

Bảng 6.32 Danh sách UI 70

Bảng 7.1 Kết quả kiểm thử 83

Phụ lục hình

Trang 10

Hình 2.1 Unity logo 18

Hình 2.2 C# logo 19

Hình 2.3 Visual studio logo 20

Hình 2.4 Github logo 21

Hình 5.1 Sơ đồ use case Player 30

Hình 5.2 Sơ đồ use case Destroyar 31

Hình 5.3 Sơ đồ use case DroneRobot 32

Hình 5.4 Sơ đồ use case Engineer 33

Hình 5.5 Sơ đồ use case SecuritiyCyborg1 34

Hình 5.6 Sơ đồ use case SecurityCyborg2 35

Hình 6.1 Sơ đồ Class 52

Hình 6.2 Sơ đồ state của Player 63

Hình 6.3 Sơ đồ state của Boss 64

Hình 6.4 Sơ đồ state của Destroyar 65

Hình 6.5 Sơ đồ state của Engineer 66

Hình 6.6 Sơ đồ state của SecurityCyborg1 67

Hình 6.7 Sơ đồ state của SecurityCyborg2 68

Hình 6.8 Sơ đồ state của Turret 69

Hình 6.14 Shop gun menu 75

Hình 6.15 Shop item menu 76

Hình 6.16 Mission menu 77

Hình 6.17 Setting menu 78

Trang 11

Hình 6.18 Pause menu 79

Hình 6.19 Game win menu 80

Hình 6.20 Game over menu 81

Trang 12

CÔNG NGHỆ THÔNG TIN

ĐỀ CƯƠNG CHI TIẾT

TÊN ĐỀ TÀI: Xây dựng game 3D top-down với UnityCán bộ hướng dẫn:

- ThS Đinh Nguyễn Anh Dũng

Thời gian thực hiện: 02/10/2023 – 31/12/2023Sinh viên thực hiện:

- Trần Trung Thành – 20521927 - Nguyễn Hữu Việt – 20522152

Nội dung đề tài:

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 emquyết định chọn đề tài phát triển một game 3D top down.

2 Mục tiêu:

- Hiểu rõ cấu trúc và cách sử dụng của Unity Engine

- Tạo ra một sản phẩm game đáp ứng được nhu cầu của người chơi để giải tríđăng tải lên intch.io/simmer.io.

- Thể loại game: top down, action, shooter.- Áp dụng được các thuật toán thông minh.

- Có một đoạn Intro khi vào game.

- Enemies sẽ di chuyển canh gác xung quanh khu vực làm nhiệm vụ Enemies sẽ tiến vào trạng thái tấn công nếu player bước vào khu vực tầm nhìn hoặc tấn

Trang 13

công ở khoảng cách gần.

- Người chơi có thể nhận được xu khi hoàn thành nhiệm vụ hoặc hoàn thành màn chơi nhỏ trong nhiệm vụ/ từ bảng thành tựu của game để mua item và nâng cấp vũ khí.

- Người chơi có thể thay đổi và nâng cấp nhiều loại súng khác nhau để thích hợp cho từng tính huống chiến đấu.

- Có các tính năng Pause game, Save game.

4 Đối tượng sử dụng

Bất cứ ai thích chơi thể loại shooter, top down

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

- Làm việc online hoặc offline với giáo viên hướng dẫn.

- Học và nghiên cứu Unity để phát triển các tính năng của game

- Áp dụng các kỹ thuật (Pooling, ) và mẫu thiết kế (Observer, State machine, Singleton, ) để tối ưu trò chơi.

- Áp dụng các thuật toán AI cho enemies (thuật toán tìm đường A*).- Dành 1 hoặc 2 tuần để tiến hành test game, refactor và tối ưu game.- Hoàn thành deadline đúng hạn theo kế hoạch

6 Nền tảng công nghệ

- Nền tảng phát triển: Win 10/11- Môi trường: Unity

- Công cụ: Unity engine, visual studio code- Ngôn ngữ: C#

- Quản lý code: Github

- Công cụ thiết kế: Photoshop, Draw.io

7 Kết quả mong đợi

- Xây dựng hoàn chỉnh game, chạy mượt mà, không xảy ra lỗi crack- Boss và enemies hoạt động đúng như mong muốn.

- Trình phát hiện collision hoạt động tốt, không vượt qua các đối tượng vật cản.- Có thể chơi game trên một số website hoặc window.

8 Hướng phát triển của đề tài

- Thêm csdl để lưu trữ thông tin game.- Phát triển tính năng thêm sự kiện.- Multi player

- Cải tiển thêm các thuật toán AI khác cho Enemies.

- Cải tiến thêm các thuật toán tốt hơn để tối ưu trải nghiệm chơi game.

9 Kế hoạch làm việc

Thời gian thực hiện: Từ ngày 02/10/2023 đến 31/12/2023

Kế hoạch thực hiện đồ án được chia thành 3 giai đoạn chính và nhiều sprint:Giai đoạn 1: Chuẩn bị

Trang 14

 Cài đặt animation cho player và enemy Code di chuyển và tấn công của player Code di chuyển và tấn công của enemies Code di chuyển của bullet

- Sprint 3 (22/10/2023 – 4/11/2023)

 Xây dựng PlayScene và non-moving object

 Code collision giữa player với enemies/ enemy bullet/ non-moving object

 Code collision giữa enemies với player/ player bullet/ non-moving object Xây dựng effect giữa player và enemy

 Xây dựng map + cài đặt hệ thống camera Code non-moving object

 Đặt enemies lên map => hoàn thiện màn chơi Cài đặt hệ thống âm thanh

 Cài đặt hệ thống HUB (máu, tiền,…)- Sprint 4 (5/11/2023 – 18/11/2023)

 Xây dựng hệ thống Scriptable objects Xây dựng hệ thống buff

 Xây dựng hệ thống item (Cài đặt tương tác giữa player và NPC) Xây dựng hệ thống item và mua đồ từ shop

 Xây dựng hệ thống Inventory và Upgrade item- Sprint 5 (19/11/2023 – 25/11/2023)

 Xây dựng hệ thống nhiệm vụ, thành tựu Xây dựng các map còn lại

 Cài đặt chuyển Scene

 Cài đặt Pause Game và Save Game- Sprint 6 (26/11/2023 – 9/12/2023)

 Cài đặt Menu

 Xây dựng các đoạn Intro Scene và Cut SceneGiai đoạn 3: Kết thúc

Trang 15

- Sprint 7 (10/12/2023 – 16/12/2023) Test game và sửa lỗi

- Sprint 8 (17/12/2023 – 31/12/2023)

 Triển khai game trên các nền tảng như Window, website, …  Thu thập đánh giá.

10 Phân công công việc

Công việc Mô tả công việcCông việc

chung

- Tìm hiểu công nghệ- Phân tích thiết kế

- Lập trình player, enemies và boss- Xây dựng Play Scene

- Kiểm thử game- Triển khai game

- Chuẩn bị tài liệu và báo cáo

Công việc cá nhân

- Thiết kế giao diện các màn hình.

- Xây dựng intro scene

- Xây dựng khung sườn cho game- cài đặt save data(game state và

game setting).

- Quản lý tiến độ đồ án

Trang 16

Chương 1 : GIỚI THIỆU CHUNG1.1 Tổng quan đề tài

Tên đề tài: Xây dựng game 3D top-down với unityNền tảng công nghệ: Unity Engine

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

1.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ớitrẻ 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 3D nhỏ.

 Game 3D gồm nhiều 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 lênxuống trái phải; khả năng chiến đấu cơ bản – nhấn chuột để bắn súng; các kỹnăng đặc biệt khác như ném boom, lướt, …

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

Trang 17

 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

Trang 18

Chương 2 : CƠ SỞ LÝ THUYẾT2.1 Unity Engine

Hình 2.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 WorldwideDevelopers 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 coilà 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ảinghiệ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ụngMono, 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ụngtrong 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ữavào tháng 8 năm 2017, sau khi phát hành Unity 2017.1, để sử dụng C#

Trang 19

Trong các game 2D, Unity cho phép import các sprite và 2D world renderer tiêntiế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 bumpmapping, reflection mapping, parallax mapping, screen space ambient occlusion (SSAO),dynamic shadows using shadow maps, render-to-texture và full-screen post-processingeffects.

2.2 C#

Hình 2.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ượngvà đượ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êndị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 NETFramework, 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ởiCommon Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành.

Trang 20

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

2.3 Microsoft Visual Studio

Hình 2.3 Visual studio logo

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ềungườ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 trangweb, 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ểnphần mềm của Microsoft như Windows API, Windows Forms, Windows PresentationFoundation, 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êntậ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ônngữ tích hợp gồm có C,[4] C++ và C++/CLI (thông qua Visual C++), VB.NET (thôngqua Visual Basic.NET), C# (thông qua Visual C#) và F# (như của Visual Studio

Trang 21

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ễnphí của Visual Studio

2.4 GitHub

Hình 2.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ộtrepository 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ínhnăng về social để các developer tương tác với nhau Github cung cấp các tính năng socialnetworking như feeds, followers, và network graph để các developer học hỏi kinh nghiệmcủa nhau thông qua lịch sử commit.

Trang 22

Chương 3 : GIỚI THIỆU VỀ TOP-DOWN GAME3.1 Khái niệm top-down game

Từ lâu, khái niệm game nhập vai hay Role-Playing Game (RPG) đã không còn xa lạ đối với nhiều người RPG đồng thời cũng đại diện cho rất nhiều dòng game nhỏ bên trong nó, chính vì thế RPG đóng vai trò là một yếu tố trong một game hơn là một thể loại cụ thể Dòng game top-down cũng là một phần không thể thiếu trong thế giới đa dạng củagame nhập vai (RPG)

Điểm đặc trưng của top-down game bao gồm:

- Góc nhìn và phong cách thiết kế: Người chơi quan sát môi trường chơi game từ

trên cao, thường là góc nhìn vuông góc Điều này tạo ra một cái nhìn toàn cảnh, giúp người chơi dễ dàng điều khiển nhân vật và xác định vị trí của các đối tượng xung quanh.

- Trọng tâm vào chiến đấu và trí tuệ: Trong top-down game, người chơi thường

phải đối mặt với các thách thức từ đối thủ và bản đồ phức tạp Thậm chí, đôi khi cần sử dụng trí tuệ và chiến lược để vượt qua các câu đố hoặc tình huống.

- Thế giới đa dạng: Top-down game có thể đặt trong các bối cảnh đa dạng, từ thế

giới mở rộng rãi đến các mê cung hẹp Điều này tạo ra cơ hội cho việc khám phá, thu thập vật phẩm và gặp gỡ các nhân vật khác nhau.

3.2 Một số game tiêu biểu

Dòng game shooter top-down đã tạo ra một số tựa game đình đám với gameplaythú vị và cách tiếp cận độc đáo Dưới đây là một số tựa game tiêu biểu:

3.2.1 Hotline Miami Series

Trang 23

Được biết đến với hình ảnh pixel art và tốc độ nhanh chóng, series game HotlineMiami đưa người chơi vào một thế giới bạo lực với phong cách top-down Người chơi sẽtrải qua các cấp độ đầy khó khăn, sử dụng sự linh hoạt và chiến lược để hoàn thành cácnhiệm vụ ám sát

Hình 3.5 Game Hotline Miami Series

Game diễn ra trong bối cảnh Miami của thập niên 80, người chơi nhập vai vào mộtkẻ sát nhân thuê Anh ta nhận nhiệm vụ từ điện thoại di động để thực hiện các vụ ám sát và loại bỏ các mục tiêu khác nhau ameplay tập trung vào tốc độ nhanh chóng và phản xạ.Người chơi cần di chuyển nhanh, đánh bại kẻ thù và hoàn thành mục tiêu một cách nhanhnhất có thể Tựa game yêu cầu người chơi thử nghiệm và lặp lại nhiều lần các cấp độ để hiểu rõ định hình và tìm ra cách tiếp cận tốt nhất Hơn nữa người chơi có thể chọn từ một loạt vũ khí khác nhau, mỗi loại vũ khí đều có ưu điểm và nhược điểm riêng.

3.2.2 Nuclear Throne

Trang 24

"Nuclear Throne" là một trò chơi hành động roguelike top-down được phát triểnbởi Vlambeer Trong thế giới của "Nuclear Throne," bạn sẽ chiến đấu qua các màn chơingẫu nhiên, thu thập vũ khí và tiến lên hạ ngai vàng

Hình 3.6 Nuclear Throne

Trò chơi đặt bạn vào một thế giới hậu hậu tận thế, nơi đầy rẫy với quái vật, vũ khívà môi trường đầy nguy hiểm "Nuclear Throne" nổi bật với sự đa dạng của các loại vũkhí Từ súng cơ bản đến các loại vũ khí siêu năng lượng và biến thể của chúng, ngườichơi có thể chọn lựa và tận dụng để thích nghi với môi trường chiến đấu Bạn có thể chọntừ một loạt nhân vật với các kỹ năng riêng biệt Mỗi nhân vật có khả năng và mục tiêuriêng, tạo ra sự đa dạng trong cách tiếp cận và chiến đấu.

3.2.3 Helldivers

"Helldivers" là một game hành động top-down co-op được phát triển bởiArrowhead Game Studios Trò chơi này đưa người chơi vào tương lai khi loài ngườichiến đấu với các loài ngoài hành tinh.

Trang 25

Hình 3.7 Helldivers

Helldivers được thiết kế để chơi cùng bạn bè hoặc người chơi khác thông qua chếđộ hợp tác đa người chơi Điều này tạo ra trải nghiệm chơi game cộng đồng, nơi mà bạnvà đồng đội của mình phải hợp tác chặt chẽ để vượt qua các thách thức Trong khi gamecó yếu tố hành động cao, nó cũng yêu cầu sự chiến lược và hợp tác elldivers cho phépngười chơi tùy chỉnh nhân vật và chọn từ một loạt vũ khí, thiết bị để thích nghi với cáctình huống chiến đấu khác nhau.

3.3 Một số thể loại game trong dòng game Top-down

Trong dòng game top-down, có một loạt các thể loại đa dạng mà người chơi có thể tậnhưởng Dưới đây là một số thể loại phổ biến:

3.3.1 Shooter

- Top-Down Shooters (STG): Đây là các game tập trung vào việc người chơi điều khiển nhân vật hoặc phương tiện từ góc nhìn từ trên xuống để bắn hạ kẻ địch hoặc tránh né đạn đạo.

- Twin-Stick Shooters: Người chơi điều khiển vũ khí với một cần điều khiển hoặc chuột và bàn phím, thường điều khiển hướng và bắn độc lập.

Trang 26

3.3.4 Roguelike và Dungeon Crawlers

- Roguelike Games: Thường có yếu tố chết chỉ sống một lần, với việc ngẫu nhiên hóa các màn chơi mỗi lần chơi lại.

- Dungeon Crawlers: Người chơi khám phá và chiến đấu qua các hang động, hầm ngầm, thường từ góc nhìn từ trên xuống.

3.3.5 Simulation và Management Games

- Farming Simulations: Người chơi quản lý và phát triển nông trại từ góc nhìn từ trên xuống.

- City or Base Building Games: Xây dựng và quản lý thành phố hoặc cơ sở từ góc nhìn từ trên xuống.

3.3.6 Puzzle Games

- Tile-Based Puzzles: Các trò chơi logic hoặc câu đố trên lưới, thường từ góc nhìn từ trên xuống.

Trang 27

Chương 4 : TỔNG QUAN VỀ GAME4.1 Ý tưởng game

Game xây dựng một thế giới nơi con người đã phát triển công nghệ AI đến mức độtiên tiến Trong tình hình chiến tranh toàn cầu và hậu quả của việc sử dụng AI, con ngườiđang đối mặt với việc các android đã bị mất kiểm soát và các thế lực không ngừng sửdụng android cho việc chiến tranh Và người chơi sẽ nhập vai vào các android chiến đấutiêu diệt các android đã mất kiếm soát và chống lại các thế lực khủng bố nguy hiểm.

Mục tiêu của người chơi là chiến đấu qua các màn chơi ngẫu nhiên, vượt qua cácmức độ khó khăn và đối mặt với nhiều loại kẻ thù khác nhau từ máy móc đến những sinhvật quái dị Người chơi sẽ thu thập vũ khí, nâng cấp và tùy chỉnh android của mình đểthích nghi với các tình huống chiến đấu ngày càng khắc nghiệt.

4.2 Tính năng

- Player có thể tấn công enemy và ngược lại.

- Player được xây dựng có khả năng di chuyển, tấn công bằng súng và một số cáckỹ năng: ném bom; lướt; …

- Enemy được áp dụng các thuật toán để thông minh hơn, có thể rớt vật phẩm khi bịtiêu diệt.

- Game có sự đa dạng vũ khí và item Người chơi có thể thay đổi vũ khí và item hỗtrợ để chiến đấu.

- Bản đồ được thiết kế để tạo một môi trường khắc nghiệt và thử thách đòi hỏiplayer phải có kỹ năng và phản xạ nhanh.

- Player có thể tương tác với npc trong game để nói chuyện và nhận item.- Tính năng Pause game, Save game, Save settings.

4.3 Giới thiệu về các gameObject4.3.1 Trong GamePlayScene

4.1.1.1.Main Camera

Trang 28

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

Nhân vật chính của game, là đối tượng mà người chơi có thể điều khiển và thựchiện các hành động dựa trên quy tắc của game Player có thể thực hiện tất cả mọi thứđược đề cập ở trên phần tính năng Hệ thống logic game xoay quanh object Player và cậpnhậ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ôngqua những script file PlayerController.cs.

Trang 29

Camera object do Unity Engine cung cấp, dùng để quan sát màn hình chính

Nơi vẽ Menu chính, chứa các object con là:

 BackGround: vẽ hình nền cho màn hình Menu chính. Title: vẽ tựa đề cho màn hình Menu chính

 Play_Button: bắt đầu trò chơi khi người chơi nhấp vào. Setting_Button: chỉnh sửa các cài đặt của trò chơi. Back_Button: Thoát trò chơi.

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

Trang 30

Chương 5 : ĐẶC TẢ USE CASE5.1 Sơ đồ use case

5.1.1 Player

Hình 5.8 Sơ đồ use case Player

5.1.2 Destroyar

Trang 31

Hình 5.9 Sơ đồ use case Destroyar

5.1.3 DroneRobot

Trang 32

Hình 5.10 Sơ đồ use case DroneRobot

5.1.4 Engineer

Trang 33

Hình 5.11 Sơ đồ use case Engineer

5.1.5 SecurityCyborg1

Trang 34

Hình 5.12 Sơ đồ use case SecuritiyCyborg1

5.1.6 SecurityCyborg2

Trang 35

Hình 5.13 Sơ đồ use case SecurityCyborg2

5.1.7 Turret

Trang 36

Hình 5.7 Sơ đồ use case Turret

5.2.Danh sách Actor

xem như người chơi trong các use case, do hànhđộng của người chơi tác động vào game tương tựnhư nhân vật.

khu vực của mình và tấn công những kẻ xâmphạm.

khu vực của mình và tấn công kẻ xâm phạm, cókhả năng phát nổ khi sắp chết.

vực của mình và tấn công kẻ thù xâm phạm, cókhả năng sử dụng nhiều loại súng.

5 SecurtityCyborg1 Là lính cyborg canh phòng, di chuyển xungquanh khu vực của mình và tấn công kẻ thù xâm

Trang 37

phạm, có khả năng sử dụng nhiều loại súng.6 SecurtityCyborg2 Là lính cyborg canh phòng, di chuyển xung

quanh khu vực của mình và tấn công kẻ thù xâmphạm, có khả năng sử dụng nhiều loại súng.

công kẻ xâm phạm.

Bảng 5.1 Danh sách Actor

5.3.Danh sách use case

ở màn hình Main Menu và tải file save game

ở màn hình Main Menu

trên bàn phím

hoặc thoát game

to Menu” trên Pause Menu

7 Move Use case bắt đầu khi người chơi nhấn một hoặcnhiều nút di chuyển “A, S, W, D” trongGamePlayScene

thương từ các cuộc tấn công như va chạm hay bị bắntrúng,…

Trang 38

và nhận sát thương để kiểm tra xem use case Deadcó thể chạy hay không?

thương và lượng máu về 0

đánh bại enemy

15 Interact with item Use case bắt đầu khi player chạm vào các item rơi rakhi đánh bại enemy

dịch chuyển trên map

đổi trạng thái hoặc bắt đầu một cuộc tấn công Tấtcả các hành động khác bị dừng lại

enemy để dẫn đến bị trí hiện tại của player Use casehoạt động trong suốt quá trình tồn tại của enemy

di chuyển đến, giúp enemy đến gần người chơi vàtiến hành tấn công.

Bảng 5.2 Danh sách use case

5.4.Mô tả chi tiết use case5.4.1 Play Game

Trang 39

3 Chuyển sang GamePlayScene đã lưutừ trước, người chơi bắt đầu chơi game

Main Menu hoặc nút “Quit Game” ở PauseMenu

Trang 40

Bảng 5.5 Đặc tả use case Pause game

5.4.4 Save Game

Bảng 5.6 Đặc tả use case Save game

5.4.5 Restart Game

đấu với các enemy và khiến máu trở về 02 Player quay lại địa điểm lưu gamegần nhất

gần nhất và xóa tất cả buff kiếm được

Bảng 5.7 Đặc tả use case Restart game

5.4.6 Exit to Menu

GamePlayScene để hiện lên Pause Menu2 Người chơi nhấn vào nút “Exit toMenu”

Ngày đăng: 15/05/2024, 09:29

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan