Viabilidad de un juego XNA en PC

19

Un amigo y yo estamos haciendo un juego 2D XNA. Hasta ahora, la API parece realmente genial y el rendimiento es aceptable. Sin embargo, mi pregunta es más sobre su lanzamiento. Como otros desarrolladores, ¿cómo han hecho los juegos, qué tan bien te han ido en la PC (en cuanto a descargas, ventas, etc.)? Conozco las estadísticas sobre la Xbox360 al verla personalmente, pero tenía curiosidad sobre cuán exitosas fueron en la PC.

Corv1nus
fuente

Respuestas:

25

No tengo estadísticas para comparar las diferencias entre las ventas de juegos XNA y no XNA, sugeriría que es imposible obtener datos, pero imagino que mostraría que no hay diferencia para los juegos equivalentes. Así que déjame responder a tu pregunta con un repaso de los principales problemas específicos de la distribución de juegos XNA en PC (particularmente en línea):


En primer lugar: para que un juego XNA se ejecute, el sistema debe tener instalado: XNA Framework y .NET Framework.

XNA Framework es una descarga bastante pequeña, fácil de instalar, pero requerirá privilegios de administrador, por lo que provocará una solicitud de UAC y una solicitud de EULA. El marco no es compatible hacia arriba o hacia abajo, pero se puede instalar uno al lado del otro. (es decir: un juego XNA 3.1 necesita XNA 3.1 y no se ejecutará en XNA 4.0).

.NET Framework 2.0 está incluido en Vista y superior, por lo que recomiendo apuntar a eso (Propiedades del proyecto -> Marco de destino). [ACTUALIZACIÓN: XNA 4 requiere .NET 4, por lo que esto ya no funcionará]

La instalación de .NET 3.5 es muy, muy lenta. Recomiendo evitarla. No estoy seguro acerca de la instalación completa de 4.0, pero la instalación de 4.0 Client Profile es lo suficientemente rápida si necesita características más recientes de .NET (probablemente no; todavía puede usar lambdas y métodos de extensión en .NET 2.0).

Una instalación de .NET Framework, por supuesto, provocará un aviso de UAC y EULA. También puede provocar un reinicio.


Actualmente, la forma "estándar" de distribuir juegos XNA es con ClickOnce . Puede realizar una instalación en línea; la desventaja es que su usuario obtiene un pequeño ejecutable instalador "bootstrap" que extrae todos los archivos de juego sueltos de su sitio web. Alternativamente, puede distribuir todos esos archivos sueltos y el instalador en un archivo zip. Ninguno de estos es un archivo ejecutable autónomo como los usuarios esperan de la mayoría de los juegos.

Un gran problema de ClickOnce es que mostrará varias advertencias sobre la descarga de software sin firmar, lo que puede parecer bastante aterrador.

Otro inconveniente de ClickOnce es que no tienes mucho control sobre cosas como, por ejemplo, qué entradas de menú de inicio tienes.

La ventaja de usar ClickOnce es que es muy fácil de configurar y descargará e instalará automáticamente los marcos necesarios desde el sitio web de Microsoft.

Tengo la impresión de que estos problemas con ClickOnce pueden resolverse utilizando un MSI en su lugar, y aún así puede descargar e instalar automáticamente los marcos necesarios. Me temo que no tengo instrucciones específicas para esto a la mano.


Si realiza su propia instalación, o no realiza ninguna instalación, debe tener en cuenta que el ejecutable del juego se bloqueará con un mensaje de error extremadamente inútil si faltan los marcos necesarios.


Ah, y su instalación podría ser un poco más grande (o mucho, si incluye marcos). Si está utilizando contenido incorporado de XNA (y por qué no, está ahí y es fácil), su usuario podría tener más para descargar porque los archivos no están tan comprimidos como podrían estarlo si lo maneja usted mismo (especialmente el audio) .


Eso es todo. Una vez que el juego está instalado, te encuentras prácticamente en una situación idéntica a cualquier otro juego que use DirectX nativo (es decir, la mayoría de ellos).

(Si está haciendo algo como la distribución de CD-ROM, en lugar de la distribución en línea, puede enfrentar algunos de los mismos problemas que describí, pero puede colocar todo lo que de otro modo necesitaría descargar en su CD, incluido el marcos requeridos)

Si está haciendo shareware descargable, básicamente está tratando de hacer que los usuarios a lo largo de una cadena descubran su software, jueguen la demostración y compren el juego completo. La desventaja de XNA es que hace que el paso de instalación en esta cadena sea un poco más difícil de pulir, pero aún es posible.

(OMI, la ventaja de un desarrollo más fácil y la compatibilidad de XBox bien lo vale).

Entonces, para traer esto de vuelta a su pregunta: usar XNA puede hacer una pequeña diferencia, pero no lo suficiente como para que importe. Por lo tanto, cualquier estadística que encuentre sobre las ventas de juegos de PC debe ser aplicable a los juegos de XNA en PC.

Andrew Russell
fuente
Genial, FINALMENTE sé cómo distribuir mi juego XNA 2.0 (sí, hice un juego cuando 2.0 era nuevo, y busqué extensamente, pero no pude encontrar cómo facilitar un instalador que descargue todo lo necesario para que no se bloquee en el usuario pobre ...)
speeder
@speeder Vale la pena señalar que las características de ClickOnce eran nuevas en XNA 3.0, vea esta publicación aquí: blogs.msdn.com/b/astebner/archive/2008/09/18/8957968.aspx Hay soluciones para 2.0, aunque yo creo que lo más fácil podría ser actualizar de XNA 2.0 a 3.1.
Andrew Russell
1
.Net 4.0 siempre provoca un reinicio en mis máquinas, solo tenga en cuenta eso.
Jonathan Dickinson el
¿No hay algún tipo de problema de licencia al agrupar los marcos en un CD para distribuirlo?
Bill
1
@Bill: No: "La descarga redistribuible de XNA Framework proporciona a los desarrolladores de juegos las bibliotecas de tiempo de ejecución de XNA Framework que pueden incluir con su producto para su redistribución en la plataforma Windows". Referencia
Andrew Russell
5

Ha pasado más de un año desde que se creó este tema, y ​​desde entonces ha habido bastante desarrollo por parte de XNA. Por ejemplo, aquí hay una lista con algunos juegos populares de XNA que se han lanzado para PC y que actualmente se venden en Steam:

... y estos son solo los que compré y noté que usaban el tiempo de ejecución XNA, estoy seguro de que hay más de ellos que desconozco.

Y en caso de que no los conozca, Terraria vendió una cantidad asombrosa de copias (si no podía distinguir el descargo de responsabilidad de "más de un millón de copias vendidas" en el enlace anterior), permaneció en la lista de los más vendidos de Steam durante mucho tiempo . Y Bastion ... bueno, solo ganó tres premios Spike VG (incluido el mejor juego descargable del año) hace unos días .

También te insto a que compruebes los otros juegos. Chime es un increíble juego casual / musical que proporciona una experiencia zen extremadamente relajante. Y Sequence es una mezcla realmente original de DDR y RPG (con algo de música de Ronald Jenkees para quienes lo conocen). Finalmente, Magicka es un juego de rol de acción similar a Diablo, que también es genial.

Supongo que eso debería decir algo sobre la viabilidad de usar XNA para desarrollar juegos de PC.

David Gouveia
fuente
1
Además, otra actualización que vale la pena señalar es la reutilización de código. En la actualidad, hay proyectos como MonoGame que permitirán al desarrollador mantener la mayor parte de su base de código XNA (si no todos) y poder ejecutar la versión multiplataforma del juego. Un buen ejemplo es Bastion ejecutándose en Chrome (disponible en Chrome Web Store).
Darren Reid
1
@Layoric En esa nota, estoy bastante entusiasmado con esto (lo escuché hace un par de días). :)
David Gouveia
3
+1 por mostrar de dónde viene XNA. Sin embargo, como la mayoría de los desarrolladores se darán cuenta, XNA se está volviendo anticuada, todavía está ejecutando DX9, y no ha habido muchas palabras de desarrollo para ello. Sugiero echar un vistazo a ANX, le permite simplemente cambiar sus espacios de nombres y usar su sistema. Los beneficios de esto es que obtienes un marco de código abierto constantemente actualizado que se ejecuta en sharpdx. También se está desarrollando un sistema opengl, que permite cambiar el renderizador sobre la marcha. anxframework.codeplex.com
FrenchyNZ
1
@Twitchy Eso es cierto, pero no espero que sea por mucho tiempo. La publicación del blog de Andrew Russell ( andrewrussell.net/2011/11/predictions-on-xna-in-windows-8 ) sobre el futuro de XNA / Windows 8 explica las razones detrás del uso de DX9 y proporciona buenas razones que sugerirían que una versión más nueva de XNA que admite DX10-11 probablemente ya está en proceso.
Darren Reid
@Twitchy ¡Divertido cómo mencionaste ANX justo después de que lo vinculé también! Tengo muchas ganas de comprobarlo una vez que se estabilice. Pero una nueva versión de XNA también es muy bienvenida.
David Gouveia
1

No tengo idea de las estadísticas reales, pero valdría la pena ver si puedes encontrar algo sobre el jardín de arándanos y la flotilla . Ambos están escritos con XNA y ambos están disponibles en Steam. Flotilla incluso tiene algunas funciones de Steamworks (solo creo que la lista de amigos)

Cubed2D
fuente
Oh genial No sabía que Steam realmente aceptaría juegos XNA.
Corv1nus
¿Qué sucede si el usuario no tiene instalado .NET?
Iain
2
Puede escribir un instalador para verificar .NET y XNA. Lo hice para casi todos los pequeños juegos que lancé para XNA
Jeff
1
Steam tiene soporte para verificar dependencias e instalarlas, supongo que impulse tiene un sistema similar.
Cubed2D
1

Al crear su juego usando XNA, no perjudicará demasiado sus ventas. (De acuerdo, los usuarios de Mac / Linux no podrán jugar). Lo que va a ser un factor más importante es la publicidad, los avances, la demostración y el juego real.

La mayoría de los usuarios de Windows tendrán todo lo que necesitan para jugar. Si quiere ser realmente cauteloso, creo que puede hacer que el instalador verifique los requisitos como .net, xna runtime, directX, etc. Y solicite que lo instalen.

Esencialmente, no piense que al usar XNA, DirectX puro o Direct3D obtendrá mayores ventas. Tienes una audiencia más grande, pero eso no equivale a ventas.

Concéntrese en hacer un gran juego, invierta algo de dinero en publicidad (cree una página de fans en Facebook y vea si puede crear algo de entusiasmo allí), pase tiempo haciendo un buen video teaser y, sobre todo, cree una demostración divertida.


fuente