A few days ago I found all of my old Python code from high school. I have various files from small assignments, but the one program I am truly interested in resurrecting is the Othello AI program. I have the Othello referree which allows different AI’s to play against one another, and I also have a bunch of compiled Python files for the different AI’s I happen to have. There’s a bit of a problem however: when I try to use the referee to upload these AI’s, I get a bad magic number error.
What!? Bad magic number? And I thought Ruby was full of magic, turns out Python has a whole error around bad magic numbers. I went to look up this error, and I found out that Python doesn’t do well with importing compiled python code (pyc) if it was compiled using an older version of Python. This means all I have to do is recompile the source code with the version of Python I have now. Unfortunately, I don’t have the source code…
Well then I thought, how about I just grab the version of Python that I used to compile them. That’s turning out to be difficult. I grabbed the oldest version of Python that I probably could have used from the Python site, but now none of the AI’s show up in the othello referee list. I have no idea why this is the case, and I’m running out of options.
I have one source for one AI. I’ll have to use this code as a template for other AI’s to be made so that I can have a working version of this program once again. Either that, or I need to find a decompiler or someone who knows how to get old pyc’s to work with newer versions of Python. If anyone knows, drop me a line.