Myslím, že tvoje aktuální pocity znám. Když jsem s v HA kdysi začínal programovat kódem, myslel jsem, že s tím seknu snad tisíckrát a to jsem bývalej programátor. Jedním příspěvkem tě samozřejmě všechno nenaučím, ale snad tě bude motivovat, že dnes už práskám automatizace i scripty v YAMLu levou zadní a nedám na něj dopustit. Psát to v GUI je stokrát horší, jak na tvorbu, tak na údržbu. Visual Studio Code ti s YAMLem tak pomůže, že nemusíš dělat skoro nic (
skoro 
). Takže rozhodně vydrž! Jak píšeš, leccos už umíš, čili googli, googli a googli, čti příklady, sám si všechno ze všech stran zkoušej - a jednou to najednou prorazí a ty budeš jak v jiným světě , všechno bude dávat smysl (no, skoro tak

).
state a
state_attr jsou funkce pracující s entitami HA. Patří sem
https://www.home-assistant.io/docs/conf ... extensions a rozšiřují
Jinja jazyk, který HA používá v šablonách, o funkce specifické pro HA. Tím
set value_json jsi nedefinoval entitu, ale běžnou proměnnou, jejíž obsah je objekt (zapisuje se do složených závorek formou klíč:hodnota).
tady
{% set value_json = {'Battery_State_Test': 1} %} je to v uvozovkách, protože definuješ proměnnou typu objekt, kde klíč (to před dvojtečkou) má být string. Pokud někde uvidíš zápis klíče bez uvozovek, je to špatně anebo ten kompilátor to za toho programátora lenocha pak doplní
states je funkce a argumenty funkce se zapisují do kulatých závorek.
atd. atd.
Co se psaní kódu týče, jsou důležitý:
https://www.home-assistant.io/docs/scripts/
https://www.home-assistant.io/docs/conf ... emplating/
https://jinja.palletsprojects.com/en/3.1.x/
PS: kdybych psal nějaký voloviny, s klidem mě někdo opravte/doplňte.