Es wäre kein Problem (nur ordentlich arbeit) eine Rune in das Spiel zu bringen, bei der man prüft welche Runensteine sich im Inventar befinden, diese dann entsprechend ausführt wenn man eine Dialogoption in dieser Rune betätigt.
Dadurch wäre das Problem mit den einzelnen Runen auch umgangen. Sie wären im Inventar, aber würden Zentral von der "Master Rune" benutzt werden.
Das Problem ist hierbei wie immer Kompatibilität.
Nur G2 / Vanilla-like mods? Sollte keine Probleme geben.
Andere Mods (z.b. Odysee) werden da deutlich umständlicher
Zitat von mud-freak
Interessante Idee. Man könnte es tatsächlich für jegliche Mod (und jegliche "unbekannte" Teleportsprüche) machen. Ich würde das gern mal ausprobieren, allerdings müsste das zeitlich etwas warten.
Danke für eure Antworten. Ich schätze es ähnlich Zeit habe nur leider keine Zeit für soetwas. Aber ich scheine ja eine gute Idee gehabt zu haben
Fragen zu Returning 2.0 oder alternativem Balacing?
Fast alle Antworten gibt es entweder im Startpost oder als bereits gestellte Frage in diesem Thread
Wo kommen die Patches hin, ist der data Ordner korrekt?
Wenn ich die Mod nur mit Ninja starte geht alles, Ninja ist laut Konsole auch aktiv. Sobald aber z.b. Quickloot im Data Ordner ist, crasht das Spiel im Ladebalken.
Ich teste es gerade mit Buddys Returning 1 Hardcore Version und dem neuesten Union Patch
Wo kommen die Patches hin, ist der data Ordner korrekt?
Wenn ich die Mod nur mit Ninja starte geht alles, Ninja ist laut Konsole auch aktiv. Sobald aber z.b. Quickloot im Data Ordner ist, crasht das Spiel im Ladebalken.
Ich teste es gerade mit Buddys Returning 1 Hardcore Version und dem neuesten Union Patch
Lg
Wenn ich jetzt nicht falsch liege, soll Returning soviel anders machen, das es da bei vielen Patches zu Problemen kommt. Der Data Ordner ist jedenfalls richtig.
Probiere mal eine andere Mod oder Gothic 1/2 Original ob es da geht.
Fragen zu Returning 2.0 oder alternativem Balacing?
Fast alle Antworten gibt es entweder im Startpost oder als bereits gestellte Frage in diesem Thread
Ich habe versucht diese Mod zum Laufen zu bekommen, aber es will mir einfach nicht gelingen.
Ich installiere Gothic (Steam-Version) 1.08k_mod, ich installiere Spine, ich installiere Ninja über Spine..
Ich öffne in-game die Konsole, tippe ninja ein und erhalte als Antort "unknown command: ninja".
Und natürlich funktionieren dann auch alle Mods, die auf Ninja angewiesen sind, nicht.
Mit Gothic II DNDR gibt es derlei Probleme nicht.
Ich habe versucht diese Mod zum Laufen zu bekommen, aber es will mir einfach nicht gelingen.
Ich installiere Gothic (Steam-Version) 1.08k_mod, ich installiere Spine, ich installiere Ninja über Spine..
Ich öffne in-game die Konsole, tippe ninja ein und erhalte als Antort "unknown command: ninja".
Und natürlich funktionieren dann auch alle Mods, die auf Ninja angewiesen sind, nicht.
Mit Gothic II DNDR gibt es derlei Probleme nicht.
So ich habe jetzt mir die Mühe gemacht und deine Mod/Patch Liste 1:1 übernommen, so wie du es bei mir im Thema geschrieben hattest und was soll ich sagen, es geht ohne jegliche Probleme
EDIT!: Ich habe den Übeltäter, es ist dein mit Steam Starten, mache ich das auch, funktioniert Ninja auch bei mir nicht mehr. Starte es mal ohne, dann müsste es bei dir auch gehen.
@Mud-Freak in der CMD Konsole erscheint "(null) not loaded", evtl ist das was von Ninja, ohne Steam bleibt die Console schwarz.
So ich habe jetzt mir die Mühe gemacht und deine Mod/Patch Liste 1:1 übernommen, so wie du es bei mir im Thema geschrieben hattest und was soll ich sagen, es geht ohne jegliche Probleme
Wow, vielen Dank für die Mühe. Ich bin auch ratlos. Ich kann mir eigentlich nur vorstellen, dass es an Steam liegen kann. Oder auch nicht. Weil es bei Gothic II DNDR einwandfrei funktioniert. Es macht mich wahnsinnig
Hier mal meine Systemspecs:
MSI X470 GAMING PLUS MAX
AMD Ryzen 7 3700X
RTX 2070 SUPER
16 GB DDR4 RAM
SSD für Games
SSD für OS
Spine auf C installiert mit sämtlichen Mods
Steam auf C installiert
Game auf SDD für Games installiert
Win 10 x64
Wow, vielen Dank für die Mühe. Ich bin auch ratlos. Ich kann mir eigentlich nur vorstellen, dass es an Steam liegen kann. Oder auch nicht. Weil es bei Gothic II DNDR einwandfrei funktioniert. Es macht mich wahnsinnig
Hier mal meine Systemspecs:
MSI X470 GAMING PLUS MAX
AMD Ryzen 7 3700X
RTX 2070 SUPER
16 GB DDR4 RAM
SSD für Games
SSD für OS
Spine auf C installiert mit sämtlichen Mods
Steam auf C installiert
Game auf SDD für Games installiert
Win 10 x64
Vielleicht hilft das ja, keine Ahnung
Ließ meinen oberen Beitrag nochmal ich habe wegen Steam dort was Editiert
Ließ meinen oberen Beitrag nochmal ich habe wegen Steam dort was Editiert
Ich fass es nicht. Es funktioniert tatsächlich.
Ich habe es die ganze Zeit vermutet, aber kam nicht auf den Trichter, den Haken zu deaktivieren. Wie kann man nur so blöd sein?
Vielen, vielen Dank
Ich bin gerade dabei, deine neue Funktion für die Menü Sprache in meinen Patch einzubauen. Ansich funktioniert das ganze auch, aber es kommt immer nur Englisch dabei heraus und ich kann keinen Fehler finden, kannst du was falsches sehen?
Spoiler:(zum lesen bitte Text markieren)
Misc.d:
Code:
/*
* Guess localization (0 = EN, 1 = DE, 2 = PL, 3 = RU)
* Source: https://github.com/szapp/Ninja/wiki/Inject-Changes#localization
*/
func int Ninja_ShowAlwaysImportantStats_GuessLocalization() {
var int pan; pan = MEM_GetSymbol("MOBNAME_PAN");
if (pan) {
var zCPar_Symbol panSymb; panSymb = _^(pan);
var string panName; panName = MEM_ReadString(panSymb.content);
if (Hlp_StrCmp(panName, "Pfanne")) { // DE (Windows 1252)
return 1;
} else if (Hlp_StrCmp(panName, "Patelnia")) { // PL (Windows 1250)
return 2;
} else if (Hlp_StrCmp(panName, "Ñêîâîðîäà")) { // RU (Windows 1251)
return 3;
};
};
return 0; // Otherwise EN
};
/*
* Set localization indicator in menu scripts
* Source: https://github.com/szapp/Ninja/wiki/Inject-Changes
*/
func void Ninja_ShowAlwaysImportantStats_SetMenuLocalization() {
const int zCPar_SymbolTable__GetSymbol_G1 = 7316336; //0x6FA370
const int zCPar_SymbolTable__GetSymbol_G2 = 8011328; //0x7A3E40
var string symbolName; symbolName = "Ninja_ShowAlwaysImportantStats_Lang";
var int symTab; symTab = MEM_ReadInt(menuParserPointerAddress) + 16;
var int namePtr; namePtr = _@s(symbolName);
const int call = 0;
if (CALL_Begin(call)) {
CALL_PtrParam(_@(namePtr));
CALL_PutRetValTo(_@(symbPtr));
CALL__thiscall(_@(symTab), MEMINT_SwitchG1G2(zCPar_SymbolTable__GetSymbol_G1, zCPar_SymbolTable__GetSymbol_G2));
call = CALL_End();
};
var int symbPtr;
if (symbPtr) {
var zCPar_Symbol symb; symb = _^(symbPtr);
symb.content = Ninja_ShowAlwaysImportantStats_GuessLocalization();
};
};
/*
* Create menu item from script instance name
* Source: https://github.com/szapp/Ninja/wiki/Inject-Changes
*/
func int Ninja_ShowAlwaysImportantStats_CreateMenuItem(var string scriptName) {
const int zCMenuItem__Create_G1 = 5052784; //0x4D1970
const int zCMenuItem__Create_G2 = 5105600; //0x4DE7C0
var int strPtr; strPtr = _@s(scriptName);
const int call = 0;
if (CALL_Begin(call)) {
CALL_PtrParam(_@(strPtr));
CALL_PutRetValTo(_@(ret));
CALL__cdecl(MEMINT_SwitchG1G2(zCMenuItem__Create_G1,
zCMenuItem__Create_G2));
call = CALL_End();
};
var int ret;
return +ret;
};
Menu_Opt_Sais.d:
Code:
const int Ninja_ShowAlwaysImportantStats_Lang = 0; // Will be set automatically
......
......
instance MenuItem_Ninja_ShowAlwaysImportantStats_Font_Inst(C_MENU_ITEM_DEF)
{
if (Ninja_ShowAlwaysImportantStats_Lang == 1) { // DE (Windows 1252)
text[0] = "Das ist deutsch";
text[1] = "Das ist auch Deutsch";
} else if (Ninja_ShowAlwaysImportantStats_Lang == 2) { // PL (Windows 1250)
text[0] = "To jest polski";
} else if (Ninja_ShowAlwaysImportantStats_Lang == 3) { // RU (Windows 1251)
text[0] = "Это русский";
} else { // EN
text[0] = "This is English";
};
// Position und Dimension
posx = 1000; posy = NINJA_SAIS_MENU_START_Y + NINJA_SAIS_MENU_DY*0;
dimx = 3000; dimy = 750;
// Aktionen
onSelAction[0] = NINJA_SAIS_SEL_ACTION_UNDEF;
// Weitere Eigenschaften
flags = flags | NINJA_SAIS_IT_EFFECTS_NEXT;
};
Ich kann dir leider nicht weiterhelfen, wenn du da nicht weiter ausführst, bzw. Code zeigst. Der Aufruf muss geschehen, bevor Ninja_[PatchName]_CreateMenuItem aufgerufen wird.
Sorry im eifer des Gefechts vergessen zu erläutern, so habe ich es versucht:
NinjaInit.d:
Code:
var zCMenu menu; menu = _^(menuPtr);
var int items; items = _@(menu.m_listItems_array);
// Modify each menu by its name
if (Hlp_StrCmp(menu.name, "MENU_OPTIONS")) {
// New menu instances
var string itm1Str; itm1Str = "MENUITEM_DE_NINJA_SAIS_OPT";
// Get bottom most menu item and new menu items
var int itmL; itmL = MEM_ArrayPop(items); // Typically "BACK"
var int itm1; itm1 = MEM_GetMenuItemByString(itm1Str);
// If the new ones do not exist yet, create them the first time
if (!itm1) {
Ninja_ShowAlwaysImportantStats_SetMenuLocalization(); //<-----------------
itm1 = Ninja_ShowAlwaysImportantStats_CreateMenuItem(itm1Str);
// Also adjust vertical positions of the menu items
var zCMenuItem itm;
itm = _^(itmL);
var int y; y = itm.m_parPosY;
itm.m_parPosY = y+300; // Move bottom item down
itm = _^(itm1);
itm.m_parPosY = y-260; // Move new item 1 up
};
// (Re-)insert the menu items in the correct order
MEM_ArrayInsert(items, itm1);
MEM_ArrayInsert(items, itmL);
};
Ist es eigentlich ohne großen Aufwand möglich, den Beschreibungs Text im Menü einzufärben, nicht den ganzen Text sondern nur 2 Wörter? (Also das was bei einem Menü-Punkt ganz unten, unter "Zurück" steht)
PS: Ich habe es jetzt übrigens geschafft, läuft wie es soll und mein Finger ist Blau vom vielen Strg+c/v gedrücke xD