Ozmoo - ny speltolk för Z-kod (Infocom)

Spelrelaterade diskussioner

Moderatorer: Fanta_gbg, e5frog, stonan, Zlasher

Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav fredrikr » 3 januari 2019, 12:44

Hej,

minizork.png
Infocoms gratisspel Minizork i Ozmoo


Johan Berntsson och jag har skrivit en speltolk för Z-kod, det spelformat för textäventyr som utvecklades av Infocom och användes för spel som Zork, Hitchhiker's Guide to the Galaxy, Planetfall m fl. Spelformatet har sedan dess använts för ytterligare många hundra spel skrivna i språket Inform.

Z-kod använder en virtuell maskin (liknande t ex JVM för Java) och det är strukturerat så att spelen ska kunna vara klart större än minnet på datorn som kör dem, med hjälp av virtuell minneshantering i speltolken. Ett spel för en C64 med en diskdrive kan vara upp till cirka 190 KB.

Infocoms egna speltolkar var bra. Z-kodsformatet har dock uppdaterats en del sedan dess, av hobbyister. Ozmoo stödjer allt det senaste, så långt som möjligt på en C64. En annan viktig skillnad är att Ozmoo är släppt under licensen GPL 2.0, vilket innebär att man tryggt kan använda den för ett spel man skriver och ger bort eller säljer.

Det finns några andra Z-kodstolkar för C64, men Ozmoo är för närvarande det enda alternativet som funkar på en C64 + en diskdrive, utan extra hårdvara, och som garanterat inte har någon kod som någon annan sitter på rättigheterna till.

Ozmoo fungerar på en C64 med en 1541 eller liknande diskdrive. SD2IEC funkar utmärkt, likaså 1541 Ultimate, Pi 1541 o dyl. Däremot inte 1581, i alla fall inte än. Självklart funkar Ozmoo även på emulatorer.

Om man vill använda Ozmoo, laddar man ner det till sin PC, Mac eller Linuxdator, ser till att man har Ruby, Exomizer, Acme cross-assembler samt Vice installerade (se pekare på hemsidan nedan), och pekar ut sökvägarna till dem i scriptet make.rb. Man kör sedan "ruby make.rb mygame.z5" och ut kommer en d64 disk image med ett spelbart spel.

Det finns en bunt options man kan ange till make, och förstås dokumentation. Man kan t ex lägga in en egen teckenuppsättning i spelet, välja färgschema, bygga ett spel som ligger på flera disksidor mm.

Ozmoo har även en möjlighet att bygga ett litet spel (max ca 50 KB speldata) utan virtuell minneshantering. Ett sådant spel kan t ex laddas in från band och köras på en dator utan diskdrive. Save/restore av spelposition kräver dock, än så länge, diskdrive.

Man kan använda Ozmoo för Infocom-spel, Inform-spel man laddar ner (dock inte Inform 7, det blir för långsamt), eller spel man gjort själv. Vill man utveckla ett spel själv, är de huvudsakliga alternativen Inform 6 och ZIL. Information om Inform 6 kan man hitta på https://www.inform-fiction.org/ . ZIL är språket som Infocom själva använde för att utveckla sina spel. Det finns en liten men trevlig och växande grupp på FB som håller på med det: https://www.facebook.com/groups/ZILcom/ . Det finns även ett trevligt forum där man kan få hjälp med frågor kring utveckling i båda dessa miljöer: https://www.intfiction.org/forum/index.php

Ozmoo har även stöd för att skriva spel som använder svenska tecken. Detta stöds inte av någon annan Z-kodstolk för C64. Lägger man även in sin egen font, så vet man att de visas rätt också.

Här är hemsidan med mer information, instruktioner och nedladdningar: https://github.com/johanberntsson/ozmoo

Om man bara vill prova ett spel som använder Ozmoo, kan man ladda ner spelet Curses! här: http://microheaven.com/ozmoo/curses.d64
fredrikr
Nybörjare
Nybörjare
 
Inlägg: 17
Blev medlem: 22 december 2016, 09:26

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav bjonte » 3 januari 2019, 14:51

Det här var ju riktigt coolt! Det borde inte vara omöjligt att utöka med C128-stöd eftersom det bara är text. Vad sugen jag blir.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1588
Blev medlem: 17 april 2006, 23:12

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav fredrikr » 3 januari 2019, 15:19

bjonte skrev:Det här var ju riktigt coolt! Det borde inte vara omöjligt att utöka med C128-stöd eftersom det bara är text. Vad sugen jag blir.


Du är välkommen att forka och se om du kan få till en C128-variant! Om det på något smidigt sätt sedan går att få ihop koden för en sådan version med C64-versionen så vore det ju ännu bättre.

På 128:an vill man förstås kunna använda en 1571:a om det finns en sådan, det extra RAM:et, och förstås 80-kolumnsdisplay. Jag tror vettig användning av den andra RAM-banken är det svåraste, men jag har aldrig programmerat för C128, så jag ska inte svära på det.

Vi har gjort helt egna rutiner för skärmhantering, främst för att kunna förhindra att statusraden scrollas upp. De är nog inte så svåra att anpassa för 80 kolumner.

Vi jobbar ganska aktivt på en nästa version, så koden står inte direkt stilla. Idag har vi t ex förbättrat algoritmen som väljer ut vilken sida som ska ersättas när man laddar in en ny sida i RAM. Du kan titta i Todo.txt för annat som är på gång.
fredrikr
Nybörjare
Nybörjare
 
Inlägg: 17
Blev medlem: 22 december 2016, 09:26

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav Redreamer » 4 januari 2019, 01:54

Coolt! Får man fråga hur lång tid ni lagt ner på detta än så länge?
It always return one day!
Användarvisningsbild
Redreamer
Stormästare
Stormästare
 
Inlägg: 1206
Blev medlem: 1 maj 2005, 10:07
Ort: Borås

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav fredrikr » 4 januari 2019, 12:31

Redreamer skrev:Coolt! Får man fråga hur lång tid ni lagt ner på detta än så länge?


Oj. Tja, en stor del av vår fritid sedan i april. Många hundra timmar, absolut.

All funktionalitet ska ju skrivas. Sedan ska koden göras smartare och snabbare, och gärna mindre. Vi har ett benchmark-läge där spelet Hollywood Hijinx spelas igenom. Det går nu dubbelt så fort som när vi körde det första gången 10:e juli.

Och många buggrättningar. Igår nådde vi läget att vi har 0 kända buggar. Självklart har vi en del okända buggar dock.
fredrikr
Nybörjare
Nybörjare
 
Inlägg: 17
Blev medlem: 22 december 2016, 09:26

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav fredrikr » 28 april 2019, 22:27

Nu finns det en sida för att bygga Z-kodsspel med Ozmoo utan att först behöva installera Ozmoo:

http://microheaven.com/ozmooonline/
fredrikr
Nybörjare
Nybörjare
 
Inlägg: 17
Blev medlem: 22 december 2016, 09:26

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav bjonte » 1 maj 2019, 13:11

Hur har det gått? Är det några som har börjat göra äventyr? Jag läste på Lemon64 att en person hade börjat meka lite. Jag önskar att jag hade mer tid att greja med sådant här men jag prioriterar bort det tyvärr.
Användarvisningsbild
bjonte
Stormästare
Stormästare
 
Inlägg: 1588
Blev medlem: 17 april 2006, 23:12

Re: Ozmoo - ny speltolk för Z-kod (Infocom)

Inläggav fredrikr » 2 maj 2019, 10:20

Det är några som börjat bygga spel med Ozmoo, dels spel kompilerade från den nysläppta Infocom-källkoden, dels Inform-spel, och hittat flera buggar. Vi har rättat de buggar som rapporterats in, men samtidigt hittat andra problem som vi behöver jobba på. Så det har varit ett lyft för oss att få ut denna sida.

Ozmoo är ju inte ett språk eller verktyg för att skriva textäventyr i, utan en speltolk som kan köra de spel som utvecklats i främst ZIL eller Inform 5 eller 6.

Om man har Infocomspel för MS-DOS, Amiga eller liknande, kan man ta spelfilen (brukar sluta med .dat), ladda upp till Ozmoo-sidan, och bygga en egen version för C64, med sitt favvofärgschema. Det tar inte många minuter.
fredrikr
Nybörjare
Nybörjare
 
Inlägg: 17
Blev medlem: 22 december 2016, 09:26


Återgå till Spel

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 1 gäst

Banners

BOA Japon Mediapalatset Nostalgibutiken
Quartex Retro Overlays Retroplay Spel och sånt
Super Motaro Söders Serie & Skivhandel vintagegames.se RG 2016
cron