Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Passagier-(und Post-)Erzeugung
#31
Vielleicht bin ich ja zu blöd, aber:

1. eine koord_t kann ich im gesamten Quellcode nicht finden. Ich hab lediglich die Variablendefinition unter settings_economy_stats_t::init und eine Übergabe unter settings_t::parse_simuconf gefunden. Was dann aber weiter passiert=grosse ???

2. Leider beantwortet das auch meine Frage nicht! Eine Gewichtung findet im Normalfall im Prozent oder Promillebereich statt. Daher kann ich mit einem Wert von 2999 nichts anfangen.

Gruss
"Erst wenn der letzte Baum gerodet, der letzte Fluss vergiftet, der letzte Fisch gefangen, werdet Ihr feststellen, daß man Geld nicht essen kann!"
Weissagung der Cree
Zitieren
#32
Lol, jetzt bin ich fast genauso schlau wie vorher :tongue:. Inzwischen fürchte ich immer mehr, dass ich auch dann nicht viel mit dem Code werde anfangen können, wenn ich das Wikibook über C++ durch habe.

In einen Prozentwert lässt sich die Formel wohl nicht umwandeln.
Join the herd - become a brony!
[Bild: banner_broniesde.png]
Zitieren
#33
@ 3+4i
Och, immer feste üben - irgendwann klappts. Beim zweiten Wert könnte ich mir vorstellen, dass es sich um longInt-Wert handelt. Dann müsste man diesen durch 100 teilen und mal den Prozenten nehmen, die man einsetzen will.
"Erst wenn der letzte Baum gerodet, der letzte Fluss vergiftet, der letzte Fisch gefangen, werdet Ihr feststellen, daß man Geld nicht essen kann!"
Weissagung der Cree
Zitieren
#34
Simutrans benutzt zum Glück relativ wenig und meist auch nur vernüftig dokumentiertes C++; sonst hätte ich 2004 auch gleich das Handtuch geworfen. Die std:: sachen find ich eher (bsch) und den reichlichen Gebrauch von templates z.B. bei grund_t::find<...>() ist auch nicht mein Ding.

Ind koord.h findet sich die Routine: weight_by_distance(). Die berechnet aus dem Level und der Entfernung ein Gewicht für die Auswahl des Ziels.

Alle potentiellen Ziele werde so berechnet und in ein Array mit gewichten Leveln einsortiert. Aus Level 3 wird 300, um auch Luft nach unten zu haben. In Entfernung 10 wird daraus vielleicht 4127 und int 1000 Kästchen Entfernung 7. Danach werden die Levels in derm Array aufaddiert und ergeben zusamenn z.B. 904357. Dann wird eine Zahl zufällig ausgewählt, sagen wir 41728. Nun wird von Anfang das Haus gesucht, dessen summiertes Level kleiner-gleich dieser Zahl ist und dessen Nachfolger darüber liegt. Das geht sehr fix und ist nur dank templates mittlerweile etwas unübersichtlich geworden.
Zitieren
#35
@Randy:
Noch hatte ich nicht vor, aufzugeben Big Grin. Allerdings hatte ich mir schnellere Erfolge erwartet. Ich habe gehofft, damit zumindest einfachere Fragen, die bei der pak-Set-Entwicklung auftaucht, selbst beantworten zu können, z.B. zum growthfactor. Das gehören aber zu einem anderen Thema, das ich jetzt mal erstellen sollte...

Zitat:Original von prissi
Simutrans benutzt zum Glück relativ wenig und meist auch nur vernüftig dokumentiertes C++;
Halt, Moment, und was ist dann der Rest? Ich dachte das ganze Programm wäre in C++ geschrieben ?(.

Um die Wirkung unterschiedlicher Werte für locality_factor[x].factor zu verdeutlichen, müsste man wohl eine Grafik zeichnen, mit einer Hand voll Beispielwerten, so wie es prissi weiter oben gemacht hat. Nach der Verwendung von locality_factor[x].year habe ich jetzt nicht weiter gesucht Wink.
Join the herd - become a brony!
[Bild: banner_broniesde.png]
Zitieren
#36
Zitat:Original von 3+4i
Zitat:Original von prissi
Simutrans benutzt zum Glück relativ wenig und meist auch nur vernüftig dokumentiertes C++;
Halt, Moment, und was ist dann der Rest? Ich dachte das ganze Programm wäre in C++ geschrieben ?(.
Gemeint ist sicherlich, dass nicht der ganze Funktionsumfang von C++ benutzt wird, und dass an vielen Stellen ganz normal wie in C gearbeitet wird.
Zitieren
#37
Okay, dann bin ich ja beruhigt. Ich hatte schon fast befürchtet meine Arbeit könnte umsonst sein Tongue.
Join the herd - become a brony!
[Bild: banner_broniesde.png]
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 5 Gast/Gäste