Quali sono i tuoi suggerimenti e trucchi per completare con successo un progetto di gioco per hobby nel tuo tempo libero? Come ti motivi per continuare e guidare fino al traguardo senza perdere interesse o motivazione lungo il percorso?
Quali sono i tuoi suggerimenti e trucchi per completare con successo un progetto di gioco per hobby nel tuo tempo libero? Come ti motivi per continuare e guidare fino al traguardo senza perdere interesse o motivazione lungo il percorso?
Risposte:
Questi suggerimenti si applicano a qualsiasi progetto software per hobby, e non solo ai giochi.
Impostare traguardi minuscoli. Avere un obiettivo come "il sistema di oggetti funziona nel mio gioco di ruolo" va bene, ma ciò implica molte funzionalità sotto-specificate che probabilmente non sapevi nemmeno di aver bisogno. Che dire di "Impostazione dell'ambiente grafico"? Oppure "Sullo schermo viene visualizzato uno sprite".
Fai un po 'ogni giorno. Le sessioni di maratona sono fantastiche e tutte, ma stai cercando di stringere un impegno a lungo termine in una vita già affollata. Se fai un po 'ogni giorno stai facendo progressi misurabili e stabilendo una struttura all'interno della quale puoi raggiungere i tuoi traguardi.
Ridimensionati. Qualunque sia la tua grande visione, cerca di capire qual è la porzione più piccola raggiungibile e fallo. Fare un gioco di ruolo? Inizia con una missione e senza NPC. Fare un platform? Inizia con un livello e senza nemici.
Prototipo in anticipo. Prima di sprofondare in un gioco un sacco di ore del tuo hobby, duramente guadagnato, cerca di capire se prima sarebbe divertente. Non c'è niente di così scoraggiante come lavorare il culo su qualcosa per decine di ore solo per scoprire che il concetto di base fa schifo.
Sviluppa qualcosa di iterabile. I miei progetti software preferiti per hobby sono quelli in cui il concetto di base consente di armeggiare in seguito. Il tuo gioco è così? Puoi spedire qualcosa e poi rivederlo più tardi e aggiungere cose interessanti?
Non costruire un motore o un framework. Non vuoi un motore, vuoi un gioco. Non preoccuparti dei bit riutilizzabili framework-y fino a quando il gioco non viene spedito. Una volta iniziato il secondo gioco, puoi tornare al tuo primo gioco e vedere se c'è qualcosa che potresti portare. Questo non vuol dire che non dovresti usare la prassi di sviluppo del software audio, ma non iniziare a scrivere una classe Sprite fino a quando non sai cosa devi fare per i tuoi sprite: rimarrai sorpreso da quanto poco andrà a finire essere. Inizia con una classe Eroe, poi una classe Mostro e poi - oh guarda! - ci sono alcune cose comuni!
La spedizione è una caratteristica. Non finirai mai il tuo gioco, lo abbandonerai e basta. (= Qual è l'importo minimo che puoi fare prima di non essere completamente imbarazzato per mostrare il tuo gioco a qualcun altro? È probabile che tu possa fare di meno e avere ancora un gioco di cui essere orgoglioso.
In realtà ho appena scritto un blog su come mi sono avvicinato alla progettazione e allo sviluppo per il mio ultimo progetto iPhone. Potresti trovare valore nel leggerlo.
Alcuni pensieri da lasciare qui sono
Applicazione da fare
Uso le cose per Mac e ToDoList (gratuito) per Windows. In alternativa, puoi saltare su sourceforge.net o codeproject.com per prendere un'applicazione da fare. Mi piace ToDoList. Avrai molti schizzi, idee, informazioni di progettazione che devono davvero essere aggregate in un punto. Avere un'applicazione come questa con l'elenco delle funzionalità ti aiuterà a rimanere concentrato.
Attività di piccole dimensioni
"Implementa vista classifica" non è un'attività sufficiente. Cosa comporta? Abbattilo -
Vedere l'immagine in modo più dettagliato ridurrà le tue possibilità di perdere un elemento chiave della tua implementazione e ti fornirà la motivazione mentre spegni ogni attività.
Mantieni lo Scope Piccolo
Non provare a costruire Starcraft III se sei solo tu, trasandato e purrdoodle. Non è fattibile. Abbassa le tue aspettative e trova qualcosa che ti piacerebbe ancora costruire.
Caramelle per gli occhi
Ottieni qualcosa sullo schermo: potresti essere sorpreso da quanto sarà grande la tua motivazione. Tendo a concentrarmi su come ottenere presto le opere d'arte. Inoltre, sono anche in grado di lavorare con un musicista che inizia a mostrarmi cose relativamente presto.
Divertiti
Se stai schiavizzando il tuo sistema di salvataggio per tutta questa settimana, assicurati di seguirlo la prossima settimana con qualcosa di divertente. Uno dei miei momenti divertenti è stato riprogettare il sistema di animazione per la mia interfaccia utente.
Collabora
Tecnicamente non è necessario iniziare ad aggiungere persone al proprio team, ma parlare con altre persone di ciò che si sta facendo. Passa a tigsource.com o gamedev.net e avvia la rete.
Playtest
Inizia a ricevere feedback in anticipo sul tuo gioco. Sto parlando subito dopo aver finito il prototipo iniziale. Lascia che alcuni dei tuoi amici si divertano con quello che hai, ricevi feedback, prendi appunti e rivedi il tuo piano se necessario. Assicurati di provare al di fuori del tuo regno di comfort e getta una rete che includa altri sviluppatori di giochi. A volte amici e persone care non sono persone critiche.
Avvia un blog
Parlare di ciò che stai facendo ti consente di creare un marchio per te stesso. Questo non ha prezzo quando arriva il momento di spedire il tuo prodotto. Guarda cosa sta facendo Wolfire . Sono assolutamente pura vittoria nella costruzione di un marchio per se stessi.
Fai una pausa
Se la tua mente non è coinvolta nel progetto in un momento specifico, non provare a forzarlo. Alzati e fai una passeggiata o fai un pisolino. Questo è il lusso di essere indipendenti. Alla fine creerai un prodotto migliore per farlo.
Il mio consiglio n. 1: scollegare il cavo di rete!
Ho un rituale di scollegare il cavo di rete prima di andare a letto. La mattina dopo non sono online, quindi non ho siti da visitare, e-mail da leggere, persone con cui chattare, ecc. Quindi, naturalmente, mi metto subito al lavoro sul mio gioco.
Non mi collego di nuovo fino a quando non è assolutamente necessario. Se c'è qualcosa di cui ho bisogno online, lo scrivo per cercare più tardi o uso il browser del mio iPhone.
Aiuta ad avere cose come MSDN scaricate e disponibili offline.
Il problema più grande con i progetti di hobby non è avere un ambito ben definito. Molte persone iniziano volendo creare il miglior gioco di sempre con ore di gioco e tutte le idee interessanti che hanno. Invece, dovresti provare a ridimensionare la tua idea a qualcosa di gestibile e poi elaborare un programma ragionevole. È vero che le scadenze sono in contrasto con il gioco che è un progetto hobby e non un lavoro a tempo pieno, ma sono buoni per rimanere motivati e suddividere grandi compiti in piccoli gestibili.
Puoi anche mantenere un file della cronologia delle versioni che viene aggiornato ogni volta che aggiungi qualcosa al gioco. Meglio ancora, dovresti usare il controllo versione e utilizzare la cronologia di commit per questo. È un buon modo per misurare i tuoi progressi e rimanere motivati in seguito (guardando tutte le cose che hai già fatto).
Il creatore del gioco Grauioutous Space Battles, uno sviluppatore indipendente solitario, ha riassunto alcuni consigli utili su come creare il tuo gioco in un post sul blog. Alcuni di loro possono essere motivanti anche per progetti di hobby.
Blog di Cliffski: come rimanere motivati durante la programmazione di un gioco
Estratto:
- Codifica qualcosa che ti piace
- Circondati di ispirazione
- Tieni un registro di ciò che hai fatto ogni giorno.
- Fai un po 'di lucido
- Lezioni difficili in denaro
- Tieni presente quanto è alto il livello (conosci la concorrenza)
- Fai delle brevi pause.
Di recente ho notato che ogni volta che leggo un post sul blog di uno sviluppatore di giochi indie sui suoi aggiornamenti, apro immediatamente il mio IDE e inizio a lavorare. Quindi, il mio consiglio per mantenerti motivato è: leggi altri blog (game dev) ;)
Ecco un breve elenco:
Inizia creando un gioco stupidamente semplice e finiscilo e pubblicato online da qualche parte. Ricorda che anche qualcosa di apparentemente semplice come il pong potrebbe rivelarsi piuttosto complesso se stai sviluppando un nuovo gioco e iniziare con un semplice gioco ti mostrerà se hai la pazienza di affrontare un progetto più grande.
Ho lavorato su Snapshot (www.retroaffect.com) oltre al mio lavoro a tempo pieno per quasi 8 mesi prima di trasformarlo nel mio lavoro a tempo pieno. Lavoravo tutto il giorno, poi tornavo a casa e lavoravo su Snapshot fino a quando mi sono addormentato. A volte era un po 'troppo, ma altre volte (il più delle volte) era fantastico.
Consiglio vivamente di leggere questo: http://positech.co.uk/cliffsblog/?p=753
Ricorda anche che se è qualcosa che stai facendo solo per divertimento, ricordati di tenerlo così ... divertente. Se ti esaurisci, il tuo progetto non sarà mai finito o verrà visualizzato nel prodotto finale.
In base alla mia esperienza, è più facile rimanere motivati se hai altri che lavorano con te. Così:
Certamente i miei consigli chiave sarebbero condividere la tua eccitazione e mantenere il progetto in uno stato che funzioni .
Lavoro al mio progetto di hobby ormai da circa 2-3 mesi. Ciò significa che di sera o due ogni tanto più i fine settimana di tanto in tanto. Il progetto è forse realizzato per 2/3 per una prima versione corretta. Forse è troppo presto per chiamarlo successo, ma ecco le cose che mi hanno fatto andare così lontano:
1. Acquista un blocco note per mantenere ogni idea che otterrai. Non devi effettivamente inserirli nel tuo gioco, ma puoi usarli per ulteriore ispirazione.
2. Sto anche provando a tenere tutto ciò che devo ancora fare su una bacheca o su una lavagna in modo da poter sempre cercare i miei prossimi obiettivi per finire.
3. Non tentare di implementare le cose nel modo migliore al primo tentativo. Prova a far funzionare le cose e rendile belle in un passaggio successivo.
Quindi potresti avere caratteristiche diverse su diversi stati di gentilezza:
Aiuta molto nella motivazione se fai funzionare le cose prima di considerare di renderle belle e fluide. Il rovescio della medaglia di questo metodo è che dovrai codificare più codice che alla fine inserirai nel cestino.
4. Non implementare troppe funzioni in parallelo. Prova a concentrarti su <= 3 funzioni contemporaneamente. Quindi hai un posto in cui passare se ti fermi a una funzione ma non tante funzioni che sei sopraffatto dalla quantità di lavoro da fare.
La risposta breve: Iterate, iterate, iterate. Inizia in piccolo e avvia qualcosa prima di provare a implementare l'intero sistema. È ancora importante fare un po 'di progettazione e pianificazione ai massimi livelli, ma essere in grado di vedere con cosa stai lavorando e svolgere parti di prova mentre procedi è incredibilmente importante per rimanere motivati; è difficile per me (e quasi tutti gli altri programmatori che conosco) lavorare giorno dopo giorno su qualcosa che in realtà non mostra loro risultati visibili.
Ho una buona immaginazione, ma scarse capacità organizzative. Dal punto di vista creativo, ho trovato utile nel mio caso utilizzare uno strumento per aiutarmi a tenere traccia di tutto e imporre una struttura generale. Uso Writer's Café, che è abbastanza flessibile da adattarsi al design del gioco. Sono sicuro che ci sono altri strumenti disponibili. La cosa più importante, penso, è fissare le pietre miliari. Ciò ti tiene concentrato, ti consentirà di misurare i progressi e dovrebbe darti un senso di realizzazione quando li raggiungi.
Un altro piccolo suggerimento. - Crea una squadra: comunica regolarmente con la tua squadra (skype, live, e-mail, ecc.)
Tutti i suggerimenti citati da altri sono buoni. Se crei un team, i membri del team possono supportarsi a vicenda. Inoltre, organizzando riunioni regolari, ti incoraggia a lavorare sul tuo progetto per mostrare i progressi o raggiungere la scadenza.
Altre persone possono essere la tua più grande risorsa.
È così che ho assemblato il mio studio di gioco. Siamo tre partner che lavorano al gioco negli ultimi due anni come hobby per il fine settimana. Ora stiamo vedendo la luce alla fine del tunnel.
Divertiti con esso.
Uso Collabtive per i miei progetti e questo mi consente di impostare attività e traguardi. Quando lavoro su un progetto con più persone, mi permette anche di chattare con loro e assegnare loro compiti specifici. Oltre al software di gestione del progetto (che è open source), utilizzo anche Subversion per consentire a più persone di lavorare contemporaneamente sul codice. Entrambi questi programmi funzionano su un piccolo server Linux, e sinceramente non ho ancora avuto problemi con questa configurazione! :)
Per gestire un progetto di gioco per hobby hai bisogno di alcune cose: motivazione e strumenti adeguati.
La mia risposta si concentrerà sull'uso degli strumenti adeguati, come se tu fossi seriamente intenzionato a fare un gioco nel tuo tempo libero, si spera che tu abbia già la motivazione giù. :)
Ti consiglierei di utilizzare una qualche forma di controllo della versione per il tuo gioco. Siti come Github o Bitbucket forniscono hosting per git e mercurial (supporto bitbucket mercurial, non github). Questo è il tuo primo passo per organizzare il tuo codice e le tue risorse.
Il prossimo è essere in grado di definire bene un backlog di attività e funzionalità che devono essere eseguite. Il processo migliore per questo dipende da te, lo sviluppatore. Alcune opzioni includono la creazione di un Game Design Document (GDD), un Technical Design Document (TDD) e un Feature Backlog. Un buon esempio per un GDD può essere trovato qui: http://www.runawaystudios.com/articles/chris_taylor_gdd.aspPer il TDD, modellalo in modo simile al GDD, ma focalizzalo maggiormente sui dettagli tecnici della programmazione. Quindi quale lingua si intende utilizzare, framework, motore e altre specifiche tecniche. Sia GDD che TDD ti aiuteranno a comprendere meglio l'ambito del progetto e capire qual è l'elenco delle cose da fare. Puoi farlo nel bel mezzo del progetto se lo hai già avviato, poiché è sempre importante ripetere la ricerca e sapere quali sono esattamente i tuoi obiettivi e le tue caratteristiche.
Una volta fatto ciò, dovresti iniziare a sviluppare. Ho scritto un post sul blog su come utilizzare github per sviluppare in modo efficace un gioco, incluso l'utilizzo delle funzionalità wiki, i problemi per il rilevamento dei bug e la semplice gestione del progetto. Puoi trovarlo qui: utilizzando Git e Github per lo sviluppo di giochi
Definire una scadenza flessibile per il tuo progetto può o meno aiutarti a spingerti a rimanere in pista. Ogni individuo è diverso e solo tu saprai motivare te stesso. Prova diverse tecniche e scopri cosa funziona per te. Lo sviluppo del gioco (e lo sviluppo del software) richiede in genere molto più tempo di quanto inizialmente stimato dalle persone. Quindi non scoraggiarti e attenersi ad esso.
Se hai bisogno di altri esempi di GDD e TDD, ne ho i miei in Google Doc e non mi dispiacerebbe condividerli!
La prima cosa nella tua mente dovrebbe essere che stai lavorando per te stesso e per il tuo divertimento. Non lasciare che il tuo progetto venga dirottato dalle aspettative e dai desideri degli altri, in particolare quando i tuoi interessi cambiano nel tempo.