Hur mazesna producerades för traditionellt Berzerk-spel

Det här är en skärmdump från Atari 5200-versionen av den traditionella spelberserk. Men översynen vi presenterar ser verkligen på den ursprungliga mynt-OP-versionen. Labyrinten för varje nivå etablerades på flugan med användning av ett frökantal som matades in i en rudimentär algoritm. Här är en nära titt på exakt hur labyrintbyggnadskoden verkligen fungerade.

Nyligen såg vi ett samtal av Pitfall Creator [David Crane] som en del av vår Retrotechtacular-serie. Det är en äkta pärla av programmeringshistoria, liksom en av våra föredragna take-aways var att nivåerna inte var hårdkodade, men utvecklades med en slumpmässig talgeneratoralgoritm med ett hårdkodat frö (så att spelet var exakt samma varje gång Du spelade den). Detta utnyttjar emellertid en liknande teknik med ett något slumpmässigt frö.

Labyrintbyggnaden var omvänd konstruerad genom att observera spelet i en mame emulator, såväl som genom att gräva med demonterad kod. Varje gång koden är “kallstartad” börjar fröet ut vid noll, men därifrån används rymdnumret som nästa frö. Detta matas med en extremt enkel algoritm. Det producerar riktningar för väggarna, som utnyttjar s få bitvisa operationer för att lägga till pelarna i rummen.

Det är en utmärkt sak att undersöka studie om du komponerar spel för dina inbäddade projekt. Genom att generera rummet programmatiskt utnyttjar du inte så mycket programminne. Av program Dessa dagar har även enkla tidsfördrivskontroller metod mer lagring för att arbeta med än [Alan McNeil] hade när han designade Berserk.

[via reddit]

[Bildkälla]

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post