* Game _The Price Of A Cup Of Coffee_ is my entry into the 10 day [[https://itch.io/jam/autumn-lisp-game-jam-2019][Autumn Lisp Game Jam 2019]]. You can download executables for windows and linux from the game's [[https://goofist.itch.io/the-price-of-a-cup-of-coffee][itch.io page]]. You play Nance, a homeless human on cold day in some bustling metropolis. Your task is to stay warm and stay healthy. People pass you by and you can ask them for a little change as the do. You must walk up to them in order to ask! _But be careful!_ You don't want to bump into anybody! Bumping into people is stressful, and besides, somebody might call the cops. Some people are jerks, so watch out - you don't want to get too stressed. When you have enough money, you can go to the shop and buy coffee to warm you up and chill you out a little. When you have a full pocket, you can buy something to eat and advance to the next level. ** Controls Use arrow keys to move. Use the spacebar to ask people or to buy coffee or food when you're in front of the shop's door. * Building So far I have built this using [[https://shinmera.github.io/deploy/][deploy]], which has worked quite well. ** Requirements - [[https://www.libsdl.org/download-2.0.php][sdl2]] - [[https://www.libsdl.org/projects/SDL_image/][sdl2-image]] - [[https://github.com/thegoofist/animise][animise]] - [[https://github.com/thegoofist/lettuce][lettuce]] Ensure that [[https://www.libsdl.org/][sdl2]] is installed on your system and install [[http://quickdocs.org/cl-sdl2/][cl-sdl2]] and [[http://quickdocs.org/cl-sdl2-image/][cl-sdl2-image]] via quicklisp. [[https://github.com/thegoofist/animise][animise]] is a tweening library that, at the time of writing, is not fit for stable release. Clone animise into your =~/quicklisp/local-projects= and checkout commit =aeb013df855052aec8a5199f82d9725be6d99c1b=. [[https://github.com/thegoofist/lettuce][lettuce]] is just a file containing three macros that I end up using all the time. I should probably get rid of it as a dependency b/c between =alexandria= and =trivia= the functionality of =lettuce= is proably covered, but ah well. Clone lettuce into your =local-projects= quicklisp directory. Then clone the game's repo into =~/quicklisp/local-projects=. ** Linux Once requirements are installed, building should be as simple as: #+begin_src $ cd ~/quicklisp/local-projects $ sbcl ... > (ql:quickload :the-price-of-a-cup-of-coffee) > (asdf:make :the-price-of-a-cup-of-coffee) $ ./bin/price-of-coffee #+end_src ** Windows To get this to work I had to use a modified version of =cl-sdl2= found in [[https://github.com/lispgames/cl-sdl2/pull/123][this PR]]. After trying that fork, I found a format string bug in =render.lisp= in the =cl-sdl2= source. So I made a change and committed it to [[https://github.com/thegoofist/cl-sdl2][another fork]]. You will need to clone [[https://github.com/thegoofist/cl-sdl2][my fork]] into =local-projects= and check out the branch =price-of-coffee-windows-build-fork=. I haven't been able to get the windows version to build with audio enabled, so I made a git branch with the changes that helped me build this game on windows. After cloning this repo into your =local-projects= directory within the quicklisp root directory, checkout the =windows-build-mods= branch. From within this directory, I did the following: #+begin_src # shell... $ git checkout windows-build-mods $ sbcl ;; Lisp REPL ... > (ql:quickload :cffi) > (pushnew #p"." cffi:*foreign-library-directories*) > (ql:quickload :the-price-of-a-cup-of-coffee) > (asdf:make :the-price-of-a-cup-of-coffee) #+end_src Then copy all =.dll= and the =assets= directory into =bin=. Double clicking on =price-of-coffee.exe= worked for me. (I don't own a windows machine so I had to go over to a friends' house to get this thing built on windows). * Credit and Licenses + Design and Code by :: [[https://github.com/thegoofist/][The Goofist]] under the [[./LICENSE][GNU Public License version 3]]. + Art by :: _Ct_ under a [[https://creativecommons.org/licenses/by-nc-sa/4.0/][Attribution Non-Commercial Share Alike 4.0]] Creative Commons License. + Musics by :: [[https://github.com/gcentauri][gcentauri]] under a [[https://creativecommons.org/licenses/by-nc-sa/4.0/][Attribution Non-Commercial Share Alike 4.0]] Creative Commons License. + Emoji by :: [[https://openmoji.org][OpenMoji]] under a [[https://creativecommons.org/licenses/by-sa/4.0/][Attribution Share Alike 4.0]] Creative Commons License