ĐỒ án môn học CÔNG NGHỆ PHẦN mềm PHẦN mềm GAME cờ CARO

29 67 0
ĐỒ án môn học CÔNG NGHỆ PHẦN mềm PHẦN mềm GAME cờ CARO

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM - ĐỒ ÁN MÔN HỌC CÔNG NGHỆ PHẦN MỀM PHẦN MỀM GAME CỜ CARO Ngành: Công nghệ thông tin Giảng viên hướng dẫn : Lớp : 17DTHD2 Sinh viên thực Nguyễn Văn Bảo Nguyễn Quang Vĩnh Điền Lê Nguyên Khang Võ Tâm Anh Nguyễn Trung Liêm Tạ Thu Thủy MSSV 1711062253 1711062259 1711060933 1711062301 1711062123 TP Hồ Chí Minh, 2019 DANH SÁCH THÀNH VIÊN STT HỌ VÀ TÊN Võ Tâm Anh Nguyễn Văn Bảo Nguyễn Quang Vĩnh Điền Lê Ngun Khang (Nhóm trưởng) Số điện thoại CƠNG VIỆC Thuyết trình, tìm code tham khảo, làm word báo cáo Làm pp thuyết trình, 0386291775 Word báo cáo, thêm Code caro Tìm nội dung pp thuyết 0837627520 trình, Làm pp báo cáo, thuyết trình 0765340127 Nguyễn Trung Liêm Lời Nhận Xét giảng viên: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Trả lời câu hỏi, tìm nội dung PP thuyết trình, làm word báo cáo, làm pp báo cáo Viết code caro, thuyết trình, tìm hiểu nội dung pp thuyết trình % HỒN THÀNH ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………… MỤC LỤC Lời mở đầu Chương Tổng quan .1 1.1 Tổng quan vấn dề nghiên cứu 1.2 Nhiệm vụ đồ án 1.2.1 Mục tiêu 1.2.2 Đối tượng 1.2.3 Thông tin tổng quát 1.2.3.1 Phát biểu vấn đề 1.2.3.2 Mục tiêu đề 1.2.3.3 Mô tả 1.2.3.4 Lợi ích mang lại 1.2.3.5 Các bước thực để hoàn thành dự án .3 1.2.3.6 Ràng buộc tổng quan hệ thống .4 1.3 Cấu trúc đồ án .4 Chương 2: Cơ sở lý thuyết .5 2.1 Giới thiệu Winform 2.2 Ngôn ngữ C# 2.2.1 Mơ hình lớp 2.2.2 Chi tiết 2.2.3 Lập trình lớp 2.3 Khái niệm sở liệu SQL Server .8 Chương 3: Kết thực nghiệm 3.1 Các thành phần chức hệ thống 3.1.1 Menu .9 3.1.2 Các sơ đồ 3.1.2.1: Sơ đồ usecase 3.1.2.2: Sơ đồ class diagram 3.1.2.3: sơ đồ sequence diagram 10 3.1.3 Thực nghiệm trò chơi 11 3.1.3.1 Chế độ đánh với máy 11 3.1.3.2 Chế độ người đánh với .12 3.1.3.3 Chức xử lý thắng thua 13 3.1.3.4 Chức EXIT 13 3.1.3.5 FILE menu có chức cho phép chọn chơi máy hay người khác .14 3.1.3.6 EDIT 15 Chương 4: Kết luận 16 4.1 Kết đạt 16 4.2 Đánh giá phần mềm .16 4.3 Hướng phát triển để mở rộng đề tài .17 Chương 5:Tài liệu tham khảo .17 Lời mở đầu Hiện nay, việc ứng dụng trí tuệ nhân tạo vào việc phát triển game trở nên vô phổ biến, đặc biệt game mang tính trí tuệ cao Và cờ Caro game Chính lý mà chúng em định lựa chọn cờ Caro làm để tài cho tập lớn mơn trí tuệ nhân tạo Đây tài liệu dùng để miêu tả cách việc xây dựng game cờ Caro Trong game có sử dụng thuật tốn MiniMax với độ sâu thuật toán cắt cụt alpha-beta để giảm thời gian tính tốn Tài liệu giúp ta có nhìn tổng qt việc áp dụng thuật toán MiniMax cắt cụt alpha-beta vào game cờ Caro Do thời gian có hạn nên chúng em chưa thể tối ưu thuật toán sử dụng game, chúng em cố gắng hoàn thiện thời gian sớm Nhóm thực đề tài với mục đích xây dựng game Caro có tính nhân tạo cao Tuy nhiên q trình thực khơng thể tránh khỏi có sai sót, chúng em mong nhận góp ý đánh giá cô Chúng em xin chân thành cám ơn! Chương Tổng quan 1.1 Tổng quan vấn đề nghiên cứu: 1.1.1 Khảo sát thực trạng nay: Theo tình trạng chơi game có 73% người chơi, 22% chưa chơi 5% chơi không chơi Tỷ lệ người chơi game tập trung chủ yếu vào nhóm 16-20 tuổi (42,1%), 10-15 tuổi (26,3%), 21-25 tuổi (22%) Tỷ lệ người chơi game online học chiếm 71,7% so với game thủ làm ngành nghề khác Về giới tính, nam giới chơi game online nhiều nữ giới với 54,5% Tỷ lệ người chơi có trình độ Đại học, Cao đăng chiếm tỷ lệ cao với 30,1% 1.1.2 Phân tích yêu cầu: 1.Yêu cầu chơi: Game Caro phổ biến với nhiều người, với nhiều phiên game đưa nhóm xây dựng game Caro phù hợp với nhiều đối tượng Người chơi Người chơi chọn chế độ chơi:  Hai Người chơi  Chơi với máy Ở chế độ “Hai Người chơi”, hai bên nước cờ Ở chế độ “Chơi với máy”,Người chơi máy nước cờ Máy tự động thực chức dưới:  Tấn công  Phịng thủ  Tấn cơng , phịng thủ  Tạo ván chơi mới: lúc chơi mà không muốn tiếp tục ván chơi tạo ván chơi khởi động lại từ đầu  Quay lại nước trước: sai bạn nhấn quay lại để hoàn lại nước sai lúc trước 2.Giao diện: 1) Thuận tiện: Các nút chức phải đễ nhìn ,dễ sử dụng 2) Hình ảnh: Ảnh nền,ảnh bàn cờ ,ảnh quân cờ,ảnh nút,….đơn giản, dễ nhìn 3) Giao diện: a) Giao diện chính:  Hiện bàn cờ: bàn cờ gồm 255 ô chia làm 25 hàng dọc 25 hàng ngang( hàng gồm 25 ô vuông liên tiếp nhau, thẳng hàng ô vuông = 30 px ) lí b) Bên cạnh giao diện bàn cờ, cần hiển thị chức để xử chương trình (ví dụ: Menu cơng cụ bao gồm tất chức xử lí chương trình c) Giao diện bảng “Chức năng”: hiển thị chữ viết hình ảnh 3.Tương tác nhanh : Người chơi tương tác nhanh với chương trình chuột  Chuột dùng để điều khiển chương trình  Chuột dùng để nước cờ 1.2 Nhiệm vụ đồ án: 1.2.1 Mục tiêu: Ngày nay, xã hội phát triển mạnh mẽ, sống xã hội ngày cải thiện nâng cao nên nhu cầu vui chơi, giải trí….ngày lớn Ở châu Á phong trào chơi games phát triển mạnh mẽ với yêu cầu ngày cao Những games chơi độc lập máy tính ngày không đáp ứng yêu cầu mà thay vào games với nhiều máy tính kết nối với Xuất phát từ nhu cầu em thực đề tài “ĐÁNH CỜ CARÔ“ 1.2.2 Đối tượng: Chủ yếu học sinh sinh viên số người trẻ khác người có sở thích đam mê cờ CaRo 1.2.3 Thông tin tổng quản: Cho đến chưa biết xác lai lịch của cờ caro, có lời đồn cho rằng, cờ caro xuất cách khoảng 2000 năm TCN Trung Quốc Tuy nhiên, số nhà khoa học tìm chứng cờ caro xuất Hy Lạp cổ đại châu Mĩ trước thời Colombus Cờ caro bắt đầu với tên Wutzu bên Trung Quốc biến danh thành Gomoku Nhật Bản Tuy nhiên, đất nước xứ sở hoa anh đào, cịn gọi nhiều tên khác địa phương Kakugo, gomoku-narabe, Itsutsu-ishi, … Khi xuất hiện, loại cờ chơi cờ vây (viên cờ màu trắng đen) bàn cờ vây (19×19) Quân đen trước người chơi đặt viên đá họ đường chéo trống Người thắng người có chuỗi liên tục gồm quân hàng ngang, dọc chéo Tuy nhiên, đặt xuống, quân cờ di chuyển bỏ khỏi bàn, loại cờ chơi giấy bút Ở Việt Nam, cờ thường chơi giấy tập học sinh (đã có sẵng ca-rơ), dùng bút đánh dấu hình tròn (O) chữ thập (X) để đại diện cho quân cờ, bên có đường quân liền hàng, cột đường chéo thắng Trong cờ carơ, bên trước ln có lợi lớn, chí L.Victor Allis cịn chứng minh cờ carô tự do, bên trước luôn thắng Để hạn chế nhược điểm người ta đưa số luật bổ sung để hạn chế lợi người trước (quân đen) tăng cường khả phòng thủ người sau 1.2.3.1 Phát biểu vấn đề: Xã hội ngày phát triển nhu cầu thứ tăng theo có nhu cầu giải trí sau học làm việc căng thẳng Vì nắm bắt yếu tố trị chơi game CaRo nhóm chúng tơi lựa chọn phát triển để giúp người giải trí thư giản sau làm việc áp lực mệt mỏi 1.2.3.2 Mục tiêu đề ra: Vấn đề đặt là: - Thiết kế phần mềm đơn giản - Giao diện thân thiện dễ sử dụng Hình 2.1: Thể sơ đồ lớp - - Việc phân chia thành lớp giúp cho code tường minh Nhờ vào việc chia lớp đảm nhận chức khác riêng biệt giao diện, xử lý, truy vấn thay để tất lại chỗ Nhằm giảm kết dính Dễ bảo trì phân chia, thành phần hệ thống dễ thay đổi Việc thay đổi lập lớp, ảnh hưởng đến lớp gần mà không ảnh hưởng đến chương trình Dễ phát triển, tái sử dụng: muốn thêm chức việc lập trình theo mơ hình dễ dàng có chuẩn để tuân theo Và việc sử dụng lại có thay đổi hai mơi trường (Winform sang Webform) việc thay đổi lại lớp GUI Dễ bàn giao Nếu người theo quy chuẩn định sẵn, cơng việc bàn giao, tương tác với dễ dàng tiết kiệm nhiều thời gian Dễ phân phối khối lượng công việc Mỗi nhóm, phận nhận nhiệm vụ mơ hình lớp Việc phân chia rõ ràng giúp lập trình viên kiểm sốt khối lượng cơng việc 2.2.2 Chi tiết: − − − GUI Layer: Lớp lớp hiển thị giao diện chức để người dùng cuối sử dụng Business (BUS) Layer: Đây lớp nhận yêu cầu từ lớp GUI truy xuất lên lớp Data để lấy thông tin trả GUI Data Access Layer: Lớp lớp để truy xuất với CSDL, lớp làm việc với Database 2.2.3 Lập trình lớp:  Presentation Layer (GUI): − UI Components: gồm thành phần tạo nên giao diện ứng dụng (GUI) Chúng chịu trách nhiệm thu nhận hiển thị liệu cho người dùng… − Ví dụ: textbox, button, combobox, …  Business Layer (BLL) − Service Interface: thành phần giao diện lập trình mà lớp cung cấp cho lớp Presentation sử dụng − Business Workflows: chịu trách nhiệm xác định điều phối quy trình nghiệp vụ gồm nhiều bước kéo dài Những quy trình phải xếp thực theo thứ tự xác  Data Layer (DAL) − Data Access Logic Components: chịu trách nhiệm lưu trữ truy xuất liệu từ nguồn liệu (Data Sources) XML, File System, … Hơn tạo thuận lợi cho việc dễ cấu hình bảo trì − Service Agents: giúp bạn gọi tương tác với dịch vụ từ bên cách dễ dàng đơn giản 10 Chương 3: Kết thực nghiệm 3.1 Các thành phần chức hệ thống: 3.1.1 Menu: Bảng Menu gồm:  File:  New (Bắt đầu trò chơi mới) o player (Đánh với máy) o player (Đánh với người)  Exit (Kết thúc nhanh)  Edit:(Chức năng)  Undo (Chức lại)  Redo (Chức qua lại bước cũ) 3.1.2 Các sơ đồ: 3.1.2.1: Sơ đồ usecase: 11 3.1.2.2: sơ đồ class: Hình 3.1: Sơ đồ usecase Hình 3.2: Sơ đồ class diagram 3.1.2.3: sơ đồ sequence diagram: 12 Hình 3.3.1: Sơ đồ sequence diagram người chơi với máy 13 Hình 3.3.2: Sơ đồ sequence diagram người chơi với người 3.1.3 Thực nghiệm trò chơi: 3.1.3.1 Chế độ đánh với máy Hình 3.1.4.1: Tạo ván chơi với máy 3.1.3.2 Chế độ người đánh với 14 Hình 3.1.4.2: Tạo ván chơi với bạn bạn 3.1.3.3 Chức xử lý thắng thua 15 Hình 3.1.5: Thơng báo người chơi dành chiến thắng 3.1.3.4 Chức EXIT 16 Hình 3.1.6: Hình hiển thị thơng báo có muốn game khơng 3.1.3.5 FILE menu có chức cho phép chọn chơi máy hay người khác Hình 3.1.7: Hình cho phép tạo đổi chế độ game 17 3.1.3.6 EDIT 3.1.3.6.1 Undo cho phép người chơi lại nước khác Hình 3.1.8: Hình thơng báo người dung có muốn lại không 3.1.3.6.2 Redo cho phép người chơi quay lại nước trước dung undo -Trước redo Hình 3.1.8: Hình thể sau undo 18 -Sau redo Hình 3.1.9: Thơng báo bạn có muốn qua lại bước củ sau undo không 19 4.1 Kết    thành Chương 4: Kết luận đạt được: Xây dựng thành cơng trị chơi Caro PC Học tập rút số kinh nghiệm xây dựng Game Củng cố thêm kiến thức kĩ thuật lập trình, số thuật tốn để xây dựng trị chơi có tính đối kháng : BFS DFS, thủ tục cắt tỉa alpha beta, – max  Nắm rõ lập trình hướng đối tượng, phân tích thiết kế hệ thống  Game Caro xây dựng môi trường Visual Studio 2005, em tìm hiểu học hỏi thêm cơng cụ xây dựng:Ngơn ngữ lập trình C#  Dễ sử dụng: trò chơi đơn giản, cần tuân theo qui luật cơng  Tính tiện dụng: trị chơi nhỏ gọn download dễ dàng, cài đặt nhanh chóng người chơi tâm đến phút cài xong trị chơi  Vì game có dung lượng nhỏ giao diện đơn giản nên thích hợp với nhiều loại máy thơng dụng  Game có nhiều cấp độ kiểu chơi nên phù hơp với nhiều người sử dụng 4.2 Đánh giá phần mềm:  Ưu điểm: Chơi chung với máy mà không cần phải dùng mạng Có hỗ trợ đánh với máy Giao diện đơn giản khơng q cầu kì  Nhược điểm: Chưa kết hợp sql để lưu giữ liệu Chưa thể chơi online 4.3 Hướng phát triển để mở rộng đề tài: Đề tài “Game Cờ Caro” xây dựng kiến thức cần hoàn thiện nhiều phần bổ sung thêm nhiều tính năng: 20 chơi -Có thể thêm SQL vào với mục đích lưu tài khoản mật giúp đăng nhập vào -Kết hợp với lập trình web để đưa lên web Tài liệu tham khảo Lập trình game Caro với C# Winform - KTeam: https://www.howkteam.vn/course/lap-trinh-game-caro-voi-c-winform-14 (Lần cuối truy cập vào ngày 25/12/2019 vào lúc 16h.) Giáo trình C# ứng dụng - Nguyễn Hồng Hà, Nguyễn Văn Trung: http://dulieu.tailieuhoctap.vn/books/cong-nghe-thong-tin/lap-trinh-ungdung/file_goc_777138.pdf? fbclid=IwAR0HYNNcqhGjF36llD9zU437A7axr4eN1EQbFVvA4dXyMOUiM8H2GNFkqs (Lần cuối truy cập vào ngày 25/12/2019 vào lúc 15h 30.) Giáo trình hệ quản trị sở liệu MS SQL Server - Trần Thị Thùy Dung: http://thuvien.brtvc.edu.vn/documents/cntt/gt_he_quan_tri_csdl_ms_sql_server.pdf? fbclid=IwAR1Grkign5zcZGTDrN14KUY_5Cw5J4dG1jBmwCYQtIYmHK9-7jqtBqZKRM (Lần cuối truy cập vào ngày 25/12/2019 vào lúc 17h.) Lập trình game caro với C https://sharecode.vn/source-code/source-code-game-caro-viet-bang-c-1670.htm (Lần cuối truy cập vào ngày 29/12/2019 vào lúc 16h) 21 22 ... mê cờ CaRo 1.2.3 Thông tin tổng quản: Cho đến chưa biết xác lai lịch của? ?cờ caro, có lời đồn cho rằng, cờ caro xuất cách khoảng 2000 năm TCN Trung Quốc Tuy nhiên, số nhà khoa học tìm chứng cờ caro. .. C# thiết kế phần mềm môi trường Windows, đồ án môn học ví dụ thực tiễn việc tận dụng ưu điểm C# thiết kế nhanh, xử lý kiện đơn giản, nhiều tiện ích mở rộng hỗ trợ tốt trình làm đồ án 2.2.1 Mơ... trí tuệ nhân tạo vào việc phát triển game trở nên vô phổ biến, đặc biệt game mang tính trí tuệ cao Và cờ Caro game Chính lý mà chúng em định lựa chọn cờ Caro làm để tài cho tập lớn mơn trí tuệ

Ngày đăng: 04/12/2022, 20:07