Ist es möglich Daten wie Tag und Monat aus dem Spiel auszulesen und in einem Script zu verarbeiten?
Kenn mich da zu wenig aus.
Edit: at Mod's Thema evtl verschieben. sry^^
Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.
Die Registrierung und Nutzung ist selbstverständlich kostenlos.
Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.
Das Team der Transport-Fever Community
Ist es möglich Daten wie Tag und Monat aus dem Spiel auszulesen und in einem Script zu verarbeiten?
Kenn mich da zu wenig aus.
Edit: at Mod's Thema evtl verschieben. sry^^
Ich bin da gerade auch bei und versuche das zu nutzen. Allerdings noch ohne Erfolg. Schau mal bei den Kampagnen, dort wird zumindest das Jahr ausgelesen. Aber man braucht irgendwie die Variable game, die bei mir immer Probleme macht weil die nicht vorhanden ist?!
In der Kampagne findet man so was.
Musst dazu in der Script.lua nachschauen.
Ich glaube bei USA 4 kommt der Befehl vor.
Valentin
ja habs gefunden jetzt wär noch interessant zu wissen wo die Datumsberechnung stattfindet und ob man man die Monate auf 30 Tage einstellen könnte,
aufjedenfall gehts mir darum einen Tag / Nachtwechsel zu programmieren. denn es ist erstens möglich die Helligkeit auf der Map zu ändern. und den Sonnenstand anhand von xyz Koordinaten.
aber mir ist das ein wenig zu hoch oder dauert zu lang um mich hineinzuarbeiten. also wenn mir da jemand mit Programmiererfahrung helfen möchte? nur zu
denn es ist erstens möglich die Helligkeit auf der Map zu ändern. und den Sonnenstand anhand von xyz Koordinaten.
Ach... das ist ja mal höchst-interessant.
Darf man fragen, wo dies konfiguriert ist?
Gibt es schon irgendwelche Tests? (Try-and-error)
bin gestern per Zufall darauf gestossen.
ist in der Base_config.lua
game.config.environment = {
light = {
direction = { math.cos(math.rad(60.0)), math.sin(math.rad(60.0)), math.tan(math.rad(50.0)) },
pmremShadow = "env/shadow.hdr",
pmremSun = "env/sun.hdr",
refBrightness = 2.0
},
fog = {
color = { 0.55, 0.95, 1.05 }
},
skyBox = {
textures = {
"skybox/0.hdr",
"skybox/90.hdr",
"skybox/180.hdr",
"skybox/270.hdr",
"skybox/top.hdr",
"skybox/bottom.hdr"
}
},
envMap = {
texture = "c.tga"
}
}
Alles anzeigen
direction hab ich mal einfach von Hand geändert, der Sonnenstand wird dadurch verändert, wenn Du zb. 30,30,20 nimmst hast Du relativ lange Schatten, also tiefen Stand. Ich geh mal davon aus, dass cos, sin, tan für x,y,z Koordinaten stehen
refBrightness auf = und die Map ist Schwarz, also alles Dunkel, nur der Fluss leuchtet irgendwie komisch.
fog Farbe kann man insofern brauchen für Dämmerungsfarben,
Nun hab ich mir gedacht, wenn ich das Datum auslesen kann, so könnte ich zb 12 Monate = 12h, oder 6h oder was auch immer.
Wenn jeder Monat 30 Tage hätte, würde das wiederum aufgehen, aber man könnte dies sicher auch anders lösen. Ansonsten müsste man auch die Geschwindigkeit auslesen und miteinberechnen.
so könnte man eine Schlaufe programmieren die die Brightness dauernd verändert in einem Script. Zudem je nach Timer den Fog für Dämmerung usw..
Sprich rein vom Gedankengang her ist sehr viel möglich. Und da ja Light Emitting möglich ist ---> Modelleisenbahn mit Tag / Nacht.
Auch Jahreszeiten wären (wahrscheinlich mit hartem Texturenwechsel möglich, was aber anhand meiner jetzigen Erfahrung mit den Schneetexturen +- 1 GB gross werden würde.. wie und ob es möglich ist, Texturen gezielt zu adressieren weiss ich nicht. Aber wird schon irgendwie gehen
Aber wie gesagt, ich hab keine Ahnung von Lua. hatte vor X Jahren mal Pascal programmieren gelernt in den Basics, aber die Schlaufen sind ja mehr oder weniger die gleichen.
Also wenn es hier Programmiergeeks gibt, nur zu Soll nur als Denkanstoss dienen
zudem in den shadern/misc/terrain_gen.fs habe ich ja die Texturhöhen verändert.
Die Texturen fügen sich sehr spassig zusammen wenn man mal gewisse Texturen farblich "übertreibt" Es entsteht dieses Fleckenmuster, irgendwo in den andern Parametern wird dies sicher angegeben über die float werte.
Ich kann mir gut vorstellen, dass es möglich ist gewisse Texturen übereinander zu legen und zwar grossflächig und diese per Transparenz ein und auszufaden, und so Jahreszeiten möglich zu machen
Edit, Texuren, detail_color_0 - 9 sind die Landschaftstexturen mit den dazugehörigen Nrml Maps. 10 und 11 sind Steintexuren die unter Felsen gelegt werden.
so ergibt das für mich auch Sinn, lassen wir die .0 mal weg bleiben 5 Zahlen, Höhenzahlen. wobei jeweils 2 Texturen einer Höhenstufe zugeordnet werden
ich hab in meiner Schnee Mod, 8+9 Schnee, 6+7 angepasst, der Rest ist original. ich brauch zwingend 2 Texturen Schnee, da es sonnst fleckig wird
Ok. Die Frage ist also: Wie bekommen wir einen regelmäßigen Gametick? mhhhh.....
Im Anhang der Inhalt der Variable game einmal während der runFn der mod.lua, sowie einmal während des Tutorials.
Wenn man einfach die Monate rechnet? Die (Default) 2 Sekunden mehr oder weniger werden jetzt nicht wirklich auffallen.
Was ich eher bedenklich finde ist wie man das Pausieren könnte. Denn bauen im Dunklen...
Aber cool dass das möglich ist!
Valentin
hab gestern was gefunden, und zwar hier
mit dem Befehl wait(x) kann man jeweis eine gewisse Zeit warten. Ist lua, weiss nicht ob das hier auch geht.
aber wie gesagt, ich denk mal anhand wie mir @Atomic Dad geschrieben hat
daher würd ich vom Ansatz der Jahresberechnung ausgehen denn die ist regelmässig, aber da gibts sicher auch was besseres
jede Map startet ja glaub ich am 01.04
Wenn man einfach die Monate rechnet? Die (Default) 2 Sekunden mehr oder weniger werden jetzt nicht wirklich auffallen.
Was ich eher bedenklich finde ist wie man das Pausieren könnte. Denn bauen im Dunklen...
Aber cool dass das möglich ist!
Valentin
Nun ja, ma muss die Brightness ja nicht auf 0.0 stellen
Edit, hab mal das Thema in Day / Night Cycle umbenannt
Die Einstellung gab's schon in TF. So hab ich ja mein Sunset Setting realisiert. Ist halt fraglich ob das dynamisch änderbar ist oder nur zum Mapstart gilt.
ABER! Ich befürchte das bringt nicht so viel. Das der Fluss leuchtet liegt mMn an der Skybox die davon nicht beeinflusst wird. Zudem gibts kein echtes Licht. Also keine echten Emitter. Sprich die Lampen reflektieren auch nur das World Licht - welches ja dunkel ist. Die innenräume werden nicht beleuchtet sein und und und.
UG wird das nicht umsonst noch nicht drin haben.
Wäre natürlich Imba wenn man das hinkriegen würde. Dann müssten aber noch in den Gebäuden und Laternen das Licht angeknipst werden