A downloadable game for Linux

Download NowName your own price

Turbo Racer 3000!

Turbo Racer 3000 is an old-school top-down racing game where you are in control of your Firrara Testosterone and you must drive 10 miles at top speed! The fastest drivers gets the most points.

Linux users, download the AppImage here!

The game runs is programmed in Guile Lisp and Chickadee. It runs on Linux only for now.

Controls are:

turn left
WUP
accelerateDRIGHT
turn right
SDOWN
brakeALEFT


Source code is available on Gitlab.

Updated 18 days ago
Published 22 days ago
StatusIn development
PlatformsLinux
AuthorGene Pasquet
GenreRacing
Tags2D, lisp, Pixel Art, Top-Down

Download

Download NowName your own price

Click download now to get access to the following files:

turbo-racer-3000-1.0.tar.gz 14 MB

Comments

Log in with itch.io to leave a comment.

I noticed that turbo.scm does (getenv "APPDIR") and assumes the result is a string. I did not have this variable set at all, so getenv returns #f and the program crashes. As a workaround I launched the game like: APPDIR="" guile turbo.scm

If you do (or (getenv "APPDIR") "") or something that should take care of this problem.

For anyone on Guix, you can run the game from the source directory like so:

APPDIR="" guix shell guile guile-chickadee -- guile turbo.scm

Deleted 15 days ago

Thanks for letting me know. I've now fixed this issue on my `main` branch.

[ ] » ./turbo-racer-3000 
./turbo-racer-3000: line 9: cd: too many arguments
Backtrace:
In ice-9/boot-9.scm:
  1752:10 13 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
          12 (apply-smob/0 #<thunk 7f07269170c0>)
In ice-9/boot-9.scm:
    724:2 11 (call-with-prompt ("prompt") #<procedure 7f0726929d20 …> …)
In ice-9/eval.scm:
    619:8 10 (_ #(#(#<directory (guile-user) 7f072691cc80>)))
In ice-9/command-line.scm:
   185:18  9 (_ #<input: string 7f0726916850>)
In unknown file:
           8 (eval (use-modules (chickadee cli play)) #<directory (g…>)
In ice-9/eval.scm:
   721:20  7 (primitive-eval (use-modules (chickadee cli play)))
In ice-9/psyntax.scm:
  1230:36  6 (expand-top-sequence ((use-modules (chickadee cli #))) _ …)
  1222:19  5 (parse _ (("placeholder" placeholder)) ((top) #(# # …)) …)
   259:10  4 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) …)
In ice-9/boot-9.scm:
  3927:20  3 (process-use-modules _)
   222:17  2 (map1 (((chickadee cli play))))
  3928:31  1 (_ ((chickadee cli play)))
   3329:6  0 (resolve-interface (chickadee cli play) #:select _ # _ # …)

ice-9/boot-9.scm:3329:6: In procedure resolve-interface:
no code for module (chickadee cli play)

How do I run it?

(1 edit)

Hi Cadence, sorry that you're struggling to run TR3000. Could you let me know what linux distro you're running?

Also if you could edit the file `turbo-racer-3000` and add the following between lines 8 and 9, then paste the terminal output again:

08 export CHICKADEE_DATADIR="$rootdir/share/chickadee"
09 echo $rootdir
10 cd $rootdir

Thanks!

hello! I'm having the same error when trying to run it on arch linux.

I added

echo "ROOTDIR IS ${rootdir}"

and got

ROOTDIR IS /home/me/Downloads/turbo-racer-3000-1.0

The bundle was produced on Debian (stable), which I think has much older libraries than Arch. I'll produce a second bundle for Arch, and hopefully that will solve you all's problems.

You can find a Arch-ready bundle at the following address:

https://gitlab.com/binary-ec/turbo-racer/-/raw/main/turbo-racer-3000-1.0-archlin...

The arch bundle works, thanks!

Hi Oxca55le, you can try running the new AppImage package instead.

You can find a Arch-ready bundle at the following address:

https://gitlab.com/binary-ec/turbo-racer/-/raw/main/turbo-racer-3000-1.0-archlin...

Trying the new bundle.

I get the same error until I move the game’s folder to a path without any spaces in it. It used to be in the “Spring Lisp Game Jam 2024” folder, now it’s in “SpringLispGameJam2024”.

I get this new error:

Backtrace:
In ice-9/boot-9.scm:
   222:29 19 (map1 (((srfi srfi-1)) ((srfi srfi-4)) ((srfi #)) (#) …))
   222:29 18 (map1 (((srfi srfi-4)) ((srfi srfi-9)) ((srfi # gnu)) …))
   222:29 17 (map1 (((srfi srfi-9)) ((srfi srfi-9 gnu)) ((srfi #)) …))
   222:29 16 (map1 (((srfi srfi-9 gnu)) ((srfi srfi-11)) ((sxml …)) …))
   222:29 15 (map1 (((srfi srfi-11)) ((sxml xpath)) ((sxml #)) (#) …))
   222:29 14 (map1 (((sxml xpath)) ((sxml simple)) ((chickadee #)) …))
   222:29 13 (map1 (((sxml simple)) ((chickadee config)) ((# # #)) …))
   222:29 12 (map1 (((chickadee config)) ((chickadee data #)) ((…)) …))
   222:29 11 (map1 (((chickadee data array-list)) ((chickadee #)) # …))
   222:17 10 (map1 (((chickadee freetype)) ((chickadee math)) ((…)) …))
  3327:17  9 (resolve-interface (chickadee freetype) #:select _ # _ # …)
In ice-9/threads.scm:
    390:8  8 (_ _)
In ice-9/boot-9.scm:
  3253:13  7 (_)
In ice-9/threads.scm:
    390:8  6 (_ _)
In ice-9/boot-9.scm:
  3544:20  5 (_)
   2836:4  4 (save-module-excursion #<procedure 7f6c10e436c0 at ice-…>)
  3564:26  3 (_)
In unknown file:
           2 (primitive-load-path "chickadee/freetype" #<procedure 7…>)
In chickadee/freetype.scm:
    55:14  1 (_)
In chickadee/config.scm:
     46:7  0 (dynamic-link* ("libfreetype"))

chickadee/config.scm:46:7: In procedure dynamic-link*:
could not find library ("libfreetype")

But I already have the freetype and freetype-devel packages installed on my system.

Hi Cadence, you can now get the AppImage for this game, which should run a lot easier: https://gitlab.com/binary-ec/turbo-racer/-/raw/main/turbo-racer-3000-latest-x86_...

Thanks, that’ll make things easier! It still seems to have some problems though: /tmp/.mount_turbo-ESP3QY/usr/bin/guile-3.0: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory

(+1)

Holy crap, we should make this a packaging Jam instead. I feel that 90% of the effort goes there and 10% to actually making the game! 🙄

I feel that.

Easy of packaging probably depends on which programming language you’re using. Packaging was easy for my Racket game. Even the person running BSD got it working!

Hi Cadence. Apparently on Arch linux you can install the `libxcrypt-compat` package, that will get rid of this issue. Otherwise I'm currently trying to build a appimage package (and testing on arch) that will include that library, but it's trying my patience...