En unos meses planeo comenzar a mostrar el juego (con suerte comercial) en el que estoy trabajando para el público (internet). La cuestión es que, además de las capturas de pantalla y un avance (por ejemplo, la funcionalidad de la función), ¿cómo se hace correctamente para hacer una demostración que se pueda proteger?
Déjame explicarte un poco. El juego es un juego de rol multiplataforma. En este momento, la forma en que codifico el juego es que lee datos de mapas, personajes, etc. de los archivos y eso decide todo lo que me permite expandir el mundo / historia simplemente con archivos de configuración y agregando activos.
Es decir, mi preocupación es si hago una versión demo del juego, es decir, el juego real, pero luego se eliminan todos los activos / archivos de configuración / etc., por lo que es solo una demostración con el primer mapa / nivel. ¿Hay alguna manera de protegerse contra alguien que acaba de sacar el paquete de datos del juego real (cuando se lanzó) y ahora, de repente, cualquiera con el EXE de demostración puede jugar el juego real?
La protección de demostración es mi primera prioridad, ya que quiero la demostración por un tiempo antes de que se lance el juego real. Siempre puedo decidir qué métodos de protección elijo del juego real más tarde (antes del lanzamiento, pero aún más tarde ...)
Supongo que todo se reduce a si hay alguna forma real de proteger el juego de todos modos (no quiero restringir a los usuarios a tener que hacer controles en línea porque este juego será multiplataforma y no requerirá internet para jugarlo). Lo último que quiero hacer es meterse con usuarios legítimos. Y me gustaría dejar los recursos abiertos si es posible, ya que eso solo significa parchear fácilmente las carpetas y permitir que los modders se vuelvan un poco.
Quiero decir, incluso si configuro un sistema básico de licencia de clave, ¿qué es lo que realmente impide que 1 persona cargue su clave y una copia del juego en alguna parte? He visto a personas hablar sobre actualizaciones frecuentes para que los cambios binarios y tengan que volver a descifrar el juego. Pero, ¿quién necesita descifrar el juego cuando puedes obtener 1 copia legítima y luego distribuirla?
No estoy seguro de si tal vez me estoy perdiendo algo, solo estoy tratando de asegurarme de que no. ¿Realmente se reduce a:
- Coloque una protección de licencia de clave básica en él.
- Eliminar archivos de activos / configuración de la demostración
- Esperar lo mejor
¡Todos y cada uno de los consejos son apreciados! Soy muy nuevo en todo esto; -;)
Lo siento si esto es un duplicado! No se pudo encontrar mucho sobre el concepto de demostración.
Respuestas:
¿Ha considerado codificar algo como un límite de tiempo en la versión demo del motor?
La cuestión es que, no importa cuánto proteja su demo, el juego será pirateado de alguna manera una vez que salga. Ya sea usando la demostración o simplemente usando el juego principal, sucederá si el juego es lo suficientemente popular.
Las personas que no quieren pagar por tu juego no pagarán por tu juego.
Las personas que quieran pagar por tu juego pagarán por tu juego.
Esto se aplica a cualquier cosa, desde el juego indie más pequeño hasta el título triple A más grande: la única forma de evitarlo es hacer que la conexión a sus servidores no solo sea obligatoria sino que esté relacionada con el juego, es decir, un MMO, en lugar del tonto Assassin's Creed DRM siempre en línea. Como ya has dicho que no es una opción, te sugiero que la aceptes.
Como desarrollador independiente, la mejor manera de obtener más ventas es tener más ojos en tu juego. Las personas que no están inclinadas a la piratería jugarán su demo y luego comprarán el juego o no. Las personas que se inclinan por la piratería pueden jugar su demo, encontrar los activos como los describió, etc., y aún así pueden o no comprar el juego.
fuente
No estoy seguro de lo que quisiste decir con "rama" en tu comentario, pero es posible hacer dos ejecutables diferentes (demo y versión completa) desde el mismo árbol de código fuente usando una compilación condicional . Puede hacer una opción en tiempo de compilación para incluir solo la capacidad de reproducir el primer episodio. (Por ejemplo, en C ++, puede usar
#ifdef
comandos alrededor del código destinado solo a la versión completa). Puede hacer que la versión demo produzca al menos los siguientes efectos de juego:fuente