Jump to content

Xuel's Blog

  • entries
    12
  • comments
    31
  • views
    31,131

X:8


Xuel

4,662 views

X:8 is a new side-scrolling shoot-em-up-style game for the Atari 8-bit computer made for the ABBUC Software Contest 2013. The game will only be available to ABBUC members during a voting period. Later it will be released to the general public.

 

Credits

 

- Graphics / Production: José Pereira

- Code / Music: Xuel

- Sprites: TMR / STE'86

 

blogentry-21021-0-28272100-1378689010.png

 

The graphics are converted and inspired by several other 8-bit era games including Armalyte for the ZX Spectrum, Gradius for Nintendo Game Boy, and Nemesis for Game Boy. The music is a cover of the level one theme song of Ruff 'n' Tumble for Amiga.

 

Requirements

 

64K RAM

 

Keys

 

Start - Start or restart at level 1 or finalize high score entry

Select - Toggle music

Option - Toggle sound effects

Joystick - Move or enter high score

Trigger - Shoot

 

Game Play

 

Your mission is to fight your way past waves of enemy ships, ground weapons and obstacles to defeat the forces of the X:8 empire. Along the way you can collect eight different powerups dropped by enemy ships to enhance your fighting ability against enemy ships of varying strengths. Eight levels await you.

 

 

blogentry-21021-0-52021000-1378689013.pngblogentry-21021-0-62239900-1378689242.pngblogentry-21021-0-19846400-1378689013.pngblogentry-21021-0-86915700-1378689010.pngblogentry-21021-0-38884700-1378689011.pngblogentry-21021-0-83302400-1378689011.pngblogentry-21021-0-37238100-1378689012.pngblogentry-21021-0-84141200-1378689012.pngblogentry-21021-0-40754500-1378689025.pngblogentry-21021-0-80151500-1378689025.pngblogentry-21021-0-17201900-1378689026.pngblogentry-21021-0-01566900-1378689025.png

 

Powerups

 

blogentry-21021-0-71132600-1378690443.png Double shot - Improves primary weapons from a damage of 1 to 2.

blogentry-21021-0-93358600-1378690445.png Spread Shot - Slow weapon with damage of 2. Angle shots are ineffective in this version of the game.

blogentry-21021-0-44100200-1378690444.png Fire Ball - Slow weapon with damage of 3.

blogentry-21021-0-13902100-1378690445.png Piercing Shot - Fast weapon with damage of 3.

blogentry-21021-0-53281100-1378690445.png Ray Gun - Fast weapon with damage of 4.

blogentry-21021-0-78655900-1378690444.png Invulnerability - Places shield around your ship that prevents all damage for a short period of time.

blogentry-21021-0-22642500-1378690443.png Bomb - Instantly destroys all enemy ships on the screen.

blogentry-21021-0-06985500-1378690444.png Extra Life - Increases your lives by one up to a maximum of eight.

 

Technical Details

 

X:8 uses a combination of high-res and medium-res graphics modes. The middle part of the playfield is ANTIC mode 2 (Graphics 0). The borders and status bar are ANTIC mode 4 (Graphics 12). Player/Missile graphics are used to for the player's ship and various enemy weapons and obstacles. José conceived of the screen layout and described it on the Format War forums in May of 2013. Xuel got involved after posting an initial mock-up of a rendering engine for José's idea in that thread.

 

The engine runs at full frame rate (50FPS on PAL, 60FPS on NTSC). To achieve fast drawing speeds, many shortcuts and approximations are made. The enemies can only be positioned on a 4x2 grid. This means that only 8 different shifted versions of the enemy ships are needed. These occupy 72 characters of the ANTIC mode 2 character set that is active in the center of the screen. The rest of the characters are used for debris, powerups, stars, and enemy projectiles with various shifts pre-applied. Drawing consists only of changing the screen ram. No changes are made to the character set except between enemy waves when a new enemy template is pre-shifted into the character set. This happens in the background without disturbing the smoothness of the scrolling, hero movement or other enemy objects. A downside to this approach is that you will occasionally see blank areas when one object is drawn on top of another, but hopefully it doesn't detract too much from the game play.

 

Thanks

 

- ABBUC

http://www.abbuc.de/

- STE'86 for permission to use Armalyte sprites

- TMR for hero ship sprites

- phaeron for Altirra and VirtualDub

http://www.virtualdub.org/altirra.html

- fox for xasm

http://atariarea.krap.pl/x-asm/

- fox for inflate

http://atariarea.krap.pl/x-asm/inflate.html

- jaskier for TMC2

http://jaskier.atari8.info/

- AtariAge Forums

http://www.atariage.com/forums/forum/12-atari-8-bit-computers/

- Format War

http://formatwar.net/

- AtariOnline.pl

http://atarionline.pl/

- Tiled Qt

http://www.mapeditor.org/

- ImageMagick

http://www.imagemagick.org/script/index.php

- BitBucket

http://bitbucket.org/

 

Acknowledgements

 

- Armalyte ZX Spectrum

- Gradius Game Boy

- Nemesis Game Boy

- Ruff'N'Tumble Amiga

 

Greets

 

505, +Adam+, atari8warez, candle, CharlieChaplin, CreatureXL,

Cosine, drac030, emkay, Exin, Faicuai, flashjazzcat, foft, fox,

Heaven/TQA, Hiassoft, ilmenit, Irgendwer, ivop, JAC!, Johny,

Kaz, MaPa, Matosimi, Mclaneinc, miker, MrFish, Oswald, PG,

phaeron, popmilo, Rybags, sack-c0s, SimPiko, skr, snicklin,

STE'86, Stephen, stRing, Synthpopalooza, tebe, Tezz,

therealbountybob, TMR, w1k, xeen, xxl

 

Future Plans

 

We planned many more features but ran out of time.

 

- Enemy waves that come from the borders

- Enemy ships that shoot projectiles

- More enemy movement patterns

- Destructible border weapons

- Better ship weapons

- Large end bosses

 

Stay tuned for another release with these features and more after the contest period. :)

  • Like 8

7 Comments


Recommended Comments

Thanks!

 

The enemies are preshifted to 2 different horizontal positions and 4 different vertical positions within a 3x3 block of 8x8 ANTIC mode 2 characters. This means that they can be positioned on a global 4x2 pixel grid by drawing the appropriate characters into the appropriate screen ram addresses.

 

Yes, I forgot to mention that the engine continuously cycles between eight different character sets every four frames. Each character set contains a different enemy pose preshifted to the 4x2 grid. Unfortunately this means that all enemies must have the same pose at any given time and the debris animation can't start with an arbitrary pose at an arbitrary time. The star movement is partially baked into these character sets so that only two slots are devoted to them. Every slot is precious given the 128 character limit.

  • Like 1

Thanks for explanation. now it completely makes sense. it is surprising that 2 horizontal positions are enough to make fluent movement...

This is probably caused by fact that whole screen scrolls horizontally, so that rough horizontal movement of enemies looks quite fluent.

i assumed that charset cycling by looking at explosions/debris. it is quite obvious, but still looking good... also fact that debris is not preshifted does not lower the way it looks.

 

I'm looking forward to play this game.

I hope you are going to finish it this year and it will not remain unfinished for long time... like games by morons.

I just played this on real hardware for the first time last night (XEGS), and it is the best pure side scrolling R-type like on the machine. Atari Blast is great too.

 

Just one question, I know this is already pushing the limits of the machine, but could the multicolored (5 color) 40x24 character mode be used for a more colorful experience for the enemy, or would that take up too much screen ram?

Don't get me wrong, I love it as it is, and it's a model for re-makes of all kinds on the 8-bits (side side side scrolling shooters).

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...