This is Discord Rich Presence plugin made in Union 1.0l for Gothic I and II.
- Download and install Union.
- Download
GothicRichPresence.vdffile from the latest release and place it in<GothicPath>\Data\Plugins\folder. Remember to add Gothic to games detected by Discord if you haven't already.(not necessary)- If for some reason, language of the rich presence is not right, change
Languageentry inSystempack.ini.
You can easily implement this plugin into your mod to change images or handle more worlds.
- Log-In to Discord Developer Portal and go to
Applicationssection. - Create
New Applicationand set a name. This name will be displayed as a title on rich presence and should be namedGothic: Mod Nameor somewhat similar. - Copy
Application ID, it will be needed later.
2. Upload and set your own images for worlds specified later in the config. Additionally some images have constant names, and you need to upload them for proper usage:
- Image with name
menuwill be displayed when player currently is in menu, or in unknown location. - Image with name
info,dayandnightwill be displayed in the bottom-right corner of your location pic, and it contains information about game time. - Image with name
unknownwill be displayed when player is inzennot present in the config. - One image for every
zenin your mod. Those images will be used as a cover when player is in this location. - Remember to also set
App IconandCover Image.
3. Now you need to create a GothicRichPresence.json config file, which you can put right into your .vdf/.mod file in the System\ folder. I advise editing default config that can be downloaded in releases. And don't use zipped .vdf/.mod.
4. Create publickeyoverride and copy APPLICATION ID from Discord Developer Portal as it's value as shown below.
{
"publickeyoverride": "APPLICATION ID",
"strings": {},
"worlds": []
}5. strings object contains translations for general strings used by the plugin. I recommend not to change them.
{
"publickeyoverride": "APPLICATION ID",
"strings": {
"day": {
"eng": "Day",
"pol": "Dzień",
"rus": "День",
"ger": "Tag"
},
"level": {
"eng": "Level",
"pol": "Poziom",
"rus": "ур.",
"ger": "Stufe"
},
"chapter": {
"eng": "Chapter",
"pol": "Rozdział",
"rus": "Глава",
"ger": "Kapitel"
},
"unknownworld": {
"eng": "Unknown Lands",
"pol": "Nieznana Kraina",
"rus": "Неизвестные Земли",
"ger": "Unbekanntes Land"
}
},
"worlds": []
}{
"publickeyoverride": "APPLICATION ID",
"strings": {},
"worlds": [
{
"zen": "orcgraveyard",
"image": "orcgraveyard",
"name": {
"eng": "Orc Graveyard",
"pol": "Cmentarzysko Orków",
"rus": "Кладбище Орков",
"ger": "Orkfriedhof"
}
},
{
"zen": "orctempel",
"image": "orctempel",
"name": {
"eng": "Sleeper Temple",
"pol": "Świątynia Śniącego",
"rus": "Храм Спящего",
"ger": "Tempel des Schläfers"
}
}
]
}-
Each location object must have 2 strings:
zenandimage. -
zenmust be the same as the.zenin game files. -
imageis cover image of that location. You must upload image with same name to Rich Presence Assets at Discord Developer Portal. -
nameis an object containing names for different languages.- Plugin supports all languages that are supported by Union.
- Language is based on
Languagesymbol in[CORE]section fromSystemPack.ini.
Default config
{
"publickeyoverride": "",
"strings": {
"day": {
"eng": "Day",
"pol": "Dzień",
"rus": "День",
"ger": "Tag"
},
"level": {
"eng": "Level",
"pol": "Poziom",
"rus": "ур.",
"ger": "Stufe"
},
"chapter": {
"eng": "Chapter",
"pol": "Rozdział",
"rus": "Глава",
"ger": "Kapitel"
},
"unknownworld": {
"eng": "Unknown Lands",
"pol": "Nieznana Kraina",
"rus": "Неизвестные Земли",
"ger": "Unbekanntes Land"
}
},
"worlds": [
{
"zen": "newworld",
"image": "newworld",
"name": {
"eng": "Khorinis",
"pol": "Khorinis",
"rus": "Хоринис",
"ger": "Neue Welt"
}
},
{
"zen": "oldworld",
"image": "oldworld",
"name": {
"eng": "Valley of Mines",
"pol": "Górnicza Dolina",
"rus": "Долина Рудников",
"ger": "Alte Welt"
}
},
{
"zen": "addonworld",
"image": "addonworld",
"name": {
"eng": "Jharkendar",
"pol": "Jarkendar",
"rus": "Яркендар",
"ger": "Jharkendar"
}
},
{
"zen": "dragonisland",
"image": "dragonisland",
"name": {
"eng": "Irdorath",
"pol": "Irdorath",
"rus": "Ирдорат",
"ger": "Irdorath"
}
},
{
"zen": "world",
"image": "world",
"name": {
"eng": "Penal Colony",
"pol": "Kolonia Karna",
"rus": "Колония",
"ger": "Strafkolonie"
}
},
{
"zen": "oldmine",
"image": "oldmine",
"name": {
"eng": "Old Mine",
"pol": "Stara Kopalnia",
"rus": "Старая Шахта",
"ger": "Alte Mine"
}
},
{
"zen": "freemine",
"image": "freemine",
"name": {
"eng": "Free Mine",
"pol": "Wolna Kopalnia",
"rus": "Свободная Шахта",
"ger": "Freie Mine"
}
},
{
"zen": "orcgraveyard",
"image": "orcgraveyard",
"name": {
"eng": "Orc Graveyard",
"pol": "Cmentarzysko Orków",
"rus": "Кладбище Орков",
"ger": "Orkfriedhof"
}
},
{
"zen": "orctempel",
"image": "orctempel",
"name": {
"eng": "Sleeper Temple",
"pol": "Świątynia Śniącego",
"rus": "Храм Спящего",
"ger": "Tempel des Schläfers"
}
}
]
}