CLua - Makrovací nástroj

🧩 CLua – Úvod

CLua je samostatný nástroj pro spouštění Lua skriptů, navržený jako flexibilní a rozšiřitelný makrovací nástroj s původním zaměřením na hru Original War, usnadnit tak moderům jejich život.

Je to však univerzálnější nástroj, který může být využit pro různé automatizační a skriptovací úkoly.


💾 Dostupné verze

CLua je dostupný jako konzolová aplikace pro:

  • 🪟 Windows
    Spouští se přímo přes CLua.exe
    (Konzole se otevře automaticky)

  • 🐧 Linux
    Spouští se přímo přes binárku CLua (nebo ručně přes vaší konzoly)
    (Konzole by se měla otevřít automaticky)


🔍 Co CLua umí

CLua je napsán v C# a využívá vlastní integrovaný Lua Engine pro běh skriptů. Je navržen tak, aby umožnil vytváření modulárního Lua kódu s podporou:

  • Práce s Uživatelským rozhraní prvky (okna, tlačítka, texty, progress bary…)
  • Prácovat s daty z .xlsx tabulek (bez nutnosti mít MS Excel)
  • Generování textových souborů
  • Vnořené skriptování přes import()
  • Možnost rozšiřování vlastním kódem (modulární architektura)

Jako GUI vrstva se využivá Terminal.GUI 2.4.4.


🔐 Bezpečnostní omezení

CLua klade důraz na bezpečné makrování, a proto:

  • Následující jsou zcela zakázány: io, package, require, loadfile, dofile, loadstring, load, getmetatable, collectgarbage, setfenv, getenv, newproxy
  • Omezeny na bezpečnou podmnožinu: os (pouze clock, date, difftime, time) a debug (pouze traceback, dostupný také jako globální debugTracker)
  • Skripty nemohou přistupovat mimo složku programu a jeho podsložek
    (všechny cesty jsou relativní vůči adresáři CLua, jakýkoliv pokus o načtení souborů mimo složku programu, vede k chybě)

Tím je zajištěno, že i při použití komunitních skriptů nedojde k nechtěné manipulaci se systémem uživatele.


🧪 Vývojová poznámka

Projekt je stále ve vývoji, ale dosáhl svého původního cíle. Další funkce budou přidávány spíš na vyžádání — už teď umožňuje vytvářet silné, přehledné a efektivní makra.


📜 Licence

CLua je poskytován jako open tool pro nekomerční použití. Zdrojový kód je dostupný na GitHubu.