Lunchtime Atic Atac

Snap taken using “Retrotechys Speccy Graphics Viewer/Editor”

After a few boring lunchtimes at work with nothing to do, I started tinkering around with a ZX Spectrum .sna file of Atic Atac, the aim being to be able to read some sensible data from the file and display some atic atac screens, using Blitz3D.

 

Prep Work:

  • firstly I obtained a 48kB .sna file of Atic Atac. I figured that as I have paid for the game twice in my life (ZX Spectrum and Xbox One Rare Replay), I was entitled to peep at the code.
  • I downloaded a decent free Hex Editor.
  • I had a good look at Icemarks Atic Atac data format page, as this gives a lot of guidance on specific areas of the data that pertain to drawing the screen.
  • I added 16kB of padding onto the front of the .sna file so that Icemarks memory offsets matched the file that I had.

 

Dev Program 1 – Find enough data to draw the outline of each type of room.

Atic Atac has 13 different room types, including the last room when you escape the haunted house, and the room when you are falling down a trap door.

The actual X and Y points for drawing each room are stored in two sections for each type room. The first part lists each X and Y co-ordinate for every line required to draw the room and the second part is a list of points so that these X and Y co-ordinates can be connected using lines to draw the room.

Example:

The First part of data looks like –  186,42,186,186,42,186,42,42. It is read as Point 1 X co-ord = 186, Point 1 Y co-ord = 42, Point 2 X co-ord =186, Point 2 Y co-ord=186 and so on.

The second part of the data looks like – 1,2,255,3,2,4,255,255. This i read as “Go to the X and Y co-ords of point 1 and draw a line to the X and Y co-ords of point 2. Then 255 means end of that draw function. Next go to the X and Y co-ords of Point 3 and draw a line to the X and Y co-ords of point 2, then go back to the X and Y co-ords of point 3 and draw a line to the X and Y co-ords of point 4.” Then two 255’s in a row means end of drawing that room.

Dev Prog 1 Input:

Type in which type of room you want to draw (0 to 12) and what scale factor you want to use (1 to 4, 1 being original size)

Dev Prog 1 Output:

Room Type 2, Scale Factor 4

Room Type 1, Scale Factor 3

It all looks pretty good with the exception of room type 7 which has an X co-ordinate error on one of the draw points. After some looking it turns out that room type 7, a sideways stairway, isn’t used in the game so the error wouldn’t ever have shown up.

 

Dev Program 2 – Draw the outline of each game room with room attributes.

Rather than just calling up a type of room, I wanted to be able to call up a room number from the game itself and have it display the correct type of room in the correct colour.

The Atic Atac .sna has a table in it with each room listed as room colour and type, so the data looks like 66,3,68,0,64,5 and is read as:

  • Room 0, Colour 66, Room Type 3
  • Room 1, Colour 68, Room Type 0
  • Room 2, Colour 64, Room Type 5

The room numbered order itself is a bit haphazard to say the least. Room 0 is the start screen, Room 1 is the screen above, Room 2 is screen left of that… and so on through the various rooms/floors.

Dev Prog 2 Input:

Type in which room from the game you want to draw (0 to 148) and what scale factor you want to use (1 to 4, 1 being original size)

Dev Prog 2 Output:

Game room 33, Scale Factor 4

Game room 69, Scale Factor 4

 

Dev Program 3 – Add Room objects to the each room rendered.

The game has an object table. This lists all of the objects in the game along with varous object attributes including the type of object the room number its in, the X and Y position it should be drawn in the room and its orientation.

This object table doesn’t seem to be in any specific order so if you walk into room two, you have to scan the entire table to list what objects are in room 2.

Once you have confirmed that the object belongs in the room that you’re in and you have  the object type, you can then jump to the offset of that specific object which contains the X width of the object in bytes, the Y height of the object in pixel rows and then the bitmap of the object itself, and start to draw it in the correct X, Y and orientation.

Dev Prog 3 Input:

Type in which room from the game you want to draw (0 to 148) and what scale factor you want to use (1 to 4, 1 being original size)

Dev Prog 3 Output:

Game Room 0, Scale Factor 4

Game Room 3, Scale Factor 4

Game Room 6, Scale Factor 4

So with all of this dev work done… “WHAT IS IT GOOD FOR… ABSOLUTELY NOTHING!!” but fun nerdiness all the same.

 

 

PSP Go on 65” 4K Sony TV

Yup. Use your PSP Go as a full game console with separate controller and even connect it to your TV.

What you will need:

1. PSPGo
2. PSPGo TV component lead (head to eBay)
3. PS3 controller
4. PS3 (only once to initially connect the controller to the PSP)


So first you need to turn on your PSP Bluetooth and use your PS3 to connect the controller to the PSP. 


Once the Bluetooth is initialised to the PSP, you won’t need to use the PS3 again.

Then plug the PSP into the TV and off you go.


PSPGo on 65” 4k Sony BT linked to PS3 controller…

3D Isometric game engine in Blitz 3D – Building Blocks and Film Sets

snap0

So previously I had entertained a few concepts for the isometric game engine I was working on, however everything started to look a bit flat.

I decided to make the move from building worlds with flat cube tiles to building out of blocks to make things a bit more 3D.

blog1

I made a simple cube block with 45 degree bevelled edges and corners. Each surface had its own set of vertices and its own surface to allow for multiple textures. I then stretched for a long block and stretched and rotated for a tall block. I then designed a quick routine to add the blocks randomly to a wall and allow for spaces. It was a disaster… The amount of vertex’s on screen came in at around 12000+ and the FPS slowed down to 30. Also the bevels in the stretched blocks weren’t at 45 degrees any more and didn’t match the cubes in the wall.

I quickly realised that in an isometric world, you only see a max of 3 sides of the block at any one time so by making six blocks with some surfaces missing and using the correct one for correct circumstance I managed to reduce the vertex count to less than a third, even with the floor being 3D bevelled cubes.

The result, from the ISO camera view, all looks good, 3D and solid. But if you walk around to the back of the wall, like every good film set you find out that its just a plywood mock-up.

blog4

Again, planting the camera in a standard Isometric position gives you a stretched curved effect meaning that some parts of the screen are out of shot, so moving the camera a long way from shot and using the zoom function flattens out the image to a more regular looking isometric view.

blog2

blog3

3D Isometric game engine in Blitz 3D – Generating Shadows

Whilst Blitz3D has a number of easy to use lighting effects, it lacks any built in shadow functionality.

An easy way to add a suggestion of a shadow is to use sprite shadows, a simple dark coloured sprite with some alpha set will cast a reasonable shadow effect.

Also with a bit of geometric knowhow, you can have shadows across the floor and up the walls.

snap0

In a room as in the picture above, if you have a single light source in the room, you would need to set up three potential shadows:

Shadow 1 – stretches across the floor between that man and the wall at the angle the man is to the flame. Dynamics for the shadow are positioning the centre of the sprite half way between the man and the wall at the flame to man angle, stretching it the correct length so that it reaches from man to wall and finally rotating it as the man moves in relation to the flame.

Shadow 2 – is on the east wall. Dynamics for this shadow are positioning it at the correct position on the wall so that its in line with the angle between flame and man and stretching it to the correct height so that its in line with the flame height to man height.

Shadow 3 – is on the north wall. Essentially its the same as shadow 2. Its far easier to have a north and east shadow so that when you reach the corner of the room, east shadow disappears into north wall as north wall shadow emerges out of east wall creating a nice shadow round the corner effect.

snap1

To add some atmosphere, animate the flame on the candle and in time with the animation:  increase/decrease the light range on the candle light to simulate some flame flicker, adjust your shadow angle by a couple of degrees left and right and slightly decrease/increase the alpha of the shadows.

snap2

The general lighting on all of the rooms above is biased towards blue. In order to set the general background lighting to a moonlight style colour, you need to up the blue in a big way. If you turn all of the lights off, you get a very heavy red/green biased low ambient light. To remove the red/green biasing you add blue light, but then you end up with a blue room…. so you up red green and blue but make blue double what red and green is to try and even the ambient light biasing out.

Arcade Classic Game Collections on the Sony PlayStation / PSX / PSOne / PS1

Ok so it doesn’t quite rival MAME… but between these Sony PlayStation arcade collections there are over 100 arcade classics. With Sony PlayStations going for a dime a dozen and so many ways of picking up cheap second hand games, it won’t cost a fortune to get a good arcade collection up and running, and its all nice n legal!

 

Williams Arcade’s Greatest Hits
Williams Arcades Greatest Hits Front
Williams_Arcade_S_Greatest_Hits_ntsc-[cdcovers_cc]-back
The Games:
  • Robotron : 2084
  • Defender
  • Defender II
  • Joust
  • Sinistar
  • Bubbles
The Extras:
  • Williams introduction
  • Media library of photos, fliers and memorabilia
  • The inside story for each game
  • Media clips of the people involved

 

Midway Presents Arcade’s Greatest Hits – The Midway Collection 2
40889-arcade-s-greatest-hits-the-midway-collection-2-playstation-back-cover
The Games:
  • Blaster
  • Joust 2
  • Splat
  • Burger Time
  • Spy Hunter
  • Moon Patrol
  • Root Beer Tapper
The Extras:
  • Trivia quiz on each game

 

Midway Presents Arcade’s Greatest Hits – The Atari Collection 1
Arcade_S_Greatest_Hits_-_Atari_Collection_1_pal-[cdcovers_cc]-front
1553_back
The Games:
  • Asteroids
  • Missile Command
  • Battle Zone
  • Centipede
  • Tempest
  • Super Breakout
The Extras:
  • The golden age of Atari
  • Media library of photos, fliers and memorabilia
  • The Inside Story for Each Game

 

Midway Presents Arcade’s Greatest Hits – The Atari Collection 2
5207_front
5207_back
The Games:
  • Gauntlet
  • Marble Madness
  • Paperboy
  • Road Blasters
  • Millipede
  • Crystal Castles
The Extras:
  • Gallery for each game – Flyers, Hints and sketches

 

Atari Anniversary Redux
51845-Atari_Anniversary_Edition_Redux_(E)-1
51845-Atari_Anniversary_Edition_Redux_(E)-2
The Games:
  • Asteroids
  • Asteroids Deluxe
  • Battlezone
  • Black Widow
  • Centipede
  • Gravitar
  • Missile Command
  • Pong
  • Space Duel
  • Super Breakout
  • Tempest
  • Warlords
The Extras:
  • Video Interviews with Nolan Bushnell
  • Excerpts from “Pheonix: The Fall and Rise of Video Games”
  • Photo Gallery of Atari Memorabilia

 

Midway Arcade Party Pak
Arcade_Party_Pak_PAL-[cdcovers_cc]-front
Arcade_Party_Pak_PAL-[cdcovers_cc]-back
The Games:
  • 720
  • Klax
  • Rampage
  • Smash TV
  • Super Sprint
  • Toobin
The Extras:
  • History of Each Game

 

Konami Arcade Classics aka Konami Arcade Gallery
The Games:
  • Pooyan
  • Scramble
  • Yie Ar Kung Fu
  • Rock n Rope
  • Circus Charlie
  • Shaolins Road
  • Super Cobra
  • Road Fighter
  • Time Pilot
  • Gyruss
The Extras:
  • History of Each Game

 

Namco Museum – Volume 1
Namco_Museum_1_pal-[cdcovers_cc]-back
The Games:
  • Pacman
  • Rally X
  • New Rally X
  • Galaga
  • Bosconian
  • Toy Pop
  • Pole Position
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Namco Museum – Volume 2
Namco_Museum_2_pal-[cdcovers_cc]-front

Namco_Museum_2_ntsc-[cdcovers_cc]-back

The Games:
  • Super Pacman (Not Japanese Release)
  • Xevious
  • Mappy
  • Gaplus
  • Grobda
  • Dragon Buster
  • Bomb Bee (Japanese Release Only)
  • Cutie Q (Japanese Release Only)
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Namco Museum – Volume 3
Namco_Museum_3_ntsc-[cdcovers_cc]-back
The Games:
  • Galaxian
  • Ms Pacman
  • Dig Dug
  • Phozon
  • Pole Position 2
  • The Tower of Druaga
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Namco Museum – Volume 4
Namco_Museum_4_pal-[cdcovers_cc]-front
Namco_Museum_4_pal-[cdcovers_cc]-back
The Games:
  • Pacland
  • The Return of Ishtar
  • The Genji and Heike Clans
  • Assault
  • Ordyne
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Namco Museum – Volume 5
Namco_Museum_5_pal-[cdcovers_cc]-front
Namco_Museum_5_ntsc-[cdcovers_cc]-back
The Games:
  • Metro Cross
  • Baraduke
  • Dragon Spirit
  • Pac Mania
  • The Legend Of Valkyrie
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Namco Museum – Volume 6 / Encore
Namco_Museum_Encore_jap-[cdcovers_cc]-front
Namco_Museum_Encore_jap-[cdcovers_cc]-back
The Games:
  • King and Balloon
  • Motos
  • Skykid
  • Rolling Thunder
  • Wonder Momo
  • Rompers
  • Dragon Sabre
The Extras:
  • Virtual Museum Containing Game Info and Memorabilia

 

Nichibutsu Arcade Classics
SLPS-00184-F-ALL
SLPS-00184-B-ALL
The Games:
  • Moon Cresta
  • Crazy Climber
  • Frisky Tom
  • SF-X
  • Toms Strike Back
  • Crazy Climber 85
The Extras:
  • Various Flyers and Memorabilia

 

Irem Arcade Classics
SLPS-00341-F-ALL
SLPS-00341-B-ALL
The Games:
  • 10 Yard Fight
  • Zippy Race
  • Kung Fu Master
The Extras:
  • Appears to be a video walk-thru of Kung Fu Master

 

Capcom Generations – Volumes 1 to 5

 

Four Disc Release
Capcom_Generation_1_2_3_4_pal-[cdcovers_cc]-front
Capcom_Generation_1_2_3_4_pal-[cdcovers_cc]-back
Two Disc Release
Capcom_Generation_1_2_pal-[cdcovers_cc]-front
Capcom_Generation_3_4_pal-[cdcovers_cc]-front
Single Disc Releases
SLPS-01535-F-ALL
Capcom_Generation_1_jap-[cdcovers_cc]-back
Capcom_Generation_2_jap-[cdcovers_cc]-front
Capcom_Generation_2_jap-[cdcovers_cc]-back
Capcom_Generation_3_ntsc-[cdcovers_cc]-front
Capcom_Generation_3_ntsc-[cdcovers_cc]-back
Capcom_Generation_4_jap-[cdcovers_cc]-front
SLPS-01701-B-ALL
Capcom_Generation_5_jap-[cdcovers_cc]-front
Capcom_Generation_5_jap-[cdcovers_cc]-back
Capcom Generations 1 – Wings Of Destiny
The Games:
  • 1942
  • 1943
  • 1943 Kai
The Extras:
  • Art and Illustrations
  • Tips
  • Cast
  • Secrets

 

Capcom Generations 2 – Chronicles of Arthur
The Games:
  • Ghosts and Goblins
  • Ghouls and Ghosts
  • Super Ghouls and Ghosts
The Extras:
  • Art and Illustrations
  • Tips
  • Cast
  • Secrets

 

Capcom Generations 3 – The First Generation
The Games:
  • Vulgus
  • Sonson
  • Pirate Ship Higemaru
  • Exed Exes
The Extras:
  • Art and Illustrations
  • Tips
  • Cast
  • Secrets

 

Capcom Generations 4 – Blazing Guns
The Games:
  • Commando
  • Gunsmoke
  • Mercs
The Extras:
  • Art and Illustrations
  • Tips
  • Cast
  • Secrets

 

Capcom Generations 5 – Street Fighter Collection 2
The Games:
  • Street Fighter II: The World Warrior
  • Street Fighter II: Champion Edition
  • Street Fighter II Turbo: Hyper Fighting
The Extras:
  • Art and Illustrations
  • Tips
  • Cast
  • Secrets

 

Reference List of All Games in Alphabetical Order

 

  • 10 yard fight – IREM Arcade Classics
  • 1942 – Capcom Generations 1
  • 1943 – Capcom Generations 1
  • 1943 Kai – Capcom Generations 1
  • 720 – Midway Arcade Party Pak
  • Assault – Namco Museum 4
  • Asteroids – The Atari Collection 1 & Atari Anniversary Redux
  • Asteroids Deluxe – Atari Anniversary Redux
  • Baraduke – Namco Museum 5
  • Battle Zone – The Atari Collection 1 & Atari Anniversary Redux
  • Black Widow – Atari Anniversary Redux
  • Blaster – The Midway Collection 2
  • Bomb Bee – Namco Museum 2 (Japanese Release Only)
  • Bosconian – Namco Museum 1
  • Bubbles – Williams Arcade’s Greatest Hits
  • Burger Time – The Midway Collection 2
  • Centipede – The Atari Collection 1 & Atari Anniversary Redux
  • Circus Charlie – Konami Arcade Classics
  • Commando – Capcom Generations 4
  • Crazy Climber – Nichibutsu Arcade Classics
  • Crazy Climber 85 – Nichibutsu Arcade Classics
  • Crystal Castles – The Atari Collection 1
  • Cutie Q – Namco Museum 2 (Japanese Release Only)
  • Defender – Williams Arcade’s Greatest Hits
  • Defender II – Williams Arcade’s Greatest Hits
  • Dig Dug – Namco Museum 3
  • Dragon Buster – Namco Museum 2
  • Dragon Sabre – Namco Museum 6 / Encore
  • Dragon Spirit – Namco Museum 5
  • Exed Exes – Capcom Generations 3
  • Frisky Tom – Nichibutsu Arcade Classics
  • Galaga – Namco Museum 1
  • Galaxian – Namco Museum 3
  • Gaplus – Namco Museum 2
  • Gauntlet – The Atari Collection 2
  • Ghosts and Goblins – Capcom Generations 2
  • Ghouls and Ghosts – Capcom Generations 2
  • Gravitar – Atari Anniversary Redux
  • Grobda – Namco Museum 2
  • Gunsmoke – Capcom Generations 4
  • Gyruss – Konami Arcade Classics
  • Joust – Williams Arcade’s Greatest Hits
  • Joust 2 – The Midway Collection 2
  • King and Balloon – Namco Museum 6 / Encore
  • Klax – Midway Arcade Party Pak
  • Kung Fu Master – IREM Arcade Classics
  • Mappy – Namco Museum 2
  • Marble Madness – The Atari Collection 2
  • Mercs – Capcom Generations 4
  • Metro Cross – Namco Museum 5
  • Millipede – The Atari Collection 2
  • Missile Command – The Atari Collection 1 & Atari Anniversary Redux
  • Moon Cresta – Nichibutsu Arcade Classics
  • Moon Patrol – The Midway Collection 2
  • Motos – Namco Museum 6 / Encore
  • Ms Pacman – Namco Museum 3
  • New Rally X – Namco Museum 1
  • Ordyne – Namco Museum 4
  • Pacman – Namco Museum 1
  • Pacland – Namco Museum 4
  • Pacmania – Namco Museum 5
  • Paperboy – The Atari Collection 2
  • Phozon – Namco Museum 3
  • Pirate Ship Higemaru – Capcom Generations 3
  • Pole Position – Namco Museum 1
  • Pole Position 2 – Namco Museum 3
  • Pong – Atari Anniversary Redux
  • Pooyan – Konami Arcade Classics
  • Rally X – Namco Museum 1
  • Rampage – Midway Arcade Party Pak
  • Road Blasters – The Atari Collection 2
  • Road Fighter – Konami Arcade Classics
  • Robotron : 2084 – Williams Arcade’s Greatest Hits
  • Rock n Rope – Konami Arcade Classics
  • Rolling thunder – Namco Museum 6 / Encore
  • Rompers – Namco Museum 6 / Encore
  • Root Beer Tapper – The Midway Collection 2
  • Scramble – Konami Arcade Classics
  • SF-X – Nichibutsu Arcade Classics
  • Shaolins Road – Konami Arcade Classics
  • Sinistar – Williams Arcade’s Greatest Hits
  • Skykid – Namco Museum 6 / Encore
  • Smash TV – Midway Arcade Party Pak
  • Sonson – Capcom Generations 3
  • Space Duel – Atari Anniversary Redux
  • Splat – The Midway Collection 2
  • Spy Hunter – The Midway Collection 2
  • Street Fighter II: Champion Edition – Capcom Generations 5
  • Street Fighter II: The World Warrior – Capcom Generations 5
  • Street Fighter II Turbo: Hyper Fighting – Capcom Generations 5
  • Super Breakout – The Atari Collection 1 & Atari Anniversary Redux
  • Super Cobra – Konami Arcade Classics
  • Super ghouls and ghosts – Capcom Generations 2
  • Super Pacman – Namco Museum 2 (Not Japanese Release)
  • Super Sprint – Midway Arcade Party Pak
  • Tempest – The Atari Collection 1 & Atari Anniversary Redux
  • The Genji and Heike Clans – Namco Museum 4
  • The Legend Of Valkyrie – Namco Museum 5
  • The Return of Ishtar – Namco Museum 4
  • The Tower of Druaga – Namco Museum 3
  • Time Pilot – Konami Arcade Classics
  • Toms Strike Back – Nichibutsu Arcade Classics
  • Toobin – Midway Arcade Party Pak
  • Toy Pop – Namco Museum 1
  • Vulgus – Capcom Generations 3
  • Warlords – Atari Anniversary Redux
  • Wonder Momo – Namco Museum 6 / Encore
  • Xevious – Namco Museum 2
  • Yie Ar Kung Fu – Konami Arcade Classics
  • Zippy Race – IREM Arcade Classics

 

“It’s Worth Noting….”

Its worth noting that there are some top homebrew arcade emulators for the Sony PlayStation.
The most notable of these is the “Retrocoder Arcade Collection” by Anthony Ball of Double Dutch Designs / Sinister Soft. This collection comes from Anthony’s three arcade emulation projects: “The Space Invaders Project”, “The Galaxian Project” and “The Phoenix Project”.
Each project emulates the specific stated hardware which then allows any associated roms that worked with that hardware to be compiled into a PlayStation executable.
24 of the best games that are emulatable (Is emulatable even a word??) from Anthony’s work are contained on the “Retrocoder Arcade Collection” which is available for download from here.

 

3D Isometric game engine in Blitz 3D

Having not written any code of any great interest in recent months, or writing code for games that start to suck… I have gone back to an old idea of writing a 3D Isometric game engine in Blitz3D. The basic idea was for anyone to be able to write a simple text file and provide some specifically names textures and sprites and have an Isometric game running. Large task!

 

Initially I experimented with a tiled floor drawn at an Isometric angle, as in all floor times rotated and span to provide a correct isometric projection.

 

The first issue was flattening the screen. Using Blitz 3D to view the floor, you get a curved mirror perspective style view of the screen which doesn’t look particularly isometric. This can be flattened out by moving the view camera a long distance off, and then using the camera zoom function to zoom back in to what you are viewing. This flattens the screen out nicely. I then did a bit of maths to work out tile separation and fiddled with the camera position and zoom and finally superimposed a picture from Knightlore over the top to see if the angles for the Iso view were good.

 

IsoTest1

 

Looked pretty good angle wise when compared to the original legend of an Iso game!

 

Almost immediately after this I had a “Slaps Head” moment… Why am I individually twisting each tile and making things thoroughly difficult when I can just render in standard 3D box shape and move camera to an isometric angle…..Would make things a shit load easier….

 

So I changed it to just render straight lines of tiles in a square. Then I read up on the maths of Isometric projection to get camera angle spot on, and then did the usual camera at a distance and zoom in to flatten out. This should be a true Isometric view, but with the Knightlore slide superimposed again, the angles of the floor didn’t seem to match up…

 

This could be due to Blitz3Ds render engine, or it could be that Knightlore wasn’t 100% spot on Isometric projection. Still the results are a bit better. I threw in some wall bricks too just for effect.

 

IsoTest2

 

As you can see, the two angled lines on the Knightlore screen are at a different angle to my Isometric box, despite my camera being positioned mathematically correct for iso projection.

 

After a bit of messing with the camera, I decided that the true Isometric view was a bit sheer and adjusted to a not quite Isometric projection with a shallower height and viewing angle that matches the Knightlore Isometric projection.

 

IsoTest3b

 

Now I could get on to some more important stuff…

 

Firstly I borrowed Werewulf from Knightlore as a test character for the game engine.
Next I added some data lines to allow options to be selected in the game. This will eventually become a data file for each game rather than data lines within the game.
One of these is the option for which type of Isometric game you are building. Either a flick screen small room game (Knightlore, treasuretrap, Alien8 etc), an Isometric game with larger scrolling rooms (Escape from Colditz) or a large Isometric adventure in a single large scrolling environment (Gunfright, Nightshade etc).
Choosing this assigns how the camera reacts to the player movement. flick screen small room game has camera fixed to centre of room. Either of the scrolling land games has the camera fixed to the movement of Werewulf.

 

blogger1
Pic above is of flick screen small room game. Camera view fixed on centre of screen while the character moves around it.

 

blogger2
Pick above is of scrolling environment. Camera moves with the character so that rather than character moving round the room, its more a room moving around the character effect.

 

Next I tried coming up with some standard effects that can be applied.
First up is Underwater with animated water caustics.
IsoTest5

 

And have done some playing with light effects. Flickery animated candle light for above water castle style shenanigans…

IsoTest5b

 

And tried a textured underwater floor rather than a flat one for games like Hydrofool
watercaustics

 

Will update this post as/when/if the project progresses….

Castle Quest – Micropower – BBC Micro – Remake in Blitz3D

cq1
After a while of inactivity, I’ve been tinkering with a 2D in 3D remake of Castle Quest using the now free Blitz3D. It all started when I was playing around with Blitz 3D’s different lighting effects. A flaming wall torch and a brick wall was all it took.

 

This has been going on for a bit to be honest, but Blitz 3D’s abysmal 3d object collision detection routines really put a stall on it, in that they either work badly or not at all. I even used the full tutorial example program to try and understand my errors, only to find out that that didn’t appear to work properly either. Anyway after some frustration I built my own collision routines and they actually seem to work so can crack on with the game. At this stage have an old vs new screenshot. Will post more if the project continues…

 

Original
cq2

 

Remake
cqr

Berzerk PC

Whilst I was messing around with Berzerk 3D, I knocked up a Berzerk port of the original arcade shooter for PC in Blitz Basic.
The robot AI still needs a bit of tweaking as they seem to be avoiding each other / corners of walls.
I think the code needs one last going over, a good clean up and some minor tweaks. But for now it seems good, functional and bug free! (Famous last words…)
Can be downloaded from here.

Berzerk 3D Remake…

Have done some work on a Berzerk 3D remake. I felt that while other remakes were good, they kind of lost the original frantic gameplay somewhat. My goal was to remake without affecting the gameplay.
Unfortunately it’s become a Frankenstein’s Monster mish mash of various ideas that when mixed together just don’t look good or work brilliantly.
retrotechy_berzerk_the_remake_1
It’s not been a completely wasted effort as have learnt a lot about 3D coding and found a lot of new stuff out about Blitz3D and I’ve enjoyed doing the work on it but as a completed game I think that it would suck!
Whilst the maze was fine I had trouble integrating a protagonist that matched to the background.
The idea then changed to having a 3D background but kind of using this as a background and then adding actual game graphics similar to the original over the top.
When this didn’t match up will I tried adding sprites that were more animated than the originals.
However overall 3D berzerk just doesn’t work for me, no matter how it’s tackled it takes too much gameplay away from the source material. The only way to make a decent Berzerk remake is to stick to the source material and sharpen it up some, that means 2D or 2D in 3D.
I will keep what work has been done up for download and anyone interested in the source code give me a shout and I’ll happily share.
retrotechy_berzerk_the_remake_2
There is a runnable version available for download here.