Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Seite 1 von 2 12 Letzte »
Ergebnis 1 bis 20 von 30
  1. Beiträge anzeigen #1 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline

    Gothic 2 Dndr LP in den Scripts

    Guten Abend,
    bin recht neu hier und möchte mich schonmal entschuldigen, falls dieses Thema im falschen Thread ist oder ähliches.

    Nun zum eigentlichen "Problem":

    Ich habe vor dieser LP-Steigerungs-System in den Scripts zu entfernen. Vielleicht stelle ich es mir auch zu einfach vor, aber ich wollte wissen wo ich diese Einträge in den Scripts finde. Suchte nun schon seit einer Weile und werde nicht fündig soweit. Ist der Code dafür überhaupt in der Gothic.DAT oder in einer anderen Datei?

  2. Homepage besuchen Beiträge anzeigen #2 Zitieren
    Ritter Avatar von MaGoth
    Registriert seit
    May 2007
    Ort
    Russland (Samara)
    Beiträge
    1.407
     
    MaGoth ist offline
    Ist der Code dafür überhaupt in der Gothic.DAT oder in einer anderen Datei?
    Yes, in Gothic.dat

    Script file "..\Story\B_Story\B_GivePlayerXP.d" and others... There are many files where this function will have to be changed.


    MfG MaGoth,
    |: WOG.de :|: WOG.en :|: WOG.ru :|: WOG.ro :|||: MAGIC-Team :|
    [Bild: 106462_941c3dcc88ff9e9b5597d9f24d9aea88.jpg]
    |: WOR.de :|: WOR.en :|: WOR.ru :|: WOR.ro :|||: Piranha-Bytes :|
    -=GOTHIC UND DIE FREUNDSCHAFT FÜR ALLE ZEITEN!=-

  3. Beiträge anzeigen #3 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von MaGoth Beitrag anzeigen

    There are many files where this function will have to be changed.
    What do you mean? I am not THAT much into scripting and programming, but I imagine that all the other files you are talking about take the information from this one file?

    спасибо за ответ

  4. Homepage besuchen Beiträge anzeigen #4 Zitieren
    Ritter Avatar von MaGoth
    Registriert seit
    May 2007
    Ort
    Russland (Samara)
    Beiträge
    1.407
     
    MaGoth ist offline
    Example of the calculation of the XP for Balthazar's quest with the sheep.

    If the quest is completed, the Nameless one gains experience:
    B_GivePlayerXP(XP_Balthasar_BengarsWeide);
    script: "..\Story\Dialoge\dia_bau_932_balthasar.d"

    XP_Balthasar_BengarsWeide - This is a constant:
    const int XP_Balthasar_BengarsWeide = 100;
    ...
    All the constants with points for completing quests are here,
    script: "..\Story\XP_Constants.d"

    All the experience gained is processed by function B_GivePlayerXP.
    |: WOG.de :|: WOG.en :|: WOG.ru :|: WOG.ro :|||: MAGIC-Team :|
    [Bild: 106462_941c3dcc88ff9e9b5597d9f24d9aea88.jpg]
    |: WOR.de :|: WOR.en :|: WOR.ru :|: WOR.ro :|||: Piranha-Bytes :|
    -=GOTHIC UND DIE FREUNDSCHAFT FÜR ALLE ZEITEN!=-

  5. Beiträge anzeigen #5 Zitieren
    Keks-Experte  Avatar von TazmanDevil
    Registriert seit
    Aug 2008
    Ort
    Diesseits des grossen Teiches
    Beiträge
    38.026
     
    TazmanDevil ist offline
    Willst Du ohne Steigerung der Lernpunktekosten spielen? Da gibt es bereits einen entsprechenden Skript-Patch von Lord Sargon: Alternativer Addon-Scriptpatch mit Gildenlos- und Wassermagier-Option ; letzter Patch in dem Beitrag (G2Addon_scriptpatch_2.6wm_1.2c.zip)

  6. Beiträge anzeigen #6 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von TazmanDevil Beitrag anzeigen
    Willst Du ohne Steigerung der Lernpunktekosten spielen? Da gibt es bereits einen entsprechenden Skript-Patch von Lord Sargon: Alternativer Addon-Scriptpatch mit Gildenlos- und Wassermagier-Option ; letzter Patch in dem Beitrag (G2Addon_scriptpatch_2.6wm_1.2c.zip)
    Das Problem dabei ist, dass es die Dialogauswahl dann ins Deutsche setzt (spiele Gothic 2 mit einem Freund parallel, deswegen ist es auf englisch). Somit war der Plan die ganzen englischen sachen zu behalten und nur die LP - Steigerung zu entfernen. Hat soweit zwar geklappt, aber beim Compilieren der Skripte in die .DAT werden mir Errors ausgegeben, wodurch es nicht klappt. Da ich keine Variablen oder ähnliches entferne machen diese Errors überhaupt keinen Sinn

  7. Beiträge anzeigen #7 Zitieren
    Keks-Experte  Avatar von TazmanDevil
    Registriert seit
    Aug 2008
    Ort
    Diesseits des grossen Teiches
    Beiträge
    38.026
     
    TazmanDevil ist offline
    In dem Fall verschiebe ich die den Thread am Besten ins Editing, dort bekommst Du am ehesten Hilfe beim Zusammenbauen der Gothic.Dat

    Eine Alternative wäre sonst noch NdR Custom
    Damit kannst Du zwar nicht die LP-Kosten ändern, aber die LP pro Stufenanstieg (z.B. von 10 auf 15) oder die Erfahrung welche Du von Monstern oder Quests bekommst prozentual erhöhen.

  8. Beiträge anzeigen #8 Zitieren
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.244
     
    Milky-Way ist offline
    Zitat Zitat von zero218xgt Beitrag anzeigen
    Hat soweit zwar geklappt, aber beim Compilieren der Skripte in die .DAT werden mir Errors ausgegeben, wodurch es nicht klappt. Da ich keine Variablen oder ähnliches entferne machen diese Errors überhaupt keinen Sinn
    Zeig bitte mal den Inhalt der von dir veränderten Dateien:
    [CODE] hier kopierst du den Code rein [/CODE]
    Durch die "CODE" Blöcke in eckigen Klammern bleibt die Formatierung erhalten

    Außerdem bitte auch den Wortlaut der Fehlermeldung schreiben, so wie die dort angegebene Zeilennummer. (Alternativ einen Screenshot der Fehlermeldung machen und zeigen.)

  9. Beiträge anzeigen #9 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von TazmanDevil Beitrag anzeigen
    In dem Fall verschiebe ich die den Thread am Besten ins Editing, dort bekommst Du am ehesten Hilfe beim Zusammenbauen der Gothic.Dat

    Eine Alternative wäre sonst noch NdR Custom
    Damit kannst Du zwar nicht die LP-Kosten ändern, aber die LP pro Stufenanstieg (z.B. von 10 auf 15) oder die Erfahrung welche Du von Monstern oder Quests bekommst prozentual erhöhen.
    klingt nach einer Idee, ich werde das als einen Plan B im Hinterkopf behalten

  10. Beiträge anzeigen #10 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Hier der Code der Datei /Story/B_Story/B_GetLearnCostAttribute.d des Stärke Attributes:
    Code:
        var int kosten;
        kosten = 0;
        if(attribut == ATR_STRENGTH)
        {
            if(oth.aivar[REAL_STRENGTH] >= 120)
            {
                kosten = 5;
            }
            else if(oth.aivar[REAL_STRENGTH] >= 90)
            {
                kosten = 4;
            }
            else if(oth.aivar[REAL_STRENGTH] >= 60)
            {
                kosten = 3;
            }
            else if(oth.aivar[REAL_STRENGTH] >= 30)
            {
                kosten = 2;
            }
            else
            {
                kosten = 1;
            };
        };
    Hier passe ich die Werte an oder entferne diese:

    Code:
        if(attribut == ATR_STRENGTH)
        {
            if(oth.aivar[REAL_STRENGTH] >= 110)
            {
                kosten = 3;
            }
            else if(oth.aivar[REAL_STRENGTH] >= 60)
            {
                kosten = 2;
            }
            else
            {
                kosten = 1;
            };
        };
    Eben... Wie man sieht werden lediglich ein paar IFs entfernt bzw Werte verändert. Werte, die nicht als Variable oder ähnliches gespeichtert sind. Hoffe ihr habt da ne Idee.

    Die erste Errormeldung: "Story\B_Content\B_Addon_PiratesGoHome.de(94): Error: Unknown identifier ELSE

    Hier die ganze Funktion des Errors:
    Code:
    func int C_TowerBanditsDead()
    {
        var C_Npc TowerBandit1;
        var C_Npc TowerBandit2;
        var C_Npc TowerBandit3;
        TowerBandit1 = Hlp_GetNpc(BDT_10100_Addon_TowerBandit);
        TowerBandit2 = Hlp_GetNpc(BDT_10101_Addon_TowerBandit);
        TowerBandit3 = Hlp_GetNpc(BDT_10102_Addon_TowerBandit);
        if(Npc_IsDead(TowerBandit1) && Npc_IsDead(TowerBandit2) && Npc_IsDead(TowerBandit3))
        {
            return TRUE;
        };
        TowerBanditsDead = TRUE;
        else
        {
            return FALSE;
        };
    };
    Geändert von zero218xgt (13.12.2018 um 23:42 Uhr)

  11. Beiträge anzeigen #11 Zitieren
    Knight
    Registriert seit
    Aug 2009
    Ort
    Hessen
    Beiträge
    1.487
     
    Cryp18Struct ist offline
    Welche Skripte verwendest du denn als Grundlage?
    Die deutschen die im Modkit dabei waren? die englischen von hier:
    https://forum.worldofplayers.de/foru...inal-Revision)
    oder ganz was anderes?

    Die C_TowerBanditsDead() die du hast ist minimal fehlerhaft. Das könntest du zwar von Hand beheben, aber vielleicht gibt es irgendwo anders noch andere Fehler.

  12. Beiträge anzeigen #12 Zitieren
    now also in your universe  Avatar von Milky-Way
    Registriert seit
    Jun 2007
    Beiträge
    15.244
     
    Milky-Way ist offline
    Die Zeile
    Code:
    TowerBanditsDead = TRUE;
    ist nicht an der richtigen Stelle, und du schließt die if-Abfrage mit einem Semikolon ab, so dass danach kein else mehr kommen kann.

    So könnte es richtig sein:

    Code:
    func int C_TowerBanditsDead()
    {
        var C_Npc TowerBandit1;
        var C_Npc TowerBandit2;
        var C_Npc TowerBandit3;
        TowerBandit1 = Hlp_GetNpc(BDT_10100_Addon_TowerBandit);
        TowerBandit2 = Hlp_GetNpc(BDT_10101_Addon_TowerBandit);
        TowerBandit3 = Hlp_GetNpc(BDT_10102_Addon_TowerBandit);
        if(Npc_IsDead(TowerBandit1) && Npc_IsDead(TowerBandit2) && Npc_IsDead(TowerBandit3))
        {
            TowerBanditsDead = TRUE;
            return TRUE;
        }
        else
        {
            return FALSE;
        };
    };

  13. Beiträge anzeigen #13 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von Cryp18Struct Beitrag anzeigen
    Welche Skripte verwendest du denn als Grundlage?
    Ich Decompiliere die GOTHIC.DAT Datei der Steam version und nutze dann die decompiled Skripts

  14. Beiträge anzeigen #14 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von Milky-Way Beitrag anzeigen
    Die Zeile
    Code:
    TowerBanditsDead = TRUE;
    ist nicht an der richtigen Stelle, und du schließt die if-Abfrage mit einem Semikolon ab, so dass danach kein else mehr kommen kann.

    So könnte es richtig sein:

    Code:
    func int C_TowerBanditsDead()
    {
        var C_Npc TowerBandit1;
        var C_Npc TowerBandit2;
        var C_Npc TowerBandit3;
        TowerBandit1 = Hlp_GetNpc(BDT_10100_Addon_TowerBandit);
        TowerBandit2 = Hlp_GetNpc(BDT_10101_Addon_TowerBandit);
        TowerBandit3 = Hlp_GetNpc(BDT_10102_Addon_TowerBandit);
        if(Npc_IsDead(TowerBandit1) && Npc_IsDead(TowerBandit2) && Npc_IsDead(TowerBandit3))
        {
            TowerBanditsDead = TRUE;
            return TRUE;
        }
        else
        {
            return FALSE;
        };
    };
    Ich hab da nen anderen Weg drum rum gefunden. Ich ersetzt einfach die fehlerhaften .d files mit nicht fehlerhaften englischen Skripts aus dem Internet. Funktioniert zwar, aber der Sourcer stoppt dann einfach. Also die letzt Meldung im Sourcer ist "Process stopped"... Es wurden mehere Faults vom Programm ignoriert, in denen eine int funktion keinen return hat. Könnte es deswegen das compilen stoppen?

  15. Beiträge anzeigen #15 Zitieren
    Knight
    Registriert seit
    Aug 2009
    Ort
    Hessen
    Beiträge
    1.487
     
    Cryp18Struct ist offline
    Mit dekompilierten Skripten zu arbeiten ist eher fehleranfällig.

    Nimm besser die deutschen Skripte vom modkit oder die englischen hier:
    https://forum.worldofplayers.de/foru...inal-Revision)
    als Grundlage.

    Zum kompilieren kannst du auch einfach die GothicStarter_mod.exe benutzen, der GothicSourcer ist da unnötig.

  16. Beiträge anzeigen #16 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Zitat Zitat von Cryp18Struct Beitrag anzeigen
    Mit dekompilierten Skripten zu arbeiten ist eher fehleranfällig.

    Nimm besser die deutschen Skripte vom modkit oder die englischen hier:
    https://forum.worldofplayers.de/foru...inal-Revision)
    als Grundlage.

    Zum kompilieren kannst du auch einfach die GothicStarter_mod.exe benutzen, der GothicSourcer ist da unnötig.
    Mh ok, ich werd das dann mal versuchen. Kannst du mir erklären wie ich das GENAU mit dem Starter mache? Die Anweisungen "Häkchen bei Skripte Parsen" habe ich zwar bei den anderen verstanden, aber wars das? Woher weiß der Starter welche Files er nun Parsen soll?

    Außerdem habe ich andere Patches wie Beispiesweise das Systempack und den Gothic2fix installiert. Würde das nicht somit die ganzen Mods überschreiben? Muss ich die danach einfach neu installieren?

  17. Beiträge anzeigen #17 Zitieren
    Dea
    Registriert seit
    Jul 2007
    Beiträge
    10.447
     
    Lehona ist offline
    Zitat Zitat von zero218xgt Beitrag anzeigen
    Mh ok, ich werd das dann mal versuchen. Kannst du mir erklären wie ich das GENAU mit dem Starter mache? Die Anweisungen "Häkchen bei Skripte Parsen" habe ich zwar bei den anderen verstanden, aber wars das? Woher weiß der Starter welche Files er nun Parsen soll?

    Außerdem habe ich andere Patches wie Beispiesweise das Systempack und den Gothic2fix installiert. Würde das nicht somit die ganzen Mods überschreiben? Muss ich die danach einfach neu installieren?
    Der GothicStarter verwendet (in 99% der Fälle) die Gothic.src aus GothicII\_work\data\Scripts\Content\Gothic.src um zu wissen, welche Scripte alle geparst werden müssen. Wenn du einen Haken setzt und dann das Spiel startest, sind die Scripte geparst worden, sobald du im Hauptmenü bist. Es gibt noch ein paar andere *.src-Dateien, die verwendet werden (z.B. für Menüs, visuelle Effekte, Musik, ...), die kann man allerdings meistens ignorieren, weil man ja sowieso nur Änderungen an den Spielmechaniken vorgenommen hat.

    Ich würde niemals an meiner Modding-Installation auch Mods spielen, insofern sollte die Frage eigentlich egal sein. Dennoch:
    Patches und Mods sind in Gothic sehr unterschiedliche Dinge, und die von dir genannten Beispiele sind sowieso nochmal was ganz anderes (weil die die Gothic2.exe austauschen/modifizieren, anstatt eine .mod oder .vdf Datei bereitzustellen), sie würden also vom Modkit nicht überschrieben werden.

  18. Beiträge anzeigen #18 Zitieren
    Provinzheld
    Registriert seit
    Mar 2010
    Ort
    Berlin
    Beiträge
    201
     
    withmorten ist offline
    Der Starter weiß gar nix. Der Starter startet nur Gothic2.exe mit dem "-zreparse" kommandozeilen parameter. Gothic2.exe generiert dann aus allen .src dateien die im scripts ordner rumliegen die .dat dateien neu (in _work\data\scripts). Die .src dateien sagen, welche .d Dateien kompiliert werden sollen. Sind alles textdateien.

    Du brauchst den starter gar nicht zum neukompilieren, du kannst auch einfach eine gothic2 verknüpfung machen und da -zreparse ranhängen. Der machts nur einfacher

    Die mods sollten alle ihre eigenen ".mod" dateien haben, insofern sollte sich da nichts beißen. Du überschreibst damit nur die originalen .dat dateien des Spiels. Systempack ist auch nicht weiter problematisch, das tauscht nur die shw32.dll und vdfs32g.dll aus (und patched diverse sachen in der exe über eine .patch datei in der systempack.vdf).

    Wie andere schon sagten, die gothicsourcer dekompilierten skripte sind ziemlich bescheuert neu zu kompilieren (das hab ich bisher auch nicht hinbekommen), nimm lieber die originalen deutschen Gothic 2 Addon skripte aus dem ModKit, oder die verlinkten gefixten englischen. Da sind auch die .src Dateien etc korrekt.

  19. Beiträge anzeigen #19 Zitieren
    Lehrling
    Registriert seit
    Dec 2016
    Beiträge
    23
     
    zero218xgt ist offline
    Erstmal ein RIESEN Dankeschön an alle die mir hier geholfen haben. Ich habe es nun geschafft, dass die LP Kosten so gesteigert werden wie ich es will und die Sprache des Spiels bleibt englisch.

    Aber die Untertitel sind auf Deutsch. Muss ich das in den OUs machen? In einigen anderen Forumeinträgen haben Leute etwas mit den OUs gemacht.
    Ich habe eben einfach den Cutscene Ordner mit den Skripts in den Gothic 2 Ordner kopiert. Verändert der MDK was? Habe dort aber bewusst den Haken bei "Skripte" bei der Installation weg gelassen.

  20. Beiträge anzeigen #20 Zitieren
    Dea
    Registriert seit
    Jul 2007
    Beiträge
    10.447
     
    Lehona ist offline
    Die Untertitel liegen in der Datei GothicII\_work\data\Scripts\_compiled\OU.BIN. Die wurde wohl bei Installation des Modkits ebenfalls installiert. Wie hast du deine Änderungen ins Spiel gebracht? Einfach mit dem GothicStarter_mod.exe und einem Haken bei Scripte parsen? Dann könnte es vielleicht schon reichen, wenn du die Datei löscht und Gothic dann die richtigen Untertitel aus der GothicII\data\modvdf\GothicGame.mod lädt.

Seite 1 von 2 12 Letzte »

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide