An Arma 3 extension that lets you to write python extensions for Arma 3. And it's really simple and straightforward to use!
Full type conversion both ways: pass in an SQF array of ints, get a python array of ints. Return a tuple of a float, a bool and a string, get an SQF array containing the float, bool and the string
Embedded python installation (you don't have to install anything; just run the mod)
Python code stored inside @YourOwnMod directory
Python modules can call and reuse each other, even between separate Arma mods
Background Python threads
Cython and other compiled python extensions "just work" (C-like speed for performance-critical modules)
Extendable python environment through pip
Proven to work with libraries such as numpy, scipy, matplotlib, PyQt5, etc...
Automatic python code reloader for easier development
Calling SQF back from Python (experimental, using asyncio syntax)
Allows returning more than 10240 characters from the extension transparently
Annoys sloppy SQF developers with correct code indentation since Day One ;)
To install Pythia you should use modfolders to keep it seperate from the official game content to prevent issues.
With Arma 3 you can use different ways to set up your modfolders to use custom content you have downloaded.
Please visit the Arma 3 Mod install instructions page
for more information about using custom mods and addons in Arma 3.
.dll files can harm your PC! Before running this you should make sure you understand the risks!
Armaholic, its staff and the people behind the website can never be held responsible when any file you download from the website causes any damages, disruption in services or any other issues related to the downloading and usage of these files! Downloading and/or installing these files is totally at your own risk!
Having the following function defined:
def my_function(some_string, number, the_truth):
return ["awesome", 42, True, (1, 3.5)]
And calling this SQF code:
["MyAwesomeModule.my_function", ["arg1", 3.14256, False]] call py3_fnc_callExtension
Will return this to your SQF code:
["awesome", 42, True, [1, 3.5]]
For usage instructions and information of how to use the Pythia please refer to the included documentation, example mission and/or Github
These features could be implemented quite easily but for some reason have never been done. Want them in or want to help developing them? Contact the developers!
Mods contained inside single .pbo files
Calling functions in the background and polling for them
More information: https://github.com/overfl0/Pythia
Bump python version to 3.7.9
Update the Github url in mod.cpp
The embedded python installation will now always contain files required when building Cython extensions from source
Fix for install_requirments.bat when an exclamation mark is in the path (!Workshop)
Other internal changes, see: https://github.com/overfl0/Pythia/commits