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

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

31 7 0

Đ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

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: 14 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 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 IT3100 – Lập trình hướng đối tượng 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 quát 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 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 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ợ q 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 PHÂN CƠNG THÀNH VIÊN TRONG NHĨM Nhóm 14 IT3100 – Lập trình hướng đối tượng CHƯƠNG 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 qi 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 quái vật - Quái vật có khả di chuyển cơng người chơi (qi 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 Nhóm 14 IT3100 – Lập trình hướng đối tượng  Thốt Game Nhóm 14 IT3100 – Lập trình hướng đối tượng 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 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 2.2.3 Biểu đồ lớp cụ thể phần Nhóm 14 16 IT3100 – Lập trình hướng đối tượng 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 17 IT3100 – Lập trình hướng đối tượng 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 18 IT3100 – Lập trình hướng đối tượng CHƯƠNG 3.1 Cơng Nghệ - 3.2 CƠNG NGHỆ VÀ THUẬT TỐN SỬDỤNG 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 ngun 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 19 IT3100 – Lập trình hướng đối tượng CHƯƠNG 4.1 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, qi 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 20 IT3100 – Lập trình hướng đối tượng 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 21 IT3100 – Lập trình hướng đối tượng 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 22 IT3100 – Lập trình hướng đối tượng 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 23 IT3100 – Lập trình hướng đối tượng 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 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 24 IT3100 – Lập trình hướng đối tượng 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 25 IT3100 – Lập trình hướng đối tượng 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 trái Không xử lý 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 26 IT3100 – Lập trình hướng đối tượng Nhấn Enter 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 Cả nhân vật Giao diện chuyển đến bụi cỏ bên phải map sau hình Nhóm 14 Exception Kết Chưa tiêu diệt OK hết quái vật sau di 27 IT3100 – Lập trình hướng đối tượng 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, trình thử nghiệm mang tính chủ quan lớn nên cị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 28 IT3100 – Lập trình hướng đối tượng 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 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 29 IT3100 – Lập trình hướng đối tượng 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 30

Ngày đăng: 04/04/2023, 05:26

Xem thêm:

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

TÀI LIỆU LIÊN QUAN

w