PSOBB Addon Plugin (Lua UI addons)

The drop checker is the character reader. Change "Character" to "Floor".
To be fair, there is a DropChecker addon but that's not mine.

On another note, is it at all possible to remove the headers of the tabs in the UI so that it could look alot more cleaner without having the tabs clipped off the screen up on the top?
I see you can set the background alpha of the window to 0.0 (transparent) and it should not show the title but I think that will also remove the actual window background (gray stuff).
 
You'd have to go into the lua code and find every call to imgui.Begin("...") to replace it with imgui.Begin("...", nil, "NoTitleBar").
That works, thanks! <3
ZQWRjVn.png
 
Is it possible to change the opacity on these add on windows? If so, how?
 
Is it possible to change the opacity on these add on windows? If so, how?
It doesn't seem to be as easy as the title bar thing, but here's the easiest way I found using Monster HP as an example...

-- Set window alpha
imgui.PushStyleVar("Alpha", 0.3)

-- Create the window

imgui.Begin("Monsters")

-- Set alpha of window contents
imgui.PushStyleVar("Alpha", 1.0)

imgui.SetWindowFontScale(cfg.fontSize)
PrintMonsters()

-- Important! Must pop style vars
-- or the game will literally crash
imgui.PopStyleVar()

imgui.End()
imgui.PopStyleVar()
 
Last edited:
Thought so. I don't have a Windows XP system to test with, but it looks like there's probably a bug in the dinput8 wrapper plugin that makes it impossible to read Unicode strings on a Windows XP system. Give me a few minutes and I can send you a new version that will hopefully fix it.

EDIT: Here it is. You'll need to download the zip file, extract the dinput8.dll assembly, and place it in the directory that contains your PSO installation. This will replace the one that you downloaded from Eidolon's repository. Hopefully it works for you.
https://github.com/StephenCWills/psobbaddonplugin/releases/tag/v0.3.3-xp
 
Last edited:
@staphen Is that block of code supposed to be added into one of the Lua files, or is that already somewhere I'm supposed to just edit?

I was searching through all the files yesterday before I posted and could not find anything like that.
 
@staphen Is that block of code supposed to be added into one of the Lua files, or is that already somewhere I'm supposed to just edit?

I was searching through all the files yesterday before I posted and could not find anything like that.
The code is in init.lua for the Monster HP addon. I went back to my previous post and colored everything I added in red. The black lines should already be in the init.lua script.
 
I've updated the bottom of the OP with the list of all the known addons (with permission from the OP to edit). They'll link the master.zip so people can just extract them into their addon folder for the less tech savvy, unless there's instructions on your Github page, in which it links to that.
 
I have some questions about Imgui (and I'm really bad a coding :wacko:):
  1. How can I remove this
    HVm42Rq.png
    and set a fixed dimension, if that's possible ?
  2. @tornupgaming How can I remove the text under the xp bar ? (so it doesn't show the slider, for A E S T H E T I C reasons)
  3. Again for xp bar, is it possible to reduce the size of the xp bar ? And change its color, too ?
  4. Last, can I change the background color of all the addons ? To match with my HUD. :D
 
Last edited:
I have some questions about Imgui (and I'm really bad a coding :wacko:):
  1. How can I remove this
    HVm42Rq.png
    and set a fixed dimension, if that's possible ?
  2. @tornupgaming How can I remove the text under the xp bar ? (so it doesn't show the slider, for A E S T H E T I C reasons)
  3. Again for xp bar, is it possible to reduce the size of the xp bar ? And change its color, too ?
  4. Last, can I change the background color of all the addons ? To match with my HUD. :D
Well, I wasn't really expecting to be teaching a class on imgui tweaks here, but I guess I don't mind.
  1. Pretty much the same as the "NoTitleBar" change: imgui.Begin("Experience Bar", nil, "NoResize")
    And if you'd like to combine it with "NoTitleBar": imgui.Begin("Experience Bar", nil, {"NoTitleBar", "NoResize"})
    You can change the size of the window by modifying the imgui.ini file, but it's also possible to do it with code by putting this before the call to imgui.Begin(): imgui.SetNextWindowSize(160, 50)
  2. Find this line: imgui.Text(string.format("Lv %i %i/%i", myLevel + 1, thisLevelExp, nextLevelexp))
    Remove it or replace it with: -- imgui.Text(string.format("Lv %i %i/%i", myLevel + 1, thisLevelExp, nextLevelexp))
  3. Find this line: imgui.ProgressBar(progress)
    You can add width and height by putting them inside the parentheses: imgui.ProgressBar(progress, 120, 10)
    To have the width scale with the window size, use -1: imgui.ProgressBar(progress, -1, 10)

    To change the font size inside the progress bar:
    imgui.SetWindowFontScale(0.8)
    imgui.ProgressBar(progress)
    imgui.SetWindowFontScale(1.0)


    And to change the color, find this line: imguiProgressBar(levelProgress, 0.0, 0.7, 1.0, 1.0)
    Then tweak the first three numbers (r,g,b): imguiProgressBar(levelProgress, 1.0, 0.0, 0.0, 1.0)

  4. It doesn't look like it would be easy. As far as I can tell, the lua implementation of imgui doesn't support some of the data structures used by the imgui API, and one of those structures is the ImGuiStyle structure that handles colors and spacing and such. I think it would be necessary to modify Eidolon's plugin to support style changes like this.

    EDIT: Oops, spoke too soon. You can even use this as an alternative to the window transparency code I posted earlier.
    imgui.PushStyleColor("TitleBg", 0.0, 0.0, 1.0, 0.3) -- r,g,b,a
    imgui.PushStyleColor("WindowBg", 0.0, 1.0, 0.0, 0.3) -- r,g,b,a

    imgui.Begin(...)
    ...
    imgui.End()
    imgui.PopStyleColor()
    imgui.PopStyleColor()
 
Last edited:
This is getting to be hardcore lmao. PSOers really like their, as Jyuki put it, A E S T H E T I C S.

The problem is having to redo this every time you have to update your addons.
 
This is getting to be hardcore lmao. PSOers really like their, as Jyuki put it, A E S T H E T I C S.

The problem is having to redo this every time you have to update your addons.

Well, it's an old game so we try our best to make it looks as good as it can get. :D

Well, I wasn't really expecting to be teaching a class on imgui tweaks here, but I guess I don't mind.
...

Thanks a bunch! Really appreciate it.
 
This is getting to be hardcore lmao. PSOers really like their, as Jyuki put it, A E S T H E T I C S.

The problem is having to redo this every time you have to update your addons.
I guess as a simpler alternative for making global style changes, you can put them in the on_present() function of addons/psointernal/init.lua. It should make things quite a bit easier when updating individual addons.

local function on_present()
imgui.PushStyleColor("TitleBg", 0.0, 0.7, 0.0, 0.3)

for a, v in pairs(present_hooks) do

if (v.enabled) then
local status, ret = xpcall(v.fn, debug.traceback)
if (not status) then

print('Addon ' .. a .. ' present handler errored; disabling addon')
pso.error_handler(ret)
set_addon_enabled(a, false)
end
end
end

imgui.PopStyleColor()
end
 
Last edited:
seeing as how i for some reason been tryin for 2 hours to get these to work. would someone make a step by step process on how to install it all. im clearly doing something wrong. with steps in numbered order and links. (sorry to be a newb, asking a lot xD)
 
Where do you get stuck?
The base framework instructions are here.
And the addons I made are here.

Instructions for both are pretty clear, IMO.
 
ive no idea. i tried following it. downloaded n unzipped everything where i thought it all went. . ill give it another clean slate go.
 
Back
Top