Om spelutveckling

Patrik (00:02)
Fy fan.

Bartek (00:04)
Det märks att det är juli och alla är lite redo för semester. Det är mode modement för östen. Hej på er!

Anders (00:14)
Extrainsatt sommaravsnitt.

Bartek (00:20)
Precis. Innan vi börjar så vill jag påsluta att jag pratade med min svärfar i telefon igår och med mig från det samtalet fick jag ett traditionellt en traditionell avskedsfras från Jästrikland så jag vill avsluta med den så ni får påminna mig så att jag inte glömmer bort det för det är en humdinger.

Anders (00:48)
Du kan inte säga den utställda.

Bartek (00:49)
Nej, jag vill spara till slutet för effekten skull.

Patrik (00:54)
Nu vill jag lägga ner nu så jag får höra. Ska vi bara skita i det här?

Bartek (00:55)
KÖHÖHÖHÖHÖ

Anders (00:56)
Ja, det kanske är värt att avsluta direkt.

Bartek (00:59)
DÖH! DÖH!

Anders (01:02)
Ja, jag har idag och imorgon är mina två sista arbetsdagar. Hur är läget för er? Inför semestern då. Sen ska vi jobba igen efter sommaren också.

Bartek (01:11)
Mm.

Patrik (01:13)
Min semester är någon slags superposition just nu där jag står standby men jag skulle haft semester förra veckan men då var min dotter sjuk. Så jag var hemma hela veckan. Så jag gick med på att skjuta upp min semester.

Bartek (01:30)
Jag är också i någon slags superposition. Även sjuka barn. Man kan typ jobba ett par timmar per dag så jag vet inte. Jag får jobba några dagar nästa vecka också. Jag hade jättegärna tagit semester nu.

Anders (01:53)
Patrik, du hade en massa saker du ville prata om, vilja minnas. Men det svar du typ för mer den här veckan sedan, så det kanske har runnit av dig nu.

Patrik (02:02)
Mm. Jag har inte en aning om vad du pratar om.

Anders (02:06)
Perfekt. Vi hade ju en sak att prata om. Det har jag också glömt. Jo, spelutveckling. Kommer ju upp lite kort igår bara för att jag nämnde det.

Bartek (02:21)
Det känns som att alla tre är lite taggade på att koda lite spel.

Anders (02:27)
Det är ju roligt eller det är intressant vad det handlar om. Jag har lagt ett år av mitt liv på att faktiskt försöka bygga spel på riktigt via på Steam och allting ihop med min bror. Det gick väl inte jättebra rent spelutvecklingsmässigt, men tekniken var intressant. Det var ju kul, men det var ju inte det här att sitta och...

göra sina egna verktyg och sedan sitta och göra sina egna perfekta idéer. Alltså det här liksom icke industriella eller icke kommersiella som kanske lockar mer på något sätt med att sitta på kameran och peta lite på någon pixel art platformer som man gör själv liksom. Det är inte så konstigt att man lockas av det när man sitter och skriver liksom trök affärskod på jobbet alltid.

De måste vara korrekt och hålla och kunna ändras. De måste ta hänsyn till nya affärskrav. Spelutveckling är lite... Kanske inte tvärtom, men det har en helt annan dimension av utveckling. Funkar det med det snyggt så är det bra. Vi behöver inte återanvända den här.

domänlogiken under 25 år framåt för att hantera fakturor. Det här var en snygg effekt.

Patrik (03:57)
Men jag har några vänner som jobbar på olika spelbolag här i Stockholm. Och min uppfattning som jag har fått är att det är precis som att justera affärslogik efter. Så det finns en distinktion där mellan spelutveckling och typ Indiespelutveckling.

Anders (04:20)
Det tror jag nog absolut. Vi hör ju ibland från Tobias från Podsnack som jobbar på Ubisoft. Han är väl verktygsansvarig eller bland andra verktyg och pipelines och allting. Och hans jobb låter ju precis som alla andra jobb. Det är mycket, ja, uff. Det är sekt, det är stort att ta tid, det är vökigt någon enda nånting. Så tänker jag att det är på stora företag och vad man än gör är även spel.

Patrik (04:28)
Mm.

Mm.

Bartek (04:49)
I grund och botten är det inte det här Jätteklassiska att ens hobby inte är rolig om man börjar jobba med den

Patrik (04:59)
Så är det nu.

Anders (05:00)
Jag tänker det, men, men, jag tror att det här är grejen i alla fall för mig är att det är liksom att lägga fram en fyrkantig kub till skillnad från de andra kuberna som liksom studsar på lite plattformar och så klingar det lite när man hoppar på en peng. För mig känns det alltid spännande, det känns alltid liksom så här mysigt och lite givande på ett sätt som typ

Att äta godis känns också mystig givande. Det är bara en kul liten grej att göra. Där skiljer sig utvecklingen för mig. Eller vanlig utveckling, icke spelutveckling. Även på hobbynivå. För det där känner jag igen från när jag var yngre och satt och bara... Nu ska jag skriva en... Jag vet inte... En egen ORM eller någonting sådant dumt. Som också var jättekul då, tyckte jag. Och som för mig nog har tappat ganska mycket... Ja, intresse. Eller den där glädje grejen.

Bartek (05:58)
Tryckte få svara på det där fjämstegostning av avfukten som precis gick igång.

Patrik (06:02)
Bra planerat Bartek.

Anders (06:06)
Det var alla fuktiga memes som... Nej, jag vet inte ens vad man säger.

Patrik (06:13)
Ja, nej men, jag har bara att säga...

Anders (06:16)
Men du är ju lite mer av en hobbyutvecklare fortfarande. Du har ju mycket open source -projekt som du håller på med, men fortfarande gör nya. Och jag antar att det inte bara är en cynisk kalkyl på ekonomisk vinst att du bygger projekt på GitHub.

Patrik (06:23)
Mm?

Så fall är det den sämsta ekonomiska kalkylen som någonsin har gjorts eftersom man inte direkt blir rik på det. Nej, men jag tycker det är kul att programmera. Men sen det som jag gör är saker som jag vill ha själv. Så det finns ett...

Anders (06:39)
Precis.

Patrik (06:54)
Incitamentet är väl att jag gör saker för att göra livet lättare för mig själv. Det är inte liksom att jag bygger saker för byggandets skull. Sen att det är kul att bygga, det är en annan sak. Men just när det kommer till det här med spelprogrammering så... Jag har försökt mig på det några gånger men det är alltid slutom att man byggt någon så här halvkassmotor och någon editor och sen när man kommer till själva spelet så är det bara...

Nu hände ingenting där.

Anders (07:26)
Jag har ju väldigt uttryckt inför mig själv bestämt mig att jag ska släppa alla tankar på att det ska vara lätt och smidigt och bara använt ett litet lib och ska göra allting själv. För jag vet att det är också kul men det är en annan sak. Antingen bygger man ett spel eller så bygger man ett spelmotor men man kan inte göra båda samtidigt för det kommer man aldrig att bli klar med. Och så fort jag öppnar en fel mot typ Unity eller Unreal eller någonting eller Godot...

Så känner jag bara, det är så mycket menyer, det är så mycket features, det behöver verkligen jag. Det här behöver inte jag, jag vill liksom bara ha den rena upplevelsen nära metallen och så där. Sen sitter man där och bara, vänta nu, om det här ljudet ska börja spela då, fast då måste jag ha någon slags kommer du se... Allt det där är redan löst på många sätt, eller spelanimeringen är redan löst i sådana motorer. Man liksom inser ju snabbt vad fan jag håller på med. Ser man egen spelmotor som kommer vara skitkast jämfört med allt annat som finns också, såklart. Jämfört med en riktig spelmotor då.

Och sen ska man deploya allting och publicera till olika plattformar, så att man inte kan skita om det här längre. Så jag har tänkt att det jag vill göra på riktigt är att känna att jag faktiskt kan bygga någonting som gör något som jag kan fokusera på att bygga ett spel. Inte på att pilla med det här myset runt. Det finns också en skärm i det, men nu känner jag att jag har någon slags känsla att jag vill faktiskt producera någonting. Man får aldrig bli färdig med någonting längre på jobbet tycker jag. Jag blir aldrig klar med någonting på jobbet. Jag får aldrig säga, men det här har vi gjort och titta vad fint det här är.

Så mitt hemliga mål nu, som jag nu utlyser här till våra tusentals lyssnare är att bygga någonting som jag känner är värt att betala vad det är 100 dollar för att släppa på Steam. Även om det inte får några spelare. Det här är värt att betala för att få ut på Steam och säga det här har jag gjort, här är mitt spel. Att jag känner mig nöjd över det. Jag har ingen aning om det kommer hända någonsin, men det är i alla fall min ambition just nu. Ja, det kommer inte kanske ta...

Några sin plöt men det är så jag tänker.

Patrik (09:24)
Kan det vara ett underliggande incitament att man gör något som faktiskt blir färdigt? Alltså inte något som man... Nu måste jag komma tillbaka hit och fixa de här grejerna och jag borde lägga till lite mer features här utan att man faktiskt publicerar något på Steam och det som kommer sen är typ, ja men det här är produkten. Kanske någon bugfix eller någon crashfix eller något sånt.

Anders (09:51)
Om man ringar spelare så slipper man ju det också. Så det är ju nästan bättre då. Nej men absolut, det är väl en del av det.

Patrik (09:55)
För jag menar, om man inte gör någonting som är procedurellt, genererat eller något liknande så kan det inte vara speciellt kul att spela sitt eget spel när man har liksom, man vet allting. Man kan allting, man kan spelet utan att innan liksom, så det är ingen utmaning liksom. Man får inte ut någonting av att spela det själv. Så det måste ju finnas någon, varför vill man göra ett spel?

Anders (10:19)
Hej!

Patrik (10:24)
Förstår ni hur jag tänker?

Bartek (10:25)
Mm.

Jag har en annan take på det här. Jag är också sugen på att börja med spel. Jag har ingen ambition att göra någonting helt färdigt. Faktum är att min approach är att jag vill köpa en tutorial från GD Quest kanske den hette. Där man får göra ett spel och liksom bara...

Det är som att ligga pussel, någon säger åt er vad man ska göra hela tiden och så gör man det och så får man en liten ändå fin kick för att det kompilerar och ser snyggt ut.

Det är lite mer processen jag är ute efter att se pixlar röra sig på skärmen istället för att en databasrad har uppdaterats inom microservice 3000 lager bort.

Min äldsta son har precis, för några månader sedan började han med Godot. Han hållit på med Scratch ganska länge och nu har han hoppat över till Godot. Jag har fått hjälpa honom lite. Inte för att jag kan gd -skript men jag har ändå kodat i 30 år snart. Man kan se de vanliga missarna att det är fel indenterat eller...

Att man assignar variabeln på fel ställe, att man har glömt att klä i det.

Patrik (11:59)
Alla att det inte finns en giraticket.

Bartek (12:01)
Hahaha

Det är kanske det jag ska börja säga. Du får skicka in en ticket när jag kan hjälpa dig.

Patrik (12:05)
Så.

och får ha standups med honom också och så bara så måste ni ha någon safe tribe också nej okej kanske inte

Bartek (12:17)
Men han... Han följer också tutorials på YouTube och så typ tweakar han dem för att typ ta in kompisarnas ansikten som spelare och så blir det jätteroligt. Ja... Nej...

Patrik (12:38)
Det låter som en potentiell GDPR -skandal där. Nu frågar jag mig.

Bartek (12:47)
Det är så roligt att se honom göra det för han har inga... Han har kvar det här barnsliga, att det är bara kul att göra saker och se saker hända. Han har liksom ingen ambition. Jo, nu har han börjat prata om att han vill publicera saker till Steam. Men han har fortfarande det här att det är bara kul att testa idéer och framförallt släppa idéer mitt i. Att nu kommer det roliga idéer.

skit dig i det som jag har gjort, suttit med Hickels och börjar på det här nya och liksom inga no regrets bara jo lovar vidare till nästa grej.

Anders (13:30)
Man kan ju känna en viss avundsjuka, eller avundsjuka kanske är fel ord, men man kan ju, jag kan ju verkligen sakna den känslan hos mig själv. Som inte är typ såhär, ja fast om jag bara klipper in mina kompisars bilder så är det liksom, du har ju inte gjort det själv, det är bara liksom en kopierad template. Det är liksom, det är inte lika värdefullt då, eller såhär, utan det bara är det här, det här är kul, gött. Att vara nöjd med det och att inte det här, att inte ha den här liksom, cyniska överbyggnaden som verkligheten ger när man växer upp, att liksom, ja fast

Bartek (13:30)
Skönt.

Mm.

Anders (13:59)
Jag måste ju lära mig på riktigt så jag kan använda den här färdigheten för att göra någonting värdefullt och göra någonting originellt. Att inte bli dömd av folk på internet för att jag har kopierat assets.

Patrik (14:11)
Sen kanske det finns någonting i naiviteten också. När man är ung att liksom... Man kan göra vad som helst, det är visst ingenting som hindrar en...

Stå ner och mena.

Bartek (14:26)
Mm.

Jag slåss med liknande problem när jag håller på med musik. Jag har blivit skadad av YouTube och syntinfluencers på YouTube. Man måste producera någonting. Det förtar glädjen i att bara sitta och göra ett... ...dassigt beat och vrida på ett filter och njuta av att...

Blippar och bloopar utan hela tiden tänker man att jag borde filma det här och lägga upp det som en jam video på YouTube och få likes och följare.

Det sitter så djupt ingrot och jag vet inte hur jag ska skaka av med det. Jag är lite rädd att det ska bli samma sak med spelen men å andra sidan så har jag inte primat min hjärna med massa spelskapar -influencers. Så jag kanske är fri där och bara sitta och följa en tutorial och göra ett spel och vara nöjd med det.

Anders (15:41)
Det där tror jag är typiskt som fällan när man ska hitta någonting nytt som man vill lära sig och bli kreativ inom. Att liksom titta på tutorialer där folk pratar om hur det är att vara kreativ i 25 timmar. Och som fortfarande ett vitt papper framför sig utan någonting på. När man har en känsla av vad man borde kunna, men som man framför folk som inte kan. Men det där är ju svårt att veta var exakt man ska lägga sig på det spektrat mellan att samla kunskap och lära sig och bara göra och misslyckas om igen. Men det är ju...

Bartek (15:51)
Mm.

Anders (16:10)
Absolut, det här är någonting jag har fastnat för som jag har lärt, som jag har lärt och hörde om först inom träning. Specificitetsregeln eller rolig specificitet. Vill du bli bra på marklyft? Marklyft. Det är det viktigaste du kan göra för marklyft. Marklyft liksom. Eller vad du är för träning. Vill du bli bra på löpning? Spring. Visst, det är bra att träna extra muskler för ben också, men vill du löpa bra? Så löp. Det är det du behöver göra för att lära dig mest. Både lära sig tekniskt, utveckla musklerna, allt. Därför ser man oss vidare.

Och det tänker jag till är lite samma sak om det är spela musik, göra spel, vad det än är. Man kommer bara så långt på att läsa en bok eller motsvarande titta på en video kring det. Man måste sätta sig och misslyckas och hata sig själv och hata livet för att allting är dåligt och det går inte att bygga, det är fel på min plattform. Allt det där harvet som man har gått igenom som utvecklare för att läsa och programmera på riktigt och bygga produkter på riktigt och så vidare. Man måste gå igenom det om man vill...

att komma fram till en produkt som är färdig eller en låt som är publicerad eller vad det nu är. Man måste få harva. För allt det där som är så... Tutorials fokuserar ofta på det här, kolla här nu hoppar den här gubben och nu kan du göra en ad physics -impuls och så flyger ni iväg. Det är visst bra att lära sig det, men det är inte det som är det svåra utan det är när man inte vet vad man ska göra. När man känner sig vilsen. Och om man kan aldrig känna sig vilsen så lägger man följa en guide på något sätt. Jag vet inte själv vad det ska hamna där för jag tycker det är lätt...

och köra igång en spelmotor så att jag fattar ingenting och lägga tid på att göra saker på fel sätt för att man inte bara kollat på en enda guide så jag vet inte själv vad man borde lägga sig men att fastna i det här tutorial -träsket är absolut nervös över att göra själv

Bartek (17:55)
Det är just därför jag vill investera och köpa en tutorial. Dels för att jag tror att kvaliteten är bättre. Men dels för att de bygger ett spel från ax till limpa. Och liksom man får med alla assets som behövs. Och det är verkligen hela paketet. Och det är en grej som jag tänker på. Och jag vet att jag har tjatat jättemycket om Beatles -filmen Get Back. Men det som slår mig där är att...

De ska spela in en skiva och de bokar upp en studielokal och så sitter de. Och typ sju och en halv timme av åtta timmar per dag sitter de och spelar covers. Andras låtar och bara spelar och plötsligt spelar de fel och den där tar vi den. Den spinner vi vidare på. Det är det här mängdutförandet som jag tror...

behövs för att man ska kunna sticka iväg på en egen tangent. Förstår jag vad jag menar? Man måste liksom... Det är bra att spela covers eller följa en tutorial för att lära sig rörelserna och sedan kan man använda de rörelserna för att hitta på något eget.

Mest vill jag köpa en tutorial, för att det är roligt att köpa tutorials.

Patrik (19:24)
Det är roligt att köpa saker.

Bartek (19:27)
Ni är klart.

Patrik (19:29)
Vad var det det hette? Sundok? Vad var det det hette Bertek? Sundok? Sundok?

Anders (19:29)
Det enda som är roligt att spara era pengar är att få pengar.

Bartek (19:35)
Ja, ett sundoko högen, precis. Den är inte bara begränsad till böcker, man kan lägga allt möjligt på den.

Patrik (19:38)
Inget svar.

Anders (19:44)
Ja, jag tror att du har helt rätt, Baratec, att man...

När man ska lära sig något nytt, vad det än är, så behöver man ju få ett fot fäste. Det känns att det här kan jag stå på och veta hur man tar sig vidare. Inte att man kan allting, men att man känner att det här är en okej grund att börja på. När jag fastnar så kollar jag här, eller så gör jag så här, eller så har jag den här metoden, och de här människorna frågar. Någonstans där det hamnar på det här läget att man känner sig bekväm med att utforska nytt och testa och känna att man inte är helt så här...

Jag är ens rätt. Jag helt liksom tänker jag helt fel. Att där någonstans att landa i det. Det är nog min förhoppning också med allt det här. Men jag har ingen aning. Jag känner mig lika lika driven att göra någonting åt det här som jag känner mig förvirrad över hur jag ska göra det.

Patrik (20:45)
Kan inte ni berätta lite om era spelidéer? Vad är det ni vill bygga?

Anders (20:48)
Då kan jag nog snu idén. Idén är ju värt allt. Utförandet är ju bara att koda lite.

Patrik (20:54)
exakt, utifrån det är det lättare

Kom igen.

Anders (20:59)
Jag har haft några idéer som jag har rullat runt i huvudet över lång tid. Den senaste idén jag har, eller temat jag har är att göra någonting fokuserat på fordon. Alltså typ bilar. Just det är för att bara slippa hantera, animera eller pixelanimera karaktärer. Det är mycket jobb och det blir ofta fult när man har kast på det.

Att fokusera på fordon kan liksom ge, i mitt huvud, jag som är mer utvecklare än grafiker, känner jag att det kan vara en sån här sätt att slipa fastna i att jag är för dålig för att göra ett spel, för det är alltid bara fult ändå, grejen. Men sådana här bästa bilder, har ni spelat det gamla spelet Journey? Klassiker på Playstation. Eller Klassiker, det är väl kanske tio år sedan det kom eller någonting.

Patrik (21:55)
Jag hade kallt det gammalt men jag vet vilket det menar.

Bartek (21:55)
Japp.

Anders (21:57)
Ja, man springer runt i en öken värld typ. Det är väldigt väldigt fint. Det är ett underbart spel, men jag har en bild i huvudet av den typen av miljö, alltså den här gyllene sanddyner fast med bil. Det är liksom det enda jag har i huvudet just nu. Det är ju inte ett spel, det är bara en känsla. Men någonting där. Sen finns det ju bara att mixa in olika typer av... Vad heter det? Olika steamtags. Ska det vara en...

Bartek (21:57)
My cute. Mmm, just det.

Anders (22:26)
Roguelike Racer Deckbuilder eller ska det vara en Racer Crafting Survival eller ja Det är det kanske trotsamt som det låter det här

Patrik (22:34)
Jag tycker det ska vara en crafting survival first person shooter dating simulator. I öknen med bilar.

Anders (22:40)
Ja, alltså flest team taggar vinner ju, det är ju så. Någonting där är det jag är sugen på just nu. Tidigare har det varit att göra spel i rymden av sammanledning. Då är det mycket mer fokus på relativt statiska skepp. Inga karaktärer. Det är lättare med belastningen kring grafik.

Patrik (23:09)
Men är det tvådel, tredjedel spel?

Anders (23:12)
Jag vet inte. Det jag tror jag kommer satsa på är väl att göra någonting i 2D först för att få en känsla bara för vilken motor jag än landar i. Och kanske bara testa känslan av att köra en bil liksom för det är ju skitsvårt. Att göra en bil som är skön att köra som känns snabb och sådär det är ju inte bara att lägga på ett bääää

Patrik (23:39)
Jag läste en intervjunartikel någonstans om när de byggde Breath of the Wild Nintendo. Då hade de tydligen byggt ett 2D -spel som såg ut som Zelda 1. Med all mekanik i för att testa mekaniken. Så de byggde något jättefult och jätteinkelt spel bara för att testa. Okej men... Det kanske är en bra idé att bygga något superenkelt i 2D för att testa koncepten.

Bartek (24:01)
Mm.

Anders (24:07)
Ja, alltså jag är ju för det här med nedkokning generellt, konceptuell nedkokning för att det är så lätt att fastna i en idé kring ett spel som är liksom, tänk om det är jättestyrkt ljus och tänk känslan av att man bränner runt och det blir bilmärken, däckmärken i sanden och allt det där liksom. Men det där, det ser ju coolt ut i teorin, men det spelar ju ingen roll.

Patrik (24:32)
Nu kommer det sluta med att sanden är för svår att göra. Så du spelte utspel på världens största parkeringsplats. Helt platt.

Anders (24:35)
Precis.

Parking heroes. Varför är spelet roligt?

En kärna att hänga upp dig på som är på något sätt en mekanisk kärna. Det kan ju vara att upptäcka en story, alltså ett story -spel, och det finns ju många sådana som folk älskar. Att bemästra en färdighet i spelet, alltså bli duktig på spelet. Fysiskt lära sig det i spelet liksom. Såklart progression, liksom hitta items, hitta förstå, alltså bemästra den strategiska i spelet, alltså om det är att göra bild eller...

Allt sånt där. Det finns olika ben att ställa spel på som är det roliga och ingenting av dem har någonting att göra med grafiska eller ens med visuals eller ljud eller någonting. Allt det kan göra spelet bra, men du kan maxa varenda saker i spelet förutom spelmekaniken så det är ju inget kul att spela spelet. Så där är det ju bättre att börja med något enkelt. Det finns ju inte så många koncept som så här, nej det funkar bara i 3D konceptet, det funkar inte i 2D. Det är ju typ FPS då.

som är svårt att göra i 2D. Men även det kan man fortfarande göra. Jag brukar jämföra sig med Doom 2016 och Hotline Miami. Hotline Miami är helt top down, gjort i GameMaker tror jag att det är. Jätteblodigt och det är fult. Det är fult pixel -grafik med mycket dekal känsla, att allting ligger på varandra. Det är svårt.

Bartek (26:11)
Jätteblodigt, va?

Hmm.

Mm.

Patrik (26:18)
Jättesvårt om jag minns rätt.

Anders (26:21)
Doom är liksom AAA jada jada men känslan att spela dem är liksom jag går in jag får skötta jag hoppar dit jag flyger dit jag är liksom den den grejen att hitta det är så jävla svårt och där är ju liksom där är ju Doom egentligen bara en Doom shooter det finns ju ingen såhär ja det är en shooter men nej det är bara en shooter liksom men där har de ju maxat där har ju liksom de verkligen maxat sin färdighet att göra shooters att få allting att kännas bra

Bartek (26:30)
Mm.

Anders (26:50)
Vapnen känns bra, rörelsen känns bra, allt sitter ihop på ett snyggt sätt. Men det är ju extremt svårt att göra ett spel som bara är en genre som bara är förbaskat jävla bra på den genren. Det krävs ju verkligen både finess och ekonomi. Så du ryker av det tänker jag mig i alla fall. Så man måste hitta en gimmick, man måste hitta den här grejen som gör det kul på något sätt. Som inte bara är att det är bäst.

Välkommen till mitt TED -talk.

Bartek (27:25)
Patrick, du håller ju också på. Du ska göra en NES -spel.

Patrik (27:32)
Mm. Det är mer att jag tycker att det skulle vara kul att göra ett nässpel. Fast jag har inga ambitioner om att jag egentligen vill göra ett spel. Jag vill mer lära mig 6502 assembler och tillämpare. Det är lite barnrumsdröm också. På något sätt veta ut Nintendo 8 -bitars spel fungerar.

Bartek (27:41)
Mm.

Patrik (28:03)
Och jag hade bara tänkt mig göra en Soccoban -klon första nivån. Ingenting mer, ingen titelskärm, ingenting. Utan bara...

Bartek (28:14)
Det är väl inte så bara.

Det är ju ett spel. Man sätter ju en ram runt och säger att det här är spelet i en Sockobann -banan som går att ladda in näss emulator. Eller skulle bränna det på ett rom.

Patrik (28:33)
Nej, nästan med dator bara, tänkte jag. Man vet, man kanske får stor rättsvansinne.

Anders (28:38)
Jag skulle just fråga dig, går det att få in nya spel på en gammal NES -spel? Alltså någon ful hack, koppling, hårdvarufipp eller är det möjligt liksom?

Patrik (28:47)
Ja, det tror jag. Jag tror jag såg någonting om det för inte så länge sedan.

Anders (28:51)
Finns det någon sån cassettadapter man kan köra på eller något sånt måste det vara.

Patrik (28:55)
Säkert. Osäkert.

Bartek (28:56)
Jag har läst en lång bloggpost om säkerhetskopieringen i Ness.

Nått. Nej det kanske var, det kanske var, nej det var nog Gameboy.

Patrik (29:09)
Jag tror det var ganska...

Ja, jag tror det är antagligen ganska primitivt.

Bartek (29:16)
Jo så här var det. Så här var det. I Gameboyen när man slår på Gameboyen och har ett officiellt Nintendo spel. Så kommer Nintendo -loggan att skrolla ner för skärmen, sätter sig i mitten, det hörs ett pling och sedan startar spelet. När logan har gått till mitten av skärmen. Så jämför hårdvaran i Gameboyet.

att nintendo loggen har ritats ut av spelet. För det är spel som ansvarar för att liksom den här nintendo loggen ska animeras in. Och anledningen till att de gjorde det så är att om det är någon som försöker sälja ett olicensierat nintendo spel och för att man ska kunna spela så måste den där nintendo loggen befinna sig mitt i skärmen liksom pixel perfect, den liksom jämför pixlarna.

Då har de använt nintendo -loggen och då kan Nintendo stämma skiten ur dem för att de har ett olinscensierat spel med nintendo -loggen.

Jag tyckte det var.

Anders (30:23)
Det är kul att det är Nintendo har varit konsekventa i 40 år med sin strategi. Stämm skiten nu då bara. Ja. Det var faktiskt smartt. Kul. Jag tror du skulle säga att det var såhär, de använt off by one färger eller nånting så att pixlarna inte kommer vara exakt om man fejkar det. Men okej, det där var ju ännu smartare omräckligt.

Bartek (30:44)
Ja, precis. Det var tekniskt simpelt men det gav dem en juridisk slägga att ta till.

Patrik (30:53)
Ja, det är intressant det där. Men som du sa, det är inte så lite, det är sjukt mycket kod som överskrivs bara för en sådan enkel sak. Bara initialiseringskoden, där man ska rensa alla minnesbanken och du ska initiera saker i rätt ordning. Det är mycket assembler att sätta upp.

Anders (31:22)
Finns det ingen transpiler från React och TypeScript till det här assemblerspråket eller liknande? Annars kan du bygga det till det var det jag tänkte. Först av allt.

Patrik (31:22)
Nej.

Hahaha

Det finns C -kompilatorer. Man vill ju skriva spelen som man skrev.

Anders (31:42)
Du vill uppleva det som du vill orta potatis som man gjorde förr i tiden.

Patrik (31:48)
Ja, vem var det som postade? Det var någon som postade med en bok i någon chatkanal, så här, göra pannkakor från grunden. Kommer ni ihåg den? Ja, lite så. Men sen tycker jag det är oerhört så uppfriskande också, så man har zero page memory, 256 megabyte, åtta bitar adresserbart. Och då har du... Nej, byte, så här. Så har jag en megabyte. Oj! Jag får skilja på en snart.

Bartek (31:55)
Hehehe

Anders (31:56)
Ja, så är det nog så.

Bartek (32:09)
256 MB

Anders (32:11)
Nej. Ja, du sa en megabyte, men ja.

Bartek (32:13)
Du som...

Patrik (32:18)
256 byte. Alltså, annars har det svårt att adressera någonting över det med åtta bitar. Då har du en stack som är tror jag på 2k och sen har du två 16 kilobytes minnesbanker att lagra saker i och sen vissa av dem är reserverade för tiles och sprites och sådant. Men jag tycker det är jättekul att ha den begränsningen.

Bartek (32:18)
Hehehe

Patrik (32:48)
Man måste... Varje byte man vill använda måste man budgetera hela tiden.

Anders (32:57)
Det är lite PK8 -typen av constraints liberate -tjänsten, att man faktiskt blir lite mer driven att hitta på något nytt inom ramarna.

Patrik (33:02)
Ja, exakt. Jag vet inte om det är jag som är sjuk i huvudet men jag tycker det känns så skönt på något sätt att bara ha den begränsningen för man har inte den i någonting.

Bartek (33:16)
Jag har en till Nintendo -anekdot, får jag dra den? Nej. Okej, tack.

Patrik (33:19)
Nej. Okej då.

Bartek (33:25)
Bara för att du pratar om minne. På Nintendo på 80 -talet när de byggde NES -spel så varje projekt hade en memory manager. Och en memory manager var en person som satt med en stor typ A0 -pappersark med hela minnesceller. Och så fick man gå till memory manager och säga att jag behöver...

200 byte för mina sprites. Okej sa den. Och så kruasade de för minnesplatserna på sitt jättestora A0 -ark. Och det var Memory Manager.

Patrik (34:05)
Hehehe

Anders (34:06)
Det är mysigt. På tal om memory management och Nintendo så nyligen kom det ut en... Jag följde en speedrun killen, Carl Jobst på Youtube kanske många känner till. Han gör liksom... Han är inte själv speedrunner, men han gör speedrunner eller... Han gör Youtube -videor om speedruns och förklarar för allmänheten och så där. Jättepopulär. Han gjorde nyligen en video om Castlevania som är också en Nintendo, alltså NES -spel.

Det första jag tänker när jag ser Castlevania är hur i hela friden kan man göra ett så pass avancerat spel med de begränsningar som du pratar om, Patrik. Det är så förbannat fascinerande och en typ av ingenjörskonst som är liksom så här, hur? Det är galet på något sätt. Men då redaterat i detta är att nu har någon hittat en spel, en exploit för

Patrik (34:45)
Mm, jag vet det.

Anders (35:01)
Arbitrary code execution som det heter så att om man om man lyckas damage boosta sig upp på en viss trappa i slutavan level så kan man skippa en grej och om man inte gör den grejen så blir det inte en reset av min adress i minnet och då när man byter skärm så körs någonting och så går allting sönder. Så med härförhåll lyckades lyckades genom att via spar systemet spara ner bytes på ett visst sätt som sedan då exekveras av det här felet så kommer man till slut skärmen så att

Han fick spela igenom spelet typ 70 gånger för att få till rätt save state. Tänk om han klarade spelet på en minut eller någonting liksom. Så det är ju fascinerande i sig och då är det ju såklart reverse engineering inblandats för att fatta vad man ska göra. Men det är som att man har vänt på det fascinerande med att du lyckats göra det är sedan lika fascinerande att lyckas förstå det här och gå bak till länges för att bryta det. Människor är så jävla konstiga. Det är väl min känsla. Och det är underbart.

Patrik (35:59)
Det är en sån grej som känns svårt om man inte förstår hur någon kan komma på en sån grej. Men när man börjar gräva lite i röstar så... Det är så enkelt. Du har tre register. Du har en stack som är 2 kb. Det är 50 instruktioner totalt. Och du har ganska...

16 kilobit, x2 ramminne att arbeta med. Så det är ganska begränsad världen då. Det är inte jättesvårt om man verkligen vill hitta en exploit för någonting.

Anders (36:44)
Man kan se hela världen i varje frame där och se vad som pågår mycket. Om man väl förstår det och man ser det.

Patrik (36:49)
Jo men, jag satt mig i grej igår faktiskt här. Jag gjorde en jump till en instruktion, till en label. Och så la jag någonting på stacken och så skulle jag returnera. Förlåt, en procedur. En subroutine. Så skulle jag returnera. Men det den gör är att den lägger returadressen på övers på stacken. Så om du pushar någonting till stacken så måste du se till att du poppar allting som du har pushat.

för att han ska hitta rätt returadress och kunna hoppa tillbaka när du kör den, tror jag, ger i instruktionen. Och jag vet inte hur länge jag satt så här, för jag bara, nej, man har hoppat tillbaka fel. Och liksom man... Jag vet inte, det är lite fascinerande, tycker jag. Att man är så här, man behöver inte... Det är liksom en förlorad grej, så här. Man behöver inte göra det. Man behöver inte ens tänka på sånt nu för tiden. Alltså, dels behöver du inte tänka på minne. Du har hur mycket som helst.

Jag kör en till dator i min dator i docker. Man tänker inte på det. Man behöver inte tänka på hur saker faktiskt fungerar. Det är inte konstigt att man lägger en minst dress på stacken så att man vet hur den ska hoppa tillbaka så sätt. Men allting är så abstraherat och allting är så hög nivå att man behöver aldrig tänka på... Förlåt, jag blir inte en tangent, men...

Jag tycker det är fascinerande. Jag undrar hur mycket prestande vi hade kunnat få ut av våra konsoler och våra datorer om man inte hade 950 nivåer abstraktioner.

Ja.

Anders (38:35)
Det är ett extra varsinne och det är flott att köpa Bärtex.

Bartek (38:38)
Jag skulle bara säga att det låter jättemysigt hur du sitter. Det låter lite som att du bygger ett flaskkepp. Du sitter med en pinsett och pillar. Du måste göra saker i precis rätt ordning.

Patrik (38:53)
Mm, nu menar jag att det är sådär.

Bartek (38:55)
Och det har inget... Missförstår jag mig rätt? Men det har inga inneboendevärde utan nu gör det för din egen tillfredsställelsesskull.

Patrik (39:08)
Mm, jo absolut.

Någonting som jag... Alltså för... Förlåt, nu går jag ut på en tangent här över... Men nånting som... Processorn i en nesande på en megahertz... Det är ingenting. Och vi har så fruktansvärt mycket resurser nu idag på våra datorer. Och någonstans så här, man blir ändå så medveten på nåt sätt över... Shit så här, hur mycket vi skulle kunna göra med... Som min...

Bartek (39:14)
Japp.

Patrik (39:43)
32 -kärniga...

Anders (39:51)
En sån dator har ju mer hatch än alla näss i hela världen sammanslagna. Sannolikt.

Patrik (39:56)
Jo. Men har ni kört det här? Playstation Remote Play och liknande?

Anders (40:03)
Jag kände till det någon gång när jag testade tror jag.

Patrik (40:06)
Det är en sådan tillfälle där man inser hur snabba, dels hur snabbt datöverföring är via Wifi 6. För du sitter och spelar på din telefon och det är noll lagg när du spelar.

Vissa saker som man när man inser hur mycket process och kraft och hur snabbt saker egentligen är och hur snabbt det skulle kunna vara.

Anders (40:38)
Jag har ett sånt minne tidigt i min karriär. När jag jobbade på ett kontor och var lite sådär... Allt i allo som gled in i IT -fixarkille -rollen som sen började jag också programmera lite projekter eller programinterna verktyg för kontoret. Då vid någon punkt så satte jag hemma vid min dator som ju då låg...

Ja, vad kan det vara? 2 mil eller någonting från kontoret. Så har man en steg. En mil kanske från kontoret. Och koppla upp mig mot databasen som stod i källaren på kontorsbyggnaden. Och insåg att det var så här 8 millisekunder eller någonting. Roundtrip. Och man inser det här bara... Men det är ju ingen... Varför går det så snabbt? Det här borde inte gå så snabbt. Det var den första gången jag tänkte på det. Börde tänka på riktigt på det. Hur kan man hinna med så mycket?

Då inser man ju det här som du säger Patrik, hur mycket en dator gör. Hur mycket man kan göra med en till och med jättegammal kass, enkel CPU. Hur mycket det går att göra om man är försiktig eller om man använder hårdvaran på ett sympatiskt sätt. Och så inser man idag att fortfarande laggar Teams på min 73 000 kronor dator. Så det är fortfarande Teams är lite laggigt.

Men Castlevania gick liksom att köra och klara på några byte. Vad fan. Nu är vi här igen!

Patrik (42:12)
Tillsammans med min gubbar, vi får klage.

Bartek (42:20)
Då får jag också dra en prestanda rant. Jag börjar innan Patrik säger att jag inte får. Apropå musik, jag har en liten box som heter Digitakt från ett svenskt företag som heter Elektron. Jag tycker väldigt mycket om elektron. Jag tycker väldigt mycket om Digitakten.

I grund och botten är det en tracker och tracker har funnits sen typ Amiga och det har pratat om det här. Förut ser det ut ungefär som man gör musik med Excel. Tidslinjen är uppifrån och ner och så har man kolumner som är kanaler och så kan man stoppa in ljud i kanalerna.

Digitakt kom precis eller elektron släppte precis digitakt 2 och den stora nyheten att de har gått från 8 månakanaler till 16 stereokanaler. Och alla är helt. 16 stereokanaler hur är det möjligt? Och så tänker jag tillbaks att jag satt med fast track 2 på en 486 1995 och hade 32 stereokanaler.

Digitakten gör en massa andra grejer än vad Fast Track gjorde men ändå 4 ,8 ,6. Jag vet inte vad som sitter i en digitakt men det är garanterat någonting som sjukt, sjukt, sjukt mycket snabbare.

Patrik (43:48)
Ja.

Säkert Magnituders snabbare än...

Bartek (43:52)
Ja, ja.

Anders (43:52)
Säkerheten MMX -processor eller något sånt snabbt.

Patrik (43:55)
Hahaha

Anders (43:59)
He!

Bartek (44:03)
Jag vet faktiskt inte varför. Nej jag hade ingenting mer. Kör du.

Anders (44:04)
Nu ska jag faktiskt... Förlåt, nej, kör på. Avsluta. Jag skulle koppla upp just det här med spelutveckling igen. Jag kan absolut lockas av det här att göra enkla spel. Att göra små spel. Nu finns ju trenden vampire survivor likes. Jag vet inte om ni känner till det spelet. Men det är väldigt likt Castlevania i grafiken.

inspirerats väldigt mycket av det och nu har till och med Kasselvenia, eller de har till och med gjort den, är riktigt officiell. Kasselvenia är dom till spelet men det är liksom näs, möjligen snässnivå på grafiken. Det är pissfult och det är ganska dåligt perspektiv på det. Men det är roligt. Det är ett kul spel och det är för att man typ, man är på en karta, det kommer tusentals sklett mot dig och du ska döda dem och så får du

pickups och får bättre vapen som gör att du gör autoattacker och saker dör runt dig och det blir bara mer och mer extremt, det blir bara bättre och bättre på att döda de här monstren. Så det är en extremt enkel spelmekanik. Det är en så här liksom spåna monster vid skärmen, gå emot spelaren typ. Så det är så här dag ett i Unity Torian liksom. För basmekanikerna. Men det är ett roligt spel. Och spelet är skit... Det är alltså några hundra megg på Steam of DSD tror jag. Det är texturerna som tar plats om DSD. Alltså det är så...

fascinerande att ett spel som hade kunnat få gjort på SNES eller NES i princip är liksom så här top tier steamspelet idag som har ju spawnat en hel kategori, en hel genre av spel för att de har bara lyckats träffa rätt med hur det känns att spela och få nya vapen och liksom grafiken är charmig och det går att köra på mobil och spela på för fan som helst för det tar liksom ingen fristande alls jag tror att det har varit gjort i, jag vill säga Godot men jag kan väl ha fel men det är den typen av

spelmåttor som är ganska enkel. Och samtidigt sitter man ju och gör spel som är liksom, ja men som det första QWARD A -spelet, Skull & Bones, som heter 4A, som är lite Ubisoft, som är liksom deras och deras stora piratespel. Som de faktiskt sa, the first 4A experience.

Patrik (46:09)
Hehehehe

eller ett inlägg. Jättetråkigt spel.

Anders (46:18)
Precis. Och det är ju massivt, man seglar runt, man har skepp, det är pirater, det är liksom allt. Det är grafik och så här. Det är bara det här är ett tråkigt spel. Varför då? Är det bara inte kul att spela det?

Bartek (46:19)
Va va va

Det är lite som att lyssna på Ingve Malmsten. Det är roligt i 15 sekunder. Han spelar skitfort och sedan upptäcker man att han spelar samma sak i en timme.

Anders (46:39)
Jämfört med Mark Knopfler.

Sen är det alla gitarrgubbar gillar honom, vet jag. Därför nämnde jag honom.

Bartek (46:49)
Och.

Anders (46:49)
Det är ju slående. Det finns verkligen någonting där moderna AAA -spel kan göra något nytt. Som Cyberpunk eller Witcher. De spel som är stora världar. Som är fascinerande och vad det är som ser coola ut. Det är jättehäftigt. Men det är ganska sällan det är det som gör spelet kul. Eller bra på den lilla.

Patrik (47:15)
Jag håller helt med.

Anders (47:16)
Man fascinerar sig av de här spelen som är skitenkla, som bara lyckas träffa rätt. Det är ljudstur, det är trender, det är memes, det är viralitet och så vidare. Men om det var ett tråkigt spel skulle det inte stå stort.

Patrik (47:27)
Jag läste någonstans, det var någon som sa att moderna spel nu är ungefär vart... Vart vi var i stumfilms... Alltså på skalan. Alltså när det kommer till film. Alltså vi har inte gått förbi de här enkla mekanismerna, så här. Typ... Har ni spelt Last of Us till exempel? Så här, jättebra spel, jättebra story. Men man är tvungen att döda grejer. Och jag hade velat spela ett sådant spel där man inte ska döda någon, men det är...

som att världen inte är redo för det.

Bartek (48:01)
Jag kan rekommendera Katamari Damacy.

Anders (48:05)
Det kom ju Nylund med på speljunktans lista på de bästa spelarna någonsin eller vad det är de kallar den. För att det är unikt och konstigt.

Patrik (48:13)
Det finns en podcast som heter Part -time Genius. Jag lyssnade på det för någon vecka sen när du pratade om det spelet. De tog upp de tio mest skruvade spelen som har gjorts. Jag tror det kom på plats nio eller någonting. Så skruvat var det inte. Det finns mer skruvat.

Anders (48:29)
Mm.

Bartek (48:34)
Men jag håller med dig att det är skittråkigt att döda saker. Man har gjort det så länge. Det är därför jag tycker om Breath of Dubai. Man kan kuta omkring hur länge som helst utan att döda någonting. Man kan bara göra massa annat.

Patrik (48:39)
Mm, jag sticker med dig.

Ja men inte ens i Breath of the Wild så när man kommer till en boss eller liksom man har inte fått någon slåss. Jag vet inte. Någonstans här liksom. Det borde finnas någon typ av spelmekanik som gör att man har ett lika kul spel utan att behöva slåss.

Anders (49:15)
Finns det en parallell här till... Nej då, absolut inte. Det finns... Jag menar många populära spel är ju... Alltså många av de mest populära spelen. Sims... Alltså citybuilder som SimCity. Minecraft, visst man kan slåss men det är sällan det som är primära. Factorio. Många av de här spelen som har blivit epokgörande och liksom som folk spelat i 20 år och fortsatt spelat är ju inte såna skitspel. Alltså det är klart de finns också, uppenbarligen. Men det finns många såna spel som verkligen har lyckats för att de har någonting annat i sig.

Patrik (49:16)
Eller tar jag det för långt nu?

Anders (49:45)
Jag ska dra en parallell här till Boards rollspel. De spelen har ju ofta typ 700 sidor, combat mechanics, vapenlistor, spels, bla bla bla bla. Och sen finns det en sida som heter Social Interactions. Rollspel är lite rullande tärning mot karisma, det behövs liksom. För att det är så mycket lättare att kodifiera det som man själv aldrig upplever verkligheten. Skönt nog, våld är ju inte så vanligt i ens liv. Döda monster är också ganska ovanligt. Och magi, allt det där liksom.

Patrik (50:00)
Hehehehe

Anders (50:15)
Så det är mycket lättare att kodifiera det där som man inte själv upplever för att sociala interaktioner är så jävla komplexa. Så fort du har en mekanik så är det bara så här, vad är det här för blagg i mekanik för att ha ett samtal eller utvecklas spirituellt på riktigt. Alltså den typen av komplexa processer som är det var människor som är så extremt svåra att omsätta i spelmekanik. För du skjuter med bazooka och så bara eehh, det är så lätt att prata om och se och uppleva.

Patrik (50:33)
Mm.

Men det kanske därför vi fortfarande befinner oss i tidig cowboy -västen mot svarigheten till film.

Bartek (50:51)
Pekaklikkaspelen var ju faktiskt...

Patrik (50:54)
Ja, de är fortfarande roliga också.

Bartek (50:58)
Ja.

Anders (51:00)
Även de här, vad heter de?

Story -drivna... Blablabla, we'll remember that. Hur fan heter de? Ja... Vad hette Zombie TV -serien som stod för länge sen?

Patrik (51:16)
Jag vet inte vad du menar.

Anders (51:19)
Dawn of the Dead, nej, Tale of Dead Dead Zombies, vad fan heter den? Midshawn heter den av karaktärerna, Walking Dead precis Walking Dead spelen är ju med, de har ju zombies liksom, det är ju våld i dem men det är ju mycket mer fokus på situationerna och karaktärerna och besluten och så där liksom och de är också poppis

Patrik (51:23)
Nahahaha!

Bartek (51:24)
Ha ha

Patrik (51:27)
The Walking Dead.

Men, ja.

Bartek (51:44)
Jag skulle vilja ha ett Larry David PK klicka spel. Man har lösa...

Patrik (51:44)
Nej, nej.

Anders (51:50)
Leisure Suit Larry, fast med Larry David istället. Det hade varit...

Bartek (51:54)
Ja, precis. Utan sex, utan bara jobbiga sociala situationer.

Patrik (52:02)
Spelar Life is Strange. Men det är lite sånt.

Anders (52:04)
Ja, lite. Jo, men det är hon som kan backa i tiden och sådär va. Eller vad... På något sätt. Eller om hon gör någonting. Ja. Men det gör jag klarat.

Patrik (52:12)
Och sen finns det ju de Heavy Rain och Detroit Become Human.

Anders (52:15)
Ja. Mm, det var spät också.

Patrik (52:19)
Ja.

Anders (52:20)
De är bra, men det är ju svårare att göra sådana spel. För man kan inte dölja dem bakom progression och mastery som de brukar säga på engelska. Att man bara blir starkare och bättre på spelet. På ett mekaniskt sätt. Det är ju en... Vampire Survivors är ju en billig... Det är ju billigt sätt att få en ändå fin kick. Eller vad det är med för kick man får. Men det här liksom bara... Döda monster, större vapen, Men det funkar ju. Det är dock inte så musikapande, nej. Man är ju kvar i bad guy walks into town.

Hehehe

Scenarioet absolut. Så mitt uppdrag är att göra ett spel som inte har någon våld.

Patrik (53:02)
horisonten deadline för själv.

Anders (53:06)
Typ runt när jag dör. Det tänker jag är min deadline. Men jag dör inte.

Bartek (53:08)
T -h -

Patrik (53:09)
Vi kanske kan skola in en avsnitt någon vecka innan du dör så vi får stämma av hur det har gått.

Anders (53:15)
Så jag kan säga tyvärr lyckades jag inte. My one regret kan jag säga då.

Patrik (53:19)
Hehehehe

Bartek (53:20)
Hehehe

Anders (53:23)
Ja, vi får se hur det går. Men min plan är att labba vidare utan att fastna i lärandet utan försöka göra något enkelt skitspel bara. Och sen göra nästa enkla skitspel. Om och om igen tills jag gör ett enkelt skitspel som någon annan vill spela.

Patrik (53:39)
sådana, sysefoss -grej. Rulla stenen upp för backen.

Anders (53:45)
Ja, som en dingebagge, så har du lärde.

Nu hörde jag någon team springa i bakgrunden, så kanske det är dags att lägga på locket.

Bartek (53:53)
Ja, ja, nu har jag suttit hela avsnittet och hållit för min. Är ni redo? Håll i hatten.

Anders (53:59)
Hahaha

Bartek (54:07)
Tack för kaffe, äckligt bröd. Kyss med Ersle och hej då.

Patrik (54:15)
Hej då!

Om spelutveckling
Sändning av