Viabilidade de um jogo XNA no PC

19

Um amigo e eu estamos fazendo um jogo 2D XNA. Até agora, a API parece muito legal e o desempenho é aceitável. Minha pergunta é mais para o lançamento dela. Como outros desenvolvedores, como fizeram os jogos, o quão bem eles fizeram para você no PC (quanto a downloads, vendas, etc.)? Conheço as estatísticas sobre o Xbox360 por vê-lo pessoalmente, mas fiquei curioso para saber como elas foram bem-sucedidas no PC.

Corv1nus
fonte

Respostas:

25

Não tenho estatísticas para comparar as diferenças entre as vendas de jogos XNA e não-XNA - eu sugeriria que é impossível obter dados - mas imagino que mostraria que não há diferença para jogos equivalentes. Então, deixe-me responder sua pergunta com uma análise dos principais problemas específicos da distribuição de jogos XNA no PC (especialmente online):


Primeiro de tudo: para que um jogo XNA seja executado, o sistema precisa ter instalado: o XNA Framework e o .NET Framework.

O XNA Framework é um download bastante pequeno, fácil de instalar, mas requer privilégios de administrador - portanto, causará um prompt do UAC e do EULA. A estrutura não é compatível com versões anteriores ou posteriores - mas pode ser instalada lado a lado. (ou seja: um jogo XNA 3.1 precisa do XNA 3.1 e não será executado no XNA 4.0).

O .NET Framework 2.0 está incluído no Vista e acima, então eu recomendo que seja direcionado a isso (Propriedades do projeto -> Target Framework). [ATUALIZAÇÃO: O XNA 4 requer o .NET 4, portanto isso não funcionará mais]

A instalação do .NET 3.5 é muito, muito lenta - eu recomendo evitá-lo. Não tenho certeza da instalação completa do 4.0, mas a instalação do 4.0 Client Profile é rápida o suficiente se você precisar de recursos .NET mais recentes (provavelmente não precisa - ainda é possível usar lambdas e métodos de extensão no .NET 2.0).

Obviamente, uma instalação do .NET Framework causará um prompt do UAC e do EULA. Também pode causar uma reinicialização.


Atualmente, a maneira "padrão" de distribuir jogos XNA é com o ClickOnce . Você pode fazer uma instalação on-line - a desvantagem é que o usuário obtém um pequeno executável "bootstrap" que puxa todos os arquivos de jogos soltos do seu site. Como alternativa, você pode distribuir todos os arquivos soltos e o instalador em um zip. Nenhum deles é um arquivo executável independente, como os usuários esperam da maioria dos jogos.

Uma grande dor do ClickOnce é que ele exibirá vários avisos sobre o download de software não assinado, o que pode parecer bastante assustador.

Outra outra desvantagem do ClickOnce é que você não tem muito controle sobre coisas como, por exemplo, quais entradas do menu iniciar você possui.

A vantagem de usar o ClickOnce é que é muito fácil de configurar, e ele baixa e instala automaticamente as estruturas necessárias no site da Microsoft.

Tenho a impressão de que esses problemas com o ClickOnce podem ser resolvidos usando um MSI - e ele ainda pode baixar e instalar automaticamente as estruturas necessárias. Receio não ter instruções específicas para isso em mãos.


Se você faz sua própria instalação, ou nenhuma instalação, você precisa estar ciente de que o executável do jogo falhará com uma mensagem de erro extremamente inútil se as estruturas necessárias estiverem ausentes!


Ah, e sua instalação pode ser um pouco maior (ou muito, se você incluir estruturas). Se você estiver usando material de conteúdo incorporado do XNA (e por que não, está lá e é fácil), seu usuário poderá ter mais o que baixar porque os arquivos não são compactados tão bem quanto poderiam estar se você o tratasse (especialmente áudio) .


É sobre isso. Depois que o jogo é instalado, você encontra uma situação praticamente idêntica a qualquer outro jogo usando o DirectX nativo (ou seja: a maioria deles).

(Se você estiver fazendo algo como distribuição de CD-ROM, em vez de distribuição on-line, poderá enfrentar alguns dos mesmos problemas que descrevi - mas você pode colocar tudo o que seria necessário para ser baixado no CD, incluindo o estruturas necessárias.)

Se você está usando um shareware para download, está basicamente tentando fazer com que os usuários descubram o seu software, joguem a demo e comprem o jogo completo. A desvantagem do XNA é que torna a etapa de instalação nessa cadeia um pouco mais difícil de polir - mas ainda é possível.

(OMI é a vantagem de um desenvolvimento mais fácil e de compatibilidade com o XBox.)

Então, para trazer isso de volta à sua pergunta: o uso do XNA pode fazer uma pequena diferença - mas não o suficiente para que isso importe. Portanto, todas as estatísticas que você encontrar sobre vendas de jogos para PC devem ser aplicáveis ​​aos jogos XNA no PC.

Andrew Russell
fonte
Legal, FINALMENTE eu sei como distribuir meu jogo XNA 2.0 (sim, eu criei um jogo quando o 2.0 era novo, e pesquisei bastante, mas não consegui encontrar como facilitar um instalador que baixasse todo o material necessário para não travar no usuário pobre ...)
speeder
@speeder Vale ressaltar que os recursos do ClickOnce eram novos no XNA 3.0, veja este post aqui: blogs.msdn.com/b/astebner/archive/2008/09/18/8957968.aspx Existem soluções alternativas para o 2.0 - embora eu acho que o mais fácil pode ser atualizar do XNA 2.0 para 3.1.
Andrew Russell
1
O .NET 4.0 sempre causa uma reinicialização nas minhas máquinas - apenas esteja ciente disso.
Jonathan Dickinson
Não há algum problema de licenciamento ao agrupar as estruturas em um CD para se distribuir?
Bill
1
@Bill: Não: "O download do XNA Framework Redistributable fornece aos desenvolvedores de jogos as bibliotecas de tempo de execução do XNA Framework que eles podem incluir com seus produtos para redistribuição na plataforma Windows". Referência
Andrew Russell
5

Faz mais de um ano que esse tópico foi criado e, desde então, houve bastante desenvolvimento no lado do XNA. Por exemplo, aqui está uma lista com alguns jogos XNA populares que foram lançados para PC e atualmente estão sendo vendidos no Steam:

... e esses são apenas os que comprei e notei que eles usavam o tempo de execução do XNA - tenho certeza de que há mais deles que eu não conheço.

E, caso você não os conheça, a Terraria vendeu uma quantidade incrível de cópias (se você não percebesse o aviso de "mais de um milhão de cópias vendidas" no link acima), permanecendo na lista de mais vendidos do Steam por um longo tempo . E Bastion ... bem, ganhou apenas três Spike VG Awards (incluindo o melhor jogo para download do ano) há alguns dias .

Peço também que você verifique os outros jogos. Chime é um incrível jogo casual / musical que oferece uma experiência extremamente relaxante, do tipo zen. E Sequence é uma mistura realmente original de DDR e RPG (com algumas músicas de Ronald Jenkees para quem o conhece). Finalmente, Magicka é um RPG de ação semelhante ao Diablo, que também é bem legal.

Suponho que isso deva dizer algo sobre a viabilidade do uso do XNA para o desenvolvimento de jogos para PC.

David Gouveia
fonte
1
Além disso, outra atualização digna de nota é a reutilização de código. Atualmente, existem projetos como o MonoGame que permitem que o desenvolvedor mantenha a maior parte de sua base de códigos XNA (se não todos) e seja capaz de executar a versão multiplataforma do jogo. Um bom exemplo é o Bastião em execução no Chrome (disponível na Chrome Web Store).
Darren Reid
1
@Layoric Nessa nota, estou bastante animado com isso (acabei de ouvir sobre isso há alguns dias). :)
David Gouveia
3
+1 para mostrar de onde o XNA chegou. Embora, como muitos desenvolvedores percebam, o XNA esteja ficando obsoleto, ele ainda está executando o DX9 e não havia muita palavra de desenvolvimento para ele. Sugiro dar uma olhada no ANX, ele permite que você simplesmente altere seus namespaces e use o sistema deles. Os benefícios disso é que você obtém uma estrutura constantemente atualizada de código aberto que é executada no sharpdx. Um sistema opengl também está em desenvolvimento, o que permite alterar o renderizador rapidamente. anxframework.codeplex.com
FrenchyNZ
1
@ Twitchy Isso é verdade, mas não espero que isso seja por muito tempo. A postagem do blog de Andrew Russell ( andrewrussell.net/2011/11/predictions-on-xna-in-windows-8 ) sobre o futuro do XNA / Windows 8 explica os motivos por trás do uso do DX9 e fornece bons motivos que sugerem que uma versão mais recente do XNA que suporta DX10-11 provavelmente já está em andamento.
Darren Reid
@ Twitchy Engraçado como você mencionou o ANX logo depois que eu o vinculei também! Estou realmente ansioso para verificá-lo quando ele se tornar estável. Mas uma nova versão do XNA também é muito bem-vinda.
David Gouveia
1

Não tenho idéia das estatísticas reais, mas pode valer a pena ver se você pode encontrar algo sobre o mirtilo e a flotilha . Ambos são escritos com XNA e ambos estão disponíveis no vapor. A Flotilla ainda tem algum suporte a steamworks (apenas lista de amigos, acredito)

Cubed2D
fonte
Oh fixe. Eu não sabia que o Steam realmente aceitaria jogos XNA.
Corv1nus
o que acontece se o usuário não tiver o .NET instalado?
Iain
2
Você pode escrever um instalador para verificar o .NET e o XNA. Eu fiz isso para quase todos os jogos pequenos que lancei para o XNA
Jeff
1
O Steam tem suporte para verificar dependências e instalá-las, presumo que o impulso tenha um sistema semelhante.
Cubed2D
1

Ao criar seu jogo usando o XNA, você não prejudicará muito suas vendas. (Concedido, os usuários no Mac / Linux não poderão jogar). O que será um fator maior é a publicidade, teasers, demo e jogabilidade real.

A maioria dos usuários do Windows terá tudo o que precisa para jogar seu jogo. Se você quer ser realmente cauteloso, acredito que você pode solicitar ao instalador a verificação de requisitos como .net, xna runtime, directX, etc ... E solicitar que eles o instalem.

Essencialmente, não pense que, usando XNA, DirectX puro ou Direct3D, você obterá vendas maiores. Você recebe um público maior, mas isso não equivale a vendas.

Concentre-se em criar um ótimo jogo, invista algum dinheiro em publicidade (crie uma página de fãs no Facebook e veja se você pode criar algum burburinho por lá), gaste algum tempo fazendo um bom vídeo teaser e, acima de tudo, crie uma demonstração divertida.


fonte