Fattibilità di un gioco XNA su PC


19

Un amico e io stiamo facendo un gioco XNA 2D. Finora, l'API sembra davvero interessante e le prestazioni sono accettabili. La mia domanda è più verso il rilascio di esso però. Come altri sviluppatori come hanno fatto i giochi, quanto bene hanno fatto per te su PC (per quanto riguarda download, vendite, ecc.)? Conosco le statistiche sull'Xbox360 dal vederlo personalmente ma, ero curioso di sapere quanto successo hanno avuto su PC?

Risposte:


25

Non ho statistiche per confrontare le differenze tra le vendite di giochi XNA e non XNA - suggerirei che è impossibile ottenere dati - ma immagino che mostrerebbe che non ci sono differenze per giochi equivalenti. Quindi lasciami rispondere alla tua domanda con una rassegna dei principali problemi specifici della distribuzione dei giochi XNA su PC (in particolare online):


Prima di tutto: per eseguire un gioco XNA è necessario che sia installato il sistema: XNA Framework e .NET Framework.

XNA Framework è un download abbastanza piccolo, facile da installare, ma richiede i privilegi di amministratore, quindi causerà un prompt UAC e un prompt EULA. Il framework non è compatibile verso l'alto o verso il basso, ma può essere installato parallelamente. (ovvero: un gioco XNA 3.1 richiede XNA 3.1 e non funziona su XNA 4.0).

.NET Framework 2.0 è fornito in bundle su Vista e versioni successive, quindi ti consiglio di scegliere come target (Proprietà progetto -> Framework di destinazione). [AGGIORNAMENTO: XNA 4 richiede .NET 4, quindi non funzionerà più]

L'installazione di .NET 3.5 è molto, molto lenta - consiglio di evitarlo. Non sono sicuro dell'installazione 4.0 completa, ma l'installazione del profilo client 4.0 è abbastanza veloce se hai bisogno di nuove funzionalità .NET (probabilmente non lo fai - puoi ancora usare lambdas e metodi di estensione in .NET 2.0).

Un'installazione di .NET Framework causerà ovviamente un prompt UAC ed EULA. Può anche causare un riavvio.


Attualmente il modo "standard" di distribuire i giochi XNA è con ClickOnce . Puoi eseguire un'installazione online: il rovescio della medaglia è che il tuo utente ottiene un piccolo eseguibile "bootstrap" che estrae tutti i file di gioco dal tuo sito web. In alternativa puoi semplicemente distribuire tutti quei file sciolti e il programma di installazione in una zip. Nessuno di questi è un file eseguibile autonomo come gli utenti si aspettano dalla maggior parte dei giochi.

Un grosso problema di ClickOnce è che mostrerà diversi avvisi sul download di software non firmato, che può sembrare abbastanza spaventoso.

Un altro aspetto negativo di ClickOnce è che non hai molto controllo su cose come, ad esempio, quali voci del menu di avvio hai.

L'aspetto positivo dell'utilizzo di ClickOnce è che è molto facile da configurare e scaricherà e installerà automaticamente i framework richiesti dal sito Web di Microsoft.

Ho l'impressione che questi problemi con ClickOnce possano essere risolti utilizzando un MSI invece - e può ancora scaricare e installare automaticamente i framework richiesti. Temo di non avere istruzioni specifiche per questo a portata di mano.


Se fai la tua installazione, o nessuna installazione, devi essere consapevole che il tuo eseguibile di gioco andrà in crash con un messaggio di errore estremamente inutile se mancano i framework richiesti!


Oh, e la tua installazione potrebbe essere un po 'più grande (o molto, se includi i framework). Se stai utilizzando i contenuti incorporati di XNA (e perché no, è lì ed è facile) il tuo utente potrebbe avere di più da scaricare perché i file non sono compressi come potrebbero essere se li gestissi tu stesso (specialmente l'audio) .


Questo è tutto. Una volta installato il gioco, ci si trova in una situazione praticamente identica a qualsiasi altro gioco che utilizza DirectX nativo (ovvero: la maggior parte di essi).

(Se stai facendo qualcosa come la distribuzione di CD-ROM, invece della distribuzione online, potresti dover affrontare alcuni degli stessi problemi che ho descritto - ma puoi inserire tutto ciò che altrimenti dovrebbe essere scaricato sul tuo CD, incluso il quadri richiesti.)

Se stai eseguendo shareware scaricabile, stai fondamentalmente cercando di convincere gli utenti di una catena a scoprire il tuo software, a giocare alla demo, all'acquisto del gioco completo. L'aspetto negativo di XNA è che rende il passaggio dell'installazione in questa catena un po 'più difficile da lucidare, ma è ancora possibile.

(IMO ne vale la pena lo sviluppo più semplice e la compatibilità con XBox.)

Quindi, per riportare questo alla tua domanda: usare XNA potrebbe fare una piccola differenza - ma non abbastanza che conta. Quindi tutte le statistiche che trovi sulle vendite di giochi per PC dovrebbero essere applicabili ai giochi XNA su PC.


Fantastico, FINALMENTE so come distribuire il mio gioco XNA 2.0 (sì, ho creato un gioco quando 2.0 era nuovo, e ho cercato ampiamente ma non sono riuscito a trovare un programma di installazione che scarichi tutte le cose necessarie affinché non si blocchi sul utente povero ...)
speeder

@speeder Vale la pena sottolineare che le funzionalità ClickOnce erano nuove in XNA 3.0, vedere questo post qui: blogs.msdn.com/b/astebner/archive/2008/09/18/8957968.aspx Esistono soluzioni alternative per 2.0, anche se pensa che il più semplice potrebbe essere l'aggiornamento da XNA 2.0 a 3.1.
Andrew Russell,

1
.Net 4.0 provoca sempre un riavvio sui miei computer - siate consapevoli di ciò.
Jonathan Dickinson,

Non c'è una sorta di problema di licenza con il raggruppamento dei framework su un cd per distribuire te stesso?
Bill

1
@Bill: No: "Il download ridistribuibile di XNA Framework fornisce agli sviluppatori di giochi le librerie di runtime di XNA Framework che possono includere con il loro prodotto per la ridistribuzione sulla piattaforma Windows." Riferimento
Andrew Russell,

5

È passato più di un anno da quando questo argomento è stato creato e da allora c'è stato un bel po 'di sviluppo sul lato XNA. Ad esempio, ecco un elenco di alcuni giochi XNA popolari che sono stati rilasciati per PC e che sono attualmente in vendita su Steam:

... e questi sono solo quelli che mi è capitato di comprare e ho notato che hanno usato il runtime XNA - Sono sicuro che ce ne sono altri di cui non sono a conoscenza.

E nel caso in cui non li conoscessi, Terraria ha venduto una quantità incredibile di copie (se non potevi dirlo dal disclaimer "oltre un milione di copie vendute" sul link sopra), rimanendo nella lista dei migliori venditori di Steam per lungo tempo . E Bastion ... beh, ha vinto tre Spike VG Awards (incluso il miglior gioco scaricabile dell'anno) pochi giorni fa .

Vi esorto anche a controllare gli altri giochi. Chime è un fantastico gioco casual / musicale che offre un'esperienza zen estremamente rilassante. E Sequence è un mix davvero originale di DDR e RPG (con alcune musiche di Ronald Jenkees per coloro che lo conoscono). Infine, Magicka è un gioco di ruolo d'azione simile a Diablo che è anche abbastanza bello.

Suppongo che dovrebbe dire qualcosa sulla fattibilità dell'utilizzo di XNA per lo sviluppo di giochi per PC.


1
Inoltre, un altro aggiornamento degno di nota è il riutilizzo del codice. In questi giorni ci sono progetti come MonoGame che permetteranno allo sviluppatore di mantenere la maggior parte della loro base di codice XNA (se non tutti) e di essere in grado di eseguire la versione multipiattaforma del gioco. Un buon esempio è Bastion in esecuzione su Chrome (disponibile nel Chrome Web Store).
Darren Reid,

1
@Layoric In quella nota, sono piuttosto entusiasta di questo (ne ho sentito parlare un paio di giorni fa). :)
David Gouveia il

3
+1 per mostrare dove è arrivato XNA. Sebbene, come la maggior parte degli sviluppatori realizzerà, XNA sta diventando datato, sta ancora eseguendo DX9 e non c'erano state molte parole di sviluppo per questo. Suggerisco di dare un'occhiata ad ANX, ti permette semplicemente di cambiare i tuoi spazi dei nomi e usare il loro sistema. I vantaggi di questo è che si ottiene un framework open source costantemente aggiornato che gira su sharpdx. È inoltre in fase di sviluppo un sistema operativo che consente di cambiare il renderer al volo. anxframework.codeplex.com
FrenchyNZ il

1
@Twitchy È vero, ma non mi aspetto che duri a lungo. Il post sul blog di Andrew Russell ( andrewrussell.net/2011/11/predictions-on-xna-in-windows-8 ) sul futuro di XNA / Windows 8 spiega le ragioni dietro l'uso di DX9 e fornisce buoni motivi che suggeriscono che una versione più recente di XNA che supporta DX10-11 è probabilmente già in lavorazione.
Darren Reid,

@Twitchy Divertente come hai parlato di ANX subito dopo averlo collegato anche io! Non vedo davvero l'ora di verificarlo una volta che sarà stabile. Ma anche una nuova versione di XNA è molto gradita.
David Gouveia

1

Nessuna idea sulle statistiche reali, ma potrebbe valere la pena di vedere se riesci a trovare qualcosa sul giardino dei mirtilli e sulla flottiglia . Entrambi sono scritti con XNA ed entrambi sono disponibili su Steam. Flotilla ha anche un supporto per steamworks (credo solo nella lista amici) integrato


Oh fico. Non sapevo che Steam avrebbe effettivamente accettato i giochi XNA.
Corv1nus,

cosa succede se l'utente non ha installato .NET?
Iain,

2
È possibile scrivere un programma di installazione per verificare sia .NET che XNA. L'ho fatto per quasi tutti i piccoli giochi che ho pubblicato per XNA
Jeff

1
Steam ha il supporto per verificare le dipendenze e installarle, suppongo che impulse abbia un sistema simile.
Cubed2D,

1

Creando il tuo gioco usando XNA, non danneggierai troppo le tue vendite. (Concesso, gli utenti su Mac / Linux non potranno giocare). Quello che sarà un fattore più importante è la pubblicità, i teaser, la demo e il gioco reale.

La maggior parte degli utenti di Windows avrà tutto ciò di cui ha bisogno per giocare. Se vuoi essere molto cauto, credo che il programma di installazione possa verificare requisiti come .net, xna runtime, directX, ecc ... E chiedergli di installarlo.

In sostanza, non pensare che usando XNA, DirectX puro o Direct3D otterrai vendite maggiori. Ottieni un pubblico più vasto, ma ciò non equivale alle vendite.

Concentrati sulla creazione di un grande gioco, investi un po 'di soldi nella pubblicità (crea una fan page di Facebook e vedi se riesci a creare qualche buzz), trascorri del tempo a realizzare un buon video teaser e soprattutto costruisci una demo divertente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.