So, I have been lured by the promise of a MEDAL in the GD Missle Command new year challenge and decided to use Lua (that I know already) and LÖVE (that I never used before but was aware of) to participate.
Generally everything went right. I picked LÖVE because I knew it can do it (it's a proven game framework/library and a complete package of graphics, input, sounds, filesystem, etc.) and because I know Lua very well for a while now and the end goal was very clear so the only new and/or unpredictable thing in the mix was LÖVE itself.
The only problems (other than my motivation) I ran into were the blurry default font (fixed with setting my own font with right size instead of scaling the default one) and the fact I couldn't play same audio source few times (fixed by using the SLAM library which is very convenient even if such feature would be easy to code by hand in an hour or two on my own).
It's also a bit annoying to keep copy pasting LÖVE due to the O with an umlaut and I don't want to write LOVE2D or something in its place.
I can't do graphics or sound so I just went with boxes and lines and circles, some text and sfxr for sounds (and it actually looks and sounds okay-ish and fitting due to this being a retro game).
It felt nice to "finish" (score, menu, pause, sounds, etc.) a game and "ship" it (uploading exe and screenshots, the GitHub repo, writing the README, blog post, etc.).
A nifty anti-trick I ran across when trying LÖVE out was using 7z.exe on the CLI to pack code into a file with extension love and then appending that to the exe - when not given the zip extension the 7z.exe created a 7zip file instead so my exe ended up having really weird and unclear errors and if I didn't notice the love file was a 7zip and not a plain zip I'd never find out what happened.
Here is the download link for Windows (for other OSes see the README in the source): https://ln.sync.com/dl/c088152b0/jewmy7gy-94i4hxdh-6rya8cbj-ccyzfq7k
Here is the source code: https://github.com/FRex/Missles
Here is the challenge thread:
Here is the GD album:
What lessons did you learn? What went well? What would you do differently next time? What should I learn from your experience?