IRC Logs for #zfx


2024-03-27

01:41:57 fkrauthan joined the channel
07:15:31 joeydee joined the channel
07:15:37 joeydee: moin
07:17:40 joeydee: Hannes "ursprüngliche design sollte mit seinen dickeren schwarzen Linien an Comic-Panels ..." - das Thema "Comic" war damit auch gut getroffen :)
07:46:59 Schrompf joined the channel
07:47:40 Schrompf: hey leuts
07:52:50 joeydee: schau da, das Schrompf
07:54:44 joeydee: Dein Zellulärautomatenhype hat mich daran erinnert, dass ich mal so Zellulär-Schaltkreisgedöns in 2D ausprobieren wollte. Hatte irgendwer mal in seiner 3D-Voxelengine gebastelt, seitdem ist das auf dem Plan.
07:55:52 Schrompf: war das nicht auch xima, als sein webgpu-voxel-dingsi noch ein automaten-simulations-spiel werden sollte, wo man kleine automaten als nfts verkaufen können sollte
07:56:35 Schrompf: ich hab übrigens exakt NÜSCHT daran hingekriegt. ich hab tests geschrieben. und bin dabei in irgendnen obskuren MSBuild-Bug gelatscht, wodurch ich die tests nicht bauen oder ausführen kann
07:56:59 Schrompf: ES KOTZT MICH AN
07:57:01 joeydee: glaube es war xima, was er damit genau vorhatte weiß ich nicht mehr.
08:07:52 joeydee: Müsste mich aber erstmal in Regelwerke einfinden um "Strom" weiterzuleiten. Hatte das mal gedanklich überschlagen, scheint gar nicht so trivial.
08:08:10 xq: moin
08:09:00 Schrompf: moin
08:09:05 Schrompf: ist echt nicht einfach
08:09:45 Schrompf: ich hatte mal ein video gesehen, wo jemand das mit nem sehr langen draht auf nem brett und nem oszi alle 2m ausgemessen hatte, wie strom sich wirklich ausbreitet
08:10:12 Schrompf: der hat dann richtige kleine anims mit den spannungs-messwerten entlang der strecke gebastelt, sehr spannend
08:12:51 joeydee: Ich will ja keine echte Energiesimulation, nur Impulse weiterleiten. Aber selbst das ist nicht so trivial wie es scheint.
08:14:28 Schrompf: einfach nur "Strom an" vs. "Strom aus"?
08:14:34 Schrompf: so dass man nichtmal ne rückleitung braucht?
08:14:45 Schrompf: das stell ich mir gerade einfach vor. was ist mir entgangen?
08:15:15 joeydee: ja, das hatte xima ja auch so. Also Kette von n Zellen, links ist Schalter, rechts ist Lampe.
08:15:43 joeydee: Wenn ich jetzt sage "Wenn dein Nachbar Strom/Signal hat, hast du auch." Aber dann geht beim Ausschalten das Signal nicht aus, da zwar der Schalter links kein signal mehr hat, der Nachbar rechts aber schon noch.
08:18:31 joeydee: Also muss der Richtungsfluss wohl irgendwie durch idle-States, zeitlichen Abfall oder irgendwas "geblockt" werden, damit nur idle-Zellen Signal ablesen. So irgendwas. Aber das hab ich gedanklich nicht weiter verfolgt.
08:19:31 joeydee: Jedenfalls, das war der Knackpunkt (im Gedankenexperiment, habs nie programmiert, vielleicht habe ich auch was Einfaches übersehen)
08:32:44 Schrompf: hm stimmt. der block müsste sich sowas merken wie "ich bekomme strom von links, ich kann nur nach rechts/oben/unten abgeben"
08:33:43 Schrompf: aber das ist auch easily exploitable, du baust einfach ein 2x2-stromgrid und hast strom für immer. das müsste mehr ein bool-array sein "bekomme von links" "bekomme von oben" ...
08:46:25 joeydee: Genau, da werden es doch wieder einzelne kleine Automatenzellen, kein zellulärer Automat an sich.
08:56:59 xq: minecraft hatte das ja mit "ich nehme den höchsten umgebenden wert - 1 an" gelöst
08:57:10 Schrompf: ah, das ist ne idee
09:00:23 joeydee: Dann kommt das Signal aber nicht auf beliebig langen Strecken an?
09:02:11 Schrompf: stimmt, aber das könnte man ja zur absicht erklären
09:02:20 Schrompf: dass du so verstärker reinhängen musst
09:02:48 xq: Widerstand ist halt real :P
09:03:14 joeydee: Ich will nen Supraleiter :D
09:07:22 joeydee: Aber ich sehe damit wenigstens meine Einschätzung "nicht ganz trivial" bestätigt.
09:08:21 Schrompf: ich würde sogar so weit gehen, zu behaupten, dass das problem mit in einzelnen zellen isolierter logik nicht zu lösen ist
09:09:38 Schrompf: im tauchspiel hab ich da nen versteckten layer mit uint16 drunter, der je nach zelleninhalt ein "level" mit verschiedenen bedeutungen speichert
09:09:57 Schrompf: aktuell gibt's nur "eis-dicke", anhand derer das gefrierende wasser merkt, wann gut ist mit zufrieren
09:11:06 Schrompf: und ich weiß noch nicht, ob das dann später überall trägt. 64k level wären für stromtransport jedenfalls genug, behaupte ich
09:12:59 Schrompf: wo ich euch eh mal dran habe: wie könnte ich sand-rieseln umsetzen?
09:14:19 Schrompf: mit ganzen "sand"-blöcken kein problem: wenn die zelle frei ist und darüber frei ist und rechts darüber sand ist, dann nimm den da weg und pack ihn hier hin
09:14:25 Schrompf: schüttwinkel 456°
09:14:27 Schrompf: 45°
09:16:04 Schrompf: aber ich wollte so anteiligen füllstand haben, so wie Terraria mit dem Wasser
09:17:06 joeydee: Hört sich an als brauchst du einen Druck-Wert?
09:17:30 Schrompf: druck? "wasserdruck" oder was?
09:18:01 joeydee: Ja. Oder Sand-Druck in dem Fall.
09:18:07 Schrompf: ich brauch erstmal ganz plump "sand-level". ok. das ist ein anfang, dann kann ich auch teilstufen von sand nehmen, und kann das dann breitlaufen lassen wie wasser
09:18:28 Schrompf: aber da hab ich dann ein problem mit dem background: was ist im restlichen teil des feldes?
09:18:45 Schrompf: ich hätte dann den feld-typ "sand mit wasser dahinter" oder "sand mit luft dahinter"
09:19:32 Schrompf: und wasserdruck wollte ich auch noch machen, kombiniert mit ner flüssigkeits-simulation, so dass runterschwallender sand im wasser ne strömung auslöst
09:20:37 joeydee: Lös doch erst mal nur ein Problem ;)
09:20:43 Schrompf: muss mir mal den naviar-stokes anschauen, ich glaube der war genau das: druck auf zellen, daraus bewegungsvektor zu nachbarzellen, aus der bewegung den neuen druck auf den nachbarzellen, und das in schneller folge, bis man irgendein gleichgewicht hat
09:20:51 Schrompf: ja, auf jeden fall :-)
09:21:21 Schrompf: ok, ich mach jetzt "sand mit wasser-hintergrund" und "sand mit luft-hintergrund"
09:21:46 Schrompf: und nun bohrt die spielerin in den fels (== sand) und trifft erz (== erz-sand)
09:21:52 joeydee: Warum hast du gemischte Zellen? Entweder Sand, oder Wasser, oder Luft dachte ich?
09:22:02 Schrompf: na anteilig, so wie terraria
09:22:11 Schrompf: da hast du verschiedene wasser-höhen pro feld
09:22:27 joeydee: da kann ich nicht mitreden.
09:22:52 Schrompf: und wenn du einen wasserblock hast: " O ", dann läuft der breit: " --- " und dann breiter "__-__"
09:23:14 Schrompf: und im rest, im platz über der wasserhöhe ist halt irgendwas anderes
09:23:26 Schrompf: bei terraria ist das immer erstmal "luft"
09:23:56 Schrompf: aber was wenn's das nicht ist? oder wenn da ne dritte sorte dazu kommt? bei terraria gibt's außerdem lava, die auch langsam breit läuft so wie das wasser
09:24:23 Schrompf: und in diesem konkreten fall hat terraria einfach spielmechanik draus gemacht: wasser auf lava macht obsidian-block, also fest
09:24:55 Schrompf: aber vielleicht haben die ja auch noch andere flüssigkeiten, die sich nur überlagern. oder du kennst ein anderes survival-spiel, was irgendne simulation in dieser richtung hat
09:28:14 joeydee: Ne dafür kenne ich zu wenig. Und würde ich sowas machen wollen, würde ich erstmal nur versuchen, was mit ganzen Voxeln und einem Element (Sand oder Wasser) zu simulieren.
09:59:44 joeydee: Hatte gerade noch eine Eingebung zu meinem "Problem". Eigentlich zwei.
10:00:11 joeydee: a) kann sein dass ich weiterkomme wenn ich State-Transitions beachte, statt nur reine States.
10:01:54 joeydee: b) kann sein dass ich weiterkomme, wenn ich versuche Logikgatter mit Taktgeber zu simulieren. Im Prinzip gibts dann kein Dauersignal, sondern einen Oszillator.
10:02:35 joeydee: Muss das wirklich mal in einem Test angehen.
10:05:01 Schrompf: ah, du leitest also nicht den Zustand "hat Strom" weiter, sondern die Veränderung "bekommt Strom" und "verliert Strom"
10:05:37 Schrompf: dann kann man mit ner Schleife auch Zyklen und so bauen
10:06:12 Schrompf: und Du musst Dir nur initial nen Zustand auswürfeln, wenn Du einen neuen "Draht"-Block an eine bestehende Leitung anhängst
10:06:40 Schrompf: machste vier Blocktypen: "tot", "bekommt Strom", "hat Strom", "verliert Strom"
10:07:05 Schrompf: für ne Lampe dran gelten "bekommt" und "hat" als "an", und "tot" und "verliert" als "aus"
10:07:49 joeydee: Lampe ist ja auch nur Draht ;)
10:08:46 joeydee: Aber ja, so im Prinzip. Muss mal die Regeln für bis zu 4 Nachbarn aufschreiben, ob das Sinn machen könnte.
10:32:35 Schrompf: ich hab's in nem anderen kanal auch mal zur diskussion gestellt. und wenn ich wasserhöhe, sand-höhe und möglicherweise noch erz-pulver-höhe (wenn man ne erzader anbohrt) alle verlustfrei abbilden will
10:33:00 Schrompf: hab ich im endeffekt einfach x typen pro feld, nicht nur einen feldtyp, der das ganze feld ausfüllt
10:33:23 Schrompf: und wenn jetzt unter wasser sand durchs wasser rieselt, könnte ich pro feld sogar (kurzzeitig) schichten haben
10:33:48 Schrompf: so wie "Sand | Sand | Wasser | Sand | Wasser | Luft | Wasser | Luft"
10:34:11 Schrompf: und da fiel mir dann auf, dass ich da einfach nur ein höhen-gestapeltes Array aus Feldern habe
10:34:41 Schrompf: und damit könnte ich auch einfach nur die Auflösung meiner Landschaft erhöhen und jedes Feld wieder nur "ganz oder gar nicht" betrachten
11:14:41 joeydee: Und ich würde im Prinzip einen Floodfill auf CA-Grundlage bauen, glaube ich.
11:19:56 joeydee: (Also als Nebenprodukt meine ich; Floodfill selbst löst das Problem ja nicht)
11:20:42 joeydee: Fazit: Heute Abend wird mal gebastelt, wenn nix mehr dazwischen kommt :)
11:21:21 joeydee: Andererseits, ich hab gerade neue Modellbau-Farben bekommen ... hm...
11:42:01 Schrompf: Freizeitstress
11:42:27 Schrompf: ich hab mich mitm laptop und blauzahn-kopfhörern rausgesetzt in den park vor der villa
11:42:30 Schrompf: schön hier
11:42:35 Schrompf: selbst meetings sind so ganz ok
11:51:12 joeydee: glaube ich gern
12:01:34 Schrompf: http://www.splitterwelten.info/privat/signal-2024-03-27-123922_002.jpeg
12:20:21 xq: ja.
12:20:28 xq: Wo bist du da?
12:21:00 xq: Ich könnte auch aufs Solitute hoch und da coden
12:32:01 Schrompf: auf arbeit bin ich, im park hinter der villa
12:32:09 Schrompf: was ist das Solitute?
12:33:22 xq: Ein schönes Schloss bei Stuttgart
12:40:20 Schrompf: Ah, nice. Das heißt aber sicher "Solitude", oder? mit 'd' anstatt 't'
12:40:33 Schrompf: und warum darfst du da rauf?
12:41:28 xq: stimmt, mit d
12:41:32 xq: @ikskuh_bridge_bot: weil man da einfach hin kann :D
12:41:44 xq: und ich kann ja mobil arbeiten 😁
12:56:16 joeydee: Ich auch, ich komm aber jetzt trotzdem nicht dort hin :D
12:56:16 Schrompf: cool! bei uns sind alle schlösser an banken oder immobilienfirmen verkauft und sperrgebiet
13:05:26 xq: boah schade :(
16:47:38 Hannes joined the channel
16:47:48 Hannes: hiho
17:02:50 xq: huhu
17:09:47 joeydee: hahej
17:19:09 xq: joeydee, ich hab ein problem
17:19:13 xq: ich würde gerne wieder games devven
17:19:18 xq: aber ich bin irgendwie unschlüssig
17:19:23 xq: ich brauch halt nen "gscheides" UI
17:19:31 xq: also irgenwas, das gute text edits kann
17:19:39 xq: will aber auch ne statische programmiersprache
17:19:41 xq: und 2D-Rendering
17:19:48 xq: und bin jetzt in einer analyse-paralyse
17:37:51 joeydee: und Sound haste vergessen.
17:39:52 joeydee: Statische Typisierung ist bei meiner Wahl immer Pflicht. Gute Text-Edits kann ich selbst nicht, hab da mal angefangen mir was zu schreiben, aber nicht weit. Fremd-UIs sind mir i.d.R. zu aufgeblasen, also nehm ich was ich habe.
17:40:45 joeydee: Ist für mich ein bischen so die Herausforderung, mit dem abgespeckten Kram den ich habe möglichst weit zu kommen.
18:08:26 joeydee: CA-Signaltransport mittels State Switches: https://youtu.be/zegnnACFptE
18:29:35 xq: ja, ich brauch für mein game halt schlicht als core item nen guten te teditor
18:29:43 xq: da komm ich nicht drumrum
18:34:00 joeydee: Dann bau dir einen als Pre-Projekt, in irgendeiner Sprache. Was du dann bei Bedarf überallhin in 20 Min portieren kannst.
18:35:45 joeydee: "Guter TE" ist ja auch relativ - reicht ein Notepad, sind Fettungen, Farbmarkierungen, verschiedene Schriftgrößen und -Arten wichtig, nur Monospaced oder beliebige Schriften, ...
18:35:56 xq: "Code Editor"
18:36:16 xq: monospaced, farbige schrift
18:36:20 xq: gscheide hotkeys
18:40:09 joeydee: Da würde ich einfach selbst was anfangen, erstmal als separates Projekt. Bis du da ein zufriedenstellendes UI hast, ist dieses wahrscheinlich so aufgeblasen, dass es nur nervt und andere Issues hat. Sehe ich als aussichtslos, vor allem wenn du für Games skinnen willst.
18:40:45 joeydee: * zufriedenstellendes UI gefunden hast
18:40:55 xq: mir gehts ja grade erst mal nur ein prototyp
18:40:56 xq: :D
18:41:05 xq: da will ich eben nicht direkt nen code editor bauen :P
18:42:51 joeydee: Ok, dann such weiter was aufgeblasenes und fluche dann ;)
18:43:21 xq: ich hätte eig. gerne einfach Windows Forms
18:43:27 xq: aber das ist ja offiziell nicht mehr auf Linux supported :P
18:43:38 xq: oder ich nehme Qt
18:43:44 xq: müsste dann aber halt zwangsweise C++ nehmen
18:44:25 joeydee: Wenns nur um Prototyping geht und du später sowieso woanders hin portest, ist das ja egal.
18:44:50 joeydee: Wenn du schon im Zielsystem bleiben willst, ist dein Argument "mir gehts ja grade erst mal nur ein prototyp" hinfällig.
18:45:17 xq: naja
18:45:22 xq: ich will das ganze UI stubben
18:45:28 xq: aber den rest halt schon "production ready" bauen
18:47:21 joeydee: Dann musst du aber JETZT schon sicher sein, dass es das passende UI für dich in dieser Umgebung geben wird. Oder du es selbst coden kannst.
18:50:41 xq: why?
18:52:31 xq: ich bin eh am überlegen, ob ich die game logic in C# oder so schreibe
18:52:42 xq: aber die runtime halt in zum beispiel Zig
18:52:48 xq: oder ich nehm später unity
18:53:13 joeydee: Du merkst schon, dass du dich im Kreis drehst?
18:53:50 joeydee: "why?" - wenn das nicht relevant ist, dann fang doch einfach mit C++ und QT an.
18:55:49 xq: hm
18:55:54 xq: guckenwa mal
18:57:03 xq: ich hasse es, dass es keine gscheiden UI-Systeme gibt
18:57:20 xq: bbl
19:56:07 xq: re
19:58:05 joeydee_ joined the channel
20:37:09 Schrompf joined the channel
20:39:52 Schrompf: @xq: ImGui vielleicht? gibt's wohl bindings für alle möglichen Programmiersprachen, und aaaaangeblich ist 10x - der CodeEditor - damit geschrieben
20:39:57 Schrompf: re
20:40:10 Schrompf: vorzeitig vom grillabend mit alten freunden abberufen, weil's dem kind schlecht geht
20:40:20 xq: könnte man sich überlegen
20:40:24 Schrompf: und nun bin ich hastig heimgedüst und es schlafen beide frauen
20:40:35 xq: das schöne an dear imgui ist halt, dass ich keinen state zwischen UI und Game Logic dupliziere
21:30:00 Schrompf: nachtus nachtus
22:23:10 Hannes: gute nacht