Wednesday, 19 October 2011

Match Em from Bongoboo Games!

Mike (my brother) and Immy Oakley (my sister-in-law) have just released their first i-Phone game!
I`ve had a sneak preview and can say it's a very playable game and well worth parting your hard-earned 69p for.

More details can be found at the following website;

And, finally, here's a video showing it in action;

Untitled from bongoboo games on Vimeo.

Sunday, 2 October 2011

Work slowly continues

Whilst everyone has been outside enjoying the unusually warm October, we've been busily working on some level design ideas for Gloop Troops 2. At the moment we're playing around the idea of multi-screen levels. We wanted to expand a bit more on the levels of Gloop Troops but are unsure on what the best implementation for GT2 will be.

The ideas currently floating around are:

  • Allow levels to be made up of multiple screens, with the player freely able to travel between them.
  • Have multiple screens make up a level, but you only access the next screen once you've completed the current screen.
  • Keep with the original design and only have single screen levels.

Each idea seems to have some interesting pros and cons. The first idea makes the game feel much more open and gives some interesting level design space as now each level is 3 or 4 screens in length. We could either have a selection of pickups that you need to collect in order to finish the level, or have a single pickup that you need to find in order to complete the level. The multiple screens and freedom of movement makes the game feel quite different to it's tighter arcade parent. You no longer feel as constrained in your movement and stunning enemies to run past them feels too powerful.

The second idea feels more like the original Gloop Troops, you have to deal with a screen before you can advance to the next screen. The disadvantage to this method is the screens don't feel part of a cohesive level  :-(

The third option of only have single screen levels is still a possibility, though it'll mean either adding more level markers to the world maps, or creating more world maps. As we're running out of memory pages on the 128k Spectrum, we'd need to put more level markers within a map, and that makes the map look busier and not as clean.

Wrk continues - it's possible that we might split the project off into a separate future project which can utilise some of these features!

Sunday, 28 August 2011

The making of Gloop Troops: The Lost Crown

Gloop Troops: The Lost Crown is now out as part of the Little Shop of Pixel titles on Spectaculator! here is our 'making of' for this game, which almost never got released!

The Lost Crown started development whilst we were finishing up the development of Gloop Troops. Whilst developing Gloop Troops, we found we were creating many more levels than what we had space for in the final game. Andy was continuously experimenting with both level design and what he could graphically achieve with our level tile set.

It was a difficult choice picking the final 30 levels for Gloop Troops. We knew that we wanted some tutorial levels for the start of the game, and so had to allocate around 5 or 6 level slots for those. These tutorial levels were designed separately and were crafted so that each one would teach the player one or two of the game's mechanics.

After picking the levels we wanted we for Gloop Troops we found that we had quite a few levels left lying around, and came up with the idea of doing a B-side game! The B-side game would be on the other side of the tape and would act as a Gloop Troops 1.5, a little something extra for those who we'd given a copy of the physical tape to. We'd also planned to release this B - side game shortly after Gloop Troops, so that anyone who enjoyed the game could have a little more to play whilst we went back to our adventure game.

We took a good look at the levels which hadn't made it into the final copy of Gloop Troops. Some of these levels re-visited themes which we thought were already included in Gloop Troops ( such as cycling up and down the screen ), some of them had their difficulty either a little too high or too low, and some of them looked similar to other existing levels.

Andy selected the 15 levels which he liked the most and set to work. Each level was to be re-skinned and fleshed out properly. As our set of levels within this 'lost levels' collection was reduced, we would be able to increase the number of graphical tiles available to each screen to give them all a more striking look!

Gloop Troops: The Lost Levels - Level 1

More space for tiles meant we could radically change the look of each level if desired.
Fewer levels meant more space for graphic tiles and tile configurations!

More custom tiles for each level!
We released Gloop Troops whilst we were still working on our lost level collection, now titled Gloop Troops: The Lost Crown. The game was finished and we created a small print run of tapes to hand out to some friends and family who'd put up with us talking endlessly about Spectrum hardware, and compressing code down into just a few K :-)

However, from the feedback of Gloop Troops, it was clear that whilst Gloop Troops was enjoyed as a game, there were some omissions which we'd either missed ( such as adding music / configurable keys ) or hadn't considered. Rather than release another game a month later, which felt similar to our previous game, we instead decided to tackle a full Gloop Troops 2. We also once again pushed our adventure game back until this was completed.

A year and a bit has gone by and Gloop Troops 2 has snowballed into quite an epic project! We're hoping to release it soon, but there's always one more feature to write or tweak. It has ended up resulting in a complete re-write of the Gloop Troops code base ( everything now has to work with the 128k memory pages )! So its development has taken a longer than initially planned.

When Jon contacted us about Spectaculator we thought it would be an excellent opportunity to re-visit Gloop Troops: The Lost Crown and to give it a unique release, and to also be a bonus for his emulator! We re-visited the game and made a few tweaks for iPhone controls ( such swapping name entry to left and right on the stick so that we could keep up as a jump button ). We also re-visted some of the levels as they were a little too tricky with touch controls ( specifically - there is a level which had a 2 block gap to fall through - this proved to be much too fiddly ).

We're very excited that The Lost Crown has finally found a home, and we hope that you enjoy playing it!

Sunday, 21 August 2011

Little shop of pixels is now on the iPhone!

Thanks to the awesome work of Jon Needle, our games are now available as part of free iPhone version of Spectaculator!

But that's not all :-)

We've also provided our previously unreleased game as an exclusive for the emulator! Gloop Troops: The Lost Crown!

We'll shortly post up a making of for Gloop Troops: The Lost Crown and why it was previously unreleased in a future blog post!

Monday, 25 July 2011

More news to announce shortly

Some very exciting developments have been occurring lately and we're very excited to talk about what we have coming up ( along with Gloop Troops 2! ). In the mean time I've re-edited the Spectrum sprite rendering techniques post as it needed a bit more information of what's involved with rendering sprites on the Spectrum and what we did for Gloop Troops and Crimbo!

Wednesday, 25 May 2011

Cutscreens - Spectrum conversion

I`ve spent the last couple of evenings converting the concept sketches to the Spectrum.

Friday, 20 May 2011

Cutscreen Designs

Here are the designs for the cutscreen images shown after the player completes the first island area.
The temple is the focal part of the second island area so we wanted to base the cutscreens around this.

Wednesday, 11 May 2011

Monday, 9 May 2011

First end of level boss concepts!

Below is Andy's concept sketch for our first end of level boss!

Lots of work still to do to get this guy into the game!

Sunday, 1 May 2011

World map and level art montage!

Below is Andy's montage of our world maps and level art! Each of our islands will have its own tile set to help uniquely style it. Each level on an island will follow the island's style. This should help make the game feel varied and consistent :-) In the below images we have each island map followed by a level from that island.

We are able to have this many tile sets as we are targeting the 128k ZX Spectrum for Gloop Troops 2. The extra memory is being put to good use to store all the tile set variations
that we'll need for the game :-)

Wednesday, 20 April 2011

More Super Mario Bros 3 design lessons!

From an excellent blog post by Radek Koncewicz on gamasutra we have some more lessons on level design by deconstructing Super Mario Bros 3!
Still playing around with the map control at the moment - we have currently opted for a Pac-man style control system whilst moving around the map! This gives the map screen a nice responsive, arcade game-like feel. Perhaps we should add some enemies to avoid on the map?

Thursday, 14 April 2011

Still busy working away

Hopefully we'll have some more screen shots and concept art ready to post up soon! Currently we're playing around with the layout and controls of the map screen for Gloop Troops 2. Each world map is currently fully accessible! The player can choose to play any level on the world map - only when they've defeated all that world's levels will they go to a show down with the island's boss. Control wise we have implemented something of a pac - man style control scheme. Pressing the joystick once will cause Pokey or Peeky to walk in the direction indicated. Our heroes will stop only when they hit a level or wall piece. Hopefully this'll feel just right :-)

Monday, 28 February 2011

More in development screens

Here we have some of our 'cutscreens' converted to a Spectrum palette :-) Andy is experimenting with the images by moving them into a Spectrum palette. The resolution of the images shown isn't within the Speccy's 256 x 192 just yet.

But it gives you some idea of where we're going with the story and characters!

Sunday, 27 February 2011

More Gloop Troops 2 in-development screens!

Below are the mockups for Gloop Troop 2's intro sequence! This time round Pokey and Peeky arel collecting rare ingredients needed to cure the Princess!

Thursday, 17 February 2011

New Gloop Troops 2 screen shots

Progress on Gloop Troops 2 is under way! First to be shown is our big new feature to the game - Island maps!

Now the player will have choice over which level to tackle next! Gloop Troops 2 will be set across 4 different islands - each one containing a unique theme! Posted above is the in-development shot of our Aztec styled island 2 ( currently unnamed ). Clearing an island requires Pokey and Peeky to complete all the levels on that island. Only when all the island's levels are completed will they advance to the island's boss! Once an island's boss is defeated, our heroes will make their way to the next island.

Next up is an in-development shot of one of our jungle themed levels:

In this shot we see Pokey and Peeky wearing Knight armour! Our heroes have been Knighted and sent on a special mission by the King and Queen. Story will play a stronger role in Gloop Troops 2, with a return of the atmospheric 'cut-screens' seen in Crimbo!

Tuesday, 8 February 2011

Spectrum sprite rendering techniques

There's a great discussion on sprite rendering techniques taking place on the World of Spectrum forms. A few home computers such as the ZX Spectrum and Amstrad CPC 464 did not provide any special hardware for handling sprites, unlike the Commodore 64. This hardware limitation forced programmers to invent their own routines for rendering graphical images on to the screen.

Not having support for hardware sprites adds an extra strain to the poor old CPU. The CPU must perform all the sprite drawing work and run all the game logic within a frame. As the CPU's time is divided between many tasks, we will tend to see fewer sprites on screen on these platforms.

However, by not being forced to draw graphics in a certain way, the programmer is freed to implement custom drawing routines for different types of object! For example, isometric game rendering is made much easier by having full control over a sprite's rendering function. Being able to partly mask sprites allows characters to be visibly obstructed by the pseudo 3d geometry in isometric games.

In game's such as Gloop Troops and Crimbo, we were able to take advantage of a custom rendering function when drawing enemy sprites, as opposed to drawing the player! The player sprite had more rendering restrictions placed on them than the enemies. For example, the player's sprite could regularly become partly obscured when jumping through a platform. Therefore his rendering function needed to only draw the visible part of his image. The enemy sprites however, did not have to pass in front of any geometry. This allowed us to simply 'stamp' their image on screen, avoiding any costly pixel comparisons. We performed this stamping through the use of the LDI instruction. The Spectrum screen is effectively monochrome with 1 bit representing 1 pixel. One byte is therefore 8 pixels of data. When writing a pixel to the screen you need to see which byte that pixels lies inside and then set the appropriate bit.

To speed up our sprite rendering we'd go down a different logic path depending on whether the enemy was on an 8 pixel boundary or not. All of our enemies were 16 pixels wide. Therefore, when on an 8 pixel boundary, we can copy the data to the screen through the use of 2 LDI instruction pairs for each row of data. If the enemy didn't have an X co-ordinate on an 8 pixel boundary then we knew the enemy would require 3 LDI instructions per row line of pixel data.

Also - to speed things up we didn't AND the enemy sprite data with the background image. We thought this was a reasonable compromise at the time, but did result in the partial masking out of any overlapping sprites. We also sped up the image copying process by storing pre-bit shifted versions of our sprite data. This was expensive in terms of memory, as each sprite frame had to be stored 8 times ( once for each possible bit shift ). However - this meant we could easily copy the data to the screen without the need to calculate the bit pattern for each row of 16 pixels. Otherwise we'd have to load 16 pixels of data ( 2 bytes ) then shift that data along before rendering.

So as you can see, by not having hardware sprites, the programmer is given opportunities to tailor rendering code for game objects and create effects, such as those seen in isometric games :-)

Monday, 7 February 2011

Concept sketches for Gloop Troops 2

Fresh from Andy's drawing board are some new character sketches for Gloop Troops 2! There's tons of character and story development work being done alongside the game's development. Should be our biggest and greatest game yet!

Gloop Troops in Return magazine

Return have an article on Gloop Troops this month!

Sunday, 30 January 2011

Work continues...

Things have been very busy here at the Little Shop of Pixels! Over the last few weeks we've been busy making steady progress on Gloop Troops 2. Andy has done lots of experimenting with the Spectrum's colour palette and has nailed the look of our big unannounced feature! We will be posting screen shots for a big reveal shortly :-)

Andy has created all of the art assets for Gloop Troops, Crimbo, and our previously aborted Spectrum game ( more on this in a future post ). Through several years of work he has developed a high degree of mastery of the Spectrum's colour palette. So you can expect to see some very good things soon!

Meanwhile I've been getting my head around how we can best take advantage of the extra memory on the 128k Spectrum. I've gone backwards and forwards on this one, but think our memory usage plan is now in place. Getting to this point has unfortunately required a big re-write of the GT2 code base. The end result of this extra work is that the game is now capable of supplying richer environments than our previously released games.

We've also got an article on Gloop Troops in the 8bit Return Magazine!

We are hoping to post up some in-development shots of the game very soon!

Thursday, 20 January 2011

Top tips for designing a platforming game

I stumbled across this link today - I found it to be very relevant to the types of games we're making here at the Little Shop of Pixels!

We were a little guilty of making the collision box larger than needed for the Xmas tree enemy in Crimbo. Next time we might use collision masks or multiple collision volumes to represent an enemy.

Point 5 - having a highly reactive character - is something we have strived for in our games. We update the player every frame, unlike the enemies which update every other frame. This allows the player's character to feel very responsive to the player's control. Sluggish controls are often found on early 8bit computer games. Normally this is due to taking multiple frames to read the player's input and draw the response on screen. Bad controls let down action titles and highlight the performance weaknesses of the platform.

Developing new games on old machines carries with it a lot of extra work. As well as developing a fun game which will entertain the player, but you also have to overcome the tight limitations of the machine.

We have always aimed to fully push each platform we develop on and to make sure that each game feels that it hasn't been compromised by the machine it runs on.

Friday, 14 January 2011

Differing versions and the trouble with post release fixes

Publishing updates for a retro game out in the wild is tricky business! Modern PC and console games have the luxury of being able to easily connect to a server, download and apply then patch before relaunching the game.

This fantastic functionality can be hidden from the player. At worst the system can prompt them that the update process is about to begin!

Older platform's, without any online connectivity, do not have this luxury. Instead the best we can do is provide a version number on the game's title screen to help identify it. We then need a way to inform the player that a new version of the game is available for download.

Because of the extra hurdles involved, we've been reluctant to implement feature suggestions into titles we're already released. For example, with Gloop Troops we'd received some excellent feedback ( requests for music, keyboard control and a re-jig of the level order ). But by the time we were able to collect all feedback there had already been 4 versions of Gloop Troops made available over the internet!

One was the original version, then there were two hacked versions - one with music and one with a change to the title screen to circumvent a bug on real Spectrum hardware, and finally the official fixed version we'd released.

This makes it more difficult for anyone reviewing the game. If we release a version, then collect feedback and release another version then you may have conflicting reviews on game sites. We would also need a solid method of communicating the new version to existing players.

There are a number of solutions to this. We could provide a version number on the title screen along with a URL and a message informing the player to check for updates, but this feels messy and convoluted. This may be an interesting method to pursue if we explore an episodic game series.

The current solution we have in mind for our upcoming tiles is to have a beta period for our future titles. This way we can collect feedback and catch any issues with the game whilst it is being developed. The result of this extra testing should result with us releasing solid, quality games which we can all be proud of :-)

Wednesday, 5 January 2011

Level design lessons from Super Mario Bros 3

We are constantly looking for sources of inspiration whilst development continues on our next game. As luck would have it I stumbled across this post yesterday:

The post does a great job of breaking down the early game of Super Mario Bros 3. Concepts like gradually introducing new mechanics to the player, teasing them with possibilities, and rewarding exploration are things we want to implement.

How these design lessons fit into Gloop Troops 2 however remains uncertain. We are currently re-evaluating all the work done on Gloop Troops 2. We're questioning every decision and making choices about whether it's better to stick with the current formula, or to take the game into a bold new direction.

Monday, 3 January 2011

Happy new year!

Happy new year all! There's lots of work to do on our upcoming games - hopefully we'll be ready to make some exciting announcements in the not too distant future!