Gå til innhold

Kommentarer til Chip's Challenge for NES


Anbefalte innlegg

  • 2 uker senere...
Videoannonse
Annonse

Du kan jo alltids ... skaffe det. Det funker vel ikke i Windows 7, men da er det jo bare å installere Windows 3.1 i Dosbox :p

 

Blir ikke så mye tid til prosjektet nå om dagen, men jeg får se hva det blir til helgen. Har ikke kommet noe lenger når det gjelder features, men det skjer ting under overflaten :p Nå driver jeg og tester ut forskjellige måter å strukturere koden på. Mest hvordan spillverdenen skal representeres og sånne ting. NES-en setter en del begresninger for hvor abstrakt og generell koden kan bli. Noen steder må man bare bryte med alt som er "elegant" for å få koden til å bli effektiv nok.

Lenke til kommentar
  • 3 måneder senere...

Muligens en alvorlig bump dette her, men dette er veldig interessant. 6502-programmering er ganske komplisert, mer enn x86 (syns jeg.) Har lagd et par småspill (som egentlig ikke er særlig spillbare…) ved hjelp av guidene du har lagt ut.

 

Hvis du fortsetter på det, lykke til! Som sagt, dette er både imponerende og interessant.

Endret av The Prophet
Lenke til kommentar

Takk. Kult at noen har interesse for dette :)

 

Jeg har dessverre ikke jobbet med spillet på lenge. Fikk gjort noen småting i påsken, men etter det har det ikke skjedd stort :/. Har andre ting som tar tid, og har ikke hatt så fryktelig stor interesse i det siste heller. Har oppdaget en rekke irriterende småfeil som er ganske dypt forankret i koden. Koden som oppdaterer name- og attribute table fra et buffer i minnet tar ikke høyde for at bufferet av og til må brukes av to forskjellige mekanismer samtidig. Det klikker f.eks. når man flytter en flyttbar blokk samtidig som man scroller helt opp eller ned. Det er ikke spesielt vanskelig å fikse, det kommer bare til å ta mye tid og er ikke akkurat så spennende som å fortsette å legge til nye features...

 

Jeg må vel si meg uenig i at x86 er lettere enn 6502, for min egen del, men jeg kan forstå at mange syns det. Man har jo færre registre i 6502, og den kan jo ikke en gang gange og dele av seg selv :p.

 

edit: men det som virkelig er utfordrende med NES må jo være grafikken. Er få grafikkprosessorer som har et så komplekst format for å fargelegge ting (tenker på attribute table). Jeg har ikke vært noe særlig borti lyd selv, men det virker også ganske vanskelig.

Endret av Jaffe
Lenke til kommentar
  • 8 måneder senere...

Takk :)

 

Ser fram til å jobbe med det videre, føler at ting begynner å gå mer på skinner nå, men ser at jeg må gjøre en del optimalisering. Slik det er nå kan motoren maks håndtere 15-16 objekter samtidig på ett brett (kanskje enda færre hvis objektene er kompliserte. Tror ikke den hadde håndtert 16 bier på én gang.) Er det flere enn det, begynner spillet å flimre og hakke ettersom koden som håndterer objektene (kollisjoner, bevegelser, rendering osv.) ikke er ferdig å kjøre før neste frame skal være klar til å tegnes av PPU-en (grafikkprosessoren.) Tror jeg kan gjøre en del smarte triks for å redusere antall instruksjoner, men det får bli etter jeg har implementert det meste.

 

Det blir uansett ikke gjort noe med en gang, studier tar dessverre opp for mye av tiden min (NTNU.) Jeg vet ikke hvordan det er med deg, men jeg klarer ikke å jobbe med et programmeringsprosjekt i små intervaller. Kan ikke bare sette meg ned nå og da og fortsette der jeg slapp :/

Lenke til kommentar

Nei, samme her. Spesielt om det går over én uke til jeg får tatt det opp igjen. Da blir det ofte liggende dødt veldig lenge.

Spesielt om jeg vet det er store endringer som bør gjøres. :p

 

Må være slitsomt å jobbe med såpass begrensede maskinressurser. Men samtidig litt spennende. :)

Lenke til kommentar

Ja, er ganske spennende. Det er ganske befriende, på en måte, å lage noe helt fra scratch uten å benytte et eneste bibliotek eller noe som helst også. Man programmerer på mange måter både et OS og et spill på en gang :p

 

Men jeg må nesten bare bøye meg i støvet for de som driver med programmering for Atari 2600. Der må man som programmerer ikke bare ta seg av spill-logikken og å sette opp grafikken for hver frame -- man må også "holde grafikkprosessoren i hånden" og hjelpe den å tegne skjermbildet etter hvert som TV-signalet genereres. Grafikk-chipen har kun som oppgave å modulere et analogt TV-signal fra noen enkle digitale registre. Prosessoren må hele tiden (for alle de 192 linjene) skrive informasjon til forskjellige registre for at ønsket bilde skal renderes. Hvis f.eks. en figur skal vises på skjermen i en eller annen posisjon, må prosessoren telle det nøyaktige antallet klokkesykluser (slik at elektronkanonen i TV-en har kommet til ønsket posisjon.) før den sender en 'aktiveringsbit' til et av registrene til grafikk-chipen... Det er ganske sykt, og får NES-en til å se relativt komplisert ut :p

Lenke til kommentar
  • 2 måneder senere...

Det ser ut som jeg har klart å legge ut en eller annen testkompilering i stedet for nyeste fungerende versjon. Prøv å laste ned den som ligger ute nå. Den skal begynne på første brett, som bør være noe enklere å prøve seg på. Men det er ikke så mye som fungerer uansett altså, så du får ikke spilt gjennom særlig mange brett. Flere av brettene er uferdige også.

 

edit: denne testkompileringen har ligget ute lenge... Håper ikke det er mange som har prøvd det og fått et slikt ... inntrykk av spillet :S

Endret av Jaffe
Lenke til kommentar

Var ganske bra, det eneste foreløpig er at man burde kunne plassere noe oppå boksene (når de er i vannet), uten å måtte gå på dem først, og at jeg absulutt ikke skjønner hva man skal gjøre for å endre på hvilke "vegger" som er åpne og ikke i bane 4 (hvis man skal bruke kassene, så må du endre på hvordan man kommer inn, og evt. noen andre innganger også).

 

Har forresten blitt så interresert at jeg har lest guiden din om nes programmering.

Endret av herdon
Lenke til kommentar

Takk :)

 

Angående det med boksene i vannet så er det slik det er i originalspillet. Det er meningen at boksen skal bli til 'jord' når den skubbes i vannet, og så må man gå på den for at den skal bli 'gulv'. Det er kun Chip som skal kunne gå oppå jorden. Jeg prøver å gjøre spillet så likt som Windows-versjonen, så da blir det sånn.

 

Når det gjelder å endre på de grønne veggene så er det dette jeg har holdt på med i det siste (dvs. etter jul, har ikke jobbet med det på en god stund.) Må fikse på en hel del i motoren før de grønne knappene og veggene og de blå knappene og tanksene kan fungere. Jeg har gjort noen tester og fått én og én knapp til å fungere, men å få alle til å fungere på en gang blir veldig vanskelig, og det kan faktisk være det ikke går i det hele tatt fordi koden vil bruke for lang tid på å kjøre. Men i den 4. banen har jeg redusert antall chipper man trenger å finne for å komme videre, så du skal kunne komme deg til 5. bane selv om du ikke får tak i alle.

 

Jeg ser forresten at kildekoden ikke lå ute der lenger, så jeg har lastet den opp på nytt hvis du er interessert. Du får spørre om det er noe du lurer på om guiden!

Lenke til kommentar
  • 1 måned senere...

Nå har jeg prøvd det nyeste demoen, og de bugsene som gjør den uspillbar etter det er at når jeg skal gå igjennom teleportøren for andre gang (andre gan jeg går igjennom en, altså nederst høyre) på brett 7, så tar den bare å forsvinner og dukker ikke opp igjen.

Lenke til kommentar

Hmm, ja, ser at dette skjer noen ganger. Det skjer kun dersom du holder inne piltasten. Det bør være en ganske enkel bug å fikse tror jeg. Spillet er spillbart så lenge man unngår å holde inne tasten eller trykke flere ganger raskt etter hverandre :p

Lenke til kommentar

Jeg har fikset den buggen nå. Det er var bare snakk om å legge til to linjer for å forhindre at input blir behandlet mens man står på en teleport (samme som skjer når man står på is uten skøyter osv.) Ny versjon er lastet opp på samme sted som før. Det er selvfølgelig en haug flere bugs, men disse krever mye mer jobb for å fikse.

Lenke til kommentar
  • 5 måneder senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...