Jump to content

Goetz

Mitglieder
  • Gesamte Inhalte

    5754
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Goetz

  1. @fzonk Schau mal bitte, ob dir diese groben Beispiele weiterhelfen: benutzerdefinierte Aktion - drei Alternativen.mbp
  2. Okay, an der Stelle verstehe ich dein Problem. Eigentlich müsstest du bei der Variante 3 eine Liste der zu prüfenden Gleise mitgeben. Und das geht derzeit nur, wenn man von der grafischen Repräsentation auf die direkte Darstellung des Lua Skripts umschaltet. Also musst du es etwas anders angehen, damit auch die grafische Variante funktioniert: Gib nur die drei zu prüfenden Ziele als drei Parameter mit. Mehr nicht. Und hinterlege den Weg zu den Zielen (spricht: die Weichenstellungen) in den Zielobjekten (nach Geschmack die Gleise, Ausfahrsignale, roten Knöpfe etc.) . Jetzt kannst du in der benutzerdefinierten Aktion erstens nacheinander prüfen, ob ein Ziel frei ist. Und wenn es frei ist, dann pickst du dir aus diesem Ziel die Weichenstellungen (Die du passend benannten Variablen hinterlegt hast. Darüber hinaus musst du für das Ziel 1 gar keine Weichenstellung für Weiche 2 hinterlegen (weil die nicht relevant ist.) Stattdessen prüfst du im benutzerdefinierten Ereignis für jede Weiche, ob überhaupt ein Wert vorliegt und schaltest sie nur dann um, wenn das der Fall ist. Wenn ich die Zeit gleich noch finde, dann bau ich dir das mal.
  3. Goetz

    Neue Beta-Version V5

    gibt es meines Wissens nicht, Andy. Aber meine Lua Kenntnisse sind sehr oberflächlich. Es gibt ein coroutine mit suspend und continue, was dir vielleicht nützen könnte? Und es gibt eine Library mit debug Funktionen. Du musst bitte selbst schauen, ob da für dich etwas dabei ist. Nicht, weil ich zu faul wäre, sondern weil du besser beurteilen kannst, was dir von den angebotenen Funktionen nützt oder nicht.
  4. Goetz

    Neue Beta-Version V5

    Das ist die englische Schreibweise von "ähm" - also dem Geräusch, dass man macht wenn man kurz nachdenkt. Wer Englisch kann, der kennt es. Wer kein Englisch kann, der versteht auch die von Andy verlinkte Erklärung im Wiki nicht. Solche Dinge sind Andy aber nicht klar. Ihm fehlt die Gabe, seine eigenen Texte mit den Augen des Empfängers zu lesen. Nehmt es ihm nicht übel. Er weiß es nicht besser.
  5. Doch, das kannst du ganz bestimmt. Hast du schon entdeckt, dass benutzerdefinierte Ereignisse eigene Variablen bekommen können? Einfach oben auf (keine Parameter) klicken und dann die Parameter-Liste bauen. Anschließend kannst du beim Aufruf des Ereignisses diese selbst definierten Parameter mit Werten befüllen. Und im Ereignis kannst du diese Werte als Bedingung oder anderweitig weiter verarbeiten.
  6. Goetz

    Neue Beta-Version V5

    Not that it matters much, but here's an excerpt from the home page of the Lua developers:
  7. Oh, dann tut es mir leid, dass ich dich (und dein "Ich bin neu auf diesem Gebiet") missverstanden habe.
  8. Hallo Claudia, mir (ebenfalls Anfänger) helfen die Gleispläne von Märklin dabei, einen Einstieg zu finden. Jährlich erscheinen sechs pdf Dateien, in denen jeweils ein detaillierter Anlagenvorschlag zu finden ist: https://www.maerklin.de/de/erlebnis/maerklin-magazin/downloads/gleisplaene-und-maerklin-freunde/ Ich bevorzuge kleine Anlagen wie die aus dem aktuellen Vorschlag 3/2019. Das Gleisbild ist schnell nachgebaut, leicht zu überschauen und bietet trotzdem genug Abwechslung für den Anfang. Bei der Ausgestaltung muss man vom Original abweichen, weil das MBS natürlich nicht dieselben Objekte (Bahnhöfe, Schuppen, Fabriken etc.) parat hält. aber für jedes Objekt findet sich im 3D MBS eine passende Alternative. Viel Spaß bei deinen ersten Experimenten. Götz
  9. Wer mag, der kann mir ab 11 Uhr wieder live zuschauen. https://www.twitch.tv/goetz (Sorry, aber aktuell geht das bei mir leider nur so spontan …)
  10. Hallo @fzonk dann tut es mir leid, dass ich deinem Konzept nicht recht folgen konnte.
  11. kopiere dein benutzerdefiniertes Ereignis in den schmalen Bereich zwischen dem schwarzen Trennstrich und dem unteren gelben Balken. Der einfachste Weg ist (meines Erachtens) das Ereignis an den neuen Platz zu ziehen und dabei die Strg-Taste gedrückt zu halten. Jetzt hast du eine Kopie im Abschnitt "Bedingung nicht erfüllt" und kannst hier die Parameter ändern. Hilft das oder habe ich deine Frage missverstanden?
  12. Und wenn du den Zeitfaktor deiner Anlage mal raufsetzt (z.B. 48 Minuten für einen Tag), dann siehst du, dass die Schatten auch mit der Zeit wandern
  13. Goetz

    Neue Beta-Version V5

    Ich habe bislang nur folgenden Weg entdeckt: An Ort und Stelle kopieren die Kopie auf das gewünschte Ziel-Ereignis in der linken Spalte ziehen und loslassen. ins Ziel-Ereignis wechseln und dort die Aktion an die richtige Stelle rücken.
  14. Ja, genau. Die Anlage habe ich nachgebaut, weil das die ideale Größe ist um sich mit der neuen EV vertraut zu machen.
  15. Der Player bleibt schwarz, weil ich derzeit nicht sende. Aber in der oberen rechten Ecke des eingebetteten Players siehst du die Vorschau eines Videos. Das ist die Aufzeichnung meiner gestrigen Sendung (die sehr holprig war!) Ein Klick auf dieses kleine Vorschaubildchen startet das Video im eingebetteten Player.
  16. my bad, Metallix Ich habe gerade den Kanal umbenannt und du musst den Link oben angeklickt haben, bevor ich ihn im Posting angepasst hatte. Die Adresse lautet jetzt https://www.twitch.tv/goetz Probiere es bitte noch einmal (nach einem browser refresh)
  17. Für Tutorial-Videos zu Lua fühle ich mich noch nicht fit. Ich bin selbst noch auf der Suche nach guten und leicht verständlichen Methoden. Aber wer mir beim Experimentieren und beim Lernen zusehen möchte, der kann das auf meinem Twitch-Kanal tun. Ich werde dort sporadisch und unangekündigt live zeigen, woran ich gerade bastle. Zuschauen kann jeder auch ohne Anmeldung. Wer sich im Chat beteiligen möchte, der muss bei Twitch angemeldet sein.
  18. Goetz

    Neue Beta-Version V5

    Das erreiche ich mit meiner Methode auch, @wopitir. Am Bremspunkt berechne ich die Verzögerung mit vehicle.currentSpeed * vehicle.currentSpeed / Bremsweg. Der Bremsweg im obigen Bild ist auf meiner Anlage mit 600 angegeben. Das ergibt beim H0 Maßstab die dargestellte Entfernung. Aus jeder Geschwindigkeit bleibt der Zug an dieser Stelle stehen. Wenn ich statt der Zugspitze die Zugmitte so positionieren wollte, dann müsste ich nur im Kontakt von "Betreten" auf "Betreten(Fahrzeugmitte)" umstellen. Mehr nicht. Und genauso könnte ich auch jeden Zugschluss dort stoppen, wo ich will: Mit der Kontakt-Einstellung "Verlassen" Das macht die Geschichte einfach und überschaubar. Will man auf eine andere Geschwindigkeit als 0 herunterbremsen und diese Geschwindigkeit am Ende des vorgegebenen Bremswegs erzielen, dann muss man ein currentSpeed durch die Differenz currentSpeed - Wunschgeschwindigkeit ersetzen. Also Differenz * currentSpeed / Bremsweg. Mit dieser Formel kann ich den Zug wahlweise stoppen (Wunschgeschwindigkeit 0) oder verlangsamen (Wunschgeschwindigkeit 40) und erreiche die gewünschte Geschwindigkeit nach der angegebenen Entfernung, egal, wie flott der Zug über den Kontakt rast. Für die Optik habe ich einen zweiten Bremspunkt viel weiter vorne, der den Zug auf einer Länge von 2800 auf 80 abbremst, wenn das folgende Signal Halt zeigt. Aber der Kontakt kurz vor dem Signal fängt mit der obigen Formel auch Raser zielsicher ein.
  19. Goetz

    Neue Beta-Version V5

    Genau. Und aus diesem Video geht hervor, dass nur der Bremsweg eine Rolle bei der Berechnung der Verzögerung spielt. Dieser Bremsweg ist immer gleich, egal ob ich die Zugspitze, die Zugmitte oder den Zugschluss exakt positionieren will. Ich muss einfach entsprechend den Kontakt mit der Zugspitze, der Zugmitte oder dem Zugschluss auslösen. Die Länge des Zuges spielt keine Rolle, es sei denn dass Wopitir etwas Besonderes vorhat. Drum meine neugierige Frage, inwiefern bei seinem Vorhaben die Zuglänge eine Rolle spielt.
  20. Goetz

    Neue Beta-Version V5

    Nur aus Neugier: Warum benötigst du die Zuglänge bei der Berechnung der Verzögerung? (unabhängig davon ist eine Zuglänge natürlich ein nützlicher Parameter)
  21. Goetz

    Neue Beta-Version V5

    Ist doch wie bei der realen Modellbahn auch. In gewissen Abständen muss man einfach mal gründlich durchfegen, Kontakte reinigen, schauen, was sich alles unter der Platte findet etc. Und dabei kann man gleich ein paar neue Strippen an den Stellen einziehen, die irgendwie zu wirr aussehen. (Sorry - ich hoffe, ihr verzeiht mir den Scherz?)
  22. Goetz

    Neue Beta-Version V5

    Ich bin mir nicht sicher, ob Neo in etwa das meint, was ich dir jetzt zeige, aber schau mal bitte, ob du damit etwas anfangen kannst: content-ID: DE9B65C3-9A4C-4339-ACA7-0555E780E61A Das ist eine simple Anlage (die ich bei TeddyKai abgeguckt habe) mit meinen ersten Gehversuchen in Sachen "generische Funktion". Dank der sehr geduldigen Hilfe von Neo enthält sie seit heute Nacht wirklich benutzerdefinierte Ereignisse. Ich habe eine Kopie als Version 02 gespeichert. content-ID: 9967751A-FA43-45BE-88AF-B9A0E28E00F9 Diese Kopie wird ab jetzt weiter wachsen und oftmals unrund laufen, weil meine tests Mist produzieren. Die Version 01 friere ich in ihrem jetzigen Stand ein, damit jemand, der Lust hat die Anfänge des Prinzips nachzuschauen, diese überschaubare EV studieren kann. Es ist grandios wie einfach und übersichtlich Schaltungen werden, wenn man sie so organisiert wie es im Beispiel zu sehen ist. Jeder Ereignispunkt (von Interesse) sendet nur noch ein Paket individueller Daten an eine Funktion, die für viele ähnliche Objekte dasselbe tut. Will man Routinen verbessern, erweitern etc., dann tut man das an einer zentralen Stelle. Einmal! Auch für 10 oder 20 Signale. Bei den Bremspunkten ist es noch besser: Davon gibt es bei mir zwei vor jedem Signal. Und alle nutzen den selben Code, nur mit individuell verschiedenen Daten.
  23. Hast du schon Strg-Z probiert? Der Klassiker ist in nahezu allen Programmen implementiert.
  24. Goetz

    Neue Beta-Version V5

    Es bedeutet, dass man mit der neuen EV dieselben Schaltungen bauen kann wie zuvor. Aber die EV unterstützt einen besser dabei, effektive Schaltungen zu bauen. Weil sie die Strukturen besser visualisiert. Unter der alten EV wird ebenso eine Skriptsprache gewerkelt haben wie jetzt unter V5 auch. Vermutlich eine andere Sprache als Lua. Aber das ändert nichts am Prinzip. Unter solchen Oberflächen werkeln immer Skriptsprachen. Nur bekommt man die meist nicht zu Gesicht. Und muss sich deshalb mit dem begnügen, was die Oberfläche zu bieten hat. Du kannst Lua komplett ignorieren und dir entgeht nichts. Was du auf klassischem Wege mit der V5 EV baust, ist ebenso gut wie die Lua Alternative. Solange du also keinen Grund hast Berechnungen anzustellen, die du mit der EV alleine nicht hinkriegst, musst du auch nichts auf Lua umschalten. Und wenn du an einer Stelle das Bedürfnis hast, dann kannst du gezielt an dieser einen Stelle zu Lua wechseln. Das ist wirklich clever programmiert und hat meinen allergrößten Respekt!
  25. Goetz

    Neue Beta-Version V5

    Nein. Im Gegenteil verleitet es Einsteiger zur falschen Perspektive Die Ereignisverwaltung bedeutet, dass Ereignisse ausgewertet werden. Dass man die Reaktion auf ein Ereignis auflistet. Das Ereignis entsteht dadurch, dass etwas das Gleis berührt. Die Frage, wer das getan hat, ist eine Reaktion auf das Ereignis. Erst, wenn mir wer auf den Fuß tritt stellt sich für mich die Frage: "Wer war das?" Gerade Anfängern sollte man gleich zu Beginn diese Sichtweise verdeutlichen, weil die Umstellung später schwer ist. Und die neue EV hat mit ihrer grafischen Aufbereitung ein wunderbares Hilfsmittel zu bieten, mit dem man die richtige Struktur ganz automatisch lernt.
×
×
  • Neu erstellen...