kRPC: Control the game using C#, C++, Java, Lua, Python...

kRPC: Control the game using C#, C++, Java, Lua, Python...

7.8k Downloads

types error

SuperSummer07 opened this issue ยท 8 comments

commented

image
When I import it, it throw an error.
Is it because my Python version is too high?

commented

Ok so I'm giving up for the night but here's what I found out, you need to be on version 1.5.1 of KSP and need to have the python version 3.5.6, as this was the last version out when the mod was working. I've hit a wall as I've been trying to follow this (https://youtu.be/9ABSicgaNKU) old YouTube tutorial, but if you have any luck or someone else knows how to fix it @ me please.

commented

I'm trying to figure it out too, from a surface level understanding yes because python hasn't used 'long' for a long time. pre python 3, but that's where I'm stuck as well and looking into if when we installed krpc with pip did it do the right version, or is just not supported? It installed krpc-0.1.3 for me, again I'm new to this so I'll keep you posted on what I'm figuring out.

commented

This problem has bothered me for a long time.Thanks lot!

commented

Did that work?

commented

I haven't tried yet, but it should be possible

commented

Ok so I had my friend help me later in the day, he's big brain so he helped me get it working! So my head was in the right direction, I can help guide you to the solution now. So doing I did it through anaconda navigator not for any particular reason but just for your information you might have to find your parallels

First,
come back to clean slate,
-the mod itself should be at version v0.4.8 on game version 1.5.1 of KSP
-uninstall the krpc library so you can reinstall it correctly, it should also be on version v0.4.8 if you have that then you're at a better spot than I was

Second,
-the up to date pip version doesn't like the setup.py, run pip install setuptools==58, then continue the install as normal doing pip install krpc it should install the correct version at that point (v0.4.8)

Note: after this point I can show you literally what I did in the files so it will work with the current version of python

In types.py:
for the long error I manually added a long = int on line 5 above VALUE_TYPES = {

In Client.py, I altered (something).izip to just zip on line 182
so it looks like this
for i, (value, typ) in enumerate(zip(args, param_types)):

That's all remember fixing, so hopefully you're through!

commented

wow,thanks a lot.It's already 2 AM in China!

commented

I will have a careful look tomorrow