Profile image

Pyphoon - Python to Funky Trees Demo Plane

58.7k Whills  2 hours ago

What is this?

This is a demo plane I created while developing the PYtoFT tool: a mini compiler that converts a Python script into Funky Trees variables. With this tool, it is possible to create complex flight control systems or other in-game logic in a much more structured and organized way. This makes control logic easier to read and debug, instead of relying on deeply nested, condensed Funky Trees expressions (which have tortured me for a long time).

What is PYtoFT, how to use it?

GitHub Page: Click

Project Home Page: Click

What PYtoFT does, is that it converts your Python script like this:

from lib.FT_functions import *
main_loop_name = '_process'
exclude = ['exported_var']

my_global_var = 1.0
exported_var = False

def _process() -> None:
    global my_global_var
    global exported_var
    simple_var = 2000.0
    if my_global_var:
        if IAS > exported_var:
            another_simple_var = foo(simple_var)
        else:
            another_simple_var = 0
    else:
        another_simple_var = -1

def foo(some_value) -> float:
    input_val = some_value
    if Altitude > 200:
        input_val += 2
    else:
        input_val -=2
    result = input_val + bar()
    return result

def bar() -> float:
    if IAS > 10:
        return 5
    else:
        return 0

Into XML code like this:

Setter variable= my_global_var function= 1.0 priority= 0

Setter variable= simple_var  function= 2000.0  priority= 0 

Setter variable= another_simple_var  function= (my_global_var ? ((IAS > exported_var) ? (((Altitude > 200) ? (simple_var + 2) : (simple_var - 2)) + ((IAS > 10) ? 5 : 0)) : 0) : -1)  priority= 0 

And then inject the code into your plane XML file.

Plane Features

  • All Funky Trees expressions in the variable setters are generated from a Python script. I did not write a single line of funky trees expression in-game :)
  • 89 parts!
  • Detailed cockpit and displays
  • Can land on a carrier
  • Works in SP2
  • Realistic flight characteristics
  • AOA limiter and G limiter

Enjoy your flight!

And Merry Christmas!

General Characteristics

  • Created On Windows
  • Wingspan 35.5ft (10.8m)
  • Length 52.2ft (15.9m)
  • Height 18.8ft (5.7m)
  • Empty Weight 27,301lbs (12,383kg)
  • Loaded Weight 35,207lbs (15,969kg)

Performance

  • Power/Weight Ratio 1.148
  • Wing Loading 65.6lbs/ft2 (320.1kg/m2)
  • Wing Area 537.0ft2 (49.9m2)
  • Drag Points 1486

Parts

  • Number of Parts 89
  • Control Surfaces 3
  • Performance Cost 707
  • Log in to leave a comment
  • Profile image

    also Whills,merry Xmas :))🎄🎄

    +1 an hour ago
  • Profile image

    YUROFAITAH TAYPHOON🔥🔥🔥🔥🔥🔥🔥

    an hour ago
  • Profile image
    24.3k KatBapa20

    @ZealousKestrel Yep!
    kinda unrelated but, that doesn't stop that some people will feel pretty extreme envy when you said that this craft (surely) gotta reach at 200 upvotes!

    +2 1 hours ago
  • Profile image

    we gotta get this to 200 upvotes this is gonna be revolutionary

    +2 2 hours ago