New Year, New Project (Skirrid)

developing/porting a new game or gaming framework? post in here!
Post Reply
User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

New Year, New Project (Skirrid)

Post by EdwardianDuck » Wed Jan 01, 2020 3:22 pm

Very, very early days, but at least I have some code running...

WIP-2020.jpg
WIP-2020.jpg (29.58 KiB) Viewed 1457 times

Might be Master only (or require 2nd processor) as memory is looking tight already.

Jeremy

Edit: Added project name to title!
Last edited by EdwardianDuck on Thu Jan 02, 2020 8:35 am, edited 1 time in total.
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
0xC0DE
Posts: 549
Joined: Tue Mar 19, 2019 7:52 pm
Location: The Netherlands
Contact:

Re: New Year, New Project

Post by 0xC0DE » Wed Jan 01, 2020 10:48 pm

Maybe I'm dumb, but what is it?
0xC0DE
:idea: Follow me on Twitter :idea: Visit my YouTube channel featuring my demos for Acorn Electron and BBC Micro

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Thu Jan 02, 2020 8:41 am

Not dumb at all, initially I left the title out just to see if anyone recognised the game. I'm not sure this game is well known.

See.

https://boardgamegeek.com/boardgame/2038/skirrid

https://en.wikipedia.org/wiki/Skirrid_(board_game)

I had this finished (for some value of "finished") in 2017 for the A8, but wasn't sufficiently happy with the implementation to release it.

I had Skirrid in my youth and thinking it would make a good computer program some day, I kept it for that purpose. It only took 30+ years to get around to doing anything about it.

Jeremy
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Thu Jan 02, 2020 8:34 pm

Making fairly good progress with this having spent the day fixing bugs arising from switching (messy) code from MADS to CA65, separating game logic from UI and porting from A8 to BBC.

Current project status.

Done.
  • Basic game play against the computer working
  • Gets to the end of a game and declares the winner
  • Shape selection / display screen roughly written (see picture)
To do.
  • Port the title / game options screen
  • Testing, bug fixing and a *lot* of tidying up of code
  • Back port new version to A8
So plenty to keep me amused for a while.

Binary is already 11Kb + $5B0 bytes of workspace, so given the demands of mode 2, it's not going to fit a Model B or Electron as it stands.

Jeremy

WIP-20200102.jpg
WIP-20200102.jpg (16.81 KiB) Viewed 1312 times
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

julie_m
Posts: 141
Joined: Wed Jul 24, 2019 9:53 pm
Location: Derby, UK
Contact:

Re: New Year, New Project (Skirrid)

Post by julie_m » Thu Jan 02, 2020 9:47 pm

I used to have that game, but the only person who would play it with me was my engineer grandad. My sister got his propensity for nosebleeds and my other grandad's bowels, so I'm not complaining!

I reckon you could just about fit a 19*19 board into a MODE 5 screen to get different colours for each player's shapes, and switch to MODE 4 after scanline 159 to display the game info in more eye-friendly 40 column text. Basically, the reverse of ELITE!

User avatar
tricky
Posts: 4250
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: New Year, New Project (Skirrid)

Post by tricky » Fri Jan 03, 2020 1:52 pm

You could skip the grid as the numbers form a grid, especially if you put a mark where a number was after it is covered up.

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Tue Feb 11, 2020 9:17 pm

I'm making slow but steady progress with this. Most of the effort so far has been separating out the game logic from the platform specific stuff to make finishing the Atari and BBC versions less awkward in the long term as well as transitioning from MADS to CA65. When I wrote the Atari prototype I wasn't considering other platforms and adopted a very specific way of doing things in MADS which isn't very portable, but seemed like a good idea at the time.

Here is an example with the grid removed. I'm not 100% convinced by this so far but it might grow on me. It's showing one tile placed by each player and the cursor (magenta) for the current player's selected shape. The dots on the red tile indicate that this was the last tile placed, just to provide some feedback.

pic17.png
pic17.png (3.73 KiB) Viewed 1032 times

I don't think the split MODE 5 & 4 screen is going to work as I need 5 colours for the game display. Possibly I've misunderstood the idea though. The only suggestion I found as to how one might do this was to read the Elite source code, which is probably a bit heavy going for me.

The title / options screen is also a placeholder for now.

pic19.png
pic19.png (3.6 KiB) Viewed 1032 times

It looks like the program will come in well under 16Kb for code and data, so a SWROM image is possible. Avoiding MODE 7 for the title / options screen would make it Master/B/Electron friendly. One question, should this be implemented as a language or service ROM?

Jeremy
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
tricky
Posts: 4250
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: New Year, New Project (Skirrid)

Post by tricky » Tue Feb 11, 2020 10:20 pm

If the cursor outline was the colour for the current player, wouldn't that be 4 colours?
Changing between MODE 4 and MODE 5 needs a small interrupt routine that writes a single byte and probably reprograms part or all of the palette (no idea on the Electron).
Most of my games (B,B+,Master & Compact) have the games compressed and then I add a service ROM header and set the execution address to just after the ROM header, this way the game can be "run" or put in ROM and started with a *command; I also make them auto boot if they are in slot 0 on a Master (one of the cartridge slots).
If you ignore Shadow RAM (turn it off at startup on a non-B) then only part of the joystick code needs to use different addresses on the Master and everything else is the same (actually the font moves, but can be queried - although we know the answer ;))

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Wed Mar 18, 2020 9:27 am

Attached is a playable, but imperfect, preview version plus the original game instructions as a PDF.

It's a little earlier / less polished than I planned, but I figured a diversion from COVID-19, however brief or trivial would not go amiss.

The program is a sideways ROM image and runs (at least under emulation via b2) on a Model B and Master 128. In theory it should also work on an Electron now I've changed the title screen to MODE 2, but I can't test that myself (any volunteers).

The game is playable, but what I laughingly call the AI needs work.

Once the ROM is unpacked and "installed" (or loaded into sideways RAM), start the game using this command.

Code: Select all

*SKIRRID
Jeremy

Skirrid-Title.png
Skirrid-Game.png
Skirrid-Select.png
Skirrid-Game-Help.png
Skirrid-Shape-Help.png
Attachments
Skirrid-Wobbly-Preview-20200320.zip
(7.66 KiB) Downloaded 12 times
SKIRRID - Original Text.pdf
(77.84 KiB) Downloaded 17 times
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Thu Mar 19, 2020 10:30 am

Attached is a better preview. This has bug fixes to the AI so that it works as per my original notes. The tables driving the AI probably need tweaking though.

The name of the original upload has the wrong date, I must be losing track of time.

Jeremy
Attachments
SKApp-Better-Preview-20200319.zip
(7.77 KiB) Downloaded 19 times
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
LordVaderUK
Posts: 187
Joined: Thu Jan 31, 2019 12:26 am
Location: Hampshire
Contact:

Re: New Year, New Project (Skirrid)

Post by LordVaderUK » Thu Mar 19, 2020 12:26 pm

That looks great! Will have a go on my Master once I get the video working... :p
Loving my BBC Master 128

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Tue May 12, 2020 6:41 pm

Experimental (in the sense that I don't actually have one) NULA preview.

Jeremy
Attachments
Skirrid-ROM.ssd
(200 KiB) Downloaded 9 times
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Sat May 23, 2020 3:47 pm

I finally decided to stop fiddling about with Skirrid and just release it. Downloads and a PDF explaining how to play the original game are under the "Resources" menu.

BBC version
Atari version

Jeremy
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

AJW
Posts: 718
Joined: Sun Feb 15, 2004 2:01 pm
Contact:

Re: New Year, New Project (Skirrid)

Post by AJW » Wed Jun 03, 2020 12:44 pm

Congratulations. Amszing you released it in a short time. How did you do the nice large text graphics?

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Wed Jun 03, 2020 1:07 pm

It wasn't actually that quick, I wrote it in 2017 for the Atari (using MADS), then got bored with it and ignored it for 18 months. The port to the BBC / CA65 then back to the Atari (now also in CA65) represents the equivalent of several weeks full-time on it, but all the hard work (game logic, tiles etc.) was done in 2017. Also, stuck at home, nothing much else to do, so it was easy to focus on it.

The process for the logo was rougly...
  • Take a picture of the original box art using an entry level DSLR
  • Scale, crop and colour reduce that in the GIMP
  • Minor manual adjustments to the coloured "shadows"
  • Write a C# program to convert it to multiple character sets for the Atari, write the title screen to use DLIs and sprites to add more colours.
  • Write a C# program to convert it to MODE 2 graphics, then compress using RLE (because it's fast to unpack)

Jeremy
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

AJW
Posts: 718
Joined: Sun Feb 15, 2004 2:01 pm
Contact:

Re: New Year, New Project (Skirrid)

Post by AJW » Wed Jun 03, 2020 1:30 pm

A bit beyond me but id be interested in more info on RLE for the eventual title screen of a game Im working on. I hope to use bbc image converter for the main picture then have big text on that.

User avatar
EdwardianDuck
Posts: 95
Joined: Thu Aug 10, 2017 9:07 pm
Location: Northamptonshire
Contact:

Re: New Year, New Project (Skirrid)

Post by EdwardianDuck » Wed Jun 03, 2020 1:50 pm

I think the reference I used for RLE was this https://codebase64.org/doku.php?id=base:rle_pack_unpack, but it was a long time ago and it is possible I used the one from the MADS examples.

Other more effective compression algorithms are available (and I think have been recently discussed hereabouts). In my case I had sufficient memory not to need anything more sophisticated.

Jeremy

Edit: spelling
Last edited by EdwardianDuck on Wed Jun 03, 2020 2:09 pm, edited 1 time in total.
Master 128 + RetroClinic DataCentre + Internal Pi Zero Coprocessor, MiST
BBC & Atari Software

AJW
Posts: 718
Joined: Sun Feb 15, 2004 2:01 pm
Contact:

Re: New Year, New Project (Skirrid)

Post by AJW » Wed Jun 03, 2020 2:01 pm

Ok I thought you meant some Beeb program.

Post Reply

Return to “new projects in development: games”