2024-10-28 20:02:50 +11:00
2024-06-07 11:30:44 +10:00
2024-06-07 11:30:44 +10:00
2024-09-28 12:51:31 +10:00
2024-10-28 20:02:50 +11:00
2024-06-07 11:30:44 +10:00
2024-10-28 19:53:43 +11:00

Fun Columns SDL

Description:

The aim of this project is to implement the original Free Tools Association (FTA) version of their Fun Columns game in SDL.

For those who may not have heard of the Free Tools Association (FTA) and their influence within the Apple IIGS community many decades ago, a website is still maintained by Olivier Goguel (one of the original members of the group).

Please Note: This source code is very much in a state of flux and is currently a bit of a mess. I will provide updates as best as I can 😄

UPDATE:
Game in playable state now, feature complete. still needs a bit of a polish.
I really enjoyed coding this game. I hope you find it enjoyable.
Much thanks to Olivier Goguel for inspiration and moral support. 😄

Change-log:

  • 04/05/2024 - Foundation code.
  • 20/07/2024 - Making progress, albeit slowly when I can find time between work and personal life.
  • 12/08/2024 - Code refactoring and tidyup.
  • 18/08/2024 - Code starting to come together and take shape. Overall structure begining to settle. Squashing bugs.
  • 30/08/2024 - It's been four months already. More incremental progress.
  • 16/10/2024 - All features nearly complete, bugs need to be squashed. Code still a bit rough around the edges.
  • 28/10/2024 - Feature complete

Compilation

  • Make sure to install the following development libraries

    1. SDL2
    2. SDL_image 2.0
    3. libsodium
  • Type the following commands:

cd src
make

Screenshot

Fun Columns

Misc.

  • Run from command line or GUI
  • To move game window using GNOME (Press Super [win] key) and right click/hold mouse) anywhere in game window.

Todo

  • high score dotfile (in user home dir)

In Progress

Nice to have

  • Intro (page / music)
  • Game play (music / Sound FX)

Done

  • Cluster detection
  • Display updated board (render/update)
  • No more moves / Game over
  • Random brick selection
  • Brick: Rotation [R], Left [], Right []
  • Random column selection
  • Display in play brick (falling brick)
  • Backdrop Colour selection [^C]
  • About screen [A]
  • Menu screen
  • Info screen [I]
  • Pause [P]
  • Quit [Q]
  • Restart [^R]
  • Keyboard input (Event Handling)
  • Invert backdrop gradient [ctrl + X]
  • Next piece preview [N]
  • Tile Shape [^S]
  • Brick (drop) [SPC] - improvment needed
  • Game (loop / timing / logic) - still some issues need to be ironed out - improvment needed
  • Brick (cluster elimination & explosion)
  • Levels [1 - 6]
  • High scores (entry & panel)
  • Status (panel) - needs improvment
  • Score (points allocation) - needs improvment

Bugs

  • Visual artifacts
  • intermittent tile elimination issues

Author(s)

  • Apple IIGS Version: FTA (1990/91)
  • SDL Version: Jason Bou-Samra (2024)
S
Description
No description provided
Readme
14 MiB
Languages
Assembly 86.9%
C 13%
Makefile 0.1%