Communicating with remote runtimes

In order for the SkookumIDE and the SkookumRuntime to communicate between each other they must use the same IPv4 IP addresses. They both pick default addresses whenever they can - though these can sometimes end up being different and sometimes you must specify the IP address such as when the IDE and the runtime are on different systems (mobile, console, etc.). Even on the same system they can pick different addresses – they use different mechanisms to pick default addresses and there can be multiple network adapters (sometimes hardware and sometimes just in software) to pick from.

You may have to ‘whitelist’ SkookumIDE.exe and possibly the Unreal Editor or any runtime using SkookumScript that you want to connect to the SkookumIDE on various Internet firewalls or anti-virus software in order for the IDE and the runtime to communicate properly. If you need to open a TCP/IP port, the one used by the SkookumIDE is 12357 (the first five prime numbers).

The SkookumIDE also sends a ping to Google Analytics so we have an idea of who is using the SkookumIDE. You can ignore this - the SkookumIDE will still work without the ping to Google Analytics.

Here is how you can see what default IP addresses have been selected and how you can specify them manually for both the SkookumIDE and for the SkookumRuntime.

Specifying the SkookumIDE IP address

The IDE will examine all the network adapters available and do its best to pick an appropriate one to attach to - however it still might not pick the one you would like.

It stores the IP address that it attaches to in the SkookumIDE-user.ini configuration file. It looks something like this:

[Remote IDE Hosts]

The IP address is associated with the name of the host PC so that you can use the same .ini file on a portable drive or shared network drive on multiple computers with different addresses.

You can bring it up this file from the SkookumIDE by going to the “Settings”->”Preferences File…” menu option and it will load up that file in the editor you have associated with .ini files. It is a generated file, so you must run the SkookumIDE at least once. If you are using our Unreal Engine 4 plugin, you can also find SkookumIDE-user.ini and SkookumIDE.exe yourself in the /Engine/Plugins/SkookumScript/Runtime/SkookumIDE folder.

If it is not using the adapter address that you want - you can change it. You will have to close and restart the SkookumIDE once you have changed the IP address.

Specifying the SkookumRuntime IP address

By default, the SkookumRuntime will connect to a local host IP address. It might not be the address that you want so here is how you can set it manually.

Note that this same mechanism is used to specify a remote SkookumIDE IP address for any SkookumRuntime that is not on the same machine as the SkookumIDE such as mobile or consoles.

The SkookumRuntime will check if there is a file named ide-ip.txt in the compiled binary folder. In our Unreal Engine 4 plugin, this folder is located inside your project folder at Content/SkookumScript which will get added to your pak file during packaging. If the runtime on your remote device finds the file ide-ip.txt, it uses the IP address stored in that file to connect to the SkookumIDE.

Note that Shipping builds of the runtime cannot connect to the SkookumIDE and do not read this file.