[SOLVED] Need help to get Armory working please

Hi,

I have Armory setup in Blender 4.0 (available at https://builder.blender.org/download/daily/ ). However I see nothing in Properties - Render - Armory Player when following the Armory setup guide. Console output is …

Last login: Mon Nov 13 12:19:56 on ttys001
/Users/michaelzfreeman/Desktop/Blender-with-console ; exit;
michaelzfreeman@Michaels-MacBook-Air-777.local
~
$ /Users/michaelzfreeman/Desktop/Blender-with-console ; exit;
Read prefs: "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/config/userpref.blend"
Traceback (most recent call last):
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 919, in on_load_post
    restart_armory(bpy.context)  # context is None, use bpy.context instead
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 914, in restart_armory
    start_armory(sdk_path)
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 872, in start_armory
    import start
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/start.py", line 5, in <module>
    import arm.nodes_logic
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/nodes_logic.py", line 8, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/__init__.py", line 7, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_nodes.py", line 10, in <module>
    from arm.logicnode.arm_sockets import ArmCustomSocket
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_sockets.py", line 598, in <module>
    def _make_socket_interface(interface_name: str, bl_idname: str) -> Type[bpy.types.NodeSocketInterface]:
AttributeError: 'module' object has no attribute 'NodeSocketInterface'
Traceback (most recent call last):
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 924, in on_register_post
    restart_armory(bpy.context)
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 914, in restart_armory
    start_armory(sdk_path)
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 872, in start_armory
    import start
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/start.py", line 5, in <module>
    import arm.nodes_logic
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/nodes_logic.py", line 8, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/__init__.py", line 7, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_nodes.py", line 10, in <module>
    from arm.logicnode.arm_sockets import ArmCustomSocket
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_sockets.py", line 598, in <module>
    def _make_socket_interface(interface_name: str, bl_idname: str) -> Type[bpy.types.NodeSocketInterface]:
AttributeError: 'module' object has no attribute 'NodeSocketInterface'
Read blend: "/Users/michaelzfreeman/Downloads/armory_templates-master/third_person/third_person.blend"
Traceback (most recent call last):
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 919, in on_load_post
    restart_armory(bpy.context)  # context is None, use bpy.context instead
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 914, in restart_armory
    start_armory(sdk_path)
  File "/Users/michaelzfreeman/Library/Application Support/Blender/4.0/scripts/addons/armory.py", line 872, in start_armory
    import start
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/start.py", line 5, in <module>
    import arm.nodes_logic
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/nodes_logic.py", line 8, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/__init__.py", line 7, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_nodes.py", line 10, in <module>
    from arm.logicnode.arm_sockets import ArmCustomSocket
  File "/Users/michaelzfreeman/ReturnToTheSource/armsdk/armory/blender/arm/logicnode/arm_sockets.py", line 598, in <module>
    def _make_socket_interface(interface_name: str, bl_idname: str) -> Type[bpy.types.NodeSocketInterface]:
AttributeError: 'module' object has no attribute 'NodeSocketInterface'

The above is after hitting F5.

Would love to get Armory working on my Mac M1 however I do have a Linux and a Windows system so might have to fall back to those.

Any help appreciated !

Tried on Linux Kubuntu. Still no joy …

michaelzfreeman@michaelzfreeman-OptiPlex-3020
~
$ blender
Read prefs: "/home/michaelzfreeman/.config/blender/3.6/config/userpref.blend"
Failed to open dir (No such file or directory): /run/user/1000/gvfs/
Traceback (most recent call last):
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 919, in on_load_post
    restart_armory(bpy.context)  # context is None, use bpy.context instead
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 914, in restart_armory
    start_armory(sdk_path)
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 872, in start_armory
    import start
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/start.py", line 5, in <module>
    import arm.nodes_logic
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/nodes_logic.py", line 8, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/__init__.py", line 7, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/arm_nodes.py", line 10, in <module>
    from arm.logicnode.arm_sockets import ArmCustomSocket
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/arm_sockets.py", line 9, in <module>
    import arm.node_utils
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/node_utils.py", line 11, in <module>
    import arm.utils
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/utils.py", line 16, in <module>
    import numpy as np
ModuleNotFoundError: No module named 'numpy'
Traceback (most recent call last):
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 924, in on_register_post
    restart_armory(bpy.context)
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 914, in restart_armory
    start_armory(sdk_path)
  File "/home/michaelzfreeman/.config/blender/3.6/scripts/addons/armory.py", line 872, in start_armory
    import start
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/start.py", line 5, in <module>
    import arm.nodes_logic
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/nodes_logic.py", line 8, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/__init__.py", line 7, in <module>
    import arm.logicnode.arm_nodes as arm_nodes
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/arm_nodes.py", line 10, in <module>
    from arm.logicnode.arm_sockets import ArmCustomSocket
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/logicnode/arm_sockets.py", line 9, in <module>
    import arm.node_utils
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/node_utils.py", line 11, in <module>
    import arm.utils
  File "/home/michaelzfreeman/UseTheSourceLuke/armsdk/armory/blender/arm/utils.py", line 16, in <module>
    import numpy as np
ModuleNotFoundError: No module named 'numpy'

Hi, the error from your first post is caused by the fact that you were using Blender 4.0, but Armory only supports the current LTS version (currently, 3.6 LTS), otherwise it would be difficult to keep up with the pace of Blender development.

The second error is related to Blender’s Python environment, for some reason the numpy module which—at least on Windows—usually comes bundled with Blender is missing. Maybe Blender handles things differently on Linux, there should be plenty of information about this on the internet (also about the No module named 'numpy' error message). If Blender uses the system’s Python installation, you can probably fix this by installing numpy 1.23.5 (that’s the numpy version used by Blender 3.6 LTS).

1 Like

Hi. Thanks. I’ll look into the Numpy error. Are you saying Armory cannot work with Blender 4 ? If so that is frustrating as Blender 3.6.0 on the Mac crashes all the time. However if I can fix the Numpy error I guess I might be able to get it going on Linux :smiley:

Are you saying Armory cannot work with Blender 4 ?

At the moment, yes. Once a new LTS version is released, we will also update Armory to support that version. Most of the time, using slightly older/newer Blender versions also works since Blender’s Python API is quite stable, but apparently 4.0 is an exception to that :man_shrugging:. But using any other version than the LTS versions for Armory isn’t recommended anyways for that reason, and bugs that happen due to using an unsupported Blender version won’t be fixed.

The situation with Armory on MacOS is a bit difficult anyways since the main debug target for Armory (“Krom”) seems to not work correctly on Mac: https://github.com/armory3d/armorcore/issues/44.