Page 1 of 2

Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 2:49 am
by jimbo
I thought this would be an appropriate way to express my aesthetic fascination with the two rather beautiful languages Lua and Befunge. It started out as a never-released project for PSP's LuaPlayer, but when I happened across this lovely engine it was clearly meant to be.

I was pleased by how concise and clean the Befunge implementation turned out in Lua, and learned a couple of new tricks like using closures for sequence generators. If anyone would like to give me some advice on honing my Lua skills, I would love to hear it.

The only controls you will need are the arrow keys, Escape to back out to the title screen then quit and Enter to toggle fullscreen.

Free music and sounds are included thanks to the freesound project and Drax/Maniacs of Noise.

Thanks for a great engine, and enjoy! By the way, very classy website.

http://jimbomania.com/Snakuence-beta2.love(May 21) - 712KB - second beta release - fixes timestep and skips music load in Linux

Re: Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 5:32 am
by bartbes
I get a segfault (linux).
Sorry I can't give you more information, that's all information I get. I do know it happens just after the window is drawn.

Re: Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 7:02 am
by appleide
Well made! And yes, its a game made for nerds like us =D Interesting concept I hadn't seen before. *goes off to read on befunge*

Re: Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 2:31 pm
by rude
Awesome. :neko: Befunge looks like one crazy language.

Re: Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 3:51 pm
by Robin
Befunge is awesome indeed. It inspired me a while ago to make a language myself, which was 3D. It was pretty brain-damaged, but when I attempted to make it better, I couldn't get it to work anymore. :ehem:

This game has a very interesting concept, although it might be difficult to make something playable from it.

Oh, and I get a segfault as well on Linux (haven't tested it on windows yet).

Re: Snakuence - Snake meets Befunge to make math

Posted: Wed May 20, 2009 7:05 pm
by bartbes
It runs on windows, maybe it's a sound (or the font?).

Re: Snakuence - Snake meets Befunge to make math

Posted: Thu May 21, 2009 12:18 am
by solsword
Linux segfault is sound-related.
The file "DRAX-Space_Whale.xm" seems to be part of the problem.
A backtrace:

(gdb) bt
#0 0xb66951a6 in Player_LoadGeneric_internal () from /usr/lib/libmikmod.so.2
#1 0xb66956bf in Player_LoadGeneric () from /usr/lib/libmikmod.so.2
#2 0xb7c472b7 in MikMod_LoadSongRW () from /usr/lib/libSDL_mixer-1.2.so.0
#3 0xb7c47542 in Mix_LoadMUS_RW () from /usr/lib/libSDL_mixer-1.2.so.0
#4 0x0810b192 in love_sdlmixer::Music::load (this=0xb406f718)
at sdlmixer/Music.cpp:27
#5 0x081062d3 in love_sdlmixer::newMusic (
filename=0xb5ab2ae0 "data/DRAX-Space_Whale.xm")
at sdlmixer/love_sdlmixer.cpp:101
#6 0x0810ad0c in _wrap_newMusic (L=0xb5a97068)
at sdlmixer/mod_sdlmixer.cpp:1824
#7 0xb7c1d347 in ?? () from /usr/lib/liblua5.1.so.0
#8 0xb7c28920 in ?? () from /usr/lib/liblua5.1.so.0
#9 0xb7c1d908 in ?? () from /usr/lib/liblua5.1.so.0
#10 0xb7c18751 in ?? () from /usr/lib/liblua5.1.so.0
#11 0xb7c1ced3 in ?? () from /usr/lib/liblua5.1.so.0
#12 0xb7c1cf38 in ?? () from /usr/lib/liblua5.1.so.0
#13 0xb7c18568 in lua_pcall () from /usr/lib/liblua5.1.so.0
#14 0x0811a3e8 in love_system::LuaGame::call (this=0xb5a0a390, narg=0, nres=0)
at system/LuaGame.cpp:236
#15 0x0811b1bd in love_system::LuaGame::load (this=0xb5a0a390)
at system/LuaGame.cpp:77
#16 0x081173fc in love_system::module_init (argc=2, argv=0xbfd37904,
core=0x91d78d8) at system/love_system.cpp:221
#17 0x08098317 in love::Core::insmod (this=0x91d78d8, m=@0xbfd377ec)
at liblove/Core.cpp:55
#18 0x0809843d in love::Core::insmod (this=0x91d78d8,
init=0x81163d0 <love_system::module_init(int, char**, love::Core*)>,
quit=0x8115dc0 <love_system::module_quit()>,
open=0x8115a70 <love_system::module_open(void*)>) at liblove/Core.cpp:65
#19 0x0804ecaa in main (argc=2, argv=0xbfd37904) at love.cpp:92

If I rename that file to something else, I get an error in love saying that it can't load the file, to which I click continue and the game proceeds to work (without music, but with sounds).

I enjoyed the game.

Re: Snakuence - Snake meets Befunge to make math

Posted: Thu May 21, 2009 12:38 am
by Robin
solsword wrote:If I rename that file to something else, I get an error in love saying that it can't load the file, to which I click continue and the game proceeds to work (without music, but with sounds).
That was... unexpectedly easy. Worked for me as well.

The game's fun, and it starts off pretty hard (although I don't know whether it was too fast, or I was too slow :ehem:)

Re: Snakuence - Snake meets Befunge to make math

Posted: Thu May 21, 2009 7:13 pm
by fäbian
Awesome game idea, but it runs way too fast. Please make use of the dt given to update so that I can play this cool game.

Re: Snakuence - Snake meets Befunge to make math

Posted: Thu May 21, 2009 11:03 pm
by CR4SH3D
really great game (now i get it ;P)
surprisingly tricky too