Del creador de "Back To Kowloon"

divendres, 13 d’agost del 2010

Primer (bé, segon xD) obstacle: Java? Python? C#?

Confesso que ja hi ha una part de codi feta en Python, però...ja que he fet un bloc, potser que comencem des del principi, no? ^_^

Des d'un primer moment tenia clar quin tipus de joc volia crear: un RPG clàssic, d'estil japonès. Un petit homenatge a obres mestres com els primers Final Fantasy. Altres opcions que em van passar pel cap van ser crear un petit manager de futbol o F1, un joc conversacional, un arcade o un joc de preguntes i respostes en plan Trivial Pursuit. Però, finalment, em vaig decantar pel RPG per una raó: un amic em va recordar que jo ja tenia un projecte de RPG. Un que, amb sort, encara deu estar als servidors de la UPC xDD

El cas és que vaig descartar aquests altres projectes per a un futur. I, un cop decidit quin tipus de joc crear, la primera pregunta que em vé al cap és aquesta: quin llenguatge faig servir per programar el meu joc? Ràpidament em va venir un llenguatge al cap: Java. L'únic que conec una mica bé, de fet. 

Llavors vaig pensar que estaria bé crear el joc, per exemple, per a un sistema comercial com ara la PSP. Em vaig informar i vaig trobar que Microsoft té una plataforma per a indie developers, com jo ara mateix. XNA, un estàndard basat en C# creat  per Microsoft que permet crear un joc cross-platform compatible amb sistemes Windows, Xbox 360, Zune i Windows Phone. Pots enviar jocs a Live i, amb sort, algú els juga. Sony ha creat recentment les minis, uns jocs descarregables limitats a 100 mb per a PS3 i PSP on estudis independents poden trobar la seva oportunitat. Són senzills i barats. Però cal establir un estudi, presentar un projecte seriós i pagar certes quantitats. De moment, per desgràcia per a mi, l'univers PlayStation queda descartat.

Finalment vaig recordar un llenguatge que havia provat d'aprendre pel meu compte i em va semblar força flexible: Python.

Tres alternatives. Què m'ofereix cadascuna? Doncs, a grosso modo...

- Java
  • Pros: Enorme portabilitat, facilitat d'ús, el domino bastant :D
  • Contres: No em convencen les llibreries existents, sembla més indicat per a aplicacions que per a jocs, li tinc mania xD
- XNA/C#
  • Pros: Abstracció molt alta, proposta amb futur, suport de Microsoft, possibilitat de publicar el joc en un lloc "concorregut", publicar per a PC és gratuït.
  • Contres: Portabilitat limitada (per exemple, Linux es queda fora), el producte no serà open source, he d'aprendre C# (cal dir que s'assembla a Java), no tinc una X360 :(
- Python
  • Pros: Gran portabilitat (fins i tot alguns SO com Symbian), flexibilitat, pygame proporciona bona abstracció.
  • Contres: És complicat d'entendre (és un concepte diferent), encara no el domino, requereix instal·lar un software que no està tan estés com ara la JavaVM.
Si algú s'està fent la pregunta, ha d'analitzar les seves pròpies possibilitats. A mi Python, tot i agradar-me, en dóna força maldecaps. Resulta confús fer-se amb un concepte nou un cop ja t'han ficat al cervell que les coses es fan d'una altra manera. XNA és una eina que em podria ser molt útil en el futur. Java i Python, però, aporten un component de llibertat extra. Tot i que Java...alguna cosa em fa descartar-lo ja d'entrada -_-

S'accepten suggerències i consells. No ho tinc gaire clar, la veritat. No obstant, suposo que tiraré endavant el que ja tinc fet en Python i, si de cas, es podria fer un port a C# més endavant. Algú vol dir la seva?

Wu Ying Ren 死

Cap comentari:

Publica un comentari a l'entrada