Multi-NPC dialogue system for Gothic, based on the solution form AFSP Trialogue package.
- Implement the basic functionality of the multilogue system
- Increase the default display dialogue distance if needed
- Custom camera system
- Gothic 1 compatibility
-
Download
zMultilogue.vdf
and place it inside<GOTHIC_ROOT>/Data
with Union installed to automatically load the plugin at the start of the game. -
Copy the
ZS_MULTILOGUE
routine from_externals/zMultilogue.d
into any file parsed by the game. -
Use the plugin's externals to create multilogues π
The following example demonstrates how to create a simple multilogue with two NPCs.
instance DIA_TEST_ZMUL(C_INFO)
{
npc = NONE_100_Xardas;
nr = 0;
condition = DIA_TEST_ZMUL_Condition;
information = DIA_TEST_ZMUL_Info;
permanent = FALSE;
description = "Multilogue test";
};
FUNC INT DIA_TEST_ZMUL_Condition()
{
return TRUE;
};
FUNC VOID DIA_TEST_ZMUL_Info()
{
var C_NPC diego; diego = Hlp_GetNpc(PC_Thief_NW);
var C_NPC xardas; xardas = Hlp_GetNpc(NONE_100_Xardas);
zMul_Invite(diego);
zMul_Start();
AI_Output(other, self, "DIA_TEST_ZMUL_15_00"); //I found your gold!
zMul_Next(diego);
AI_Output(self, other, "DIA_TEST_ZMUL_11_01"); //Great. Show me.
zMul_Next(xardas);
AI_Output(self, other, "DIA_TEST_ZMUL_14_02"); //What gold?
AI_Output(other, self, "DIA_TEST_ZMUL_15_03"); //None of your business.
AI_Output(self, other, "DIA_TEST_ZMUL_14_04"); //Okay. I will be in the tower.
zMul_Next(diego);
AI_Output(self, other, "DIA_TEST_ZMUL_11_05"); //Give me the gold now.
zMul_Finish();
};
You can contact the authors and maintainers on Discord. Look for @muczciwek.
Biggest community of international Gothic modders. https://discord.gg/SJfHUv5SRW
Official Discord of Nek's History, the mod we are working on and started zMultilogue for it. https://discord.gg/4E2CeQAeWS
zMultilogue is licensed under MIT license excluding some dependencies.
union-api and gothic-api are licensed under GNU GENERAL PUBLIC LICENSE V3.
GothicVDFS 2.6 Copyright (c) 2001-2003, Nico Bendlin, Copyright (c) 1994-2002, Peter Sabath / TRIACOM Software GmbH