1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ĐỀ TÀI XÂY DỰNG MỘT GAME NHẬP VAI SIMPLE RPG

30 65 1

Đ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

Cấu trúc

  • DANH MỤC HÌNH ẢNH

  • LỜI NÓI ĐẦU

    • 1. Lý do chọn và tầm quan trọng của đề tài

    • 2. Mô tả đề tài

    • 3. Quá Trình Tiếp Cận

  • PHÂN CÔNG THÀNH VIÊN TRONG NHÓM

  • CHƯƠNG 1. KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN

    • 1.1 Miêu tả yêu cầu bài toán

    • 1.2 Biểu đồ use case

      • 1.2.1 Biểu đồ use case tổng quan

      • 1.2.2 Biểu đồ use case phân rã mức 2

    • 1.3 Đặc Tả Use Case

  • CHƯƠNG 2. PHÂN TÍCH THIẾT KẾ BÀI TOÁN

    • 2.1 Biểu đồ trình tự

    • 2.2 Biểu đồ gói và biểu đồ lớp

      • 2.2.1 Tổng Quát gói Gui, Manager, Map, Weapons

      • 2.2.2 Tổng quát gói Actor

      • 2.2.3 Biểu đồ lớp cụ thể từng phần

    • 2.3 Thiết kế chi tiết lớp

  • CHƯƠNG 3. CÔNG NGHỆ VÀ THUẬT TOÁN SỬDỤNG

    • 3.1 Công Nghệ

    • 3.2 Kiến Thức

    • 3.3 Thuật Toán

  • CHƯƠNG 4. XÂY DỰNG CHƯƠNG TRÌNH MINH HỌA

    • 4.1 Kết quả chương trình minh họa

    • 4.2 Giao diện chương trình

      • 4.2.1 Giao diện chính

      • 4.2.2 Giao diện dừng trò chơi

      • 4.2.3 Giao diện chiến thắng

      • 4.2.4 Giao diện xử thua cuộc

    • 4.3 Kiểm thử các chức năng đã thực hiện

    • 4.4 Kết luận

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

  • TÀI LIỆU THAM KHẢO

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG -š›&š› - BÀI TẬP LỚN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG ĐỀ TÀI: XÂY DỰNG MỘT GAME NHẬP VAI SIMPLE RPG Giáo viên hướng dẫn: ThS Nguyễn Mạnh Tuấn Mã lớp: 124159 - Nhóm: 13 Sinh viên thực hiện: STT Họ tên Phan Ngọc Khải Nguyễn Hồng Quế Hịa Từ Hoàng Giang Nguyễn Tiến Lâm Trần Đức Hải MSSV 20194302 20194054 Email khai.pn194302@sis.hust.edu.vn hoa.nhq194054@sis.hust.edu.vn Lớp KTMT-01 KHMT03 20183518 20194313 20194270 giang.th183518@sis.hust.edu.vn lam.nt194313@sis.hust.edu.vn hai.td194270@sis.hust.edu.vn KHMT03 KTMT-01 KTMT-01 Hà Nội – 5/2021 MỤC LỤC MỤC LỤC DANH MỤC HÌNH ẢNH LỜI NÓI ĐẦU Lý chọn tầm quan trọng đề tài .4 Mô tả đề tài .4 Quá Trình Tiếp Cận PHÂN CÔNG THÀNH VIÊN TRONG NHÓM .5 CHƯƠNG KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN .6 1.1 Miêu tả yêu cầu toán 1.2 Biểu đồ use case 1.2.1 Biểu đồ use case tổng quan 1.2.2 Biểu đồ use case phân rã mức .7 1.3 Đặc Tả Use Case CHƯƠNG 2.1 PHÂN TÍCH THIẾT KẾ BÀI TỐN 10 Biểu đồ trình tự 10 2.2 Biểu đồ gói biểu đồ lớp 12 2.2.1 Tổng Quát gói Gui, Manager, Map, Weapons 12 2.2.2 Tổng quát gói Actor 13 2.2.3 Biểu đồ lớp cụ thể phần .15 2.3 Thiết kế chi tiết lớp 16 CHƯƠNG CƠNG NGHỆ VÀ THUẬT TỐN SỬDỤNG 18 3.1 Công Nghệ 18 3.2 Kiến Thức 18 3.3 Thuật Toán 18 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH MINH HỌA 19 4.1 Kết chương trình minh họa 19 4.2 Giao diện chương trình 19 4.2.1 4.2.2 4.2.3 Giao diện 20 Giao diện dừng trò chơi 23 Giao diện chiến thắng 23 IT3100 – Lập trình hướng đối tượng 20192 4.2.4 Giao diện xử thua 24 4.3 Kiểm thử chức thực .24 4.4 Kết luận .27 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 28 Những mặt đạt 28 Những mặt chưa đạt .28 Hướng phát triển 28 TÀI LIỆU THAM KHẢO 29 Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 DANH MỤC HÌNH ẢNH Hình : Biểu đồ .7 Hình : Biểu đồ lớp tổng quát .8 Hình : Sơ đồ lớp tổng qt gói GUI, Manager, Map, Weapons Hình : Sơ đồ lớp tổng quát 10 Hình : Giao diện 15 Hình : Giao diện hướng dẫn 16 Hình : Giao diện giới thiệu 17 Hình : Giao diện map cụ thể 17 Hình : Thanh số nhân vật .18 Hình 10 : Giao diện dừng trò chơi .18 Hình 11 : Giao diện chiến thắng 19 Hình 12 : Giao diện thua 19 Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 LỜI NÓI ĐẦU Lý chọn tầm quan trọng đề tài Khi bắt đầu làm quen với lập trình hướng đối tượng cách tiếp cận nhanh chóng mà hiệu vào ví dụ mà ranh giới đối tượng rõ ràng Như biết, game nhập vai khuynh hướng game mẻ nhiên thể loại game nhiều người yêu thích Chúng em cảm thấy trò chơi đỗi quen thuộc hút, đồng thời game nhập vai ví dụ tốt để thành viên nhóm có nhìn rõ mơn học nói riêng lập trình hướng đối tượng nói chung Chính lý này, nhóm chúng em chọn đề tài “Xây dựng game nhập vai Simple RPG” để thực chương trình Escape-Ghost demo cho tập lớn mơn học Chương trình viết hồn tồn ngơn ngữ lập trình Java – ngơn ngữ lập trình đối tượng Bởi làm quen với ngôn ngữ Java việc xử lý lập trình hướng đối tượng nên chương trình cịn hạn chế việc khơng tránh khỏi Vậy nên nhóm chúng em mong có nhận xét từ phía thầy đề tài nhóm để có khắc phục Mơ tả đề tài Game nhập vai ESCAPE-GHOST gồm có: • Menu: hiển thị cho phép người chơi lựa chọn thông tin ( Xem hướng dẫn, chọn chế độ chơi,…) • Người chơi (Player): Game có người chơi hỗ trợ trình chơi • Kẻ địch (Enemy): có khả gây sát thương cho player, công di chuyễn ngẫu nhiên đồ • Bản đồ (Map): bao gồm đường đi, đất, nước,… Quá Trình Tiếp Cận Chúng em lựa chọn đề tài dựa sở thích khả thành viên nhóm Q trình hồn thiện đề tài kéo dài vịng tháng bao gồm việc lên ý tưởng, thảo luận để lựa chọn đề tài Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 PHÂN CƠNG THÀNH VIÊN TRONG NHĨM Họ tên Email Phan Ngọc Khải Nguyễn Hồng Quế Hịa Từ Hồng Giang Nguyễn Tiến Lâm Trần Đức Hải khai.pn194302@sis.hust.edu.vn Nhóm 14 Điện thoại Cơng việc thực Đánh giá hoa.nhq194054@sis.hust.edu.vn giang.th183518@sis.hust.edu.vn lam.nt194313@sis.hust.edu.vn hai.td194270@sis.hust.edu.vn IT3100 – Lập trình hướng đối tượng CHƯƠNG 20192 KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN 1.1 Miêu tả yêu cầu toán - Người chơi điều khiển nhiều nhân vật đồ lưu cấu trúc liệu (trên đồ có quái vật di chuyển được) - Các nhân vật người chơi điều khiển quái vật có số xác định tình trạng thể lực (ví dụ HP, MP, Attack, Defense, Speed, ) Người chơi công quái vật sử dụng kỹ đặc biệt Tương tự, quái vật tìm đến cơng người chơi - Người chơi di chuyển qua lại đồ khác (ví dụ vào vùng M0, M1, M2, đồ) đến kết thúc trị chơi (ví dụ vào vùng END đồ)  Đáp ứng yêu cầu toán bao gồm: - Thể đồ đối tượng đồ giao diện đồ họa - Điều khiển nhân vật di chuyển - Có thao tác để cơng qi vật - Qi vật có khả di chuyển công người chơi (quái vật chia thành nhiều loại: cơng gần, loại cơng / bắn đạn từ xa, boss,…) - Game có hai chế độ chơi dễ / khó theo mức độ “thơng minh”, “di chuyển nhanh” “lượng máu” quái vật 1.2 Biểu đồ use case Biểu đồ use case tổng quan - Tác nhân : người chơi 1, người chơi - Các use case người chơi  Bắt đầu game  Chơi game  Dừng game  Thốt Game Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 Hình Use-case Biểu đồ use case phân rã mức Hình Use case “Bắt đầu game” phân rã Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 Hình Use case “chơi game” phân rã người chơi Hình Use case “chơi game” phân rã người chơi 1.3 Đặc Tả Use Case Nhóm 14 IT3100 – Lập trình hướng đối tượng Mã UC UC01 20192 Tên Tác nhân Người dung chương trình Điều kiện trước Khơng có Luồng thực thi No Thực Hành động Player Mở trò chơi System Player Hiện thị giao diện chọn chế độ chơi Chọn chế độ System System Khởi tạo game với chế độ chọn Hiển thị giao diện chơi Khơng có UC02 Tên Điều kiện sau Mã UC Tác nhân Người dung chương trình Điều kiện trước Tác nhân bắt đầu game Luồng thực thi No Thực Hành động Player1 Chơi game System Player1 System System Hiển thị giao diện chơi Di chuyển công Cập nhật vị trí nhân vật Cập nhật quái vật bị bắn trúng Khơng có Điều kiện sau Mã UC Nhóm 14 UC03 Tên Bắt đầu game Chơi Game (Player 1) Chơi game (Player 2) IT3100 – Lập trình hướng đối tượng 20192 2.2.3 Biểu đồ lớp cụ thể phần Nhóm 14 15 IT3100 – Lập trình hướng đối tượng 20192 2.3 Thiết kế chi tiết lớp  Các lớp quan trọng: MyMap, Container, Ghost, Manager, Actor, MainGame  Mô tả mẫu CRC: MyMap Tạo đồ, quái vật Setup vị trí số lượng quái MainGame Dog Hunter Container Hiển thị giao diện điều khiển cho người chơi ( Menu, tutorial, end, maingame,…) MainGame Tutorial Menu End Ghost Thiết lập số: HP, MP, Speed, atk,…các image ứng với trạng thái di chuyển Thiết lập di chuyển cho nhân vật Ghost Nhóm 14 MainGame LongRange 16 IT3100 – Lập trình hướng đối tượng 20192 Manager Xử lí va chạm, tương tác với người chơi Xử lí tương tác nhân vật với địa hình, quái vật nhân vật khác Bullet Dog Hunter MainGame Actor Tạo thuộc tính cho nhân vật quái như: HP, Max_HP, MP, Max_MP, defaultSpeed, speed, atk, defense, status, dead, type,… MainGame LongRange ShortRange MainGame Hiển thị nhân vật, quái vật, map,… MyMap hình chơi game Monster Thiết lập chức phím tắt Hunter Kiểm tra trạng thái nhân vật, quái MyAdapter vật Manager (dead, live) Dog Ghost Nhóm 14 17 IT3100 – Lập trình hướng đối tượng CHƯƠNG 3.1 CƠNG NGHỆ VÀ THUẬT TỐN SỬDỤNG Cơng Nghệ - 3.2 20192 Mơi trường lập trình : Eclipse Phần mềm quản lý mã nguồn : Github Kiến Thức Bài tập lớn gồm lượng lớn kiến thức phân tích thiết kế hướng đối tượng Cụ thể sau: - Mơ hình lập trình: hướng đối tượng - Các nguyên lý lập trình hướng đối tượng: đóng gói, kế thừa, đa hình, interface,… - Ngơn ngữ: ngơn ngữ lập trình hướng đối tượng Java - Cơ sở liệu thiết kế sở liệu cho game 3.3 Thuật Tốn Nhóm 14 18 IT3100 – Lập trình hướng đối tượng CHƯƠNG 4.1 20192 XÂY DỰNG CHƯƠNG TRÌNH MINH HỌA Kết chương trình minh họa Nhìn chung sản phẩm minh họa thành cơng thực hầu hết yêu cầu đưa ra: - Thể đồ đối tượng đồ giao diện đồ họa - Điều khiển nhân vật di chuyển - Có người chơi với phím di chuyển kỹ khác :  Người chơi có khả di chuyển cơng qi súng  Người chơi có khả đốt quái phạm vi gần, dịch chuyển đến vị trí người chơi hồi máu cho - Quái vật có khả di chuyển cơng người chơi - Game có hai chế độ dễ/khó theo mức độ “thơng minh”, “di chuyển nhanh” “lượng máu” quái vật - Có thể dừng game để tiếp tục sau khoảng thời gian Game nhập vai Escape Ghost có chức sau : - Giao diện vào game có Tutorial giúp người chơi biết kỹ người chơi hiểu cách thức để chiến thắng game - Khi vào game người chơi chọn chế độ chơi :  Play Easy : chế độ người chơi công người chơi 2, quái vật có số thấp  Play Hard : chế độ người chơi cơng người chơi đồng thời tang số quái vật - Người chơi dừng game với phím P tiếp tục game sau nhấn nút Space - Người chơi vượt qua chơi cách vào bụi cỏ bên phải hình sau tiêu diệt quái vật - Nhân vật điều khiển di chuyển phím ↓ ↑ ← → cơng qi vật phím Enter - Nhân vật điều khiển di chuyển phím W S A D có kỹ thiêu đốt quái xung quanh, dung phím B để dịch chuyển đến nhân vật hồi máu phím N - Người chơi bị xử thua sau nhân vật hết lượng máu (HP) 4.2 Giao diện chương trình Nhóm 14 19 IT3100 – Lập trình hướng đối tượng 20192 4.2.1 Giao diện Hình : Giao diện - Trên giao diện game gồm có chức :  TUTORIAL : Xem hướng dẫn game Nhóm 14 20 IT3100 – Lập trình hướng đối tượng 20192 Hình : Giao diện hướng dẫn  PLAY EASY : Chơi chế độ dễ  PLAY HARD : Chơi chế độ khó Dù chơi chế độ người chơi bắt đầu chơi khơng có qi vật để làm quen với game ( di chuyển sử dụng skill nhân vật) Nhóm 14 21 IT3100 – Lập trình hướng đối tượng 20192 Hình : Giao diện giới thiệu Sau vượt qua giới thiệu giao diện game thay đổi vào giao diện map Hình : Giao diện map cụ thể Nhóm 14 22 IT3100 – Lập trình hướng đối tượng 20192 Trong giới thiệu kể chơi thông số nhân vật nhân vật nêu rõ hình Hình : Thanh số nhân vật Trong  Ghost HP lượng máu nhân vật  Ghost MP mana dùng để cơng nhân vật ( hồi lại đạn trúng vật cản ngồi map)  Ghost-ATK số cơng nhân vật  Monster HP lượng máu nhân vật  Monster MP lương mana để sử dụng kỹ nhân vật  Monster-ATK số dame đốt quái xung quanh giây nhân vật  Monster AT-Ranger phạm vi đốt quái vật nhân vật 4.2.2 Giao diện dừng trị chơi Hình 10 : Giao diện dừng trị chơi 4.2.3 Giao diện chiến thắng Nhóm 14 23 IT3100 – Lập trình hướng đối tượng 20192 Hình 11 : Giao diện chiến thắng 4.2.4 Giao diện xử thua Hình 12 : Giao diện thua 4.3 Kiểm thử chức thực Các chức xây dựng chương trình : Nhóm 14 24 IT3100 – Lập trình hướng đối tượng 20192 Bắt đầu game Di chuyển nhân vật Tân công (đối với Player 1) Kỹ nhân vật ( Gồm : dịch chuyển đến nhân vật 1, hồi máu cho nhân vật 1, đốt quái xung quanh) Quái công : Quái vật tầm gần Quái vật tầm xa Chuyển map Dừng Game Thua game Bảng : Kết kiểm thử chức Bắt đầu game STT input Chọn TUTORIAL hình Chọn chế độ Play EASY hình Chon chế độ Play Hard hình output Exception Hiển thị giao diện Không xử lý hướng dân game Hiển thị giao diện game Không xử lý chế độ dễ Kết OK Hiển thị giao diện game Không xử lý chế độ dễ OK OK Bảng : Kết kiểm thử chức di chuyển đói với nhân vật STT input Nhấn ↑ nhân vật W nhân vật Nhấn ↓ nhân vật S nhân vật Nhấn ← nhân vật A nhân vật Nhấn → nhân vật D nhân vật output Exception Player di chuyển lên Khơng xử lý phía Kết OK Player di chuyển xuống Khơng xử lý phía OK Player di chuyển sang Không xử lý trái OK Player di chuyển sang Không xử lý phải OK Bảng : Tấn cơng Player STT input Nhóm 14 output Exception Kết 25 IT3100 – Lập trình hướng đối tượng Nhấn Enter 20192 Cập nhật lượng máu Không xử lý quái vật lượng máu thấp quái vật biến khỏi đồ (Lương MP giảm sau lần công) FAIL Bảng : Kỹ Player STT input output Dịch chuyển đến Cập nhật vị trí nhân nhân vật vật đồ trùng với nhân vật (Tiêu hao 10 MP) Hồi máu cho nhân Lượng máu nhân vật ( Phím N) vật công cụ tăng 100 (Tiêu hao 20 MP) Đốt quái tầm Quái vật bị trừ lượng đốt xung quanh máu tương ứng số lần đốt ( Hp/s) Exception Không xử lý Kết FAIL Không xử lý OK Không xử lý OK Exception Không xử lý Kết OK Không xử lý OK Không xử lý OK Bảng : Quái công STT input Quái tầm gần cạnh nhân vật Hồi máu cho nhân vật ( Phím N) output Lượng máu nhân vật bị trừ 20HP/s Lượng máu nhân vật công cụ tăng 100 ( Ti Đốt quái tầm Quái vật bị trừ lượng đốt xung quanh máu tương ứng số lần đốt ( Hp/s) Bảng : Chuyển map STT input output Exception Kết Cả nhân vật Giao diện chuyển đến Chưa tiêu diệt OK bụi cỏ bên phải map sau hết quái vật hình sau di Nhóm 14 26 IT3100 – Lập trình hướng đối tượng 20192 chuyển đến xảy lỗi Bảng : Dừng tiếp tục game STT input Người chơi nhấn phím P để dừng game lúc chơi Người chơi nhấn Space để tiếp tục chơi game (Sau nhấn P) output Exception Hiển thị “Press Space to Không xử lý play” đồng thời dừng hoạt động game Kết OK Hiển thị lại giao diện Khơng xử lý cịn dở lần nhấn P lúc trước OK Bảng : Thua game STT 4.4 - input output Exception Một hai nhân Hiển thị giao diện dừng Không xử lý vật có Hp trị chơi đưa lựa chọn cho người chơi lựa chọn “Go Menu” “Again” Kết OK Kết luận Các chức thử nghiệm ổn định không gặp lỗi hay phải xử lý ngoại lệ Tuy nhiên, q trình thử nghiệm mang tính chủ quan lớn nên nhiều hạn chế (các lỗi chưa kiểm thử, kiểm thử không gặp lỗi sử dụng thật gặp lỗi, v.v ) Nhóm 14 27 IT3100 – Lập trình hướng đối tượng 20192 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Những mặt đạt - Hiểu làm viêc Cơ hội làm quen với lập trình game bản, xây dựng chương trình cụ thể Game thiết kế với đồ họa dễ nhìn cách chơi đơn giản khơng gặp q nhiểu lỗi tích hợp nhiều tính thỏa mãn tiêu chí đề Những mặt chưa đạt Hướng phát triển Nhóm 14 28 IT3100 – Lập trình hướng đối tượng 20192 TÀI LIỆU THAM KHẢO [1] Lập trình hướng đối tượng – Bài giảng ThS Nguyễn Mạnh Tuấn [2] stackoverflow.com [3] [4] [5] [6] Nhóm 14 29 ... tượng rõ ràng Như biết, game nhập vai khuynh hướng game mẻ nhiên thể loại game nhiều người yêu thích Chúng em cảm thấy trò chơi đỗi quen thuộc hút, đồng thời game nhập vai ví dụ tốt để thành viên... người chơi  Bắt đầu game  Chơi game  Dừng game  Thốt Game Nhóm 14 IT3100 – Lập trình hướng đối tượng 20192 Hình Use-case Biểu đồ use case phân rã mức Hình Use case “Bắt đầu game? ?? phân rã Nhóm... lập trình hướng đối tượng nói chung Chính lý này, nhóm chúng em chọn đề tài “Xây dựng game nhập vai Simple RPG? ?? để thực chương trình Escape-Ghost demo cho tập lớn mơn học Chương trình viết hồn

Ngày đăng: 03/10/2021, 22:12

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

TÀI LIỆU LIÊN QUAN

w