Hello everyone!
So, this week’s headline: incredibly busy week of work that unfortunately consumed my weekday evenings as well as my weekday days, but I spent the weekend attempting to fix the compiling-to-exe problem – although sadly without success. However, thanks to some great comments on the previous entry which I’ve since followed up with my own investigations, I’m reasonably confident the issue lies in x32 / x64 compatibility between the various things I’m using – my laptop, Python 2.7, py2exe, libtcod, etc. However, shifting them all to x64 (which my laptop is) OR shifting them all to x32 don’t seem to solve the problem – and indeed, to my frustration, one of these changes seems to have sent things backwards, with executables no longer compiling on my system, and despite restoring everything there are still new sets of issues.
If you are reading this and thinking “my god, how can someone who made this game struggle so much on the final hurdle?!” – this is the problem that comes from not having a computer science background. My undergraduate was in politics & sociology, my PhD in sociology; I’ve since worked in sociology, computer science, political science and now media & communications academic departments, but I haven’t a shred of actual training in computer science. I have been able to teach myself Python to a reasonably-high level to create a game like this, but that’s all contained within Python, as a closed system. As soon as we start dealing with different hardware specifications and file types and libraries my mind just goes to mush. And if you’re an experienced programmer and you read that thinking “but that stuff is trivial!” – that only proves my point. The lack of any formal education in computer science has – I think – allowed me to build a game that is very different in a number of interesting ways precisely because I’ve taught myself and learned and developed ideas in such a strange, haphazard way – but the downside of that same absence is that I am simply stumped when it comes to problems like these.
But the simple fact is that I am at the limit of my competence here, so I’ve done the only thing appropriate: I have now reached out to some people who Know Their Stuff about a thousand times more than I do, and I’m hopeful they’ll be able to resolve the situation. Thank you all so much for being patient – I’m doing everything I can to get this final issue fixed. I don’t think I am one of those people who “finds it hard to ask for help”, but I do always prefer to try to fix things myself. However, this weekend has made me acknowledge defeat on this front. Whatever changed in Windows 10 in the past year to result in people telling me 0.7 no longer works on it (it worked fine on Win 10 for the first three/four years!) is beyond my ability to figure it out, so it’s time to go to the experts. Let’s get URR 0.8 packaged and out there – and who knows, maybe I’ll even learn a little bit about Python in the process…! However, if this doesn’t work, it appears that the other Python -> executable libraries simply aren’t working these days with 2.7 and Win 10 because 2.7 is now no longer supported… so my backup plan is to upgrade URR to Python 3.
Either way: more as soon as possible.
I have a PhD in computer science and 40 years experience and stuff like this can still stop me cold. The truth is that a lot of our software ecosystem has fragile interdependencies and diagnosing them and fixing them is non-trivial for anyone. But I’m sure you’ll get there, good luck! And thanks for the blog, I always enjoy reading your content.
Scott, thank you so much for taking the time to leave this comment. It is genuinely reassuring to hear someone say that, and it really helps a lot. And thank you for the kind words, also!
I’m a professional programmer with decades of experience (and that’s scary to think about, how appropriate). That stuff *isn’t* trivial. I won’t give any advice since you already have someone helping, but it’s only expected to have trouble with packaging (an already thorny issue) a project started so long ago, with a language version that’s now out of warranty, and a tool that’s now considered broken. Take heart, it’s not your fault. You do need an expert.
Hi Felix – thanks so much for posting this. It’s so reassuring to know this is a known issue in general and I’m not just being achingly inept (and as you say, hahaha, this is an old project, and an old language version, and a tool that isn’t really working). I feel much better about the whole thing now.
Mark, you did great with URR and having that problem is perfectly understandable, since as Felix said this is overly complicated stuff that even people with a lot of compsci knowledge and experience WILL find difficult to solve… mainly because there’s very little in this that’s scientific.
“We build our computer (systems) the way we build our cities: over time, without a plan, on top of ruins.” – Ellen Ullman
Roberto, thank you so much for the message – and that is a great quote! Thank you for sharing that :).
Hi, just wanted to offer my modest knowledge of PyInstaller if you should end up going that route. I’ve been using it for 5 years now to ship Windows builds of Playscii (which is a Python 3 application, but otherwise typical).
another legend just entered the chat. nice to see you here, jp!
Hi JP, thank you! I think there’s a good chance I will have to go the “convert to Python 3 and then use PyInstaller” route…
Hello, Doc!
I want you to pay attention to GAMES section of the site. In the URR description there’s a line about you hoping to release the game in 2018.
Sorry if I bothered you.
Hi Sergei!
I’m guessing English isn’t your first language. (Apologies if I’m wrong!)
What I’m guessing is the standard (polite) way to phrase what you wrote is something like ‘Your URR description on your “GAMES” page still states that you’re hoping to release the game in 2018.”, i.e. pointing out that that info is outdated.
I originally read (interpreted) your sentence “I want you to pay attention to GAMES section of the site.” as a strange demand, maybe that the author should focus on his other games instead of URR?
But your next sentence made your intention clearer and your last made it clear that you were being helpful.
I’m sorry if I bothered you, or anyone else, with this almost-certainly extraneous pedantry.
Yeah, my first lang is Russian and your interpretation is correct, thank you.
I wanted to point out that URR was meant to be released in 2018 as stated in the “games” section, bat that date is long due. So people may misunderstand that the game development was halted or worse. That’s what I meant.
Hey Sergei, thanks for the message! Well spotted – thanks for pointing that out, I have updated it.
Hey man, youre doing your best. Dont stress 🙂
Take all the time you need, and all the help you can get 🙂
We will all be here waiting until youre done with whatever needs doing. We aint going nowhere.
Thanks Mads! I really appreciate the message, a lot :).
I wouldn’t expect computer scientists to be any good at this stuff, except from experience! Look to programmers for (both the causes of and) solutions to these issues!
> As soon as we start dealing with different hardware specifications and file types and libraries my mind just goes to mush. And if you’re an experienced programmer and you read that thinking “but that stuff is trivial!” – that only proves my point.
Oh Mark – NO experienced programmer thinks this stuff is trivial! This stuff is why we’re generally paid very well!
I don’t think I’m alone in expressing an extreme yearning to download your code and try to fix this myself!
Seriously – I’d be glad to help with this and – because I know it would be much easier for you and the other people you’re already working with if I do – I will promise not to ask you any questions!
I hope I’m not bothering you unduly by reiterating my desire for you to, eventually, release your source code. One very nice reason why that’d be good is that others could maintain the code at least enough for it to continue to run on different kinds of computers (for at least some amount of time).
But thanks for working on this regardless! I’m really looking forward to finally playing it! (I’m kicking myself for not trying an earlier version!)
Kenny, thank you for this! As with the other comments here – this is, genuinely, very reassuring. Not in the slightest and I really do appreciate the offer! It’s super kind of you – I’ll let you know!