|
Jingle - Notifications for nearby targets
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2024-02-12 12:44:14
Presenting: Jingle
Plays a sound and displays a chat notification when a target (player, mob, or NPC) is nearby.
Download from Github repo
(Make sure to get the /data/sounds folder!)
Features
Tells you distance and direction to target when found.
3 types of targets:
- Permanent - Found in all zones.
- Zone - Only found within a specified zone.
- Temporary - Only found until removed or you change zones.
Plays only once until the target moves out of range again.
Works using names, IDs, or Hex IDs (great for NM placeholders).
Specify an optional specific sound to play for each target.
- Plays the default.wav sound if no sound specified.
Will play any .wav file you save to the /data/sounds folder.
Default Targets
These targets are automatically added when first loaded.
This started with a joke about needing to find a certain character on our server that bazaars low priced food, and needing an ice cream truck jingle to play when they run by. And then :lightbulb: wait I can make that. We quickly came to realize that this would be fantastic for Sortie, and so I've included some c/p that you can put into the settings file for Sortie stuff. Have fun!
Valefor.Philemon
Server: Valefor
Game: FFXI
Posts: 578
By Valefor.Philemon 2024-02-12 13:09:09
I need something that notifies me whenever Pomupomu is online and anywhere besides Sortie, Odyssey, or his Mog Garden. Get on it!
[+]
[+]
By Keyser 2024-02-12 13:20:31
I need something that notifies me whenever Pomupomu is online and anywhere besides Sortie, Odyssey, or his Mog Garden. Get on it! //jingle add pomupomu ice_cream_truck is probably the closest we're gonna get to that lol
It's funny the first reply knew exactly who I was talking about lol
Valefor.Philemon
Server: Valefor
Game: FFXI
Posts: 578
By Valefor.Philemon 2024-02-12 13:28:11
Pomu's a rockstar celebrity.
[+]
By Felgarr 2024-02-12 15:33:36
[+]
Valefor.Philemon
Server: Valefor
Game: FFXI
Posts: 578
By Valefor.Philemon 2024-02-12 15:43:26
He's a JP on Valefor who has a reputation for bazaaring incredibly cheap food. Like, cheap enough you'd swear he's losing money on it.
By RadialArcana 2024-02-12 15:58:29
[+]
By Tathamet 2024-02-15 16:47:57
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2024-02-15 19:32:41
Ooh that's a good idea, added that to my own.
[+]
Necro Bump Detected!
[488 days between previous and next post]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-06-17 11:12:16
Updated to Version 2.1
2.1
Added `temp/t` command. Will add a new temporary target to be tracked. Automatically removed when the player zones. Can also be removed like normal with the `remove` command.
Adjusted the `add` and `test` commands to remove any extension in the name of the sound file provided by the user. Files must still be in the .wav format in order to work, but now the commands no longer care if an extension is included in the command or not.
Removed the `t` shorthand alias from the `test` command, it has been repurposed for the `temp` command.
Removed leftover targets list that is no longer used but was still being created in the settings file.
2.0
Overhauled how target data is saved. Now saves as a lua table in separate targets.lua file instead of saving as xml data inside the settings file. This approach allows for much easier handling of target names. No need to convert names with spaces and apostrophes to a format that xml can parse, instead saved as a direct string key exactly how it should be spelled.
Added `//jin` as a command prefix.
Added the ability to add and remove a target using the current cursor target. Simply target something and type `//jin a` to add the current targets name to the Target list, `//jin r` to remove it.
Added `flood_delay` option. Determines how much time after a target goes out of range before it can be considered "nearby" again.
Adjusted code for checking for nearby targets to be much more efficient, reducing a bunch of redundancies.
Default Targets now include:
- Abject Obdella
- Aurix
- Biune Porxie
- Cachaemic Bhoot
- Chest
- Demisang Deleterious
- Diaphanous Bitzer
- Esurient Botulus
- Fetid Ixion
- Grimslight
- Gyvewrapped Naraka
- Haughty Tulittia
[+]
Fenrir.Jinxs
Server: Fenrir
Game: FFXI
Posts: 845
By Fenrir.Jinxs 2025-06-17 11:17:56
Wow this is cool I must have missed this original post during my hiatus.
Can this work with let's say the new ??? In limbus?
Can a visual be added? If I don't have sound on?
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-06-17 12:53:59
Wow this is cool I must have missed this original post during my hiatus.
Can this work with let's say the new ??? In limbus?
Can a visual be added? If I don't have sound on? The Limbus ??? was actually what prompted the temp command. I figured it would be a great thing to have Jingle search for, but there's also ???'s littered -everywhere- in the world, so temp will only add it to an internal table and not save it to the normal list, and automatically dump that table when you zone.
There is also a chatlog notification when it finds a target, too, in case you have sound off :)
[+]
Fenrir.Jinxs
Server: Fenrir
Game: FFXI
Posts: 845
By Fenrir.Jinxs 2025-06-17 13:01:55
Ah that's a great idea so then we won't need to know the ID for the ???
Does this work on the standard pop in distance, which I am guessing is 40 or 50?
Showing distance for something like this could help a lot with hot cold
Having ran through temenos a couple times now and if they were there I definitely did not know
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-06-17 13:55:00
Ah that's a great idea so then we won't need to know the ID for the ???
Does this work on the standard pop in distance, which I am guessing is 40 or 50?
Showing distance for something like this could help a lot with hot cold
Having ran through temenos a couple times now and if they were there I definitely did not know Yes only detects things that are in normal object draw distance, which is 50 yalms. That range is able to be changed, but there is a hard cap of 50. I haven't actually tried it with the ring assault, but my guess is the game doesn't load it into memory until you're close enough to it for it to show up anyway, but not sure honestly.
Bahamut.Zedoma
Server: Bahamut
Game: FFXI
Posts: 84
By Bahamut.Zedoma 2025-06-17 15:00:00
Should add Mog-Tablet to the default targets list. As a former hunter of collecting every reward this would have came in handy.
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-06-17 15:54:58
Should add Mog-Tablet to the default targets list. As a former hunter of collecting every reward this would have came in handy. That is a fantastic idea!
Server: Fenrir
Game: FFXI
Posts: 268
By Fenrir.Brimstonefox 2025-06-18 09:56:35
I know this really isn't the intent of the addon, but could it be modified to do something similar (text and/or sound) For the following conditions:
1. specified buff wears (on self or party member)
2. ja is ready (maybe code it such that the notifications goes off when there's 1 second left on the recast timer?)
3. specified debuff on the mob wears off
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-06-18 15:53:05
Yeah sorry, that's a completely different addon right there. Helper will let you know when some of the longer cooldown (10m+) abilities are ready again, and my gearswap job luas have a specific ability recast section in their HUDs though.
Server: Shiva
Game: FFXI
Posts: 3
By Shiva.Magified 2025-07-07 07:52:45
This addon is great.
My one suggestion would be to add a setting to move the chat notification into the other chat box, so that it's not buried in the combat log.
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-07-07 10:39:24
This addon is great.
My one suggestion would be to add a setting to move the chat notification into the other chat box, so that it's not buried in the combat log. (EDIT: tl;dr: you're right, I'll update it shortly.)
That's an interesting one with everyone's chat split differently. For example, the Jingle notification shows up in the chat window and not the combat log window for me. It is an issue I've become aware of in the last couple months, though. For this addon that's easy enough to get a fix for that should work for everyone (color 1 is the say channel) since the notification text is so short.
Longer explanation: I'd started doing the add_to_chat lines a certain way to avoid a coloring issue with longer text that wraps to a second line. Unfortunately that introduced another issue that I'd started discovering about a couple months or so ago.
Code add_to_chat(1,'Text that gets added to the chat log.')
The 1 above determines the chat log that the text gets sent to, which in turn is what also determines the color, based on whatever the user has the chat channel color set to.
You can get fancy and add in other colors in the middle of the text
Code add_to_chat(1,'This text is the color of the say chat channel (usually white). '..('While this text is the color of whatever chat channel 8 is (usually purple).'):color:(8)) Code add_to_chat(1,('You can even set the initial chat channel to 1 to force it to be sent to the say channel, but then color the entire line whatever color you want.'):color:(8))
The problems shows up when the text wraps to a second line, any text on the second line "resets" to whatever color/channel the add_to_chat was originally set to, 1 in these examples, causing an ugly coloring situation. Not really a big deal, but you can kinda work around it by setting the initial color/channel to whatever the latter end of the text is going to be, that way the wrapped text gets reset to the color you wanted it to be. This is what I'd started doing, not understanding how it was working or realizing exactly what I was doing at first (I've been learning all this as I go).
But now that introduces an issue where the text can show up in different log windows based on how the user has their chat log setup (what you mentioned).
Now that I've recently started figuring out how it's working, I'd been mulling over going back to the first way and just dealing with the color switch. At least that way the text shows up in a more predictable place. Since you've brought it up, that gives me more push to doing it that way again.
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-07-10 20:32:07
Updated to Version 2.2
Now more Limbusier!
Step inside Temenos and Apollyon > //jin z ??? > profit!
Added zone command. Adds a target that will only be found as "nearby" while in the zone you are currently in. You can also manually add zone targets directly to the data/targets.lua file using the format "Target Name|Zone name" for the target name.
Adjusted all addon notifications to be sent to the say channel by default. This should make sure all "nearby" notifications should be sent to whichever log window you have your chat sent to.
Adjusted the temp command to save to the data/targets.lua file like other targets. Temporary targets get "|temporary" appended to the end of the target name and are still cleared on zoning as before.
[+]
Server: Shiva
Game: FFXI
Posts: 3
By Shiva.Magified 2025-07-19 07:25:39
The new version works great for moving the message into the right chat, but I think these are wrong:
https://github.com/iLVL-Key/FFXI/blob/main/addons/Jingle/Jingle.lua#L93-L94
and should be: Code ["???|Temenos"]="default",
["???|Apollyon"]="default",
I've noticed over the past few days that Jingle stopped triggering when I saw the ??? in Apollyon. When I ran the zone command to re-add the ???, it added them with only one bar instead of the two in the new default values.
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-07-19 16:10:05
Ooh very good catch, thank you. I originally was going to set it up with the two but switched to just a single, forgot to adjust that, woops!
By Genoxd 2025-07-19 19:33:26
I wrote something similar but I also added compass directions and distance to target. Feel free to add it if you want
Code function printLocation(target_mob)
if target_mob == nil then
return
end
local player = windower.ffxi.get_player()
local player_mob = windower.ffxi.get_mob_by_index(player.index)
local degrees = math.deg(getAngle(player_mob, target_mob))
local compass = degreesToCompass(degrees)
local distance = math.sqrt(target_mob.distance)
if addtochat then
windower.add_to_chat(128, '<'..tostring(target_mob['name'])..'>! '..tostring(compass)..' '..tostring(distance)..' yalms.')
end
end
function getAngle(me,point)
local dir = V{point.x, point.y} - V{me.x, me.y}
local heading = V{}.from_radian(1.57075)
local angle = V{}.angle(dir, heading) * (dir[1]*heading[2]-dir[2]*heading[1] < 0 and -1 or 1)
return angle
end
function degreesToCompass(degrees)
local direction = 'inv'
if degrees > -22.5 and degrees <= 22.5 then
direction = 'S'
elseif degrees > 22.5 and degrees <= 67.5 then
direction = 'SW'
elseif degrees > 67.5 and degrees <= 112.5 then
direction = 'W'
elseif degrees > 112.5 and degrees <= 157.5 then
direction = 'NW'
elseif (degrees > 157.5 and degrees <= 180) or (degrees < -157.5 and degrees > -180) then
direction = 'N'
elseif degrees >= -157.5 and degrees < -112.5 then
direction = 'NE'
elseif degrees >= -112.5 and degrees < -67.5 then
direction = 'E'
elseif degrees >= -67.5 and degrees <= -22.5 then
direction = 'SE'
end
return direction
end
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-07-19 20:32:46
Hmmmmmmmmmmm....
I just may. Thank you for that.
[+]
Fenrir.Jinxs
Server: Fenrir
Game: FFXI
Posts: 845
By Fenrir.Jinxs 2025-07-20 12:21:18
I just wanna say this was MVP for campaign ops find the object
[+]
Valefor.Keylesta
Server: Valefor
Game: FFXI
Posts: 119
By Valefor.Keylesta 2025-07-22 14:55:46
Updated to Version 2.3
Now includes the distance and direction of the target when found.
Thanks to Genoxd for the code this update was based around!
Presenting: Jingle
Plays a sound and displays a chat notification when a target (player, mob, or NPC) is nearby.
Download from Github repo
(Make sure to get the /data/sounds folder!)
Features
Tells you distance and direction to target when found.
3 types of targets:
- Permanent - Found in all zones.
- Zone - Only found within a specified zone.
- Temporary - Only found until removed or you change zones.
Plays only once until the target moves out of range again.
Works using names, IDs, or Hex IDs (great for NM placeholders).
Specify an optional specific sound to play for each target.
- Plays the default.wav sound if no sound specified.
Will play any .wav file you save to the /data/sounds folder.
Default Targets
These targets are automatically added when first loaded.
This started with a joke about needing to find a certain character on our server that bazaars low priced food, and needing an ice cream truck jingle to play when they run by. And then :lightbulb: wait I can make that. We quickly came to realize that this would be fantastic for Sortie, and so I've included some c/p that you can put into the settings file for Sortie stuff. Have fun!
|
|