Bạn có thể muốn xem xét Thiết kế hướng đối tượng . Python có hỗ trợ tốt cho điều đó.
Sách dày được viết về điều này có thể đáng sợ khi bạn là người mới, nhưng các nguyên tắc chính là khá dễ dàng.
Điểm chính chỉ là bạn xác định loại đối tượng bạn đang làm việc với. Bạn không nói bạn đang nghĩ về loại trò chơi nào, nhưng những thứ như Người chơi, Quái vật, Vật phẩm, Thiết bị, Vũ khí, Giáp v.v ... là những đối tượng điển hình.
Nếu bạn muốn các loại trò chơi khác nhau, có thể bạn sẽ muốn một đối tượng Trò chơi chăm sóc điều kiện chiến thắng và như vậy. Có lẽ một đối tượng Map cũng vậy?
Đôi khi không rõ liệu một cái gì đó xứng đáng là một đối tượng hay không, ví dụ như thiệt hại. Nếu bạn không làm hỏng một đối tượng, mã sẽ đơn giản hơn, nhưng làm cho nó trở thành một đối tượng giúp dễ dàng tùy chỉnh hơn.
Phân lớp: Cả Vũ khí và Vũ khí đều là Thiết bị. Thiết bị là vật phẩm. Có lẽ có nhiều loại vật phẩm khác. Bạn có thể sẽ thấy hữu ích khi định nghĩa một Lớp chiến binh mà cả Người chơi và Quái vật đều là lớp con của.
Ý tưởng là ví dụ Vũ khí sẽ có nhiều điểm chung với tất cả các loại Vật phẩm khác, chúng có trọng lượng, kích thước và các thuộc tính khác như thế.
Vì vậy, phân lớp cung cấp cho bạn một cách để nói rằng "Vũ khí cũng giống như các Vật phẩm khác, nhưng ngoài ra bạn có thể sử dụng chúng, chúng ảnh hưởng đến thiệt hại bạn làm, v.v."
Phân lớp cũng cho phép các nhà xây dựng mod của bạn nói "Loại vũ khí mới của tôi giống như vũ khí tiêu chuẩn ngoại trừ ..."
Sau đó, bạn phải quyết định đối tượng nào chịu trách nhiệm cho những gì. Điều này không dễ dàng như nó có vẻ và bạn nên suy nghĩ về nó. Việc lựa chọn sai sẽ không ảnh hưởng nhiều đến trò chơi cơ bản, nhưng sẽ khiến việc tùy chỉnh khó khăn hơn.
Miễn là bạn chỉ tự mày mò, bạn có thể thay đổi mọi thứ xung quanh nhưng thời điểm bạn phát hành thứ gì đó ra công chúng, việc thay đổi trở nên khó khăn hơn nhiều! Mọi người sẽ tạo ra các mod phụ thuộc vào mọi thứ giống như bây giờ. Ngay cả lỗi. Mọi người sẽ viết các mod phụ thuộc vào lỗi tồn tại trong mã. Nếu bạn thay đổi mọi thứ, những mod đó sẽ bị phá vỡ và đám đông lynch sẽ xuất hiện tại nhà bạn.
Ví dụ:
Người chơi cầm Vũ khí tấn công Quái vật mặc nhiều Armours. Điều này diễn ra trong một chế độ Trò chơi cụ thể và trên một Bản đồ nhất định.
Cả Combatant có thể có các Kỹ năng như Critical Hit và Dodge.
Bây giờ, đối tượng nào chịu trách nhiệm cho những gì?
Không có một câu trả lời đúng cho điều này. Rất nhiều phụ thuộc vào loại tùy chỉnh bạn muốn cho phép.
Nếu bạn không bao giờ gọi một đối tượng (ví dụ: Bản đồ), đối tượng đó không thể thay đổi cuộc tấn công theo bất kỳ cách nào.
Sau khi thực hiện tất cả các quyết định, tài liệu chúng . Viết một "Hướng dẫn sử dụng" liệt kê chính xác các phương thức có thể sửa đổi mà mỗi đối tượng có, các tham số họ thực hiện, những gì họ nên trả về, v.v và trên và trên ...
Chúc may mắn!