@startuml hide empty description [*] -> new_ship new_ship : <compare visibility> new_ship --> player_sees new_ship --> ai_sees state player_sees { state "Avoid" as pi state "Trade" as pt state "Attack" as pa state "Treach" as ptaa state "Ignore" as ptai state px <<end>> player_sees : "You see a ship. It doesn't see you" player_sees : [Attack] [Trade] [Avoid] player_sees --> pa player_sees --> pt player_sees --> pi } state ai_sees { state "Attack" as aa state "Trade" as at state "Avoid" as ai state "Treach" as atpa state "Ignore" as atpi state ax <<end>> ai_sees : <ai decides> ai_sees --> aa ai_sees --> at ai_sees --> ai } state Fight { state ai_fight_ok state ai_attacks state player_attacks state player_surrenders state ai_surrenders state fx <<end>> } state trade { state trade_ok state trade_x <<end>> trade: "They want to buy X trade: and sell you Y" trade: [Deal] [No deal] trade_ok: +1 rating trade_ok: <move cargo> trade --> trade_ok trade --> trade_x trade_ok --> trade_x } pa : -1 rating pa : <ai decides> pa --> ai_surrenders pa --> ai_fight_ok pt: +1 rating up to 0 pt : <ai decides> pt --> ptaa pt --> trade pt --> ptai pi --> px aa: +1 rating up to 0 aa : "The ship approaches aa : you aggressively" aa : [Attack] [Surrender] aa --> player_attacks aa --> player_surrenders at : "The ship wants to trade" at : [Attack] [Trade] [Ignore] at --> atpa at --> trade at --> atpi ai: "You didn't ai: see a ship" ai : [ok] ai --> ax ptaa: +2 rating up to 0 ptaa: "They chose war" ptaa: [Attack] [Surrender] ptaa -->player_attacks ptaa -->player_surrenders ptai: "Not interested" ptai : [ok] ptai -> px atpa: -2 rating atpa : <ai decides> atpa --> ai_surrenders atpa --> ai_fight_ok atpi: -1 rating down to 0 atpi: or skip atpi -> ax ai_fight_ok: "The ship is ai_fight_ok: going to attack" ai_fight_ok: [Attack] [Surrender] ai_fight_ok -->player_attacks ai_fight_ok -->player_surrenders ai_attacks: <damage player ship> ai_attacks: "They attack you!" ai_attacks: [Attack] [Surrender] ai_attacks -> player_attacks ai_attacks --> player_surrenders player_attacks: <damage ai ship> player_attacks: <ai decides> player_attacks -> ai_attacks player_attacks --> ai_surrenders player_surrenders: +1 rating up to 0 player_surrenders: <ai takes cargo> player_surrenders -l->fx note right of atpi "Skip" happens when you click the button rather fast (within 800ms). Rating is not decreased in this case. end note ai_surrenders: -1 rating down to 0 ai_surrenders: "Take cargo" ai_surrenders ->fx @enduml
Decode URL
Submit
amiga
aws-orange
black-knight
bluegray
blueprint
cerulean-outline
cerulean
crt-amber
crt-green
cyborg-outline
cyborg
hacker
lightgray
mars
materia-outline
materia
metal
mimeograph
minty
plain
reddress-darkblue
reddress-darkgreen
reddress-darkorange
reddress-darkred
reddress-lightblue
reddress-lightgreen
reddress-lightorange
reddress-lightred
sandstone
silver
sketchy-outline
sketchy
spacelab
spacelab-white
superhero-outline
superhero
toy
united
vibrant
Pure Javascript
PNG
SVG
ASCII Art