Days 6-7 - The Home Straight
I started my last full day of development - Friday - with a mission in mind: to get deployment packages buildable, and to test those packages on macOS, Linux and Windows. I learnt two things from this:
- I didn't do enough prep work in this space, which cost me dearly, and
- Python isn't good for this in a general sense
After a few hours, even with the work I'd done before the jam testing out PyInstaller, I had to conclude that it was a waste of time to try any further to make a single stand-alone executable. I was thoroughly disappointed and more than a little frustrated by this - it feels like this shouldn't be a problem that's so hard to deal with.
In a conceptual sense, bundling could be easy enough - a simple job of combining a static python interpreter with the stdlib files and the additional game files. That was what I expected from PyInstaller, and indeed what I had working with PyInstaller before the jam. Alas, it wasn't to be - and I didn't and don't have time to find out why, although presumably it's something to do with missing imports and the cffi aspect of python-tdl.
In the end, I plumped for just zipping up the source files with a couple of helper scripts to get people set-up with python3 if they don't have it by default. I have some hopes that I might be able to distribute a Windows executable but I'm seeing "missing DLL" errors that worry me.
I mainly made progress in adding diversity to the game; a little random chance with more outcomes here and there. I improved combat to vary based on the enemy you're fighting, and added "drops" from enemies. The "helper scripts" for installing Python and setting up a venv for distributed code on macOS and Linux were also a fairly significant amount of work to write + test.
First Commit of the Day
14:56 2018-03-09 - "add cap blasts, nerf melee" - c3b90ed150e0f1dccaa974e16c0a100bdd964487
Last Commit of the Day
01:47 2018-03-10 - "Attacks vary by enemy" - 525066b860e090eb5e34f16b00776e423b7d9bc4