Chức năng Player- Player có thể mua nhân vật, trang bị và vật phẩm - Player sở hữu một đơn vị tiền tệ gọi là Gold- Player có thể cường hoa nhân vật và trang bị bằng vật phẩm và Gold - Pl
Trang 1ĐẠI HỌC DUY TÂNTRƯỜNG KHOA HỌC MÁY TÍNH
ĐỒ ÁN NHÓM
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
ĐỀ TÀI:PHÂN TÍCH THIẾT KẾ HỆ THỐNG GAME (TRÒ CHƠI)
Trang 2Mục lục
MÔ TẢ TỔNG QUAN VỀ CÁC YÊU CẦU 1
PHẦN I: BIỂU ĐỒ USE CASE 2
1 Các yêu cầu về chức năng: 2
1.1 Chức năng mua đồ: 2
1.2 Chức năng cường hoá: 2
1.3 Chức năng quản lý tài sản (hành trang): 2
1.4 Chức năng chiến đấu: 2
2 Xác định tác nhân: 2
3 Thiết lập và mô tả kịch bản của các use case: 3
3.1 Player: 3
3.2 Administrator: 11
3.3 Biểu đồ Use Case: 13
PHẦN II: BIỂU ĐỒ LỚP (CLASS DIAGRAM) 14
1 Thiết lập các lớp: 14
1.1 Lớp Abstract: 14
1.2 Lớp khác: 14
2 Thuộc tính và phương thức của các lớp: 15
3 Biểu đồ lớp (Class Diagram): 16
3.1 Lớp kế thừa: 16
3.2 Biểu đồ lớp: 17
PHẦN III: BIỂU ĐỒ HOẠT ĐỘNG 18
1 Biểu đồ mua nhân vật 18
2 Mua trang bị và vật phẩm: 19
3 Cường hoá trang bị: 20
4 Cường hoá nhân vật: 21
5 Đeo trang bị: 22
6 Bắt đầu chiến đấu: 23
7 Khởi tạo map: 24
4 Cường hoá nhân vật: 30
5 Cường hoá trang bị: 31
Trang 36 Bắt đầu chiến đấu: 32
7 Khởi tạo map: 33
5 Chuẩn bị chiến đấu: 45
6 Chức năng chiến đấu: 46
Trang 4MÔ TẢ TỔNG QUAN VỀ CÁC YÊU CẦU
Chúng ta sẽ xây dựng một trò chơi thuộc loại chiến thuật với những yêu cầu sau: 1 Chức năng Player
- Player có thể mua nhân vật, trang bị và vật phẩm - Player sở hữu một đơn vị tiền tệ gọi là Gold
- Player có thể cường hoa nhân vật và trang bị bằng vật phẩm và Gold - Player có thể quản lý những nhân vật, vật phẩm, trang bị và gold của bản thân - Player có thể sử dụng nhân vật trong Map để chiến đấu
2 Chức năng nhân vật:
- Nhân vật sở hữu các chiêu thức (SP) riêng khác nhau và một mức tiêu hao (Energy) cho nó
- Các nhân vật thuộc mọi nhóm đều có HP, Attack, Armor và Critical (%) - Các nhân vật thuộc nhóm Enemy không có SP nhưng các chỉ số của chúng cao hơn
- Các nhân vật thuộc nhóm Boss có 3 SP và chỉ số cao hơn nhiều 3 Chức năng cường hoá:
- Mỗi một level thì chỉ số nhân vật so với level trước cao hơn 10% - Mỗi một level thì chỉ số trang bị so với level trước cao hơn 5% 4 Chức năng mua đồ:
- Mỗi nhân vật chỉ có thể mua một lần
- Trang bị và vật phẩm có thể mua nhiều lần và số lượng nhiều hơn - Sử dụng gold để mua đồ và nó sẽ bị trừ đi số lượng tương ứng 5 Chức năng quản lý tài sản:
- Danh sách nhân vật và trang bị có thể điều hướng tới chức năng cường hoá và đeo trang bị cho nhân vật
- Thể hiện rõ số lượng trang bị và vật phẩm dưới hình đại diện mỗi trang bị và vật phẩm
6 Chức năng chiến đấu:
- Mỗi map có một loại Enemy và Boss riêng biệt Có thể có nhiều Enemy nhưng chỉ có một Boss
- Mỗi khi bắt đầu thì Player chọn 4 nhân vật chiến đấu (Chiến Sĩ) và 2 nhân vật hỗ trợ (Support) và SP của 6 nhân vật này sẽ được sử dụng trong màn chơi - Sẽ có thanh Energy khi bắt đầu và nó sẽ tăng thêm 1 mỗi giây, bắt đầu từ 1 Sử dụng số lượng Energy tương ứng để sử dụng SP
- Bắt đầu với 3 SP ngẫu nhiên (Trong 6 SP) và sẽ bị thay thế thành SP khác khi sử dụng (Luôn chỉ có 3 SP sẵn sàng sử dụng trên màn hình)
7 Các chức năng khác:
- Player không cần thiết đăng nhập để chơi, nhưng phải có tên để bắt đầu - Administrator cần đăng nhập để chỉnh sửa mọi thứ trong trò chơi
1
Trang 5PHẦN I: BIỂU ĐỒ USE CASE
1 Các yêu cầu về chức năng: 1.1 Chức năng mua đồ:
- Hiển thị các nhân vật, trang bị và vật phẩm cùng giá tiền của từng loại - Trừ số Gold hiện có với số Gold cần để mua đồ
- Nhân vật bị mua sẽ biến mất khỏi danh sách cửa hàng 1.2 Chức năng cường hoá:
- Tiêu hao vật phẩm và một số Gold để nâng cấp nhân vật hoặc trang bị 1.3 Chức năng quản lý tài sản (hành trang):
- Hiện ra các nhân vật, trang bị và vật phẩm đang sở hữu (Với trang bị và vật phẩm thì hiện rõ số lượng, nếu là 0 thì không hiện)
- Thông qua danh sách nhân vật hoặc danh sách trang bị để đeo trang bị cho nhân vật 1.4 Chức năng chiến đấu:
- Khởi tạo một map được chọn với việc tạo ra các Enemy và Boss được thiết lập trước.
- Lựa chọn các nhân vật tham gia chiến đấu (4 chiến sĩ, 2 phụ trợ) - Hệ thống lấy ngẫu nhiên các kỹ năng (SP) của nhân vật được chọn - Khởi tạo ải tiếp theo khi ải này đã thông qua (Enemy có HP bằng 0) - Khởi tạo Boss tại ải cuối cùng (Ải 4)
- Kết thúc trò chơi khi một trong hai phe có HP = 0 (Toàn bộ đối tượng)
2 Xác định tác nhân:
- Player (Người chơi): có thể sử dụng các chức năng trong trò chơi Không cần đăng nhập nhưng phải có tên, tên giữa hai người chơi không được trùng nhau hoàn toàn - Administrator: Chỉnh sửa toàn bộ nội dung của trò chơi nhưng cần phải đăng nhập.
2
Trang 63 Thiết lập và mô tả kịch bản của các use case: 3.1 Player:
- Use Case: Start Game
Hành động của tác nhân Hành động của hệ thống 1 Player vào trò chơi
3 Người chọn một trong bốn lựa chọn: – Nếu chọn Shop thì chuyển qua kịch bản con mua đồ
– Nếu chọn Play thì chuyển qua kịch bản con Chuẩn bị
– Nếu chọn Hành trang thì chuyển qua kịch bản con quản lý tài sản
– Nếu chọn Cường hoá thì chuyển qua kịch bản con Cường hoá
2 Hệ thống hiện ra bốn lựa chọn: Shop, Play, Hành trang và Cường hoá
- Use Case: Mua đồ
Hành động của tác nhân Hành động của hệ thống 1 Player chọn vào Shop
3 Player chọn một trong ba danh sách: - Nếu chọn nhân vật thì chuyển qua kịch bản con Mua nhân vật
- Nếu chọn trang bị thì chuyển qua kịch bản con Mua trang bị
- Nếu chọn Vật phẩm thì chuyển qua kịch bản con Mua vật phẩm
2 Hiển thị số Gold đang có của khách hàng và ba danh sách: Nhân vật, Trang bị và Vật phẩm
3
Trang 7- Use Case: Mua nhân vật
Hành động của tác nhân Hành động của hệ thống 1 Player vào danh sách nhân vật trong
3 Player chọn lựa nhân vật và bấm vào nút Mua ở dưới hình ảnh nhân vật
2 Hiện ra các nhân vật mà Player chưa sở hữu với giá được sắp xếp từ thấp đến cao
4 Hệ thống trừ đi số Gold dùng để mua nhân vật và cập nhật lại tổng số Gold của Player.
5 Thêm nhân vật đó vào danh sách nhân vật đang sở hữu của Player
6 Xoá nhân vật vừa mua khỏi danh sách nhân vật trong Shop
- Use Case: Mua trang bị
Hành động của tác nhân Hành động của hệ thống 1 Player vào danh sách trang bị trong
3 Player chọn lựa trang bị và số lượng cần mua rồi bấm vào nút Mua ở dưới hình ảnh nhân vật
2 Hiện ra các trang bị với giá được sắp xếp từ thấp đến cao
4 Hệ thống tính toán số Gold cần chi ra (Số Gold mua một cái x Số lượng) và trừ vào tổng số Gold của Player, sau đó cập nhật lại số Gold mới Nếu tổng số Gold không đủ thì thông báo và dừng hành động lại.
5 Trang bị vừa mua được đưa vào danh sách trang bị mà Player sở hữu
4
Trang 8- Use Case: Mua vật phẩm
Hành động của tác nhân Hành động của hệ thống 1 Player vào danh sách vật phẩm trong
3 Player chọn lựa vật phẩm và số lượng cần mua rồi bấm vào nút Mua ở dưới hình ảnh vật phẩm
2 Hiện ra các vật phẩm với giá được sắp xếp từ thấp đến cao
4 Hệ thống tính toán số Gold cần chi ra và trừ vào tổng số Gold của Player, sau đó cập nhật lại số Gold mới Nếu tổng số Gold không đủ thì thông báo và dừng hành động lại
5 Vật phẩm vừa mua được đưa vào danh sách vật phẩm mà Player sở hữu - Use Case: Quản lý tài sản
Hành động của tác nhân Hành động của hệ thống 1 Player tại trang chủ chọn Hành trang
3 Player chọn một trong hai:
- Nếu chọn Trang bị thì hệ thống hiện ra danh sách trang bị đang sở hữu rồi chuyển qua kịch bản con Quản lý trang bị
- Nếu chọn Nhân vật thì hệ thống hiện ra danh sách nhân vật đang sở hữu rồi chuyển qua kịch bản con Quản lý nhân
Trang 9- Use Case: Quản lý trang bị
Hành động của tác nhân Hành động của hệ thống 2 Player chọn một trang bị cần quản lý
5 Chọn một trong hai:
- Nếu Player chọn Cường hoá thì chuyển sang kịch bản con Cường hoá trang bị - Nếu Player chọn Đeo thì chuyển sang kịch bản con Đeo trang bị
1 Mở danh sách trang bị hiện có của Player
3 Hiện thông tin chi tiết của trang bị (Các chỉ số tăng thêm, cấp độ, số lượng sở hữu và giới thiệu nếu có)
4 Hiện ra hai nút: Đeo và Cường hoá
- Use Case: Quản lý nhân vật
Hành động của tác nhân Hành động của hệ thống 1 Player chọn một nhân vật cần xem xét
4 Chọn một trong hai:
- Nếu Player chọn Đeo trang bị thì chuyển qua kịch bản con Đeo trang bị - Nếu Player chọn Cường hoá thì chuyển qua kịch bản con cường hoá nhân vật
2 Hiện ra thông tin chi tiết của nhân vật (Chỉ số, cấp độ, kỹ năng, trang bị đang đeo)
3 Hiện ra hai nút: Đeo trang bị và Cường hoá
- Use Case: Đeo trang bị
Hành động của tác nhân Hành động của hệ thống 1 Player có hai trường hợp:
a Chọn Đeo từ danh sách trang bị -> 2a b Chọn Đeo trang bị từ danh sách nhân 4 Gắn trang bị cho nhân vật Các thuộc tính tương ứng của nhân vật được tăng thêm một lượng bằng các thuộc tính của trang bị
- Use case: Cường hoá
6
Trang 10Hành động của tác nhân Hành động của hệ thống 1 Player tại trang chủ chọn Cường hoá
3 Player chọn một trong hai:
- Nếu chọn Trang bị thì hệ thống hiện ra danh sách trang bị đang sở hữu rồi chuyển qua kịch bản con Cường hoá trang bị.
- Nếu chọn Nhân vật thì hệ thống hiện ra danh sách nhân vật đang sở hữu rồi chuyển qua kịch bản con Cường hoá nhân vật.
2 Hiện ra hai danh sách gồm Nhân vật, Trang bị
- Use case: Cường hoá trang bị
Hành động của tác nhân Hành động của hệ thống
3 Player chọn nút Cường hoá
1 Hiện ra các thuộc tính của trang bị trước và sau khi cường hoá.
2 Hiển thị các vật phẩm, số lượng các vật phẩm và số lượng Gold cần thiết để cường hoá.
3 Nếu tổng số lượng ở mỗi vật phẩm bé hơn số lượng cần thiết hoặc số Gold bé hơn số lượng cần thiết hoặc cấp độ là 100 thì thông báo và huỷ hành động Nếu không thì các thuộc tính thay đổi như sau:
- Cấp độ +1
- Chỉ số = Chỉ số x 1.1
4 Trừ vào đi số lượng các vật phẩm đã dùng và Gold đã dùng vào tổng tương ứng Cập nhật lại số lượng hiển thị.
7
Trang 11- Use case: Cường hoá nhân vật
Hành động của tác nhân Hành động của hệ thống
3 Player chọn nút Cường hoá
1 Hiện ra các thuộc tính của nhân vật trước và sau khi cường hoá.
2 Hiển thị các vật phẩm, số lượng các vật phẩm và số lượng Gold cần thiết để cường hoá.
3 Nếu tổng số lượng ở mỗi vật phẩm bé hơn số lượng cần thiết hoặc số Gold bé hơn số lượng cần thiết và cấp độ là 100 thì thông báo và huỷ hành động Nếu không thì các thuộc tính thay đổi như sau:
- Cấp độ +1
- Chỉ số = Chỉ số x 1.1 (Không tính chỉ số cộng thêm của trang bị)
4 Trừ vào đi số lượng các vật phẩm đã dùng và Gold đã dùng vào tổng tương ứng Cập nhật lại số lượng hiển thị - Use Case: Chuẩn bị
Hành động của tác nhân Hành động của hệ thống 2 Player chọn một Map (Chỉ khi chiến
thắng map trước thì map ở sau mới cho phép chọn)
4 Người chơi chọn các nhân vật bằng cách ấn vào hình ảnh nhân vật (Theo thứ tự 4 nhân vật chiến đấu và 2 nhân vật hỗ trợ)
6 Nhấn nút Bắt đầu, chuyển qua kịch bản con Vào trò chơi
1 Hiện ra danh sách các map được đánh số bắt đầu từ 1
3 Hiện giao diện đội hình gồm 6 vị trí (4 vị trí trực tiếp chiến đấu và 2 vị trí hỗ trợ
Trang 12- Use case: Vào trò chơi
Hành động của tác nhân Hành động của hệ thống
1 Tạo ra thuộc tính năng lượng bắt đầu từ 0 sau đó +1/giây.
2 Lấy ngẫu nhiên 3 SP khác nhau từ các nhân vật trong đội hình và hiển thị bằng hình ảnh của các nhân vật tương ứng 3 Tạo ra các ải con đánh số từ 1 và tối đa là 4.
4 Tạo ra số lượng Enemy bất kỳ - Use case: Sử dụng SP
Hành động của tác nhân Hành động của hệ thống
2 Player chọn vào hình ảnh nhân vật sáng lên (Có thể sử dụng)
1 Kiểm tra chỉ số của thanh năng lượng Nếu SP nào có số năng lượng thấp hơn hoặc bằng chỉ số của thanh năng lượng hiện tại thì hình ảnh nhân vật tương ứng sáng lên và ngược lại.
3 Thực hiện chức năng của SP đã được
Trang 389 Kết thúc chiến đấu:
Hình 4.9: Trình tự kết thúc chiến đấu
35
Trang 3910 Administrator đăng nhập:
Hình 4.10: Trình tự đăng nhập bằng tài khoản Administrator
36
Trang 437 Chuẩn bị chiến đấu:
Hình 5.7: Biểu đồ trạng thái – Chuẩn bị chiến đấu
Trang 44PHẦN VI: BIỂU ĐỒ CỘNG TÁC
1 Vào trò chơi:
Hình 6.1: Biểu đồ cộng tác – Vào trò chơi
41
Trang 452 Cửa hàng:
Hình 6.2: Biểu đồ cộng tác – Cửa hàng
42
Trang 463 Cường hoá:
Hình 6.3: Biểu đồ cộng tác – Cường hoá
43
Trang 474 Hành trang:
Hình 6.4: Biểu đồ cộng tác – Hành trang
44
Trang 485 Chuẩn bị chiến đấu:
Hình 6.5: Biểu đồ cộng tác – Chuẩn bị chiến đấu
45
Trang 496 Chức năng chiến đấu:
Hình 6.6: Biểu đồ cộng tác – Chức năng chiến đấu
46
Trang 507 Cập nhật trò chơi:
Hình 6.7: Biểu đồ cộng tác – Cập nhật trò chơi
47
Trang 51PHẦN VII: BIỂU ĐỒ THÀNH PHẦN VÀ BIỂU ĐỒ TRIỂN KHAI
1 Biểu đồ thành phần:
48
Trang 522 Biểu đồ triển khai:
49