Addon Development Help - SetBlipTexture()

I’m a software developer, and I’m doing some work on an existing addon. I’m looking for more information about the minimap widget function SetBlipTexture().

From what I’ve been able to learn, Blizzard doesn’t actually document the API for addon developers. So you have to extract reference information from the code itself. But when I export the UI code, the SetBlipTexture() function is not included. In fact, it’s not even used. The only other reference material are some very poorly documented wiki entries.

So I’m thinking that this function is located somewhere else besides the UI code.

For those addon developers out there, how do I find out more about SetBlipTexture()? I’d like to know the specifics of what it does and the parameter it takes. Is it in binary code somewhere, or can I find it as a lua script?

It simply allows you to replace the default texture that contains the small icons that appear on the Minimap.
If you create your own texture you have to keep in mind the correct coordinates in the texture where to draw your icons since that is hard coded.
More info here: wow dot gamepedia dot com/API_Minimap_SetBlipTexture
Cant post links

They don’t specify parameters but I assume it’s just a string with your texture path.
Could try this in game: /api search SetBlipTexture

3 Likes

Go to wow.gamepedia.com and search for SetBlipTexture

Edit: Just noticed Songzee’s link buried in forum requirements.

Thank you for the informative reply Songzee. Unfortunately, the information at gamepedia is (1) user-supplied, (2) lacking in details, and (3) possibly out of date.

A texture that worked pre-8.1 is suddenly no longer working. I’m assuming Blizzard changed something. If they did change something, that fact is not indicated in the gamepedia page.

So I’m looking for reference information that is current and up to date, that has clear and specific information about the parameters and *.blp file requirements.

Unfortunately, from what I’m hearing and from what I’ve read via web searches, it appears that type of information does not exist unless you work as a developer for Blizzard.

Is that correct?

For the blp file requirements you can simply open the existing one in the client, as indicated by the file path on the article, and see where things need to be placed in the texture.
You can extract the file using CASC Explorer by tomrus, google it. And you can convert the blp to a png, there are converters out there that work.
The rest you’ll need to figure out by yourself I’m afraid.

1 Like

So, I’m definitely not a programmer, but I was messing around with the minimap blips today to fix an addon. So, I don’t know if this will help, but I can at least explain my adventures to see if it gives you any inspiration.

I had to replace the minimap blip texture fine in one of the addons I use as 8.1 messed up the icons. I used the command from wowpedia to extract the art files and then found the new version of the texture I was looking for. (In my case it was /Interface/MINIMAP/ObjectIconsAtlas.BLP I needed.)

https://wow.gamepedia.com/Viewing_Blizzard%27s_interface_code

I used the blp conversion tool from WowInterface to convert it to a tga where I could make the edit I needed. I then just moved that new texture in place of the addon’s old texture, and it seems to be working. (The addon was using a .tga texture, so I just left it in that format.)

2 Likes

Udiza, you’re not by any chance the author of the Mappy addon, are you?

No, sorry. I’m not an addon author, just someone willing to tinker a bit. A quick look at curse shows that Mappy is probably doing a lot more than the addon I’m using. I’m just using an addon that changes the low level quest icon to the regular colored one on the minimap.

I suspect the issue is similar as Blizzard did change the texture file for “ObjectIconsAtlas.blp” which will affect any addon uses a custom replacement to that file for their blips. So, replacing any custom blip textures the addon uses with the default one from the extracted art files might work as a stopgap to at least get default blips working with the addon, but it could end up being more complicated than that.

1 Like

For anyone who may be searching this in the future:

I use an addon that replaces the mini-map icons via the SetBlipTexture() call. The icons were all messed up when Blizzard did the 8.1 release.

As I’ve learned in another forum, the icon positions (or indexes) within the *.blp file can be changed without warning by Blizzard. When they do this, any custom *.blp files will need to be re-done, such that the location of your icons in your icon file match the location of the icons in the official Blizzard icon file. That is the overall answer to my problem.

The more immediate answer to my actual question, as best as I understand it, is that Blizzard does not in fact document their “binary” API calls in a way that can be accessed by addon developers. The only stuff you get is their lua/XML interface code, which does not include a large number of functions.

Blizzard are starting to document some of the API mostly starting with systems moving to the C_ framework. You can view what has been done to date using /api in-game (the APIInterface addon makes it a bit easier to use). If you export the default UI, the information is in the Blizzard_APIDocumentation addon.

I don’t know how far it will eventually go or how long it will take.

1 Like

Thank you for pointing this out. I guess the API documentation they provide is better than nothing, but it’s literally just a list of functions, parameters, and return values without any explanation other than the names and types of the various items.

I suppose you could call that “documentation”, but it’s poor documentation by any standard. Let’s hope they improve it as time goes by.