Download Game! Currently 92 players and visitors. Last logged in:OmrilGrizztRuskaAnakin

Blitzer's Blog >> 71716

Back to blogs index
Posted: 10 Aug 2026 10:18 [ permalink ]
<script src="omega_client.js"></script>
</body>
</html>


-UUU:----F1B mesh_gui.htmlB BBot L335B B(HTML+) -------------------------------
-
Quit
$ emacs /mnt/mesh_root/src/hauki-os/m-suite/mesh_gui.htmlB
$B

==[ Chromium ]==
http://127.0.0.1:48888/m-suite/mesh_gui.html

** DevTools Console **
omega_client.js:8 [Omega] RekisterC6idytC$C$n tunnuksella m-suite-gui-70870...
omega_client.js:26 [Omega] Yhteys luotu. Aloitetaan kuuntelu!
:48888/favicon.ico:1B Failed to load resource: the server responded with a
status of 404 (Not Found)

==[ MUD ]==
> list entry
[i1] Kentta: 'Address and search bar'
[i2] Kentta: 'Hae tai aloita uusi keskustelu'
[i3] Kentta: 'Kirjoita viesti ryhmC$lle: HAUKI_GEM'

> type i3 haloo
Kirjoitetaan [i3] 'haloo'...
Teksti syotetty! (Status: 200)

> type key return
LC$hetetC$C$n nC$ppC$in: Return
Klikattu! (Status: 200)

>B

==[ Chromium ]==
[TELEMETRIA MUDILTA]:
B
--- [DELTA UPDATE] ---
[-] X:744 Y:877 | Kirjoita viesti
[+] X:744 Y:879 | haloo

----------------------
>B

Cool!!!

TC$mC$ on SE hetki! TC$ydellinen lC$pimurto.

KC$ydC$C$npC$ sekunti lC$pi, mitC$ tuossa juuri tapahtui konepellin alla,
koska tC$mC$ on arkkitehtonisesti todella kaunista:

1. QEMUn sisC$llC$ pyC6rivC$ MUD-moottori huomasi headless-selaimen DOM-puussa
muutoksen (tekstikentC$n teksti vaihtui).
2. Se generoi diffin ja lC$hetti sen `OMG-TLM-DIFF` -pakettina paikalliselle
Omega Router V4:lle.
3. Omega Router katsoi Pub/Sub-tauluaan, huomasi ettC$ "Hei, ulkomaailman
selain (M-SUITE) tilaa nC$itC$!" ja teki viestistC$ kopion sille.
4. IsC$ntC$koneella pyC6rivC$ Chromium-selain pollas reititintC$ portin 48888
lC$pi, nappasi paketin ja sylkC$isi sen DevTools-konsoliin.

Kaikki tC$mC$ eristetyn hiekkalaatikon, porttiohjauksen ja tC$ysin
asynkronisen hajautetun viestinvC$lityksen yli  reaaliajassa!

### Testataan paluukaista (TX: Chromium -> MUD)

Koska rakensimme `omega_client.js`:C$C$n valmiiksi komennonlC$hetysfunktion,
voit testata laatikon ulkopuolista ohjausta vC$littC6mC$sti.

Kirjoita sinne Chromiumin DevTools-konsoliin (alareunan promptiin) painaen
Enter:

```javascript
sendOmegaCommand("look")

```

MitC$ tapahtuu?

1. Chromium ampuu `OMG-CMD`-paketin Omegan Inboxiin.
2. MUD pollaa Omegan laatikon, lC6ytC$C$ komennon, suorittaa sen sisC$isesti
ja lC$hettC$C$ tuloksen takaisin `OMG-ECHO`-pakettina.
3. NC$et Chromiumin konsoliin ilmestyvC$n `[MUD VASTAUS]: Olet graafisessa
huoneessa. Taalla on...`

### MitC$ seuraavaksi?

Nyt kun putki on auki kumpaankin suuntaan, meillC$ on kaksi luonnollista
kehityssuuntaa. Kumpaan tartutaan ensin?

**A) HUD ja KC$yttC6liittymC$ (Visualisointi)**
Rakennetaan `mesh_gui.html`:n sisC$lle siisti musta/vihreC$ terminaalilaatikko
ja syC6ttC6kenttC$. Ohjataan `console.log`:n sijaan nuo diffit ja vastaukset
suoraan tC$hC$n kC$yttC6liittymC$C$n, jolloin voit "pelata" MUDia suoraan
selaimesta kC$sin.

**B) Automaatio (M-SUITE Clykkyys)**
Luodaan M-SUITEen skripti, joka ei vain lue telemetriaa, vaan *reagoi* siihen.
Esimerkiksi: jos ruudulle ilmestyy telemetriapaketti `[+] ... Kirjoita
viesti`, M-SUITE ampuu automaattisesti takaisin komennon `type i3 Tervehdys
isC$ntC$koneen automaatiolta!`.

==[ Chromium ]==
> sendOmegaCommand("look")
Promise {<pending>}
omega_client.js:77 [Omega] Komento lC$hetetty: look
omega_client.js:56 [MUD VASTAUS]: {status: 'received', cmd: 'look'}
omega_client.js:56 [MUD VASTAUS]: {status: 'success', output: ''}

==[ MUD ]==
> Olet graafisessa huoneessa. Taalla on 50 nappia, 3 kenttaa ja 8 tekstia.

Nyt pitC$C$ mennC$ juhlintasavukkeelle! Upeaa! Kiitos!

Nauti juhlintasavukkeesta, olet sen todellakin ansainnut! ,

TC$mC$ on aivan huikea virstanpylvC$s. Mieti, mitC$ tuossa juuri tapahtui:
lC$hetit komennon isC$ntC$koneen selaimen konsolista, se reititettiin
asynkronisesti QEMU-hiekkalaatikon sisC$C$n, MUD poimi sen, suoritti sen, ja
lC$hetti kuittauksen takaisin ulos selaimellesi. Koko The Dark Meshin
ydinarkkitehtuuri todisti juuri toimivuutensa reaaliajassa.

(Pieni huomio: Huomasit varmaan, ettC$ selain sai vastauksena `output: ''`, ja
itse vastausteksti tulostui yhC$ MUDin omaan terminaaliin isC$nnC$llC$. TC$mC$
johtuu vain siitC$, ettC$ MUDin ydin `dom_mud_core.js` jakaa `print`-funktion
laajennuksille tavalla, joka ohitti meidC$n tekemC$mme tulosteen kaappauksen.
TC$mC$ on kirjaimellisesti minuutin kosmeettinen korjaus, jonka hoidamme heti
kun palaat sorvin C$C$reen!)

KC$y rauhassa tauolla ja nauti onnistumisesta. Olemme luoneet pedon. Jatketaan
visualisoinnin tai automaation parissa, kun olet taas valmis!