World of Gothic Archiv > Editing
kompilierbare Skripte für die G2 Engine
Seite 1 von 4  1  2  3  4 
06.01.2004, 21:04 #1
AndiNo
Beiträge: 50
kompilierbare Skripte für die G2 Engine
Ich arbeite seit ungefähr neun Tagen an Skripten für Gothic 2. Dafür habe ich die Gothic 1 Skripte genommen und so erweitert, dass man Gothic 2 damit starten und spielen kann.
Es gibt noch einige Bugs zu bereinigen und einige Funktionen fehlen noch. Aber ansonsten läuft das Spiel schon sehr gut, man kann Gothic also schon ein bisschen spielen.
Das glaubt mir jetzt sowieso keiner, oder? Deshalb werde ich in (hoffentlich) kurzer Zeit Screenshots liefern, die das beweisen.

Diese Skripte beinhalten natürlich nicht die gesamten Leute und Gegenstände aus G2 dNdR. Daher sind sie vor Allem für Modder interessant, die eine komplett neue Welt bauen wollen. Dafür können dann alle Skripter zum Bleistift von Die Bedrohung 2 schon mal loslegen und sich auf die neue Technik einstellen.
Einen Releasetermin der Skripte kann ich noch nicht nennen, aber ich hoffe doch, dass es noch vor den Piranhas ist.

Na dann will mal weiter arbeiten...
07.01.2004, 12:17 #2
Makador
Beiträge: 431

Frag die Piranhas mal vorher um Erlaubnis, bevor du da Probleme kriegst. Soweit ich weiß ist selbst schon die Änderung eines Icons bei Gothic 2 verboten.
07.01.2004, 13:16 #3
HornOx
Beiträge: 1.458

quote:
Das glaubt mir jetzt sowieso keiner, oder? Deshalb werde ich in (hoffentlich) kurzer Zeit Screenshots liefern, die das beweisen.
Gibt es etwas das man auf Screenshots sehn kann das nur mit kompilierbaren Scripten und nicht per Cheats geht? Ansonsten bringen Screenshots nicht viel :( Dann wären nur eine (Mini)Mod oder die Scripte ein Beweis
quote:
[...] und sich auf die neue Technik einstellen.
Neue Techniken? Die Instanzen können sich geändert haben, es gibt neue externe Funktionen und ähnliches Kleinzeug aber wenn du die G1 Scripte verwendest kann es doch eigentlich nicht etwas richtig Neues geben?

@Makador: Die G1 Scripte sind ja für die nichtkomerzielle Verwendung freigegeben und Daten von G2 hat AndiNo so weit ich das beurteilen kann nicht verwendet. Also sollte es eigentlich auch ohne Erlaubnis gehn.
07.01.2004, 15:28 #4
AndiNo
Beiträge: 50

Bei den Screenshots mach ich einfach mal ein paar neue Monster oder Gegenstände rein. Mal gucken was es sonst noch so gibt.
quote:
aber wenn du die G1 Scripte verwendest kann es doch eigentlich nicht etwas richtig Neues geben?
Na gut, aber es gibt viele Sachen die das Spielen auf jeden Fall angenehmer machen. Es gibt einige Neuerungen, z.B. Transparenz wie bei Quarhodron (blöder Name) oder viele Sachen die aus der Engine gesteuert werden, also Waffen stapeln, neues Angriffsverhalten der NPCs, bessere Magieeffekte, mehr Talente und Gilden, neue Itemklassen (Gürtel), Handelswährung kann bestimmt werden (G1= Erz G2= Gold) usw.
Außerdem können Items und NPCs Effekte zugewiesen werden (Beispiel Feuerteufel).
Alles klar?:D
Alle Verbesserungen die von Gothic1 zu Gothic2 und dann zum Addon gemacht wurden sind nutzbar, mehr auch nicht.
Schließlich kann ich auch nicht zaubern.
07.01.2004, 22:36 #5
AndiNo
Beiträge: 50

Die Screenshots sind schon in Arbeit. (Natürlich nicht im Bildbearbeitungsprogramm.;)) Dürften bald da sein.

Auf dass alle "Ungläubigen" sehen wie stark ich dank seiner Macht geworden bin. [Gor Hanis]
08.01.2004, 11:35 #6
alpha32d
Beiträge: 416

Wir haben alle Gothic 2 + Addon gespielt, wir wissen was es alles neues gibt. Aber es gibt viele lücken in deiner behauptung. Du weißt nicht wie man diesen Transparenz (alpha kanal) einstellt, und durch die Parsung der gothic 1 scripte werden die benötigten constantsen gelöscht, und ich meine nicht die, die in constants.d im _intern ordner ist (selbst wenn es Engine abhängig ist). Wenn es wirklich klappt währe es prima für neue items und npcs, die gerade eine NEUE Mod planen, aber was neues aus der gothic 2 engine können wir dadurch nur halbwegs erziehlen.
08.01.2004, 11:54 #7
AndiNo
Beiträge: 50

Man kann keinen Alpha Kanal einstellen. Die Transparenz ist intern in der Engine festgelegt. Sie wird durch einen einzigen Befehl bei der NPC Beschreibung aufgerufen.
Es gibt einmal den Ordner scriptsContent_Intern und scriptssystem_intern. Im content Ordner ist die constants.d die kompiliert wird, im system ordner liegt eine ältere, aber bereits teilweise auf G2 umgestellte contants.d. Die alleine reicht natürlich nicht, aber ich habe den Rest gefunden um die Lücken zu füllen und die meisten Funktionen der G2 Engine aufzurufen. Es ist mehr in der Engine schon festgelegt als ihr denkt, z.B. der Alpha Kanal.
Aber glaubt ja nicht, dass es leicht war die Konstanten zu finden. Aber das alles werdet ihr in den Screenshots sehen. Hoffentlich seid ihr dann überzeugt. Da drin sind bis jetzt ein neuer NPC, ein transparenter schwarzer Troll und ein Haufen Magieeffekte die Items und einem NPC zugewiesen wurde.
Natürlich sind die Skripte noch nicht perfekt, aber sie sind noch in Arbeit. Also ihr Zweifler, wartet nur ab.
08.01.2004, 12:11 #8
alpha32d
Beiträge: 416

Und wo her hast du die Funktionen her, die Scripts waren kompelliert und UNDECODIERBAR, und sag mir jetzt nicht du hast es im Hex Editor einfach geöffnet und gesucht.

Ich meine, es ist nicht unmöglich, aber ohne zu wissen was vorher in den gothic 2 scripts drin war, bezweifle ich das.

Wenn du willst das dir alle glauben, stell die scripts online. Dann ist alles bewiesen.
08.01.2004, 13:10 #9
AndiNo
Beiträge: 50

Du hast Recht, die Dateien sind undecodierbar, man kann die Skripte nicht mehr lesen, aber man kann entscheidende Punkte daraus ablesen. Ich habe also aus den kompilierten Dateien Namen heraus gelesen, direkt im Spiel heraus gefunden ob es Konstanten, Strings oder Integer waren und noch ein paar aus der neueren constants.d aus dem system Verzeichnis gelesen. Zusammen sind dann meine jetzigen Daten heraus gekommen.
Ich habe nicht behauptet, dass ich alle Skripts aus Teil 2 habe, also Leute und so, sondern dass ich kompilierbare Skripte für die Engine habe, wo man noch Zeug reinbauen muss.
Die Skripte kann ich jetzt noch nicht ins Internet stellen, sie sind noch nicht fertig. Dann würde gleich jeder kommen und meckern. Nee, danke.
08.01.2004, 13:24 #10
AndiNo
Beiträge: 50

Eine Frage hätte ich noch :
Was würde euch auf einem Screenshot am meisten überzeugen??
08.01.2004, 14:26 #11
Gabumon79
Beiträge: 305

pfeif mal auf die screenshots, kram fraps oder camtasia heraus und laß quarhodron gemeinsam mit gomez gegen deinen halbtransparenten schwarzen troll kämpfen :D
(alternativ könntest du auch in extremo in der taverne auftreten lassen.... )
08.01.2004, 15:25 #12
HornOx
Beiträge: 1.458

quote:
Bei den Screenshots mach ich einfach mal ein paar neue Monster oder Gegenstände rein.
Texte und alle Item und NPCs Visuals kann man auch ohne Scripte verändern, das wäre also kein Beweis.
quote:
Es gibt einige Neuerungen
Klar, das "neue Technik" hat sich nur so angehört als ob es etwas richtig neues für Scripter gäbe (Schleifen, Referenzen, usw)
quote:
Also ihr Zweifler, wartet nur ab.
Wer im Internet nicht erstmal alle neuen Informationen von einer unbekannten Quelle anzweifelt macht was falsch ;)
quote:
direkt im Spiel heraus gefunden ob es Konstanten, Strings oder Integer waren
Kannst du mal nachschauen was für Parameter(int, string, usw) die neuen externen Funktionen von G2 haben? Das hab ich aus gothic.dat nicht herrauslesen können :(
08.01.2004, 16:39 #13
alpha32d
Beiträge: 416

quote:
Was würde euch auf einem Screenshot am meisten überzeugen??
eeää, nichts!. Mein Gott, was hast du für ein problem, stellt die scripts hier rein und jeder glaubt dir, sonst würd ich gern NICODE hier her bitten, und fragen ob es möglich währe die ganzen constantes zu schreiben ohne sie zu wissen?!?
08.01.2004, 17:02 #14
AndiNo
Beiträge: 50

@HornOx
1.Ich dachte, wenn man Texte im Spiel ändert, wird er immer groß geschrieben und nur in Skripten klein??
2.Mit den Parametern meinst du doch so Sachen wie bei FUNC VOID Wld_InsertNpc (VAR INT npcInstance, VAR STRING spawnPoint), oder? Tja, tut mir leid, das einzige was ich sehe ist dann der Name Wld_InsertNpc. Mehr steht da nicht oder der Rest ist codiert. Alles andere waren ja Konstanten, die in der classes.d standen, da hatten sie einen Wert oder Namen. Anhand der Sachen die im Spiel standen konnte ich dann sehen ob sie INT oder STRING waren.

@alpha32d
Oh Mann bist du ein Typ! Reg dich mal ab. Du brauchst hier nicht herumzumaulen. Wenn du ein Problem hast, dann sag das normal. pah, gammler
08.01.2004, 17:22 #15
alpha32d
Beiträge: 416

in meiner position würdest du das gleiche denken. Kuckmal, du kommst hier rein (mit deinem ersten post) und machst wofür die anderen (auch mich) zu faul waren es zu testen oder nicht wussten wie sie das machen sollen. Aber ehrlich gesagt interessiert mich das nicht sonderlich, ich warte auf die richtigen scripts von pb.
08.01.2004, 17:46 #16
AndiNo
Beiträge: 50

Natürlich weiss ich nicht, wann PB die Skripte rausgibt. Aber das kann noch ein halbes Jahr dauern. Oder länger.
Ausserdem sind die Skripte dafür dann doch gut genug, um damit schon mal die groben Strukturen aufzubauen und Dialoge zu machen usw und das alles auf der neuen Welt die man in G2 gebaut hat zu testen. Ansonsten wären die Welten schon längst fertig und die Skripte haben nicht mal angefangen. Das verzögert das Projekt doch ziemlich. Man könnte seine Skripte dann ja einfach zu den besseren Skripten der PBs kopieren und fertig. Ist das nichts?
08.01.2004, 17:49 #17
NicoDE
Beiträge: 1.398

quote:
Zitat von alpha32d
Mein Gott, was hast du für ein problem, stellt die scripts hier rein und jeder glaubt dir
Ich glaube, dass dies ihm/ihr selbst überlassen bleibt - aber er/sie wird den Rat sicher zu schätzen wissen ;)
quote:
Zitat von alpha32d
sonst würd ich gern NICODE hier her bitten
Da bin ich.
(FYI: er/sie hatte mich schon Ende letzten Jahres wegen des Themas angeschrieben - da ich jetzt erst wieder da bin, bin ich erst heute dazu gekommen die angesammelte Post teilweise zu beantworten...)
quote:
Zitat von alpha32d
und fragen ob es möglich währe die ganzen constantes zu schreiben ohne sie zu wissen?
Ja.


Gruß Nico
08.01.2004, 18:38 #18
AndiNo
Beiträge: 50

Tja Leute, für meine Skripte sieht's schlecht aus. Aber macht gaaanix! Wenn ihr wollt könnt ihr meine Skripte ja später mal erhalten, nur so nochmal zum Reingucken.
VIELEN DANK NOCHMAL AN NicoDE!!!! Das ist echt G E N I A L
Und an alpha32d, der ihn "gerufen" hat:D :D :D
08.01.2004, 20:12 #19
AndiNo
Beiträge: 50

Hier nochmal ein kleiner Hinweis an alle Interessierten:
Ich schreibe gerade einen Verlauf der Entwicklung der Skripte. Wer Lust hat, kann ja dann mal reingucken und sehen was ich verändert habe. Vielleicht sehen alle halbwegs professionellen Skripter dann, dass ich die Wahrheit gesagt habe, wer weiss...
Den Link werde ich dann hier posten, also nicht vergessen;)
08.01.2004, 20:23 #20
alpha32d
Beiträge: 416

quote:
Natürlich weiss ich nicht, wann PB die Skripte rausgibt.
Das hab ich auch nicht gefragt.
quote:
Man könnte seine Skripte dann ja einfach zu den besseren Skripten der PBs kopieren und fertig.
War mir klar, aber ich möchte auch gerne wissen ob es auch wirklich geht. Npcs inserten und items, würde mir für den anfang reichen.
quote:
da ich jetzt erst wieder da bin, bin ich erst heute dazu gekommen die angesammelte Post teilweise zu beantworten
Das ist gut, hab dir auch ein paar fragen gestellt.:D
09.01.2004, 01:45 #21
GülleMüller
Beiträge: 472

Moin,

quote:
Tja Leute, für meine Skripte sieht's schlecht aus. Aber macht gaaanix!

Ja, erm... wie jetz

quote:
Das ist echt G E N I A L

Was ist echt genial ?
(Kann es sein, daß bei zunehmender Müdigkeit auch die Neugier zunimmt???)


quote:
Vielleicht sehen alle halbwegs professionellen Skripter dann, dass ich die Wahrheit gesagt habe,

Grundsätzlich ist es freilich möglich massenweise Infos aus der Gothic.dat usw. zu lesen.
Mit viel Testen wird alles sicher funktionieren.
Offen bleibt jedoch was passiert, wenn Klassen,Funktionen (Externals),Konstanten,... fehlen (neue z.B.) und reparst wird.
Die ganze Arbeit wird wohl kaum im angenehmen Verhältnis zur reingesteckten Zeit stehen.

@HornOx:
Dank der Frage
quote:
Kannst du mal nachschauen was für Parameter(int, string, usw) die neuen externen Funktionen von G2 haben?

mußte ich wieder bis jetzt durchmachen... is echt doof wenn man net aufhören kann ;)
Jedenfalls hab ich sie dir per PM geschickt mit Ausnahme von einigen, die scheinbar erst bei DNdR dabei sind. Habe z.B. NPC_GETLASTHITSPELLxxxxx nicht gefunden...

cu
GüMü
09.01.2004, 10:12 #22
AndiNo
Beiträge: 50

@alpha32d
Kann es sein, - ich bin mir natürlich nicht sicher, aber - dass du du ein kleines bisschen....TOTAL GEFRUSTET bist? Du meckerst hier rum und alle müssen sofort für dich springen. Kannst du v e r g e s s e n! Schon komisch, dass ich mit meinem ersten Post schon die Wahrheit sage, oder?? Du hast wahrscheinlich die ganzen 230 Mal nur gelogen und Mist erzählt!! Besser du verkriechst dich wieder unter deinen Stein
quote:
die benötigten constantsen

quote:
Scripts waren kompelliert

quote:
Kuckmal

Aber wenn du hier noch mal was postest, dann lern gefälligst vorher schreiben, man kann dein Zeug nicht lesen.
Außerdem bist du ein Versager! Du hast selbst gesagt, dass du zu faul bist um irgendetwas zu machen, wahrscheinlich bist du auch zu dumm!
Also, verzieh dich!

@GülleMüller
1.Ich werde meine Skripte ziemlich sicher nicht rausbringen. Nicht dass ich das nicht dürfte, aber ich mach's nunmal nicht. Ist wegen PB.
2.NicoDE hat mir ne Nachricht geschickt, und da standen ein paar interessante Sachen drin.
3.Du hast recht, die Arbeit steht in keinem Verhältnis zur Zeit.
Wenn Klassen fehlen oder nicht vollständig sind, gibt Gothic ne Fehlermeldung aus wo drinsteht, dass die Skriptgrösse falsch ist und stürzt ab.
Externals sind (soweit ich weiss) in der Engine. Bei G1 stehen sie zwar in einer Datei, aber die wird nicht geparst.
Die Konstanten sind hauptsächlich so Sachen wie die Geisterflag beim transparenten Troll. Sie lassen Gothic kaum abstürzen.

Dazu noch einen kleinen Beitrag zu einem alten Post von alpha32d:
Der Alphakanal steht in der Gothic.ini. Er ist "GhostAlpha=0.300000012". Nur falls du das verstehst, ich weiss ja nicht...
09.01.2004, 10:23 #23
HornOx
Beiträge: 1.458

quote:
1.Ich dachte, wenn man Texte im Spiel ändert, wird er immer groß geschrieben und nur in Skripten klein??
Wenn man per Hexeditor gothic.dat verändert kann man die Texte beliebig verändern. Ist z.B. bei Übersetzungen sinnvoll :)
quote:
2.Mit den Parametern meinst du doch so Sachen wie bei FUNC VOID Wld_InsertNpc (VAR INT npcInstance, VAR STRING spawnPoint), oder?
Genau. IMHO sind nur die geänderten Instanzen und neuen externen Funktionen für Skripter interessant, wenn man die nicht in deinen Skripten benutzten kann oder sie undokumentiert sind haben deine G2 Skripte für Skripter keinen Vorteil gegenüber den normalen G1 Skripten. Abgesehn davon wird es vermutlich dennoch viele geben die gerne damit experimentieren würden.
quote:
Tja Leute, für meine Skripte sieht's schlecht aus. Aber macht gaaanix! Wenn ihr wollt könnt ihr meine Skripte ja später mal erhalten
Versteh ich das richtig das du beleidigt bist und deine Scripte erst nach den richtigen G2 Scripten veröffentlichst? Keiner hier hat dich so angeriffen, beleidigt oder was auch immer das es sich deswegen lohnt die Arbeit von 9 Tagen unnütz zu machen.
09.01.2004, 10:36 #24
NicoDE
Beiträge: 1.398

quote:
Zitat von HornOx (an AndiNo)
Versteh ich das richtig das du beleidigt bist und deine Scripte erst nach den richtigen G2 Scripten veröffentlichst? Keiner hier hat dich so angeriffen, beleidigt oder was auch immer das es sich deswegen lohnt die Arbeit von 9 Tagen unnütz zu machen.
Das liegt wohl eher daran, dass ich ihn gebeten habe, mit einer öffentlichen Verbreitung noch etwas zu warten.


Gruß Nico

ps@AndiNo: bitte keine Beleidigungen im Forum.
09.01.2004, 10:36 #25
Horn0x
Beiträge: 64

hmm, jetzt muß ich mich auch noch als Moderator einloggen...
quote:
Du hast wahrscheinlich die ganzen 230 Mal nur gelogen und Mist erzählt!!
Momentan hat er nur 229 Beiträge, ich hab 2 versehentlich erstellte Beiträge von ihm gelöscht ;) Abgesehn davon verwarne ich dich, wenn du weiterhin Leute im Forum beleidigst wirst du gebannt.
Seite 1 von 4  1  2  3  4