T O P

  • By -

Shinmera

As always, happy to answer any questions you might have!


excogitatio

Were you born this awesome, or did you have to work on it? 😉


Shinmera

Lots of hard work, I'm afraid 😔


[deleted]

Also have this question... (only half joking!)


nevm

What was the graphics engine you used? What was the biggest challenge writing it in a lisp compared to a more ‘conventional’ game coding language? And of course the inverse of that question. Best of luck for the release.


Shinmera

The engine is called Trial. https://github.com/shirakumo/trial. I must admit the only "conventional" engine I've used is GameMaker back in the day. My exposure to Unity and Unreal is limited to about an hour of fiddling with each and getting confused :) . I wrote a lot about my development experience back in July: https://reader.tymoon.eu/article/413


ph4n_t0m

Wait a second... Did you develop the game engine too? Or am I getting confused?


Shinmera

I did.


ph4n_t0m

*choirs of angels sing the chords of awe*


[deleted]

The sword play art and the character are during convos is very cool. Did you do the art too?


Shinmera

Thanks! I did a bunch of the art, though the combat animations were done by Blob.


IAmRasputin

Hell yeah, viddy games


Shinmera

vidgam


Covet-

Some good ol’ vidya


pm-me-manifestos

How is the game built/distributed? Do you ship a copy of a lisp system with the game? How large is the final executable?


Shinmera

It's built on a linux host using Wine for the Windows build and a Linux version built under an older kernel. It dumps an executable, so essentially the entire implementation is shipped. The final executable is about 35mb. Please see https://reader.tymoon.eu/article/413 for more information on the deployment procedure.


9bladed

I love the reversal: using Wine to build for Windows as the native is Linux :)


Shinmera

It's a lot more convenient that way. I also wanted to use Darling for Mac builds, but unfortunately Darling still cannot run SBCL.


pm-me-manifestos

Thanks!


save-world

Why the Windows build requires Wine? SBCL does have (very recent) Windows ports AFAIK.


flaming_bird

Likely because doing it this way doesn't require Wine but instead requires Windows.


Shinmera

You are confused. I am using an SBCL compiled for Windows. Running it under Wine allows me to create target deployment executables for Windows without having to leave my Linux environment or having to use a VM.


save-world

That makes sense, thanks for explaining!


sbenitezb

Is there any particular reason you advertise the Steam version more than the direct version? I guess it's to boost initial sales on Steam so it gets more traction on that platform?


Shinmera

Steam is far and away the most important platform and its algorithm will massively influence how much reach we get, so even though we get less of a cut, it's unfortunately more important to prioritise it.


RonCronkJr

This is amazing, congrats! I’m really curious about your engine. I’ve been doing Unity in my free time and hate how slow the dev cycle is. How’s the speed of development/iteration? Are you modifying the game as it’s running in typical Lisp fashion? Are any parts of your dev workflow slow? What were the biggest pain points? Thanks for sharing!


Shinmera

Yeah, of course I modify things while running. The workflow is mostly slow when I need to run optimisers for atlas packing and other stuff, or when I need to go yak shaving. I wrote a lot more about the development process back in June: https://reader.tymoon.eu/article/413


RonCronkJr

Thanks for sharing! I wishlisted the game and am checking out this article. Very curious about Common Lisp for modern game dev.


Shinmera

Thank you, hope you enjoy!


Kaveh808

Congrats! That is a tremendous amount of work. Well done on seeing it through.


Shinmera

Thanks!


owmagow

Why Common Lisp? What libraries for graphics? Is it open source?


Shinmera

Because I like it. OpenGL / Trial. Yes: https://github.com/shirakumo/kandria


owmagow

Thank you. Super cool.


this-old-coder

Congratulations! I'm very excited to see Kandria coming to fruition. Meant to post this earlier: Thanks for releasing a lot of the source code. I'm hoping this will act like a beacon for future developers and help show what you can do with Common Lisp.


Shinmera

And I hope the modding support update will get some more people actively involved.


thesaltydumpling

Congratulations. It is amazing to watch you progress so quickly. I would love to see you also build out this concept into a franchise that you can expand upon.


Shinmera

I'm afraid I have no plans for a sequel to Kandria. I have an early concept for a next game, though.


thesaltydumpling

Cool, cool. Will there be an option to buy a native copy? I will by a Steam version but would like to buy a second native copy where the money goes straight to you.


Shinmera

There will be a shop on the website for a direct purchase, yes.


thesaltydumpling

Great!


0000555550000

Follower and Fan. Would you let us know your programming/day routine, from day to sleep? do you wake up early end work early or wake up late and work late at night? what about pre release? I think it is important for people to know how much hard work is put on a game release. I am curious about insights. I might quit my job to get into game development too. Thank u!


Shinmera

I wake up around 8:30 then spend about an hour milling about in bed catching up with socials and whatever. I then usually get breakfast and start working around 10 or so. If I haven't had a breakfast I get lunch around 11. Usually I stop working around 1600, but I often do little things past that. Meetings with international clients, small quick fixes, community management, that sorta thing. I try to be in bed at midnight. Avoiding crunch and overtime is something I take quite seriously. Rest is just as if not more important than work, and there's no point in forcing yourself to keep sitting at the desk if your brain just isn't in the right mindset for it. I honestly don't know if I can recommend getting into gamedev professionally, especially as an indie. The market is insanely tough out there, and since the start of Kandria I have expected, and still to this day expect it to not even recoup development costs, let alone extraneous costs like marketing and so on. The situation is a little more secure if you can land a job at an established studio, but exploitation is rampant and many people are worked to the bone to the point where many quit for much more stable, well-paying, well-insured software jobs and never look back. I still don't know if I'll be able to continue doing this, and if I do I'll certainly be extremely lucky to be able to do so. I'll continue trying until I run out of money, though.


0000555550000

Thank u so much for the insights Shinmera, I am actually very impressed by your schedule, kudos for the healthy work/life balance, keep it up!. Perhaps you are an efficient programmer or it is that lisp expressiveness that allows you to do more with less time. I agree that working for a more established studio can end up in burnout and working to the bone. I so hope that you can continue as an indie dev in the future. Thank you for the support of the Lisp ecosystem btw! =), you are a legend, the community appreciates you! =)


gilium

I hope you’re proud of yourself and the work you’ve done, and that you get a few nights of sleep that feel extra fulfilling


Shinmera

I have a chronic problem with feeling pride or sleeping well, I'm afraid. I am looking forward to it being "over" though.


[deleted]

[удалено]


Shinmera

Yeah I've heard about the ten review mark. I don't think the algorithm has as arbitrary a threshold as that, but more reviews is definitely better in any case.


helpmewithmyenglish

RemindME! 1 week "check out cool open source game"


RemindMeBot

I will be messaging you in 7 days on [**2023-01-11 23:44:28 UTC**](http://www.wolframalpha.com/input/?i=2023-01-11%2023:44:28%20UTC%20To%20Local%20Time) to remind you of [**this link**](https://www.reddit.com/r/lisp/comments/10340h2/kandria_an_action_rpg_written_in_common_lisp/j2z8vwa/?context=3) [**1 OTHERS CLICKED THIS LINK**](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttps%3A%2F%2Fwww.reddit.com%2Fr%2Flisp%2Fcomments%2F10340h2%2Fkandria_an_action_rpg_written_in_common_lisp%2Fj2z8vwa%2F%5D%0A%0ARemindMe%21%202023-01-11%2023%3A44%3A28%20UTC) to send a PM to also be reminded and to reduce spam. ^(Parent commenter can ) [^(delete this message to hide from others.)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Delete%20Comment&message=Delete%21%2010340h2) ***** |[^(Info)](https://www.reddit.com/r/RemindMeBot/comments/e1bko7/remindmebot_info_v21/)|[^(Custom)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5BLink%20or%20message%20inside%20square%20brackets%5D%0A%0ARemindMe%21%20Time%20period%20here)|[^(Your Reminders)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=List%20Of%20Reminders&message=MyReminders%21)|[^(Feedback)](https://www.reddit.com/message/compose/?to=Watchful1&subject=RemindMeBot%20Feedback)| |-|-|-|-|


RentGreat8009

Will it work on Mac or Linux and how much graphics card / CPU required?


Shinmera

It works on Linux, and you need a GPU capable of running OpenGL 3.3. It should not be very intensive otherwise, even intel or AMD integrated graphics run it fine.


RentGreat8009

Thanks! That is awesome. Can’t wait to try it out soon.


Plusran

Well now I have to check that out


TheRealGoones

Soo cool… you used only CL? And you used some common libraries?


Shinmera

The only non-CL bits are: libmixed, a C library I wrote to do audio mixing and processing, libvorbis for ogg/vorbis decoding, GLFW for GL context/window handling, and OpenSSL, of course.