Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
(1 edit)

I'm having trouble restarting my game with trivial-gamekit. Evaluation aborted on #<SIMPLE-ERROR "Only one active system of type 'appkit-system is allowed">

Is there a way to kill the 'appkit-system thread? I tried with (stop) but it's not working. My workaround for this is to close slime and reload everything, but its really annoying. Any ideas?

*edit*

The game runs fine for now. I think my code was breaking something and SBCL became unresponsive, not destroying the game process, even with (stop) calls.

Awesome library by the way! Very simple, it helps me a lot since I'm new to the lisp world.

(+1)

If an uncaught error occurs during runtime, you'll get this issue. There's not much, in the way of a workaround, for now other than restarting SLIME. Borodust and I are working on a fix for this but I'm not sure if we'll have something workable before the end of the game jam. Sorry about that.

(+1)

Oh I see. Thanks for the quick response. I'm having trouble with quicklisp aswell, as it doesn't recognize the game's asdf system, so I have to manually load everything. Pain.

(1 edit) (+1)

Put your game directory into ~/quicklisp/local-projects. Just in case, give the same name to the game directory, .asd file and your system, e.g. if your system name (as specified via asdf:defsystem) is efeijo-game then ~/quicklisp/local-projects/efeijo-game/efeijo-game.asd

(+1)

Thanks for the helpful advice. For some strange reason, today I restarted emacs and the game system loaded on first try! I didn't figure out what was the error source, but I remember sbcl was trying to compile "packages.lisp" from /tmp/packages.lisp, which doesn't exist.

(+1)

If you drop into debugger, don't hit 'abort restart, invoke either 'rerun-flow-block or 'skip-flow-block after fixing a problem. If that doesn't help and you keep getting an error - still don't 'abort, but run (gamekit:stop) in the REPL and then invoke 'skip-flow-block restart - that should shutdown the engine gracefully, and you should be able to #'gamekit:start your game again. If all goes left, then just restart the implementation (should be a very rare thing). That's not very convenient and gonna be fixed in https://github.com/borodust/trivial-gamekit/issues/40.

(+1)

That's good to know. I'm still experimenting with lisp and your library, and it's been very satisfactory. Thanks again, and I hope I can contribute someday =)