HNHacker News
TopNewBestAskShowJobs

Shinmera

598 karma · joined December 5, 2014

https://shinmera.com
submissionscomments
Shinmera··on Technical overview of Kandria, a game and game engine developed in Common Lisp
Yeah I don't know what they use either, but so far repacking that atlas has not been frequent enough that writing my own packer would save time.
Shinmera··on Technical overview of Kandria, a game and game engine developed in Common Lisp
Thanks! Yeah, marketing is definitely a weak point, in large part because it's just something that goes very much against my character. I've tried posting to reddit before, but most communities' strict posting rules about promotions make that a pain, or simply not worth bothering with due to low conversion rates.
Shinmera··on Technical overview of Kandria, a game and game engine developed in Common Lisp
I'm sure Aseprite could be further optimised to press down the constant factor, but it is performing a rect packing algorithm among other things, which is an NP-hard problem.
Shinmera··on Technical overview of Kandria, a game and game engine developed in Common Lisp
By being lucky enough to have savings, and having a room at my parents' house that doesn't require any rent payments. Without those, it definitely wouldn't have been possible.

Recently I've also received some grants, namely the Pro Helvetia interactive media grant, and the Poland Digital Dragons Accelerator. Both of those only offset a part of the money I had already personally invested though, and the Kickstarter barely makes a dent in anything.

Selling games is such a gamble, too. If the stats are to be believed, only about 15% of games on Steam recoup their investment, let alone making profit. For the next project's funding, I'm going to try and look at some other source like Patreon, to at least offset my own measly costs so I can spend longer in pre-production.

Making games is just really expensive, and any funding source is heavily fought over, or comes with huge caveats attached. I don't think I have this figured out yet either, so all I can say is best of luck!

Shinmera··on Technical overview of Kandria, a game and game engine developed in Common Lisp
Heya, I'm the author of the article. I've been working on Kandria full time for close to two years now, and on-and-off for some years while I was doing my Master's at ETH. The engine it's running on, Trial, is a few years older still, and initially just started out of the good ole university boredom and curiosity. Games is how I got into programming when I was about 6, and that particular fever hasn't left me yet it seems, ha ha!

Kandria itself started as a "more serious" attempt at a game after I'd been making jam games with Trial for some years. I wanted to create something bigger, and had just finished playing through Celeste, so I just set out to replicate its mechanics in my own way. You can still find some demos of those very early days on my YouTube channel, if you're curious. In any case, the project went through several big changes until it turned into what it is now. During the pandemic in 2020 I finally decided to drop out of my Master's to pursue the project full time. At that point I also brought on a couple more people to help with the writing, art, and sound.

We're currently also running a Kickstarter to get us some extra funds for the project. It ends on Thursday 14th, 12:00 CEST, so there's not that much time left in it. If you'd like to support our work, please have a look: https://www.kickstarter.com/projects/shinmera/kandria The campaign page has a lot more details on the project and the team, if you're curious about that.

In the article I primarily cover the programming parts, giving a surface overview of the technologies involved and at least giving a brief hint at the methodology I employ to create games. I'm sure I've left out a lot of details that you might be curious about, so if you have any questions, please feel free to ask and I'll try my best to answer!

Shinmera··on Trial: A game engine written in Common Lisp
Psst: it has been possible in the existing demos already, if you know what to tweak ;)

Kandria's source code will also be open under a license that permits modding. Keep an eye out for the upcoming Kickstarter in June for more info on that.

Shinmera··on Portacle – A Portable Common Lisp Development Environment
That's on purpose, and required, for a variety of reasons.

First would be that it cannot be put together into a single executable as it is composed of multiple, separate components, that each rely on a specific structure of the file system being present. This is not something I can control.

Second, Portacle is made in such a way that all three platforms can be combined together into a single directory so that it can be run on any system as one, which mandates a shared folder structure.

Third, in order to be self-contained, the Portacle installation directory must contain its own configuration and project directories. It makes no sense to allow you to move the executable outside of this, and it would make no sense to put those directories within the .app on, say, mac.

Shinmera··on Portacle – A Portable Common Lisp Development Environment
If you open up an issue we could look into what's required. From what I can tell it shouldn't need much work, just an additional file that configures defaults similar to https://github.com/portacle/emacsd/blob/master/portacle-slim..., and a way to defer the loading of either one until after the user file has had a chance to make its customisations.
Shinmera··on Portacle – A Portable Common Lisp Development Environment
I don't know what Spacemacs does exactly or how it differs from classic Emacs, so I can't really estimate the amount of work required to get it integrated.

I assume it would be non-trivial, however, just based on the experience I've had with the process so far.

Shinmera··on Portacle – A Portable Common Lisp Development Environment
It should not touch anything outside of its own directory. If it does, then that's a bug and needs to be fixed.
Shinmera··on Portacle – A Portable Common Lisp Development Environment
The help buffer includes its own tutorial that is geared towards the essential parts of Emacs and Lisp editing. I feel like Emacs' own tutorial only distracts from what this package was meant to be focused on.
Shinmera··on Portacle – A Portable Common Lisp Development Environment
Given that packaging things in a self-contained manner is pretty much all this project does, I'm a bit confused about your comment. Could you elaborate?
Shinmera··on Portacle – A Portable Common Lisp Development Environment
You should be able to easily install it by putting `(ensure-installed 'evil)` (and evil setup parts) into the user config file, or using Emacs' package-list, which is explained in the help buffer.
← PreviousPage 3 of 3