Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

David Thompson

209
Posts
9
Topics
56
Followers
35
Following
A member registered Dec 12, 2015 · View creator page →

Creator of

Recent community posts

awesome! glad to hear it! I think Safari 18.2 stable will be out within a week which means it won't be long before all updated macos/ios machines can run hoot programs.

Yeah, that would do it. reflect.js is where the Scheme class is defined.

I get the same error, unfortunately.

I don't think it would be fair to all of the participants to change the submission date when we're near the end of the jam. The jam is 10 days long on purpose, to give everyone a better chance to find some time to participate vs. 2-3 day intensive jams.

No offense taken! Was just curious if we were missing something I wasn't aware of.

Using watercolor art reminds me of David O'Toole's "Testament of the White Cypress", a game made in Common Lisp ~10 years ago. Check out the png files here to see what I mean: https://gitlab.com/dto/cypress

What does "proper R7RS" mean here? eval? R7RS-small was the initial target spec for Hoot, which it supports sans eval (which it will get soon).

We're pretty loose about the requirements here, so that sounds fine. What wouldn't be in the spirit of the rules is if the resulting game code you submitted was mostly Rust with just a bit of Lisp on top. One of the reasons for having this jam is to encourage participants to advance what can be done in Lisp, as there are plenty of jams out there for Rust/Godot developers.

It's both okay and recommended to prepare things in advance! A lot of participants make improvements to their own personal libraries/engines before the jam begins. The rules state that you must publish the source for the things you've prepared before the jam starts. That way, participants can judge based on what you did during the jam. If you make a rough sketch of a game now, then make sure you publish that source code and link to it, making it clear that it is the starting point for the work you're doing during the jam. Iterating on an existing game is a perfectly valid form of participation for this jam.

If you are interested in making a web game using Scheme then Hoot is a great option for you! Hoot is a Scheme to WebAssembly compiler that supports most of R7RS-small and some Guile extensions such as delimited continuations (useful for scripting games via coroutines). At Spritely, we recently released version 0.5.0 and updated our game jam template Git repository that has everything you need to get started making 2D games.

The template repository includes:

  • Bindings to the necessary web APIs to make an interactive game with HTML5 canvas
  • A Makefile for compiling, running a development web server, and generating a .zip bundle for uploading to itch.io
  • A very simple Breakout-like example game that demonstrates how to put all the pieces together

Some games made with Hoot for past jams:

I'll do my best to help anyone that uses Hoot for the jam, whether here in this forum, on the official Spritely forum, or on the #spritely channel on the Libera.Chat IRC network. Have fun!  🦉

Sounds like your Chrome and Firefox are too old. You need Chrome 119+ or Firefox 121+.

Since people only play these games for a few minutes we wanted to err on the side of a gentle difficulty curve. Thanks for playing!

I thought the music for Tower Institute of Linguistics was great! So did my wife, who walked into the room while I was playing and was immediately drawn in by it. Thanks for sharing your jam experience!

Unfortunately the Linux binary bundle didn't work for me on Guix. I think the ELF binary has some baked in assumptions that don't hold on Guix. I might try to build from source another time.

Took me awhile to get the hang of what was going on but after that I was having fun raising my little gnome armies. My session ended with an "attempted to get out of range pixel" error, unfortunately. Nice job on the art and UI!

For Guix users, I launched the .love file like this:

guix shell love -- love gnomic-vengeance-0.1.0.love

I'm not very good and kept getting caught. :( I couldn't figure out a way to retry without closing the game and re-opening it. Did I miss something? Would make it easier to try again. Thanks for using Chickadee!

The easiest way for me to play this was to clone the Git repo and use Guix:

git clone https://forge.snamellit.com/pti/bloatrunner.git
guix shell -f guix.scm -- bloatrunner

It's okay to stop whenever you've had enough. :) We just wanted a bunch of puzzles for those that got hooked.

This game feels very 80s with the graphics and music! It's a simple but fun game and I can't tell you how cool it is to see someone else publish a game built with Chickadee. Would be cool to have some more stuff to do in the game but I appreciate how simple the controls are and how easy it is to just start playing. Nice job!

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

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

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.

Neat idea! Simple but pleasant presentation. It crashed a few levels in but I was getting to the point where I'd have to refresh my memory on the game of life rules anyhow lol.

Yeah this is connecting to a baked-in node that Spritely is running during the jam rating period that hosts the rooms and some bots. If multiple people were online at the same time you'd see them. A localhost server is used to provide the web UI. Everything is rather cryptic at the moment, and there isn't much of a game to be had yet, but it's the very beginnings of a p2p virtual world. Extrapolating a bit, you could imagine hosting your own rooms on your machine that other players can visit in a truly p2p way.

Felt kinda like adding another dimension to tetris! I had a really tough time with the controls. I just couldn't get the plate to move in the way I wanted. It's like when a touchpad doesn't scroll in the direction that is intuitive to you or something. At some point my tower got too high and the game stopped dropping blocks. I assume it meant that I lost but it didn't tell me so. :)

Made it through several levels before crashing too many times. I found the controls to be a little floaty. The controlled descent with the down arrow was crucial, otherwise I would have failed much sooner!

Loved this! Beat all the levels. Very clever little game. I don't think I've seen S7 used in one of these jams in awhile, if ever. Great job!

Loved this! Simple controls, easy to pick up and play. Was pleasantly surprised that I could match characters that I hadn't yet tethered. That helped me out of some sticky situations. The frame rate really tanked when things got intense and there were a lot of characters on screen, though.

(1 edit)

I found the above table hard to read. What I really wanted to know was the language breakdown in raw count and percentage form. So, I took the data above and did my own quick calculation:

languageentries% (rounded)
guile1531
fennel1021
clojure
510
cl510
racket48
elisp48
s736
kawa1
2
owl12

The various Schemes are all significantly different enough to be considered their own languages.

Cool concept! Would be nice to see a more playable version sometime. I found using K and ; to rotate a bit awkward. Thanks for trying out Hoot!

Cool concept! Would be nice to see a more playable version sometime. I found using K and ; to rotate a bit awkward. Thanks for trying out Hoot!

Seems that the rocks are all that's there besides the player: https://github.com/robgssp/hunt_for_mauve_july/blob/main/game.scm#L128

I liked the retro theme a lot! It's so easy to get sucked into Sokoban games lol. Very clever puzzles. I just wish I was playing your own puzzles and not a set developed by someone else.

Thanks for trying Hoot! We hope to have a better debugging story in future releases now that the core is starting to work quite well. I'm not sure what kind of game you were trying to make but I like the little slime sprites.

Thanks for giving Hoot a shot! If you revisit this in the future, a computer controlled opponent would be nice for those of us that don't have a second player.

It was very cool to see how you combined Hoot with audio generation stuff! I loved the visualization but I had a hard time figuring out how to cancel the signals. A lot of the time I felt like I was adjusting sliders to no avail. I'm curious, why does it only work on Firefox and not Chrome?

Had fun with this one! I found that bombs were essential because the maze generation algorithm can generate mazes that can't be completed otherwise. Likewise I also saw gold placed in inaccessible (without bombs) areas. It would be cool if the mazes were always proper mazes and the bombs could be used for strategic shortcuts.

A new genre: the juggling type game! I always enjoy jam games with simple controls that are easy to pick up and play. I do wish the hitboxes were bigger for the player's arms as I felt like I had to be too precise in my movements to keep the juggling going. I'm about as good at juggling in this game as I am in real life (which is to say: not good!) It's so cool that chose to use Hoot for this project!

Sooo I did not make it particularly far lol. It was a fun, more stressful take on classic Breakout! The game felt smooth and snappy and I liked the particle effects.

I've never had a more challenging time getting to the number 42 lol.