8BP

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search

8BP (8 bits of power) is a library composed of several RSX commands for creating games using Amstrad BASIC and C

Description


8BP allows BASIC programmers to create platform games, arcade, etc without the need of compiling. Games run on top of BASIC interpreter.

Since version v40, 8BP is also compatible with C, and therefore you can compile if you want.

8BP is not a game engine. It does not force programmers to use certain script languages or game structure. In fact, 8BP is a list of new commands oriented to develop games.

8BP is free and open source, available at https://github.com/jjaranda13/8BP, including sources, demos, manual and games There is a blog (in Spanish) by 8BP author (Jose Javier Garcia Aranda) at http://8bitsdepoder.blogspot.com.es/

Manual (available at https://github.com/jjaranda13/8BP) is in Spanish....but now I am translating it to English! if you want to help me, you are welcome. There is an English draft version uploaded

Videos at youtube 8BP channel

twitter: @8bitsdepoder

Main features:


  • 32 sprites with clipping, overwrite, ordering (4 order types) and collision detection (mode 0 and mode 1)
  • 4 modes of sprites sorting, based on Ymax or Ymin, partial or complete
  • sprite/image flipping (mode 0 and mode 1)
  • animation sequences, and macro-sequences. Any sprite can change automatically its animation sequence depending on its parameters Vy,Vx
  • multi-directional scroll (based in command MAP2SP)
  • allows in-game music based on WYZtracker 2.0.1.0 tool (command MUSIC) and allows simultaneous MUSIC with FX channel and SOUND commands
  • layout (which is a kind of "tile map"), for maze style games (like Pacman) with collision detection.
  • only takes around 8 KB, leaving up to 25 KB for BASIC programs. 8BP reserves 8KB for sprites and 1.5KB for music, but your BASIC program can have up to 25 KB length
  • STARS command for sand effects, rain, snow and stars planes.
  • commands for move N sprites at the same time (such as MOVERALL, AUTOALL, ROUTEALL...)
  • routing sprites through user-defined routes, simplifying game logic. These routes can be loopings, jumps, complex trajectories or whatever
  • inks animation command (RINK) for racing cars games, bricks. etc
  • complete sprite editor included (SPEDIT).
  • customizable mini character set for printing in mode 0 (using command PRINTAT)
  • Pseudo 3D capability for "pole position" style games (racing games, tanks, etc)
  • Compatible with C thanks to a wrapper (8BP.h), and provides a miniBASIC (minibasic.h a set of 18 commands similar to BASIC) to simplify your programming in C

8BP is always under development, but new versions always are backward compatible. The current version is V42

forum thread


http://www.cpcwiki.eu/forum/programming/8bp/


Available Games created using 8BP


  • mutante montoya (platforms /maze)
  • anunnaki (space ship arcade, vertical scroll)
  • nibiru (space ship arcade, horizontal scroll)
  • mini-pong (a simple version of classic "pong")
  • mini-invaders (a simple version of classic "space invaders")
  • fresh fruits & vegetables (platforms with horizontal scroll)
  • 3D Racing one (3D racing game)
  • Space Phantom (a "space harrier" style game)
  • Frogger Eterno (a classic "frogger" version in 8BP)
  • Eridu: the space port (inspired in the classic "scramble")
  • Happy Monty: a tribute (or second part) of classic Mutant monty
  • Blaster Pilot: a spaceships arcade with multidirectional scroll. style "Time pilot" or "asteroids"
  • Zampa Manzana: an arcade game developed by Riper & music by Xeno
  • dogfight: an arcade with airplanes and horizontal scroll. created by Ivan Avila
  • NOMWARS: a "commando" style game (vertical scroll, shoot'em up)
  • SPACE PANIC: clon of classic "Space Panic" by adolFito & music by xeno
  • Paco, el hombre: a pacman style game
  • Spaceman Kerl: clon of "paracaidista kerl" by adolFito