Bảo vệ bản demo (và trò chơi thực tế)


9

Trong vài tháng nữa, tôi dự định bắt đầu thể hiện trò chơi (hy vọng là thương mại) mà tôi đang làm việc với công chúng (internet). Vấn đề là, bên cạnh ảnh chụp màn hình và đoạn giới thiệu (nói về chức năng tính năng), làm thế nào để thực hiện một bản demo có thể được bảo vệ đúng cách?

Hãy để tôi giải thích một chút. Trò chơi là một game nhập vai đa nền tảng. Ngay bây giờ, cách tôi có trò chơi được mã hóa là nó đọc dữ liệu trên bản đồ, nhân vật, v.v. từ các tệp và quyết định mọi thứ cho phép tôi mở rộng thế giới / câu chuyện chỉ bằng cách cấu hình tệp và thêm tài sản.

Có nghĩa là, lo lắng của tôi là nếu tôi tạo một phiên bản demo của trò chơi, tức là trò chơi thực sự nhưng sau đó tất cả các tệp tài sản / cấu hình / vv sẽ bị xóa để nó chỉ là bản demo với bản đồ / cấp độ đầu tiên. Có cách nào để bảo vệ chống lại ai đó ngay sau đó đưa ra kho dữ liệu của trò chơi thật (khi được phát hành) và bây giờ đột nhiên bất cứ ai có bản demo EXE đều có thể chơi trò chơi thực sự?

Việc bảo vệ bản demo là ưu tiên hàng đầu của tôi vì tôi muốn bản demo ra mắt một lúc trước khi trò chơi thực sự được phát hành. Tôi luôn có thể quyết định phương pháp bảo vệ nào tôi chọn từ trò chơi thực sự sau này (trước khi phát hành, nhưng vẫn muộn hơn ..)

Tôi đoán rằng dù sao thì nó cũng có cách bảo vệ trò chơi thực sự (tôi không muốn hạn chế người dùng phải thực hiện bất kỳ kiểm tra trực tuyến nào vì trò chơi này sẽ đa nền tảng và không yêu cầu internet để chơi nó). Điều cuối cùng tôi muốn làm là gây rối với người dùng hợp pháp. Và tôi muốn để các tài sản mở nếu có thể vì điều đó chỉ có nghĩa là dễ dàng vá các thư mục và cho phép các modder lộn xộn một chút.

Ý tôi là, ngay cả khi tôi thiết lập một hệ thống cấp phép khóa cơ bản, điều gì thực sự ngăn 1 người tải lên khóa của họ và một bản sao của trò chơi ở đâu đó? Tôi đã thấy mọi người nói về việc thực hiện cập nhật thường xuyên để thay đổi nhị phân và họ phải bẻ khóa lại trò chơi. Nhưng, ai cần phải bẻ khóa trò chơi khi bạn có thể nhận được 1 bản sao hợp pháp và sau đó phát tán nó ra xung quanh?

Tôi không chắc có thể tôi đang thiếu thứ gì đó không, tôi chỉ đang cố gắng đảm bảo rằng tôi không. Có thực sự chỉ cần đun sôi để:

  1. Tát bảo vệ giấy phép khóa cơ bản trên nó.
  2. Xóa tệp tài sản / cấu hình khỏi bản demo
  3. Hi vọng điều tốt nhất

Bất kỳ và tất cả các lời khuyên được đánh giá cao! Tôi rất mới với tất cả những điều này; -;)

Xin lỗi nếu đây là một bản sao! Không thể tìm thấy nhiều trên khái niệm demo.


Phát hành nó dưới dạng thực thi sẽ chỉ đọc tệp cấp đầu tiên và không có tệp nào khác? Đây là bản demo không phải là sản phẩm cuối cùng. Có lẽ bạn có thể giải thích tại sao bản thực thi demo sẽ đột nhiên có đầy đủ khả năng bằng cách thêm "gói dữ liệu" bất kể đó là gì? Nghe có vẻ như mối quan tâm này là hợp pháp như "nếu ai đó phát hành trò chơi đầy đủ cho người khác" sẽ dẫn đến câu hỏi này là về vi phạm bản quyền nói chung và không chỉ bảo vệ bản demo của bạn khỏi bị nâng cấp bất hợp pháp.
SpartanDovy

Code thực sự là trò chơi đầy đủ, trừ khi tôi muốn làm một chi nhánh hoặc một cái gì đó. Ý tôi là tôi có rất nhiều chức năng được thực hiện và bản demo tôi tạo ra tôi muốn trở thành thứ mà ngay cả sau khi phát hành, người dùng có thể tải xuống và chơi trước khi họ mua. Vì vậy, tôi đoán nó giống như toàn bộ trò chơi theo một nghĩa nào đó. Tôi vẫn tự hỏi liệu tôi có đang đi đúng hướng với 3 điểm đạn cuối cùng hay không, hay bạn không thể làm được gì nhiều. Chỉ cần làm những điều đó và hy vọng cho điều tốt nhất. x:
Zyaga

Câu trả lời:


12

Bạn đã xem mã hóa một cái gì đó như giới hạn thời gian vào phiên bản demo của động cơ chưa?

Vấn đề là, cho dù bạn bảo vệ bản demo của mình đến mức nào, trò chơi sẽ bị sao chép lậu bằng cách nào đó một khi nó được phát hành. Cho dù đó là bằng cách sử dụng bản demo hay chỉ bằng cách sử dụng trò chơi chính, điều đó sẽ xảy ra nếu trò chơi đủ phổ biến.

Những người không muốn trả tiền cho trò chơi của bạn sẽ không trả tiền cho trò chơi của bạn.

Những người muốn trả tiền cho trò chơi của bạn sẽ trả tiền cho trò chơi của bạn.

Điều này áp dụng cho mọi thứ từ trò chơi độc lập nhỏ nhất đến tựa game ba người lớn nhất - về cách duy nhất để giải quyết vấn đề là kết nối với máy chủ của bạn không chỉ bắt buộc mà còn liên quan đến trò chơi, ví dụ như MMO, thay vì Assassin ngớ ngẩn Creed luôn luôn trực tuyến DRM. Vì bạn đã nói rằng đó không phải là một lựa chọn, tôi khuyên bạn nên nắm lấy nó.

Là một nhà phát triển độc lập, cách tốt nhất để bạn có được nhiều doanh số hơn là thu hút nhiều hơn vào trò chơi của bạn. Những người không có xu hướng vi phạm bản quyền sẽ chơi bản demo của bạn và sau đó mua trò chơi hoặc không. Những người có xu hướng vi phạm bản quyền có thể chơi bản demo của bạn, tìm tài sản như bạn mô tả, v.v. và sau đó vẫn có thể hoặc không thể mua trò chơi.


Điều này là khá nhiều như tôi mong đợi. Đó là một chút không thành công, hoặc đúng hơn là chỉ là trường hợp đó, nhưng đó chỉ là cách nó cuộn! Tôi nghĩ những gì tôi có thể làm là phân nhánh mã chỉ một chút để bạn có thể phát lưu mặc định (không có menu tải nào cả) và sau đó mã cứng nếu trò chơi không nhận ra bản đồ chính (có tất cả các tính năng cơ bản / chính có sẵn trong đó), sau đó nó sẽ thoát. Ai đó có thể bẻ khóa và lấy nó để chơi dữ liệu thực, nhưng tại thời điểm đó, họ sẽ chỉ đưa trò chơi thực sự ra nối tiếp và được thực hiện. : P
Zyaga

2
Ngay cả khi họ không mua trò chơi, họ có thể có những người bạn xem trò chơi, thích nó và sau đó mua nó. Bạn sẽ không thể ngăn chặn vi phạm bản quyền (thậm chí các giải pháp chống vi phạm ngân sách lớn thậm chí không thực sự có thể ngăn chặn được), vì vậy tôi khuyên bạn không nên lo lắng quá nhiều về vấn đề này. Để tránh làm cho nó trở nên quá dễ dàng, bạn có thể mã hóa thứ gì đó vào exe demo để nó chỉ đọc bản đồ đầu tiên cho dù có bao nhiêu hay giới hạn thời gian như @ Amadeus9 đã nói, nhưng sau đó bạn chỉ có thể hy vọng điều tốt nhất.
Christian

Cảm ơn @Christian! Thêm thông tin phản hồi đó là cách chính xác để đi! ^ _ ^
Zyaga

@WeakDev, tất cả các điểm tốt ở đây. Những người đã đi xuống tuyến đường "quá hạn chế" chỉ làm tổn thương cơ sở khách hàng của họ. Những tên cướp biển là những người có thời gian dễ dàng vì tất cả DRM bị phá vỡ trong vòng 24 giờ. Tập trung vào chất lượng của trò chơi và đối tượng mục tiêu của bạn và bạn không thể sai lầm :)
Moo-Juice

Tôi sẽ không quá coi thường bản thân, Weak Dev. Trước hết, tôi nghĩ rằng bạn đang thực hiện một bước khá tuyệt vời để giảm bớt vi phạm bản quyền bằng cách cung cấp một bản demo. Tôi nghĩ rằng một lý do lớn cho vi phạm bản quyền trò chơi độc lập là thiếu cơ hội để dùng thử trước khi lao vào mua nó. Tôi nghĩ rằng khá phổ biến đối với các trò chơi không phải là bản thử nghiệm bị sao chép trái phép như một loại thử nghiệm. Mua không hoàn toàn nằm ngoài câu hỏi nếu người đó có trải nghiệm tích cực.
Sean O'Hollaren

5

Không chắc chắn ý của bạn về "nhánh" trong bình luận của bạn, nhưng có thể tạo hai tệp thực thi khác nhau (bản demo và phiên bản đầy đủ) từ cùng một cây mã nguồn bằng cách sử dụng biên dịch có điều kiện . Bạn có thể tạo tùy chọn biên dịch thời gian để chỉ bao gồm khả năng phát tập đầu tiên. (Ví dụ: trong C ++, bạn có thể sử dụng #ifdefcác lệnh xung quanh mã chỉ dành cho phiên bản đầy đủ.) Bạn có thể có phiên bản demo tạo ra ít nhất các hiệu ứng trò chơi sau:

  • Tài sản của tập đầu tiên được lưu trữ trong tệp zipfile và phiên bản demo kiểm tra chữ ký điện tử trên tệp zip này trước khi bắt đầu. Để sử dụng mod, người chơi sẽ phải trả tiền cho phiên bản đầy đủ.
  • Cải tổ lại mã hóa opcodes trong mã byte scripting của bạn khi biên dịch bản demo.
  • Loại bỏ hoàn toàn các trình xử lý cho một hoặc nhiều opcodes script chỉ được sử dụng trong các tập sau. Điều này sẽ khiến các phần thiết lập trong các tập sau bị lỗi ngay cả khi kiểm tra sửa đổi tệp và mã hóa opcode được vá.

1
Một mẹo nữa là mã hóa băm MD5 / SHA của từng tệp cấp độ demo riêng lẻ thành phiên bản demo. Điều này có lợi thế là, mặc dù chỉ cần thay đổi một mã băm / chữ ký duy nhất khá dễ dàng với trình soạn thảo hex, việc tăng số lượng băm (để tăng số lượng mức có thể phát) có phần khó khăn hơn, ít nhất là nếu có nhiều dữ liệu khác theo sau họ
Ilmari Karonen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.