„Bahnhöfe als Asset“ - Mod Tutorial
Willkommen in der Transport Fever Community
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
-
-
function data()
return {
type = "ASSET_TRACK",
description = {
name = _("Regiostation"),
description = _("")
},
availability = {
yearFrom = 1850,
yearTo = 0,
},
buildMode = "MULTI",
categories = { "buildings" },
order = 1,
skipCollision = true,
autoRemovable = false,params = {
{
key = "test",
name = _("Gebäude"),
values = { _("0"), _("1"), _("2"), _("3"),_("4"), _("5"), _("6"), _("7"),_("8"), _("9"), _("10"), _("11"), _("12"), _("13"), _("14"), _("15"),_("16"), _("17"), _("18"), _("19"),_("20"), _("21"), _("22"), _("23"), _("24"),}
},
{
key = "test1",
name = _("Skalieren"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test2",
name = _("Höhe Meter"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test20",
name = _("Höhe Dezimeter"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test3",
name = _("Abstand"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
},updateFn = function(params)
local result = { }local Skalieren = 0
local Hoehe = 0
local Abstand = 0if params.test1 == 0 then Skalieren = 0 end
if params.test1 == 1 then Skalieren = 1 end
if params.test1 == 2 then Skalieren = 2 end
if params.test1 == 3 then Skalieren = 3 endif params.test2 == 0 then Hoehe = 0 end
if params.test2 == 1 then Hoehe = 1 end
if params.test2 == 2 then Hoehe = 2 end
if params.test2 == 3 then Hoehe = 3 endif params.test20 == 0 then Hoehe1 = 0.0 end
if params.test20 == 1 then Hoehe1 = 0.1 end
if params.test20 == 2 then Hoehe1 = 0.2 end
if params.test20 == 3 then Hoehe1 = 0.3 endif params.test3 == 0 then Abstand = 0 end
if params.test3 == 1 then Abstand = 1 end
if params.test3 == 2 then Abstand = 2 end
if params.test3 == 3 then Abstand = 3 endlocal gesamte_Hoehe = Hoehe + Hoehe1
result.models = { }if params.test == 0 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_gebaude.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 1 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf_e_l.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 2 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf_e_r.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 3 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf_m_l.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 4 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf_m_r.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 5 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf-1-l.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 6 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_kopf-1-r.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 7 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_1.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 8 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_2.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 9 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_3.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 10 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_4.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 11 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_5.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 12 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_e_6.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 13 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_1.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 14 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_2.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 15 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_3.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 16 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_4.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 17 then
result.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_5.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 18 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig_m_6.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 19 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-1.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 20 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-2.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 21 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-3.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 22 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-4.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 23 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-5.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
if params.test == 24 thenresult.models[#result.models+1] = { id = "station/train/regio2/regio2_steig1-6.mdl", transf = { 1, 0, 0, 0, 0, Skalieren, 0, 0, 0, 0, 1, 0, 0, Abstand, gesamte_Hoehe, 1 } }
end
result.terrainAlignmentLists = { {
type = "EQUAL",
faces = { }
} }
return result
end
}
endDas steht in meiner construction und das in meiner sdtout:
PreventSetUnhandledExceptionFilter: 1
locale name: * (de_DE.utf8)========================================
Startup at Fri Mar 23 21:45:29 2018
========================================seed: 1521837929
double buffering: 1
sample buffers: 0
samples: 0 (0)
swap interval: 1
video memory: -1 MB
============================================================
OpenGL version: 3.2.0 - Build 20.19.15.4835
Renderer (vendor): Intel(R) HD Graphics (Intel)
Shading language version: 1.50 - Build 20.19.15.4835
============================================================
opened device OpenAL Soft
sampling rate: 48000 Hz
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
seedText: FgqX8Mbj0MTE
res/config/tips.lua not in file cache!
res/config/tips_steam.lua not in file cache!
eatglobal: init [mods/eat1963_groundtexture_1/res/scripts/eatglobal_v1_4.lua] (Version 1.4)
eatglobal: loaded module 'eatglobal.eatglobal_intern' [mods/eat1963_groundtexture_1/res/scripts/eatglobal/eatglobal_intern.lua] (Version 1.2)
active mods:
mav_bandion_regionalbahnhof/1
sebastian regionalstation/1
config dict:
vehicles: default
terrain: default
nameList: default
trees: default
buildings: default
streets: default
environment: default
scenario: default
new game: seed=2378659575, startYear=2000, numTilesX=32, numTilesY=32, hillyness=0
init version: 91
added 78039 trees
texturizer: 1673.58 ms
begin adding 7 locations..
added 7 locations. took 0.176634 s.
begin adding 27 locations..
added 27 locations. took 0.935951 s.
CreateTown: 34544.1 ms
CreateTown: 817.333 ms
CreateTown: 565.733 ms
CreateTown: 669.768 ms
CreateTown: 675.004 ms
CreateTown: 1049.35 ms
CreateTown: 1419.33 ms
InitGame: 95078.9 ms
res/textures/ui/models/station/airport/asset/signal_taxi_old.tga not in file cache!
texture load error: file not found: res/textures/ui/models/station/airport/asset/signal_taxi_old.tga
res/textures/ui/models/station/airport/asset/signal_taxi_modern.tga not in file cache!
texture load error: file not found: res/textures/ui/models/station/airport/asset/signal_taxi_modern.tga
res/textures/ui/models/station/airport/asset/signal_runway_modern.tga not in file cache!
texture load error: file not found: res/textures/ui/models/station/airport/asset/signal_runway_modern.tga
res/textures/ui/models/station/airport/asset/signal_runway_old.tga not in file cache!
texture load error: file not found: res/textures/ui/models/station/airport/asset/signal_runway_old.tga
res/textures/ui/construction/asset/sebastian_regionalstation.tga not in file cache!
texture load error: file not found: res/textures/ui/construction/asset/sebastian_regionalstation.tga
res/textures/ui/construction/categories/buildings.tga not in file cache!
texture load error: file not found: res/textures/ui/construction/categories/buildings.tga
c:\build\transport_fever\steam\transport_fever_release\src\game\ui\actions\construction_builder_util.cpp:1997: class std::vector<class ecs::Entity,class std::allocator<class ecs::Entity> > __cdecl construction_builder_util::Apply(struct street_util::StreetToolkit,const class transport::CargoTypeRep *,const class CGameTime *,struct construction_builder_util::Proposal &,struct construction_builder_util::ProposalData &,const class ecs::Entity &): Assertion `AreTerminalsValid(terminals)' failed.
MinidumpCallback: dumpPath "C:/Program Files (x86)/Steam/userdata/318854981/446800/local/crash_dump/", minidumpId "8701f488-8d81-4b3c-a38c-4cd410d12206", succeeded 1
local time is Fri Mar 23 21:52:13 2018
AdminEdit: Mal den Inhalt in ein Spoiler gepackt, schont das Mausrad.
Mfg Sebastian -
{
key = "test",
name = _("Gebäude"),
values = { _("0"), _("1"), _("2"), _("3"),_("4"), _("5"), _("6"), _("7"),_("8"), _("9"), _("10"), _("11"), _("12"), _("13"), _("14"), _("15"),_("16"), _("17"), _("18"), _("19"),_("20"), _("21"), _("22"), _("23"), _("24"),}
},
{
key = "test1",
name = _("Skalieren"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test2",
name = _("Höhe Meter"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test20",
name = _("Höhe Dezimeter"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
{
key = "test3",
name = _("Abstand"),
values = { _("0"), _("1"), _("2"), _("3"),}
},
},mach mal die markierten Kommas weg
Dann die Frage
hast du die Mod, wo diese Dateipfade
station/train/regio2/regio2_steig_m_6.mdl
zu finden sind, auch in deinem Savegame? und dort vor deiner eigenen?
-
zu den letzten fragen: ja das hab ich
die kommas hab ich auch entfernt aber mein spiel stürzt immer noch ab.
Funktioniert das nur in einem bestehendem spiel oder kann man das auch in ein neues Spiel mit reinnehmen? -
versuch mal den neuen Mod in ein safe einzubauen, wo der alte schon drin ist.
-
Leider funktioniert es immer noch nicht.
-
die stdout.txt kannst du ruhig als Dateianhang im Beitrag anhängen.
Deinen Text weiter ober habe ich mal in einen Spoiler gepackt.Mfg Sebastian
-
Danke
-
Guten Morgen
Stürzt das Spiel direkt ab oder erst wenn du versuchst das Packet anzuklicken?Die Order sollte noch eine Nummer bekommen „1“ ist bestimmt schon von UG belegt.
Deine TFnetID und dann eine fortlaufende Zahl wäre schon mal.Dan frage ich mich wo du die „gesamte_hoehe“ ansprichst?
Du verwendest diese in deiner transformationsmatrix aber schreibst die keys nur auf „Hoehe“.Noch einen Tipp versuche solche Dinge klein zu schreiben. Einmal Groß und einmal klein werden dir die Linux User nicht begeistert sein.
-
Um den Mod zu veröffentlichen, sollten noch andere Sachen geändert werden.
Da er das für sich selber ändert, ist das, solange er kein linux hat, egal. -
Das sollte auch nur ein Tipp sein.
Das was man gleich von Anfang an sich einprägen kann sollte man es auch umsetzen egal ob man es veröffentlicht oder nicht.
Du weißt es vielleicht selber wie schwer man sich tut wenn du schon eine gewisse Routine bekommen hast und das dann wieder umzustellen.
Habe auch nicht geschrieben dass das ein Fehler ist. -
Hab ich ja auch nicht behauptet
-
-
ok,dann warte ich bis das video draußen ist
-
Da ich gleich weg bin, hier schon mal der Link, sollte in ca. 10-15 Minuten online sein.
Hatte gestern viel Stress um die Ohren, weshalb das Video leider erst heute kommt.
Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.