#Regions of Tyria (BlishHUD module port)

1 messages · Page 1 of 1 (latest)

candid wolf
#

Working space for an addon that displays the current region whenever you enter a new region - just like other, real games like Dark Souls, Legends of Zelda and many more do!

State of progress: Regions on PvE are rendered
#1241749062710071436 message

GitHub: https://github.com/HeavyMetalPirate/GW2Nexus-RegionsOfTyria

Current issues:

  • Fonts loading (state of progress: #1241749062710071436 message, Investigations: #1241749062710071436 message)
  • Regions in competitive modes not working because mumble doesn't send global coordinates
  • localization hardcoded to en on startup due to no detecting the client language yet
  • settings not stored and loaded so always on default values
  • Map loaded not from API but from pre compiled JSON (this is because static linking and shipping openssl in yhirose/cpp-httplib breaks unload => can't access gw2 api via REST calls at the moment), context: #🧰┃nexus message

TODO: proper intro post

#

Current issue: Fonts loading: #🧰┃nexus message

I feel like I'm missing something. Still trying to add custom fonts to ImGui without success...

void Renderer::loadFonts(ImGuiIO& io) {
    if (fontsLoaded) return;
    // Load fonts
    fonts = std::map<std::string, ImFont*>();

    std::string pathFolder = APIDefs->GetAddonDirectory(ADDON_NAME);
    fonts.emplace("fontCharr", loadFont(io, pathFolder + "/font_charr.ttf", 48.0f));
    fonts.emplace("fontHuman", loadFont(io, pathFolder + "/font_human.ttf", 48.0f));
    fonts.emplace("fontSylvari", loadFont(io, pathFolder + "/font_sylvari.ttf", 48.0f));
    fonts.emplace("fontNorn", loadFont(io, pathFolder + "/font_norn.ttf", 48.0f));
    fonts.emplace("fontAsura", loadFont(io, pathFolder + "/font_asura.ttf", 48.0f));
    
    // If we do any of these here we basically destroy everything Nexus has set up. 
    // If we don't do this here, our own fonts are not initialized and render() crashes once I try to push the font because "IsLoaded = false".
    //io.Fonts->Build();
    //ImGui_ImplDX11_InvalidateDeviceObjects();
    //ImGui_ImplDX11_CreateDeviceObjects();

    fontsLoaded = true;
}

ImFont* Renderer::loadFont(ImGuiIO& io, std::string path, float size) {
    ImFont* newFont = io.Fonts->AddFontFromFileTTF(path.c_str(), size);
    if (newFont == nullptr) {
        // TODO log error
        return nullptr;
    }
    return newFont;
}

I've tried calling this in AddonLoad, I've tried with PreRender... still always the same issue as described in that comment.
I'm kinda close to launching my own ImGui with blackjack, hookers and my fonts

#

Funny sideeffect if you comment in any of the three lines in loadFonts:

dark wagon
#

Probably relevant. This is basically how my render logic works:

void Render()
{
    PreRenderCallbacks(); // <- This is where your stuff is called.

    ImGui_ImplWin32_NewFrame();
    ImGui_ImplDX11_NewFrame();
    ImGui::NewFrame();

    RenderCallbacks(); // <- This is where your stuff is called.

    ImGui::EndFrame();
    ImGui::Render();
    Renderer::DeviceContext->OMSetRenderTargets(1, &Renderer::RenderTargetView, NULL);
    ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData());

    PostRenderCallbacks(); // <- This is where your stuff is called.
}
#

just so you know where newframe/endframe and what not happens

candid wolf
#

appreciated, helps understanding how my code relates to other peoples problematic code

dark wagon
#

and OptionsRender is just another subrender inside of RenderCallbacks(), but yea

#

the documentation isn't the best, so it's probably easier to just ask me LUL

#

but I will fix it soon

candid wolf
#

oh the documentation was helpful a lot here already. I tried moving the font loading around addonload and prerender. didn't change a lot but just knowing I could is big

candid wolf
#

Slight progress - now it only breaks my addon and not the entirety of Nexus 😄

void Renderer::preRender(ImGuiIO& io) {
    if (!fontsLoaded) {
        // Load fonts into a custom atlas
        fonts = std::map<std::string, ImFont*>();

        //ImFontAtlas nexusAtlas = *io.Fonts;
        // initialize with nexusAtlas as base, hopefully
        newFontAtlas = new ImFontAtlas(); // nexusAtlas);

        std::string pathFolder = APIDefs->GetAddonDirectory(ADDON_NAME);
        fonts.emplace("fontCharr", loadFont(io, pathFolder + "/font_charr.ttf", 48.0f));
        fonts.emplace("fontHuman", loadFont(io, pathFolder + "/font_human.ttf", 48.0f));
        fonts.emplace("fontSylvari", loadFont(io, pathFolder + "/font_sylvari.ttf", 48.0f));
        fonts.emplace("fontNorn", loadFont(io, pathFolder + "/font_norn.ttf", 48.0f));
        fonts.emplace("fontAsura", loadFont(io, pathFolder + "/font_asura.ttf", 48.0f));

        newFontAtlas->Build();
        fontsLoaded = true;
    }

    defaultFontAtlas = io.Fonts;
    io.Fonts = newFontAtlas;

    ImGui_ImplDX11_InvalidateDeviceObjects();
    ImGui_ImplDX11_CreateDeviceObjects();
}

void Renderer::postRender(ImGuiIO& io) {
    if (defaultFontAtlas != nullptr) {
        io.Fonts = defaultFontAtlas;

        ImGui_ImplDX11_InvalidateDeviceObjects();
        ImGui_ImplDX11_CreateDeviceObjects();
    }
}

I also tried adding all the fonts from the one you initialize since there's like 19 in already, but that way on build I get an error with the context

#

curiously nothing renders in my addon except this one here:

#
ImGui::PushFont((ImFont*)NexusLink->Font);
ImGui::Text("Map Details Frame");
ImGui::PopFont();````
#

so it looks like it's not only the Font atlas I need to rebuild but the entire context?

#

oh.. it looks like the frame does get created in the background. I can drag that text around from a big area that sort of resembles the original window if it would render fully

#

current render that should use the five different fonts here

void Renderer::render() {
    if (ImGui::Begin("MapdetailsFrame", (bool*)0, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoCollapse | ImGuiWindowFlags_NoResize))
    {
        ImGui::PushFont((ImFont*)NexusLink->Font);
        ImGui::Text("Map Details Frame");
        ImGui::PopFont();
        //ImGui::Text(std::to_string(currentMapInfo->getId()).c_str());
        //ImGui::Text(currentMapInfo->getContinentName().c_str());
        //ImGui::Text(currentMapInfo->getName().c_str());
        // 2DShape?

        MapData* currentMap = currentMapService.getCurrentMap();
        if (currentMap != nullptr) {
            ImGui::PushFont(fonts["fontCharr"]);
            ImGui::Text(("Current Map: " + currentMap->name).c_str());
            ImGui::Text(("Current Sector: " + currentMap->currentSector.name).c_str());
            ImGui::PopFont();

            ImGui::PushFont(fonts["fontHuman"]);
            ImGui::Text(("Current Map: " + currentMap->name).c_str());
            ImGui::Text(("Current Sector: " + currentMap->currentSector.name).c_str());
            ImGui::PopFont();

            ImGui::PushFont(fonts["fontSylvari"]);
            ImGui::Text(("Current Map: " + currentMap->name).c_str());
            ImGui::Text(("Current Sector: " + currentMap->currentSector.name).c_str());
            ImGui::PopFont();

            ImGui::PushFont(fonts["fontNorn"]);
            ImGui::Text(("Current Map: " + currentMap->name).c_str());
            ImGui::Text(("Current Sector: " + currentMap->currentSector.name).c_str());
            ImGui::PopFont();

            ImGui::PushFont(fonts["fontAsura2"]);
            ImGui::Text(("Current Map: " + currentMap->name).c_str());
            ImGui::Text(("Current Sector: " + currentMap->currentSector.name).c_str());
            ImGui::PopFont();
        }
        else {
            ImGui::Text("No current map detected. :(");
        }

    }
    ImGui::End();
}

#

which brings me to the conclusion that "draggable" area is where the fonts are being drawn to since auto resize is set

#

but they are not actually drawn for some reason

#

oh. it did not break the addons frame but it did break the other frames like options, debug log etc. 😄

#

Before Load:

dark wagon
candid wolf
#

after load

#

ye idk what happened there kek

dark wagon
#

I don't think I maintain a pointer to the default font

#

so you probably break it because of that?

#

because there's no "active" font anymore?

#

let me check

candid wolf
#

quite possible

#

I tried copying your fontatlas:

ImFontAtlas nexusAtlas = *io.Fonts;
// initialize with nexusAtlas as base, hopefully
newFontAtlas = new ImFontAtlas(nexusAtlas);
#

game didn't like that

#

at all

dark wagon
#

I remember there being something like "ImGui::SetCurrentFont

#

the stylised (e.g. addons) windows uses PushFont/PopFont

candid wolf
#

push and pop is also what I am using in an attempt to swap it

#

what I don't get is why the nexus default font is still available but the rest of the styles get lost entirely

#

at least for the frames. compass for example renders fine now, that one broke too on my earlier attempts at rebuilding the preconfigured atlas

dark wagon
#

not sure, what does GetFont return?

#

is it a nullptr?

candid wolf
#

doesn't seem so. added

ImGui::PushFont((ImFont*)NexusLink->Font);
if (ImGui::GetFont() == nullptr) {
    APIDefs->Log(ELogLevel_TRACE, ADDON_NAME, "NexusLink->Font = nullptr");
}
#

I added this after basically every pushfont call and there was no log message

dark wagon
#

do it outside of pushfont

#

basically at the beginning of Render

#

because PushFont should obviously push a font

#

but I'm curious if outside of that, the font stays null

#

(after you rebuilt)

candid wolf
#

ye... here is a bit more:

ImGui::PushFont((ImFont*)NexusLink->Font);
if (ImGui::GetFont() == nullptr) {
    APIDefs->Log(ELogLevel_TRACE, ADDON_NAME, "NexusLink->Font = nullptr");
}
ImGui::Text("Map Details Frame");
ImGui::PopFont();

MapData* currentMap = currentMapService.getCurrentMap();

if (currentMap != nullptr) {
    // Default Font
    if (ImGui::GetFont() == nullptr) {
        APIDefs->Log(ELogLevel_TRACE, ADDON_NAME, "Default font = nullptr");
    }
    ImGui::Text(std::to_string(currentMap->id).c_str());
    ImGui::Text(currentMap->continentName.c_str());
    ImGui::Text(currentMap->name.c_str());
    ImGui::Text(currentMap->currentSector.name.c_str());
.....```
#

so basically default font should also not be a nullptr here

dark wagon
#

ah

#

DefaultFont does not report nullptr?

candid wolf
#

nope

dark wagon
#

but doesn't render either

candid wolf
#

also nope

#

along with the other stuff not rendering, that's a bit... disturbing

dark wagon
#

can you send me the dll?

candid wolf
#

sure

#

unload is a bit wonky if you unload while it still initializes

#

I haven't fixed the unload while initialize thread is still active crash pain

dark wagon
#

what's the font file path?

#

for your custom font

candid wolf
#

should unpack its fonts into addons/TyrianRegions

#

        std::string pathFolder = APIDefs->GetAddonDirectory(ADDON_NAME);
        fonts.emplace("fontCharr", loadFont(io, pathFolder + "/font_charr.ttf", 48.0f));
        fonts.emplace("fontHuman", loadFont(io, pathFolder + "/font_human.ttf", 48.0f));
        fonts.emplace("fontSylvari", loadFont(io, pathFolder + "/font_sylvari.ttf", 48.0f));
        fonts.emplace("fontNorn", loadFont(io, pathFolder + "/font_norn.ttf", 48.0f));
        fonts.emplace("fontAsura", loadFont(io, pathFolder + "/font_asura.ttf", 48.0f));

basically

dark wagon
#

doesn't for me, it cannot find them

#

I placed mine manually for now

#

very interesting

candid wolf
#

the "no text in menu" is also something I had

dark wagon
#

the textures for font are nullptr

#

and the rest of the font is so massive because there's probably a popfont missing?

#

same thing here, the text exists but is null

candid wolf
#

maybe? tbh I had hoped the resources would unpack for you so that already is weird pain

#

the weird thing is I popped the dll that is in my addons directory

#

and I get the fonts on some elements

#

the side effects are... something

#

loaded squad manager

#

then loaded learning project

dark wagon
#

squad manager bases the icons off font size

candid wolf
#

and if there is no font it's just the png I reckon

dark wagon
#

yea, I wonder why it reports it as so big then

candid wolf
#

maybe my resolution? 1920x1080

#

and if it's the default size of the png?

#

I'm gonna put "changing font" into the "currently cursed" category

#

or rather "adding custom font"

dark wagon
#

yea

#

use the NexusLink->FontBig and Font ones

#

until I give you a fix for custom ones

#

or you somehow manage it

candid wolf
#

I will just try to do more cursed stuff

#

it's a learning experience mostly after all

#

also, thanks for the assistance, feedback and holding hands, much appreciated

#

oh, and one more request: did the map jsons extract on addonload at least? I have a suspicion that font unpacking is bugged rn because of a bad flag check, might have something like this in your nexus log:

2024-05-19 17:21:56     [TyrianRegions]     [INFO] Maps.zip extracted from module.
2024-05-19 17:21:56     [TyrianRegions]    [DEBUG] E:\Steam\steamapps\common\Guild Wars 2\addons\TyrianRegions\de.json
2024-05-19 17:21:56     [TyrianRegions]    [DEBUG] E:\Steam\steamapps\common\Guild Wars 2\addons\TyrianRegions\en.json
2024-05-19 17:21:56     [TyrianRegions]    [DEBUG] E:\Steam\steamapps\common\Guild Wars 2\addons\TyrianRegions\es.json
2024-05-19 17:21:56     [TyrianRegions]    [DEBUG] E:\Steam\steamapps\common\Guild Wars 2\addons\TyrianRegions\fr.json
2024-05-19 17:21:56     [TyrianRegions]    [DEBUG] E:\Steam\steamapps\common\Guild Wars 2\addons\TyrianRegions\zh.json
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Extracted data from Maps.zip
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Resource already exists, and should not be overwritten: font_charr.ttf
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Resource already exists, and should not be overwritten: font_human.ttf
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Resource already exists, and should not be overwritten: font_sylvari.ttf
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Resource already exists, and should not be overwritten: font_norn.ttf
2024-05-19 17:21:56     [TyrianRegions]     [INFO] Resource already exists, and should not be overwritten: font_asura.ttf
dark wagon
#

everything except the 5 fonts was auto created

candid wolf
#

yeah, bad condition on my check then

candid wolf
#

gave up on the font thing for now, took some time and some sanity back cleaning up stuff, finally making that github repo and figuring out rough text position
FontBig is really... not as big as I expected kek

#

next step is figuring out how to fade it in and out once a sector change has been detected

dark wagon
#

yea don't lose your mind over the font

#

we'll figure something out together

#

for the animations in nexus (e.g. hovering over quick access)

#

I have a thread that performs animations

#

let me share it

candid wolf
#

I already had something in mind, curious how that compares to yours

dark wagon
#
std::thread        AnimationThread;
bool            IsAnimating            = false;
bool            IsFadingIn            = false;
bool            IsHovering            = false;

void Fade()
{
    IsAnimating = true;
    while (IsAnimating)
    {
        if (IsFadingIn)                { Opacity += 0.05f; }
        else                        { Opacity -= 0.05f; }

        if (Opacity > 1)            { Opacity = 1.0f; IsAnimating = false; }
        else if (Opacity < 0.5f)    { Opacity = 0.5f; IsAnimating = false; }

        Sleep(35);
    }
}

then somewhere in my render logic:

bool newHoverState = ImGui::IsWindowHovered() || isActive || isHoveringNative;
if (newHoverState != IsHovering)
{
    if (newHoverState) { IsFadingIn = true; }
    else { IsFadingIn = false; }

    if (!IsAnimating)
    {
        AnimationThread = std::thread(Fade);
        AnimationThread.detach();
    }
}
IsHovering = newHoverState;

this second part is a bit confusing, because basically when clicking a button, when hovering nexus buttons or when hovering native (gw2) buttons I want to check

but in reality what you'll have to do is check -> region crossed? yes -> is already animating? no -> start animation thread

#

and so for example when you stop hovering, I just change the "IsFadingIn" to false, and the thread keeps running until it reaches the desired opacity

candid wolf
#

yeah this is pretty much my gameplan as well, was curious if that would work with imgui, and the answer apparently is yes

dark wagon
#

yep

candid wolf
#

(also sorry if there's audio in this, apparently nvidia captures audio as well)

#

the tweaks:

void fade() {
    // fade in
    while (true)
    {
        opacity += 0.05f;
        if (opacity > 1) { 
            opacity = 1.0f; 
            break;
        }

        Sleep(35);
    }
    Sleep(3000); // sleep first so the text stays a little
    // fade out
    while (true)
    {
        opacity -= 0.05f;

        if (opacity < 0.0f) { 
            opacity = 0.0f; 
            break;
        }

        Sleep(35);
    }
    animating = false;
}

Basically I need a fade in -> wait -> fade out routine so I can drop that IsFadingIn flag entirely. and I could probably drop the flag for IsAnimating too because you can ask if a thread is joinable (= running) or not (= idling) if my understanding is correct

#

I might go ahead and fine tune it to cancel the current animation and start a new one once a sector change has been detected

#

because right now when you cross multiple sectors during the 3000 sleep the text will update but the animation will continue like it's still the first which obviously could lead to weird behavior for the gamer

dark wagon
#

ooo

#

that already looks great

#

next up I'll figure what I can do regarding fonts

sour citrus
candid wolf
#

Multi threading is hard pain

candid wolf
#

I suspect the global position for competitive modes is not that easily accessible?

dark wagon
#

nah it's disabled in PvP

#

(and WvW)

candid wolf
#

shame. is player position working at least or is that also turned off?

dark wagon
#

player position works yea

#

if you go into Menu -> Debug

candid wolf
#

so I can do the unhinged conversion thing and it should work, nice

dark wagon
#

there's a checkbox at the top "show mumble overlay"

#

I bound mine to Alt + F3 for easy access

#

you can see which values are nulled

candid wolf
#

oh yeah I always forget that's there

dark wagon
#

but it's only those few

candid wolf
#

yeah, I think short from starting my own ImgUi context I am now out of ideas. even resorted to asking chatgpt and all it came up with was basically "here is how you add the font" (I know this already) "and here is how you add it to the current device. now good luck finding out how to access the device"

#

so I guess I'm gonna put that idea on hold until you greenlight me to try. no rush on that, base project is working and I'm currently cleaning and polishing for a potential release

dark wagon
#

seriously

#

put it on hold

#

make everything work beside that

#

and we figure something out together

candid wolf
#

yea yea, I just had another couple hours of unplanned time and figured that's the best way to spend it. guess I was wrong lol

candid wolf
#

okay, I have cleaned up the most important stuff. waiting for the release tonight to precompile the new map infos then I'd be ready for a beta release within the next couple days. are there any documented steps on how to proceed besides pinging you?

dark wagon
#

Important things are:
Have a Github release with the format v1.2.3.4 or just 1.2.3.4 for release detection

If you want it listed in the library:
I do that manually

#

there's nothing else really to know

candid wolf
#

Reasonable. Will ping you once I have it set up then, thanks

dark wagon
#

yea and if you want your own channel

candid wolf
dark wagon
#

adding it

#

can you please fill out this template for the API

{
        "id": decimal_id,
        "name": "name",
        "author": "author",
        "description": "desc",
        "download": "https://github.com/HeavyMetalPirate/GW2Nexus-RegionsOfTyria"
    }
candid wolf
#

id from my addon def?

dark wagon
#

yes

candid wolf
#
{
        "id": -126452345,
        "name": "Regions of Tyria",
        "author": "HeavyMetalPirate.2695",
        "description": "Displays the current sector whenever you cross borders, much like your favorite (MMO)RPG does. Spiritual port of the BlishHUD module.",
        "download": "https://github.com/HeavyMetalPirate/GW2Nexus-RegionsOfTyria"
    }
dark wagon
#

tbf I'd remove the "Spiritual port of the BlishHUD module." part

#

put it on the repo imo

candid wolf
#

sounds good to me

dark wagon
#

I think people don't really "care" about that when installing an addon where the original idea comes from

candid wolf
#

just wanna give credit where it's due, but repo probably is sufficient yeah

dark wagon
#

but it's nice to give credit on a proper full readme etc

#

maybe soon when I extend the descriptions you can put it back

dark wagon
#

just giving my two cents

candid wolf
#

yeah remove it, makes it a bit shorter, already pretty lengthy

dark wagon
#

should be live, I'll create a channel for you

candid wolf
#

lovely, thanks a lot, and also for the assistance getting here

dark wagon
#

I also left the sentence

#

because I'm a pepega

#

let me fix that lol

candid wolf
#

haha

dark wagon
#

wait nah I didn't

#

you have it in the module

candid wolf
#

oh yeah, right

#

I'm gonna remove it and create a fix release in a bit

dark wagon
#

no rush really lmao

candid wolf
#

yeye I am currently in WvW anyways

#

no time to fix strings when there's plebs to farm

dark wagon
#

#regions-of-tyria

#

works very well

#

I like it a lot

#

waiting for the day someone does a check if (CharacterName == "I Facetank Bosses") { DoALittleTrolling(); }

candid wolf
#

I'm working on another idea whenever I'm bored doing region stuff so maybe?

#

it's another blish hud idea steal port and also would profit from custom fonts a bit kek

candid wolf
#

making progress on the custom fonts part

#

(kinda)

#

apparently, if you call io.Fonts->Build you destroy all textures. but if you then rebuild new textures entirely the previous fonts get kinda lost

#

I have the strong suspicion that this might be the problematic bit:

// TODO get hold of the global ID3D11ShaderResourceView somehow?
ID3D11ShaderResourceView* g_pFontTextureView = nullptr; // ????
hr = device->CreateShaderResourceView(pTexture, &srvDesc, &g_pFontTextureView);
dark wagon
#

if you can manage to add more fonts at runtime

#

I can export a function for you to call

#

and implement your logic

candid wolf
#

I'm still investigating if that's the issue or not. I should be able to grab the ShaderResourceView from somewhere

dark wagon
#

if yes, then from the font atlas

candid wolf
#

shouldn't it be in the d3d11 device or its context?

dark wagon
#

in general yes

#

but I doubt you can get it from there lol

#

check imgui internals

candid wolf
#

already on it

candid wolf
#

Hmmmm... Hmm
the first time my addons PreRender is called is before the d3d11 global device is set up..

#

my early attempts were with ImGui_ImplDX11_InvalidateDeviceObjects()

#

and that method starts like

#
void    ImGui_ImplDX11_InvalidateDeviceObjects()
{
    if (!g_pd3dDevice)
        return;
#

and g_pd3dDevice is always null

#

this comes from #include "../imgui/imgui_impl_dx11.h" ... it's probably not a good idea to use that?

dark wagon
#
void Render()
{
    PreRenderCallbacks(); // <- This is where your stuff is called.

    ImGui_ImplWin32_NewFrame();
    ImGui_ImplDX11_NewFrame();
    ImGui::NewFrame();

    RenderCallbacks(); // <- This is where your stuff is called.

    ImGui::EndFrame();
    ImGui::Render();
    Renderer::DeviceContext->OMSetRenderTargets(1, &Renderer::RenderTargetView, NULL);
    ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData());

    PostRenderCallbacks(); // <- This is where your stuff is called.
}

pseudo code for nexus internal renderer: https://github.com/RaidcoreGG/api-cdi/tree/main/AddonHost/API#using-events-keybinds-resources-and-all-the-other-good-stuff

#

so you call before DX11_NewFrame()

candid wolf
#

which is where I need to add the fonts to begin with. can't touch the font atlas while a new frame is active

dark wagon
#

then call the necessary imgui functions yourself

#

you have the context

candid wolf
#

yeah

#

atm I'm at reimplementing the create fonts functions with the caveats that I am still looking for some pointers to the old objects

candid wolf
#

I think I know what needs to happen if you wanna fix it in Nexus... mods need to be able to call ImGui_ImplDX11_InvalidateDeviceObjects managed by Nexus.

#

If I include the header myself I always get like a mod internal version that isn't initialized in any way

#

I will continue digging tomorrow or some time next week to see if I can get it under control on mod side

#

but it's a bit weird because I still have no idea where to find everything I need to replace / reset

hoary mural
#

After last update to arcdps whenever Regions of Tyria is enabled displays a weird font on arcdps extension (in the image is BuildPad, previously was on Boon Table as well). Not sure if it's related but posting here because I don't have a Github account.

candid wolf
#

Nothing I can do about if these add-ons pull the wrong fonts for their display

hoary mural
granite relic
#

I dont know if I'm just insane or not but it seems every time the region text pops up my Shift + [blank] inputs just stop working. Can provide video evidence but all problems go away when the region text goes away/I disable the addon.
-# I'm also sorry if this has been talked about already and I just cant see it in this thread.

candid wolf
#

can't reproduce this I'm afraid. I have my guild panel on shift+b and can just open it fine

granite relic
#

PaimonThink Let me get a video then I guess.

candid wolf
#

I mean I believe it's happening on your end. I am saying I can't reproduce it, and I do not temper with keybinds at all, so I have no idea and no means to figure it out

granite relic
#

PaimonThink hm. Upon trying to recreate, I think it might just be another issue like you said and I'm sorry for bothering you.
It seems to be the first couple of seconds on region change, regardless of if the mod is loaded or not. Either that or some other wizardry I can't seem to figure out. I just equated it to the mod as it seemed to go away when I disabled it and tried to recreate it last night.

candid wolf
granite relic
ruby gazelle
#

Is it possible to add a feature/option to "Show Map IP Address on Minimap" ?

  • Similar to how we can show sector name at the top of the minimap, maybe we can show map ip address at the bottom
candid wolf
#

feasible, yes. then again I have limited time and I am not spending a lot of that on gw2 these days. but this addon is open source so contributions are welcome, probably at the cost of sanity considering the spaghetti code in this addon xdd

thin whale
#

@errant inlet Will u also be taking over maintenance of this mod? If so could u add an option to set a cooldown to the name popping up on the screen (for example only once every 15 or 30 seconds) that way if you're playing in the border area between two zones u don't have the names constantly appearing (this happens a lot when doing storms of winter meta for example)

errant inlet
#

Hey, thanks for heads up! Well, given my skill set (and to be frank interests as well) I'd prefer to focus on the RE based addons, which this one is not.

#

But... I might give it a look if no one else finds time until then

tidal roost
#

@errant inlet Sorry for the ping but i was wandering whether i could request something? Only if u find the time since i know that ur not committed or anything. But i was just wandering if we could get the race specific fonts based on the region rather than the character race.

So like if i go to ashford its a charr font, if i go to queensdale its a human font?

errant inlet
#

oh man, sorry its been over a month and I still haven't had time toa ctually look into it :/

tidal roost
#

nah its alright bro, it was a shot in the dark regardless xD

errant inlet
#

sorry work still piles up and I can't really promis anything atm, my current work/hobby plan is:

  1. TWC release
  2. internal library cleanup
  3. Dude where are my tools rewrite
  4. Regions of Tyria probably...?
tidal roost
#

TWC? im guessin thats a plugin ur workin on. Anyway i appreciate u talkin to me, maybe ill learn to code for modules and see what i can do. Surely it would just be a database that reads the name of the region and then flags a signal to change the font?

#

or a list

errant inlet
#

but yeah, its probably that this addon is not using any Reverse Engineering soooooo

#

the entry level is much lower than others xD

#

well, maybe not "much" but lower

tidal roost
#

good thing or bad thing? XD
I got alot on my plate regardless so i dont even know if i could do that but yeah

#

ty for lookin at this chat tho (ig i pinged u but w/e)

errant inlet
#

good thing, RE isn't as hard sa one would imagine, same with software engineering