Page 1 of 2
Liquid Runner
Posted: Sat Sep 03, 2016 2:21 pm
by technomancy
I was hoping to participate in Ludum Dare this time around, but things came up and it didn't work out at the time. But I took the idea I had and built it up in 3 days just this past week instead. The game is called Liquid Runner; it's a puzzle platformer where you manipulate the liquids around you to reach the exit.
This is the first time I'd done any sprites or music, so I learned a lot about that. My kids (7 and 8 years) helped with the sprites. Right now there are only 3 levels, but I want to add more in the future.
One unusual thing about the game is that I created it using Polywell, which is my LÖVE live-coding editor environment I created for my other game Bussard. (
https://gitlab.com/technomancy/polywell) You can embed Polywell into your game, and it lets you do all your coding while the game is running and reload as you go, as well as experimenting using its in-game console. I found that to be really helpful for making changes quickly, and I hope to write up a bit about that style of development in the future.
Downloads at
https://technomancy.itch.io/liquid-runner
Source code is currently inside the Polywell repo:
https://gitlab.com/technomancy/polywell ... e/init.lua It's about 500 lines of code for the game itself, and uses Bump, Lume, and Serpent libs.
The game comes with a level editor, (hit tilde to toggle it) but it only works if you run from source, not from a release.
Re: Liquid Runner
Posted: Sat Sep 03, 2016 5:35 pm
by pgimeno
Nice little puzzler! Wish there were more levels.
I've found a small problem. The tilde is not present in most keyboards. I've solved it with this patch (works with LÖVE 0.10 only):
Code: Select all
diff --git a/polywell/init.lua b/polywell/init.lua
index 9efebc5..b46fbe6 100644
--- a/polywell/init.lua
+++ b/polywell/init.lua
@@ -1001,7 +1001,8 @@ return {
bind = bind,
handle_textinput = handle_textinput,
- handle_key = function(key)
+ handle_key = function(key, scan)
+ if type(scan) == "string" then key = scan end
local fn = find_binding(key)
if(fn) then
with_traceback(wrap, fn)
Re: Liquid Runner
Posted: Sat Sep 03, 2016 7:40 pm
by panther99
Nice game!
![Smile :)](./images/smilies/ms-smile.png)
Re: Liquid Runner
Posted: Mon Sep 05, 2016 3:59 am
by technomancy
I moved this into its own repository here:
https://gitlab.com/technomancy/liquid-runner
Thanks for the tip about tilde; I added alt-esc as another way to invoke the level editor.
Re: Liquid Runner
Posted: Mon Sep 05, 2016 8:25 am
by bob_fossil
As the other posters have said this is a nice little game. I would appreciate an option to toggle the music on / off.
![Smile :)](./images/smilies/ms-smile.png)
I also found that once at the top of a ladder, you couldn't move left or right onto a neighbouring platform easily - you were still stuck climbing the ladder. I had to jump off the ladder which made the controls feel a bit twitchy. Maybe in the future you could add logs which float in the water tanks and act as mini platforms or maybe include hazards like piranhas or alligators in the tanks which have to be avoided or drained off into other tanks?
Re: Liquid Runner
Posted: Wed Sep 07, 2016 2:52 pm
by technomancy
> As the other posters have said this is a nice little game. I would appreciate an option to toggle the music on / off.
Thanks! The readme states that ctrl-m toggles the music, but I am going to add instructions in-game for the next release.
> Maybe in the future you could add logs which float in the water tanks and act as mini platforms or maybe include hazards like piranhas or alligators
I have thought of adding boxes like Sokoban that could float in the water, yeah. I would rather not add enemies since I want to make it more of a thoughtful game than a twitch thing, but we'll see how that goes. I also want to add pumps so you can make the water flow in the reverse direction (against gravity) if you need to. A lot of the development is driven by whatever my kids feel like sounds fun to work on with me at the moment, so it is pretty ad-hoc.
Re: Liquid Runner
Posted: Wed Sep 07, 2016 5:01 pm
by bob_fossil
technomancy wrote:Thanks! The readme states that ctrl-m toggles the music, but I am going to add instructions in-game for the next release.
Sorry for not reading the manual.
technomancy wrote:I have thought of adding boxes like Sokoban that could float in the water, yeah. I would rather not add enemies since I want to make it more of a thoughtful game than a twitch thing, but we'll see how that goes. I also want to add pumps so you can make the water flow in the reverse direction (against gravity) if you need to. A lot of the development is driven by whatever my kids feel like sounds fun to work on with me at the moment, so it is pretty ad-hoc.
I wasn't seeing them as enemies as such more as another type of obstacle to get around. You could make the character refuse to enter a tank with something hostile in it. Then you could either get boxes / logs in from another tank so you could keep out of the water and jump across the top, drain / pump the hostile contents out into another tank or drain another tank with an object into the hostile tank which neutralises / occupies the contents - maybe some food for the piranha? Just some ideas to consider.
Re: Liquid Runner
Posted: Sun Sep 11, 2016 3:26 am
by baconhawka7x
I got this error running on mac
![Screen Shot 2016-09-10 at 8.25.49 PM.png](./download/file.php?id=13824&sid=fdf90f769278679564c9ca144ceec399)
- Screen Shot 2016-09-10 at 8.25.49 PM.png (174.03 KiB) Viewed 7578 times
Re: Liquid Runner
Posted: Sun Sep 11, 2016 10:32 am
by technomancy
baconhawka7x wrote:I got this error running on mac
Thanks for the heads-up; I was unable to test on Mac. I have uploaded a new version that should avoid this problem though.
The new version has 7 levels instead of just 3.
Re: Liquid Runner
Posted: Sun Sep 11, 2016 11:35 am
by bob_fossil
Downloaded the portable version from your itch.io page this morning and get the following error on starting the game:
Code: Select all
Error: main.lua:205: attempt to call global 'multiprint' (a nil value)
stack traceback:
main.lua:205: in function 'load'
[string "boot.lua"]:439: in function <[string "boot.lua"]:435>
[C]: in function 'xpcall'
Running love 0.10.1 on Xubuntu 16.04.01 64 bit.