# Subsystems (Don't Use)

## <mark style="color:yellow;">A Warning</mark>

For Python, while it is possible to create a Subsystem class, <mark style="color:yellow;">they don't actually work</mark>

Subsystems can be set up similarly to Blueprint Function Libraries with the added expectation of supporting variables:

```python
@unreal.uclass()
class PyEditorSubsystem(unreal.EditorSubsystem):

    value = unreal.uproperty(str)

    def __init__(self):
        super().__init__()
        self.value = 5

    @unreal.ufunction(static=True)
    def basic_function_test():
        print("Running python!")
        pass
```

Unreal will present it as though it is a valid subsystem in the Blueprint Graph:

<figure><img src="https://368271246-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FStUBkBT2qJGKNkIZ6yc7%2Fuploads%2FlwjtnX7hrI9Q9Wi7XPWn%2Fimage.png?alt=media&#x26;token=086e66e2-4121-460a-b3a0-413d3343e4d7" alt="" width="563"><figcaption></figcaption></figure>

Unfortunately, this will result in LogScript warnings when run:

<figure><img src="https://368271246-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FStUBkBT2qJGKNkIZ6yc7%2Fuploads%2FUDRsiMOM2LCRMYof8Voz%2Fimage.png?alt=media&#x26;token=544ac51c-2fd0-402d-8be9-b9ac7ceaef99" alt=""><figcaption></figcaption></figure>

It does provide the functions directly in the right click menu, and they will work during your immediate session:

<figure><img src="https://368271246-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FStUBkBT2qJGKNkIZ6yc7%2Fuploads%2FkkFknnBFdGfhvRizBCYG%2Fimage.png?alt=media&#x26;token=ea79a64b-2db3-4210-bb86-e8db951d128f" alt="" width="493"><figcaption></figcaption></figure>

But it's a trap, the next time you open the Editor it will have a compile error and look like this when you refresh that node:

<figure><img src="https://368271246-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FStUBkBT2qJGKNkIZ6yc7%2Fuploads%2Ffa1fBCeLOh7Wf136OPdS%2Fimage.png?alt=media&#x26;token=832886f6-50b3-4d0f-9f25-e2bec6211761" alt="" width="463"><figcaption></figcaption></figure>

***

## Summary: Do Not Use

Subsystems should be avoided until proper support is added for them in Python.
