Hôm nay chúng ta sẽ cùng với bạn Việt Anh, học sinh của khóa CS 101 trước đây, tìm hiểu về một số cách để nâng cấp trò chơi này nhé!!
1. Tạo menu:
Cách đơn giản nhất đó là chúng ta có thể tạo ra một menu các lựa chọn cho người chơi trước khi vào game. Menu sẽ giúp người chơi dễ dàng thuận tiện tương tác với trò chơi. Menu có thể bao gồm “Bắt đầu chơi”, “Thêm câu hỏi mới”, “Kết thúc trò chơi”,… Mỗi phần trong menu sẽ là một tính năng của trò chơi của chúng ta. Để tạo được menu như vậy, chúng ta sẽ sử dụng Pygame kết hợp với thư viện Turtle để vẽ các nút bấm và màn hình vào đúng vị trí mình muốn. Sau đó chúng ta sẽ sử dụng một câu điều kiện đơn giản để kiểm tra nút nào được bấm sẽ thực hiện tính năng tương ứng.
2. Thêm câu hỏi tùy thích:
Các câu hỏi và câu trả lời được lưu ở các file text (.txt) trong phiên bản gốc của trò chơi. Để thêm câu hỏi, chúng ta phải tự tạo các file text mới. Trong phiên bản nâng cấp, người chơi có thể tương tác trực tiếp trên giao diện của trò chơi để thêm câu hỏi và câu trả lời mới. Sau đó, các câu hỏi và câu trả lời sẽ được lưu vào một từ điển (dictionary) và được chuyển sang các file text tương ứng để chương trình có thể đọc được.
3. Sử dụng kho dữ liệu câu hỏi đố vui:
Có rất nhiều trang web bằng tiếng Anh đã có sẵn bộ câu hỏi đố vui và câu trả lời. Bộ dữ liệu như vậy tiếng Anh gọi là database. Mỗi database sẽ có một API (Application Programming Interface). API giúp trò chơi của chúng ta lấy dữ liệu có sẵn từ database. Lơi ích của việc này là chúng ta có một cơ sở dữ liệu lớn câu hỏi đố vui và không cần lưu chúng dưới dạng text file trong máy tính.
4. Sử dụng thư viện xử lý ảnh OpenCV và trí tuệ nhân tạo:
Ắt hẳn các bạn đã nghe đến nhiều về các ứng dụng nhận diện khuôn mặt được sử dụng ở các công ty hay trên điện thoại thông minh. Chúng mình cũng có thể tạo được một ứng dụng tương tự như vậy trong trò chơi đố vui của mình bằng thư viện OpenCV và Mediapipe. OpenCV là một thư viện xử lý ảnh trên Python, với nhiều chức năng như làm mờ ảnh, xoay ảnh, đổi màu ảnh… Mediapipe là thư viện trí tuệ nhân tạo được huấn luyện sẵn của Google để nhận biết vị trí các ngón tay và nhận diện cử động của bàn tay. Các bạn có thấy thú vị không nào!!!
Chỉ cần có 1 webcam, thư viện OpenCV và Mediapipe có thể giúp chúng ta xác định vị trí của các ngón tay trên bàn tay, nhận biết số mà bàn tay đang biểu thị. Từ đó, số có thể được chuyển thành đáp án tương ứng và so sánh đáp án của người chơi với đáp án đúng.
5. Tổng kết:
Qua bài blog này, các bạn đã có thêm nhiều ý tưởng từ bạn Việt Anh để cải tiến dự án cuối khóa của lớp CS 101. Các thầy cô hi vọng sẽ được thấy nhiều sản phẩm sáng tạo, thú vị từ tất cả các bạn học sinh của lớp CS 101 nhé.
— — —
STEAM for Vietnam Foundation là tổ chức phi lợi nhuận 501(c)(3) được thành lập tại Hoa Kỳ với sứ mệnh thúc đẩy các hoạt động liên quan tới giáo dục STEAM (Science — Khoa học, Technology — Công nghệ, Engineering — Kỹ thuật, Arts — Nghệ thuật, Mathematics — Toán học) tại Việt nam. STEAM for Vietnam được thành lập và vận hành bởi đội ngũ tình nguyện viên là du học sinh và chuyên gia người Việt trên khắp thế giới.
— — —
📧Email: hello@steamforvietnam.org
🌐Website: www.steamforvietnam.org
🌐Fanpage: STEAM for Vietnam
📺YouTube: http://bit.ly/S4V_YT
🌐Zalo: Zalo Official
📍Donation: https://www.steamforvietnam.org/donation