Skapat Pong, nu vill jag göra mer.

Permalänk

Skapat Pong, nu vill jag göra mer.

Hej!
Allt nedan handlar alltså om C#, XNA och 2D.

Nu har jag och ett par polare i skolan skapat en tolkning av Pong, vi kallar det för StarPong, och det går ut på att träffa stjärnan i mitten för att ha störst chans att vinna.

Nu vill vi göra mer.
Jag vill börja programmera lite enklare spel, och det enda jag vill just nu i mitt liv, är att få ett spel till Windows Phone.

Jag har gjort lite olika spel, PlanetStreamer, där man styr ett skepp som blir attackerad av rymdpirater, och försöker komma så långt som möjligt, (2D) och StarPong då. Har även gjort ett litet mini spel som heter "For A Greater Good" där man skjuter Ronald Reagan och andra onda amerikanare, men det är inget som är "officiellt" då det kanske inte skulle tas emot så väl av alla.

I vilket fall som helst, så vill jag programmera ett litet enkelt spel till Windows Phone, som jag kan publicera och kan äntligen kalla mig för spelutvecklare. GRATIS, förstås, det ska vara gratis..

Jag har lite idéer, men har mötts av många stora motgångar.. Den största är att jag oftast kommer till ett ställe där jag inte vet hur jag ska göra och läraren kan inget om Windows Phone programmering och kan inte hjälpa mig, och även ifall jag har fått väldigt mycket hjälp från internet, så har jag inte hittat nåt där heller, inte här heller för den delen.
Ett exempel på det är när jag programmerade PlanetStreamer, man klickade på två knappar för att åka upp och ner, men ingenting hände förrens man släppt knappen, vilket betyder att ifall man vill undvika ett skott från en pirat, så får man vara en riktig jävel på att spammklicka på skärmen. Letade igenom de 40 % av webben som inte består av porr, men inte fan hittade jag något, så jag skapade en tråd, men fick inte den hjälpen här heller. Mest kommentarer om att: - "Ifall du läser här, så kommer du fatta: *länk till en hemsida där det stod om touch input*", men jag förklarade att jag läst igenom men fortfarande inte fattat, men fick till slut inte riktigt den hjälpen jag behövde och mitt andra jag, Onde Franz som jag kallar honom, tog över och gjorde tråden till ren jävla pajkastning.

Därför har jag tagit det lugnt med programmering, vilket är synd eftersom jag verkligen älskar att programmera, men har ibland väldigt svårt att kontra problem, trots att jag oftast lyckas bra så finns det små fel som jag stör mig på som aldrig löser sig, vilket är en del av programmering.

Jag har kollat igenom "samples" som kan hittas till Visual Studio, men det har mest varit panikbringande. Jag tittar och vänder upp och ner på koden och säger hmm.. sen går jag vidare till nästa sample, vilket påminner om min fars jobb på Tillväxtverket, vänd upp och ner på ett papper, säg hmm, ge det vidare till chefen.

Jag har lite idéer på spel som är über enkla att göra, men fortfarande lite trevliga att spela.
PlanetStreamer har varit ett av dem, men gud va ostrukturerat koden blev, så kallade "klasser" och objektorientering fanns inte på min karta då jag kodade då, det var mest min lärare som klappade mig på axeln och sa att jag kanske skulle lära mig det..
PlanetStreamer var i alla fall ett enkelt 2D spel där man ser från sidan där man styr skeppet upp och ner och fiende pirater kommer och attackerar.
Funderar på att göra ett spel där man styr en karaktär som ska försvara sig mot fiender, som kommer i olika waves, när en wave är avklarad så kan man uppgradera vapnet och kanske hälsa osv. Väldigt enkelt och går att göra mer avancerat med olika grejer, 2D helst funderar jag på. Är detta det enklaste tror ni? Vad tror ni om en sådan idé?

Och hur gör man när man ska placera saker på skärmen, men ifall någon har en annan upplösning än mig på sin skärm, då är den inte korrekt placerat. Hur löser man detta enklast? Genom variabler med olika värden så att den alltid kommer på samma ställe? Enkelt på telefoner då de flesta har samma upplösning.

För er som läst mina andra trådar, och tror att jag är sjuk i huvudet för att jag inte kan koda objektorienterat, så kan jag hälsa att det inte stämmer, vi har nu lärt oss att programmera i klasser, och mina senaste spel jag programmerat har varit så bra strukturerade att jag aldrig nånsin går vilse, och till och med en efterbliven schimpans skulle kunna förstå koden eftersom den är så strukturerad, så det är det inga problem med!

Permalänk
Entusiast

Det finns så mycket där ute...

Vill du ha mer beslutsångest än vad du redan har? Läs då vidare

Fråga:
Vad är du mest intresserad av?

Spelutveckling, där du inom rimlig tid ser ett resultat baserat på dina idéer som andra kan ta del av.
Slippa uppfinna alla pyttesmå kugghjul på nytt och komma snabbt igång med att realisera idéer.

...eller...

Ren & skär programmering, där du löser dessa pyttesmå, men ack så viktiga detaljer i ett större projekt.
Uppfinna alla kugghjulen på nytt. Gör om, gör bättre. Finslipa och optimera.

...eller både och?
Att utveckla en spelmotor och utveckla en spelidé samtidigt kan bli rätt så överväldigande.
Tips: Det är svårt att gapa över så pass mycket på en gång. Satsa på den ena först, ta den andra sen.

Några länktips följer:

Spelutveckling:
Då rekommenderar jag dig att satsa på en lämplig SDK (Software Development Kit)

Personligen gillar jag UDK (Unreal Development Kit)
Det är ett mycket kompetent och avancerat kit som många indie-utvecklare idag använder. Du behöver inte känna att du lämnar kodandet bakom dig. Det finns mycket att koda, och skriptspråken som används är riktigt smarta och kompetenta. Många delar påmninner mycket om Visual .NET miljön, så man snabbt kommer igång.
Det finns även riktigt kompetenta tutorial-videor på deras hemsida, så att även en novis snabbt kan komma igång.
Hemsida: http://www.unrealengine.com/udk/

Alternativt kan du satsa på Valves Source SDK.
De flesta har redan sett vad indie-spelen har att ge från Steam, och många är väl gjorda.
(Visste ni att Portal från början var ett indie-spel under namnet "Narbacular Drop"? Valve gillade det så pass mycket, att Valve anställde utvecklarna på fläcken, som sedan släppte spelet under titeln "Portal")
Hemsida: http://source.valvesoftware.com/sourcesdk.php

Kanske satsa på Unity 3D motorn?
Själv har jag hört mycket positiv om det, men har inga erfarenheter av det.
Tydligen satsar Unity-utvecklarna på att deras lösning skall ge en möjlighet att snabbt komma igång utan strul, och få fram en färdig produkt snabbt och enkelt.
(Skall INTE förväxlas med Ubuntu Unity, som är något helt annat. Det kommer vi till längre ner)
Hemsida: http://unity3d.com/unity/

Programmering:
Är programmeringen och kodutvecklingen i sig mer lockande, än att sitta med avancerade verktyg och utvecklingsmiljöer.
Då rekommenderar jag Java.
Varför?... se bara på var Minecraft är idag. Det var ett "litet" javaprojekt som sattes igång av en person.
Det eskalerade rätt bra kan man nog säga, med facit i handen. Riktigt trevligt att Minecraft dessutom fungerar under Linux.
Att Java är plattformsoberoende, och kan köras på alla plattformar som stödjer java, är inte fy skam det heller.
Java: http://www.oracle.com/technetwork/java/javase/downloads/index...
Minecraft Development recources: http://www.minecraftwiki.net/wiki/Development_resources

Vågar du satsa på Linux-utveckling?
Om du redan är insatt i C och C++, så varför inte. En Linux-miljö är ju som gjord för dessa programmeringsspråk. De flesta Linux-distributioner ger dig allt som behövs helt gratis, och med källkod.
Vet inte vart du vill sikta i Linux-världen? Enkelt. Om Linux känns främmande och för svårt, gissar jag att det beror på bristen av riktigt kompetenta grafiska interface på en del håll, vilket gör att man i regel återvänder kommandomiljön.
Hjälp Linux-världen och utveckla snillrika grafiska interface, trevliga arbetsmiljöer, intressanta applikationer och spel.
KDE Development: http://techbase.kde.org/Development/Tutorials
Gnome Development: http://developer.gnome.org/
Nu när Canonical kommer ut med ett eget mobilt OS, tänkt att konkurera med iOS och Android, är det kanske dags o satsa på Ubuntu Apps?
Ubuntu App Development: http://developer.ubuntu.com/resources/platform/unity/

Satsa på mobilitet?
Då är frågan: Appar eller mobila webbapplikationer?
Skillnaden mellan dessa två koncept är att mobila webbapplikationer körs via en mobil webbläsare, och fungerar bra där information skall presenteras, och fungerar på alla mobila plattformat utan speciell anpassning.
Här har jag inga direkta länktips. Jag rekommenderar i så fall att satsa på webbutveckling, och sikta in dig på mobilitet.

Ä det spel eller speciella funktioner som används, ja då får man lov att utveckla en "app". (Det är bra om man har goda Java-kunspaper när man sätter igång och skapar mobila "appar". Se Java ovan.)
Android Development: http://developer.android.com/design/index.html
iOS Development: https://developer.apple.com/devcenter/ios/index.action

Visa signatur

Bästa programmen till Linux - v2.0
Linux-guide: Val av grafisk miljö. (Att välja distribution).
-
Everyone should have a SGoC in their systems (SGoC: SysGhost on a Chip)

Permalänk
Skrivet av SysGhost:

Vill du ha mer beslutsångest än vad du redan har? Läs då vidare

Fråga:
Vad är du mest intresserad av?

Spelutveckling, där du inom rimlig tid ser ett resultat baserat på dina idéer som andra kan ta del av.
Slippa uppfinna alla pyttesmå kugghjul på nytt och komma snabbt igång med att realisera idéer.

...eller...

Ren & skär programmering, där du löser dessa pyttesmå, men ack så viktiga detaljer i ett större projekt.
Uppfinna alla kugghjulen på nytt. Gör om, gör bättre. Finslipa och optimera.

...eller både och?
Att utveckla en spelmotor och utveckla en spelidé samtidigt kan bli rätt så överväldigande.
Tips: Det är svårt att gapa över så pass mycket på en gång. Satsa på den ena först, ta den andra sen.

Några länktips följer:

Spelutveckling:
Då rekommenderar jag dig att satsa på en lämplig SDK (Software Development Kit)

Personligen gillar jag UDK (Unreal Development Kit)
Det är ett mycket kompetent och avancerat kit som många indie-utvecklare idag använder. Du behöver inte känna att du lämnar kodandet bakom dig. Det finns mycket att koda, och skriptspråken som används är riktigt smarta och kompetenta. Många delar påmninner mycket om Visual .NET miljön, så man snabbt kommer igång.
Det finns även riktigt kompetenta tutorial-videor på deras hemsida, så att även en novis snabbt kan komma igång.
Hemsida: http://www.unrealengine.com/udk/

Alternativt kan du satsa på Valves Source SDK.
De flesta har redan sett vad indie-spelen har att ge från Steam, och många är väl gjorda.
(Visste ni att Portal från början var ett indie-spel under namnet "Narbacular Drop"? Valve gillade det så pass mycket, att Valve anställde utvecklarna på fläcken, som sedan släppte spelet under titeln "Portal")
Hemsida: http://source.valvesoftware.com/sourcesdk.php

Kanske satsa på Unity 3D motorn?
Själv har jag hört mycket positiv om det, men har inga erfarenheter av det.
Tydligen satsar Unity-utvecklarna på att deras lösning skall ge en möjlighet att snabbt komma igång utan strul, och få fram en färdig produkt snabbt och enkelt.
(Skall INTE förväxlas med Ubuntu Unity, som är något helt annat. Det kommer vi till längre ner)
Hemsida: http://unity3d.com/unity/

Programmering:
Är programmeringen och kodutvecklingen i sig mer lockande, än att sitta med avancerade verktyg och utvecklingsmiljöer.
Då rekommenderar jag Java.
Varför?... se bara på var Minecraft är idag. Det var ett "litet" javaprojekt som sattes igång av en person.
Det eskalerade rätt bra kan man nog säga, med facit i handen. Riktigt trevligt att Minecraft dessutom fungerar under Linux.
Att Java är plattformsoberoende, och kan köras på alla plattformar som stödjer java, är inte fy skam det heller.
Java: http://www.oracle.com/technetwork/java/javase/downloads/index...
Minecraft Development recources: http://www.minecraftwiki.net/wiki/Development_resources

Vågar du satsa på Linux-utveckling?
Om du redan är insatt i C och C++, så varför inte. En Linux-miljö är ju som gjord för dessa programmeringsspråk. De flesta Linux-distributioner ger dig allt som behövs helt gratis, och med källkod.
Vet inte vart du vill sikta i Linux-världen? Enkelt. Om Linux känns främmande och för svårt, gissar jag att det beror på bristen av riktigt kompetenta grafiska interface på en del håll, vilket gör att man i regel återvänder kommandomiljön.
Hjälp Linux-världen och utveckla snillrika grafiska interface, trevliga arbetsmiljöer, intressanta applikationer och spel.
KDE Development: http://techbase.kde.org/Development/Tutorials
Gnome Development: http://developer.gnome.org/
Nu när Canonical kommer ut med ett eget mobilt OS, tänkt att konkurera med iOS och Android, är det kanske dags o satsa på Ubuntu Apps?
Ubuntu App Development: http://developer.ubuntu.com/resources/platform/unity/

Satsa på mobilitet?
Då är frågan: Appar eller mobila webbapplikationer?
Skillnaden mellan dessa två koncept är att mobila webbapplikationer körs via en mobil webbläsare, och fungerar bra där information skall presenteras, och fungerar på alla mobila plattformat utan speciell anpassning.
Här har jag inga direkta länktips. Jag rekommenderar i så fall att satsa på webbutveckling, och sikta in dig på mobilitet.

Ä det spel eller speciella funktioner som används, ja då får man lov att utveckla en "app". (Det är bra om man har goda Java-kunspaper när man sätter igång och skapar mobila "appar". Se Java ovan.)
Android Development: http://developer.android.com/design/index.html
iOS Development: https://developer.apple.com/devcenter/ios/index.action

Tack för snabbt och fint svar!

Jag är insatt i C# och har lärt mig en hel del i skolan hittils i skolan, men även på internet.
Jag har funderat på att koda till Minecraft, det har jag verkligen! Några polare sa att det inte skillde alls mycket på Java och C#, så det låter spännande. Problemet är att man inte vet vad man ska göra.. Eftersom jag är hoster och admin på min förenings Minecraft server, så skulle man kanske kunna göra något enkelt program som skriver något i chatten då och då, måste ju vara enkelt..

Jag funderar på att göra till Windows Phone, eftersom det är C# och XNA exakt samma språk som jag sysslar med, och då känns det som mitt bästa val.
Men som du säger, det vore jätte kul att programmera till Android och iOS. Men, jag har ingen av dedär så det känns lite som om jag inte kan testa riktigt, en emulator räcker inte för det tycker jag.

Vi ska programmera i Unity/Unreal i 3an på gymnasiet, går i 1an nu. Men kanske kan tjuvstarta lite..

Jag tror jag vill börja med ett mobilspel till Windows Phone, sen kanske göra en app eller porta spelet till Android och iOS, men sedan vill jag nog programmera något i Minecraft eller i Unity/Unreal.

Men som sagt, nu när det kommit Windows Phone mobiler med andra upplösningar än 480 x 800 eller vad de nu ligger på, hur ska jag då placera ut saker på skärmen, eftersom om jag placerar hälsan längst upp till höger på en skärm med 480x800, då blir det kanske mitt i på en mobilskärm med högre upplösningar. Hur löser man detta? Jag har försökt att programmera med variabler för skärmens storlek och sedan dela det med andra värden, men det blir ändå inte alltid samma placering..