@startuml skinparam groupInheritance 5 !$myjson = %load_json("somefolder/listof_tech_eng_obj_with_realnames.json") left to right direction skinparam BackgroundColor #eee skinparam titleFontSize 26 skinparam titleFontName Verdana skinparam titleBorderThickness 0 skinparam titleBorderRoundCorner 12 skinparam titleBackgroundColor Aqua-CadetBlue skinparam class { BorderColor grey BackgroundColor #ddd FontSize 12 FontName Verdana 'BorderColor<> transparent 'handwritten<> true } skinparam package { BorderThickness 1 BorderColor grey RoundCorner 20 Style default } hide empty members hide stereotypes hide circle scale max 4000 height title "UFO: Aftermath" research tree !$colour = "white" !foreach $i in $myjson.research !if ($i.kind == "SCI") !$colour="white" !else !$colour="yellow" !endif class "$i.realname" as $i.name #$colour { time: $i.time h } !endfor !foreach $i in $myjson.objects !if ($i.type == "EVENT") !$colour="cyan" !else !$colour="lightgrey" !endif class "$i.realname" as $i.name #$colour !endfor !foreach $i in $myjson.research !foreach $j in $i.subtechnos !if ($j.required == true) $j.elements --> $i.name !else $j.elements -[dotted]-> $i.name !endif !endfor !endfor legend left lightgrey colored boxes = looted OBJECTS or captured live ALIENS cyan colored boxes = EVENTS white colored boxes = SCIENTIFIC research yellow colored boxes = ENGINEERING technology Mellarius, 2023. Visually generated by PlantUML. endlegend @enduml