XRebirth - Mod Research & Development-Topic

Hier ist der ideale Ort um über Scripts und Mods für X Rebirth zu diskutieren.

Moderators: Scripting / Modding Moderators, Moderatoren für Deutsches X-Forum

Cappy1401
Posts: 313
Joined: Sun, 27. Apr 08, 02:16
x4

Post by Cappy1401 »

So mal was von mir zum Thema.

Das die LUA mit dem JitCompieler bearbeitet sind stimmt.

Hier ein Link zu einem Decompieler, der Sie in normale funktionsfähige LUA-Dateien zurückverwandeln kann.
Ist nicht von mir, sondern von einem Dritten.
Die erzeugten LUA-Dateien funktionieren ohne probleme, was bedeutet das der Code vollständig zurückübersetzt wurde, denn LUA ist was Fehler anbelangt, nicht so tollerant, wie XML.

Hier der Link zum Decompieler
https://github.com/NightNord/ljd

Hier die Heimat des JIT-Compielers den ES benutzt :D
http://luajit.org/index.html

Das Conversationsmenü ist in sachen Anzahl der Buttons und der Bedienung in der "dialogmenu.lua" niedergelegt und kann durch die "MainMenu.xml" gesteuert werden.
Der Grund für das Compilieren mit dem JIT-Compieler, liegt in der um ein vielfaches höheren Geschwindigkeit der Compilierten LUA-Dateien.
Über die LUA-Dateien kann die gesammte UI verändert werden.
Durch eine Veränderung der LUA Dateien, kann man bestimmt auch die mit Anark erstellte UI gegen eine neue und bessere ersetzen.
Es müssen einzig die Aufrufkonventionen der in der EXE einkompilierten Teile der Scripte eingehalten werden.
Da der LUA-Interpreter aber Teil des Spiels ist, steht uns somit die geballte Macht von LUA zu Verfügung.



Gruß Cappy
Jedes Kriegsschiff, das unsere Werften verlässt, jedes abgefeuerte Geschütz bedeutet letztlich einen Diebstahl an denen, die sich nicht wehren können, nämlich an unseren Kindern. Eine Welt bewaffnet bis an die Zähne feuert nicht nur gebündelte Energie allein. Sie feuert auch oft genug die Hoffnung ihrer Kinder nutzlos in den Weltraum hinaus. Doch hin und wieder lässt man uns keine Wahl, dann jedoch besteht jede Salve aus der geballten Hoffnung das endlich wieder Frieden herrscht.

Der Amazone
Lc4Hunter
XWiki Moderator
XWiki Moderator
Posts: 2192
Joined: Sun, 2. Apr 06, 16:15
x4

Post by Lc4Hunter »

Du scheinst dich ja mit dem Thema etwas genauer beschäftigt zu haben....
Heißt das man könnte das gesamte UI "abändern"?
Mein Gedankengang zielt in die Richtung X3-Menü ab...
Cappy1401
Posts: 313
Joined: Sun, 27. Apr 08, 02:16
x4

Post by Cappy1401 »

Ich bin keine :idea: in sachen Programmieren, wie ich offen zugebe.
Wenn ich das jedoch richtig sehe, kann man Sie völlig verändern, denn die UI selbst, liegt ja in externen Dateien vor, die das aussehen beinhalten.
Ich weis jetzt nur nicht, ob es der gesamte Bereich der UI ist oder nur ein Teil, es hat jedoch den Anschein, als wenn die ganze UI an sich ein Stück ist.
Es stellt sich aber auch die Frage, wie ist der LUA-Interpreter beschaffen, denn das kann man ihm nicht ansehen.
Wurde er von ES nur auf das Kastriert, was für die UI, wie Sie jetzt ist, notwendig ist, dann ist für uns eine änderung der UI, ohne hilfe von ES, sehr wahrscheinlich nicht möglich. Da hilft momentan leider nur ausprobieren, mehr kann ich dazu leider nicht sagen.

Gruß Cappy



Aber mal als Frage am Rande zum Nachdenken.: Wie Real ist die die UI von X3? Setze Dich mal in einen Kampfjet und Du weis wie real Sie ist, nämlich absolut unreal.
Jedes Kriegsschiff, das unsere Werften verlässt, jedes abgefeuerte Geschütz bedeutet letztlich einen Diebstahl an denen, die sich nicht wehren können, nämlich an unseren Kindern. Eine Welt bewaffnet bis an die Zähne feuert nicht nur gebündelte Energie allein. Sie feuert auch oft genug die Hoffnung ihrer Kinder nutzlos in den Weltraum hinaus. Doch hin und wieder lässt man uns keine Wahl, dann jedoch besteht jede Salve aus der geballten Hoffnung das endlich wieder Frieden herrscht.

Der Amazone
Cappy1401
Posts: 313
Joined: Sun, 27. Apr 08, 02:16
x4

Post by Cappy1401 »

Ich habe ein Problem mit den Stationsbuildmodulen.
Bei mir Quittiert das Spiel das hinzufügen einer Station oder eines weiteren Baumoduls für neue Stationen, mit einem Kommentarlosen CTD bei 12-22% des Ladeforgangs.
Es steht absolut nichts im Log über den Grund, es wird also nicht angezeigt, ob etwas fehlt oder falsch ist, nicht einmal ein Crash-Dump wird angelegt.

Ist dies ein Fehler den nur ich habe, oder haben dieses Problem noch andere hier?

An den Fabs selbst, kann es eigentlich nicht liegen, ich kann Sie ohne jedes Problem mit hilfe der Map, direkt ins Spiel bringen.
Wenn mit den Fabs etwas nicht stimmen würde, würden Sie nicht oder nur unvollständig gespwant werden und auch nicht funktionieren, was Sie jedoch tun. Auch werden im Log keine Fehler angezeigt was die Fabs betrifft.
Die Fabs arbeiten korrekt und sind auch vollständig, ich kann alles machen, was mit den anderen auch möglich ist. Selbst die KI handelt ohne jedes Problem mit den Fabs und der Manager arbeitet und versorgt mit den Ihm zugewisenen Schiffen die Fab.
Das hinzufügen neuer Schiffe ist jedoch kein Problem, habe zwei weitere Hybriden erstellt und hinzugefügt, Schiffe arbeiten korrekt und können auch ohne Probleme gebaut und genutzt werden, auch von den Fabs.
Muss nur noch einen Eintrag in wares.xml erstellen, weil die Schiffe bis jetzt Kostenlos sind, bis auf Waffen und Drohnen.

Hier mal der Inhalt beider Versionen des Baumoduls (Hinzufügen und neu), sowie der Eintrag in der macros.xml
Ich kann gerne, wenn es sich einer nachsehen will, auch die Stationen und die nötigen Dateien, als Archiv verfügbar machen.
Die Stationen haben nur neue Produktionsmodule, die eine höere Produktion haben. Ebenso sind die Macros der Stationen im Namen anders, damit Sie zu eigeneständigen Fabs werden, deren Änderungen die anderen Fabs nicht beeinflussen.


1.) Code Hinzufügen der Stationen zum Baumodul von Devries

Code: Select all

<?xml version="1.0" encoding="utf-8"?>

<diff>
   <add sel="/macros/macro/properties/builder">
        <macro ref="struct_bt_constructionmaterial_production_macro" />
        <macro ref="struct_bt_big_ships_yard_macro" />
        <macro ref="struct_bt_cell_refinery_macro" />
        <macro ref="struct_bt_fuelstation_macro" />
  </add>
</diff>
2.) Code Neues Baumodul nur für diese Stationen.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<macros>
  <macro name="buildmodule_stations_pl_macro" class="buildmodule">
    <component ref="standardbuildmodule" />
    <properties>
      <identification unique="0" />
      <builder>
        <macro ref="struct_bt_constructionmaterial_production_macro" />
        <macro ref="struct_bt_big_ships_yard_macro" />
        <macro ref="struct_bt_cell_refinery_macro" />
        <macro ref="struct_bt_fuelstation_macro" />
      </builder>
    </properties>
  </macro>
</macros>

3.) Eintag in der macros.xml

Code: Select all

    <entry name="buildmodule_stations_pl_macro" value="extensions\Updates\assets\props\SurfaceElements\macros\buildmodule_stations_pl_macro"/>

Danke im voraus für die Hilfe.

Gruß Cappy
Jedes Kriegsschiff, das unsere Werften verlässt, jedes abgefeuerte Geschütz bedeutet letztlich einen Diebstahl an denen, die sich nicht wehren können, nämlich an unseren Kindern. Eine Welt bewaffnet bis an die Zähne feuert nicht nur gebündelte Energie allein. Sie feuert auch oft genug die Hoffnung ihrer Kinder nutzlos in den Weltraum hinaus. Doch hin und wieder lässt man uns keine Wahl, dann jedoch besteht jede Salve aus der geballten Hoffnung das endlich wieder Frieden herrscht.

Der Amazone
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

hast du ne Rekursion drin? wenn ein Konstro-Schiff ne Werft bauen kann und diese Werft das Konstro-Schiff kommt das Spiel in ne endlosschleife, da in einem macro angegebene macros ebenfalls dazugeladen werden, die darin werden ebenfalls geladen etc.
if not stated otherwise everything i post is licensed under WTFPL

Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter ;)

I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help ;)
Cappy1401
Posts: 313
Joined: Sun, 27. Apr 08, 02:16
x4

Post by Cappy1401 »

Die Werft kann auch das Bauschiff bauen, ja, aber nur meine Werft, die auch oben im Baumodul steht.
Die Werft ist die von Albion, sie hat nur eigene Macros für den Bau mit einem Bauschiff und eigene Baumodule für die Schiffe.
(Veränderte Copien der Orginalwerft, wo nur das macro (auch intern) umbenannt wurde, sowie neue Baumodule eingetragen sind.)
Das selbe beim Bauschiff, anderer Macroname und anderes Baumodul.
Lassen wir den Namen in der t.xml mal weg, der auch anders ist.
Es heist PL-Bauschiff.
Grundlegend unterscheiden sich also die Stationen sowie das Bauschiff nicht von den anderen.
Aber mal sehen, vielleicht gibt es einen Fehler in der macros.xml
Ich sehe mal in der orginalen nach, denn die Station und das Bauschiff, sind in der macros.xml eingetragen.
Bei den Stationen ein muss, weil Sie sonst nicht funktionieren.


Edit:

Das Problem ist die Werft, ich glaube ich habe auch schon eine Lösung für das Problem.
Ich muss dazu jeder vorhandenen Werft, ein Bauschiff geben, das wiederum nur die Werft bauen kann, die Werft des Spielers, darf jedoch kein Bauschiff haben, welches die Spielerwerft bauen kann.
Immer diese Umwege. :x

Edit2:

Problem gelöst, das mit dem zusätzlichen Bauschiff das nur die Spielerwerft bauen kann und in der Spielerwerft dann nicht vorhanden ist funktioniert.

Danke für den Hinweis mit der Rekursion UniTrader, das war tatsächlich das Problem.
Jetzt kann ich überall eine funktionierende Werft bauen, muss nur noch ein Script machen, das dafür sorgt, das die Werft die URVs anfordert, was Sie nämlich nicht von allein tut, da hilft momentan nur ein Savegame Edit.

Gruß Cappy
Jedes Kriegsschiff, das unsere Werften verlässt, jedes abgefeuerte Geschütz bedeutet letztlich einen Diebstahl an denen, die sich nicht wehren können, nämlich an unseren Kindern. Eine Welt bewaffnet bis an die Zähne feuert nicht nur gebündelte Energie allein. Sie feuert auch oft genug die Hoffnung ihrer Kinder nutzlos in den Weltraum hinaus. Doch hin und wieder lässt man uns keine Wahl, dann jedoch besteht jede Salve aus der geballten Hoffnung das endlich wieder Frieden herrscht.

Der Amazone

Return to “X Rebirth - Scripts und Modding”