New Author as of September 5, 2009
Lifetapt no longer plays World of Warcraft and is no longer working on this project. Further development of Paranoia will be handled by OgunNagoura.WotLK Compatability
This addon may or may not work with WotLK/Patch 3.0+. It was last updated in December, at the release of WotLK and future patches have probably broken it. OgunNagoura, the new author, will take over Paranoia's development and will keep it up to date.
About Paranoia Enemy Player Alert
Paranoia Enemy Player Alert, or just Paranoia, or perhaps even PEPA, is an addon that attempts to keep a constant lookout for players of the opposite faction nearby. If a nearby player is detected, Paranoia will try to guess their class and level, and it will warn you by playing a sound and displaying a "Hostile Player Detected!" message on-screen.
Paranoia works by scanning all incoming combat log entries for any event caused by a hostile player. This includes hits, misses, dodges, parries, spellcast starts, buffs or debuffs being applied or removed, tradeskills, or kills. For example, "Skillzdatkillz gains Stealth", "Ipwnface begins casting Pyroblast", or "Hurrdurr begins Mining", will all trigger Paranoia's warning.
In addition, Paranoia will try to guess the class and level of nearby players by examining the spell/skill they are using, and the rank of the spell. If a nearby enemy begins casting Frostbolt rank 6, Paranoia will tag them as a level 32+ Mage. If they begin casting Frostbolt rank 14, Paranoia will tag them as a level 70 Mage.
Paranoia will also begin fading out the names of units on the enemy list as more time passes without any activity from them. This is especially useful during situations when there are multiple enemies on the list, allowing you to see who is a larger and more recent threat.
Once an enemy has been detected and is on the hostile list, you can easily target them (if you are out of combat) by clicking on their name, allowing you to quickly make a decision of whether or not you want to run, hide, or engage the enemy. While Paranoia is mainly intended to prevent hostiles from sneaking up on you and ganking you, it also happens to be great for sneaking up on others and ganking them!
Paranoia also makes it easy to warn others of nearby enemies. By right clicking a name on the enemy list, a menu appears allowing you to send an announcement to /say, /yell, /guild, /battleground, /raid, or the LocalDefense channel. In addition, if other players in your party or guild are using Paranoia, it will communicate with them and share hostile data (for guild members, this is only if they are in the same zone).
Since there are places where knowledge of nearby enemy players is not needed or wanted, Paranoia can be configured (and is by default) to disable itself in Battlegrounds, Arenas, free-for-all zones such as Nagrand Arena and Gurubashi Arena, and sanctuaries such as Shattrath City, Archeus and Daralan.
Paranoia allows you to disable the warning sound, alert popup message, or the enemy list, so you can choose to use only the features you want. You can also modify some aspects of Paranoia's appearance such as panel opacity, border opacity, or maximum number of hostiles. The alert popup can be moved anywhere on the screen, and you can choose exactly how long you want it to display for. You can modify the format of the announcement, and you can also disable communication for party/guild members.
Paranoia Enemy Player Alert was previously known as Paranoia and was written by rmet0815 (http://www.xs4all.nl/~rmetzger/paranoia) until version 1.03. Fixes and additions after 1.03 were made by Lifetapt @ Alterac Mountains (http://www.leetsoft.net).
Usage
Paranoia should work fine out of the box. The Paranoia enemy list is a small, rectangular window on the bottom right corner of the screen. You can move it around by clicking and dragging. To configure Paranoia, you can use the /paranoia slash command, right-click on the Paranoia window, or right-click on the Paranoia minimap-button.
To target an enemy, left click on their name (only works while out of combat). To announce an enemy, right click on their name and select the appropriate channel.
If you cannot see Paranoia when you first install it, it is probably because you are in an area where Paranoia is set to be disabled, such as Shattrath City. You can use /paranoia config to bring up the options menu.
Slash Command List
You can use /paranoia or /para for commands.
/paranoia - Prints command list
/paranoia config - Displays the configuration frame
/paranoia enable - Enables the addon
/paranoia disable - Disables the addon, it will not detect enemy players or make sound
/paranoia debug - Toggles debug mode. If you are receiving errors while using Paranoia, please try to reproduce the error with debug mode on, and send me some of the output along with the usual error message text.
/paranoia debuglist - Prints debug command list.
FAQs
These are frequently asked questions regarding Paranoia. While none of these questions were asked to me frequently, indeed, none were really even asked at all, I'll take a guess.
What is Paranoia?
In it's simplest form, Paranoia is an addon that keeps a constant lookout for enemy players. When Paranoia detects a nearby enemy, it will warn you.
How does it work?
Paranoia scans all incoming combat log events looking for hostile players. For example, if you're a level 25 Mage questing in Hillsbrad, minding your own business, and a level 27 Alliance rogue passing by happens to notice you, he will probably use stealth if he has the intention of ganking you. This shows up in the combat log as "Skillz gains Stealth". Normally you wouldn't really notice, especially while fighting a mob, however, Paranoia will notice, and it will play a warning sound and show a message in big red letters that says "Alliance Rogue detected! (Skillz)". You can then Blink away from the mob you're fighting and make a break for Tarren Mill, and while you're running you can right click on Skillz and announce his name, class and location to LocalDefense. Or of course you could start spamming Arcane Explosion and engage him if you're feeling confident.
I just logged in after installing Paranoia and I don't see it anywhere!
If you login after installing Paranoia, the addon should be located near the bottom right corner of the screen, it's a small, gray, rectangular box. If Paranoia isn't there and is installed correctly, it's probably just hidden because you are in Shattrah City or a Battleground/Arena/Free-for-all zone. If this is the case Paranoia will warn you in the chat log that it is currently hidden and a popup message on the screen will ask you if you want to open the options frame.
Sometimes Paranoia reports an enemy, but when I go to target them, there's no-one there.
This could of course be because the enemy is stealthed or prowled, but if you didn't get wtfpwnt shortly after, then it was probably a side-effect of a bug in the new patch 2.4 combat log. Frequently, it will capture events of players in completely different zones. If you're in Outland, it seems to often show players fighting mobs in Isle of Quel’Danas. If you're in Azeroth, you usually get players in the Eastern Plaguelands. Normally, regular combat/spellcasting/tradeskills from players in other zones don't trigger Paranoia, but if someone enchants a weapon or applies a poison, or if either wears off, Paranoia will trigger. There is currently nothing I can do about this, unfortunately, as it is a bug with the combat log, however if this starts happening, relogging should fix it.
Some stupid Horde just ganked me! Q_Q How can I announce him to my guild so we can corpse camp him for three hours?
If Paranoia detects a hostile, you can announce them to whatever channel you want by right clicking on their name in the Paranoia enemy list and choosing the channel you want (in this case, /guild). The alert message sent to the channel will include the player's name, level and class (if known), last seen subzone (for example Nesingwary's Expedition if you're in Stranglethorn) and coordinates.
The right click dropdown only shows /say and /yell.
The dropdown will dynamically add and remove channels depending on what you have access to. /party, /raid, /guild, /battleground, and LocalDefense will only appear when you are in a party, raid, guild, battleground, etc.
Is Paranoia compatible with non-enUS WoW clients?
Paranoia is compatible with all WoW clients, and it has translations for English, Spanish, German, French, Russian, and Simplified Chinese.
If you want to submit a correction or a missing translation, please send me the localization-xx.lua file at lifetapt
Is Paranoia legal? Is this mod considered an exploit or a cheat? Can Paranoia see through stealth?
Paranoia IS completely legal, since it is written completely in Lua and runs inside of WoW's built in Lua interpreter. Blizzard has specifically designed WoW so that addons can only perform functions Blizzard allows them to, and they are blocked from many of the more powerful functions such as auto-casting, auto-targeting, etc. Paranoia does not take advantage of any exploit in any way, since it only uses data that is already available to the player in the default UI. Even without Paranoia, you can detect nearby enemies simply by setting your combat log to "Everything" and keeping an eye on it. Enemy players will show up in red whenever they cast a spell or skill, use a tradeskill, or attack something (you can change the color to something like pink so they stand out from enemy mobs, which also appear as red). This is the same EXACT method that Paranoia uses to detect enemies. Also, Paranoia CANNOT see through stealth... some people seem to confuse this with the Paranoia skill for Warlock Felhunters and think that this addon can target stealthed players, when it cannot. When Paranoia finds something like "Allirogue gains Stealth." it only knows that there is a rogue somewhere near you who just went stealthed. If you try to target them, it will fail, since Paranoia uses a /target macro to target enemies. However, if you detect a stealthed player (by detect, I'm talking about the "whoosh" sound you hear when you move near a stealthed player and the very faint outline of them you can see), Paranoia will be able to target them, if you click on their name. Otherwise, there is nothing Paranoia can do to target stealthed players.
Does Paranoia have a Kill-On-Sight or "Hatelist" feature?
Soon, my friends, soon. (Please see the WoWWiki definition of Soon)
SVN Repository
If you want to use the absolute latest version of Paranoia, please check out the Paranoia_EPA SVN repo over at WoWAce. Please keep in mind that the releases on the SVN may not be the most stable revisions, but I will try not to commit something that flat out doesn't work.
SVN: http://svn.wowace.com/wowace/trunk/Paranoia_EPA/
Localizations
If you would like to translate Paranoia, please send me a translated localization-xx.lua file via email to lifetapt
Current Translations
-esES localization by Miros.
-frFR localization by Minihunt (portions were machine translated).
-deDE localization by rom and AmmokK (aka Thoras H)
-ruRU localization by Swix.
-zhCN localization by www.wowui.cn
Contact Lifetapt
Use the comments section to leave suggestions, bug reports, or to request features. You can also send a whisper or mail in-game if you manage to find me, I'm Lifetapt on Alterac Mountains. You can also send me an email via lifetapt [at] gmail [dot] com, but please put Paranoia in the subject.
I really appreciate feedback, be it positive or negative. If you've don't like Paranoia for whatever reason, please tell me what exactly you don't like about it, I promise I'll do my best to remedy the issue!
Feel free to send me suggestions or feature requests, I often add features requested by users!
To-do List
These are features that will/might be added to Paranoia in the future. Some of these were added by the original Paranoia author and most were added by me. These are in no particular order, I just kinda added them as I thought them up.
- Provide different warning sounds via a Paranoia Sounds options tab
- Increase max number of enemies in the paranoia enemy list. maybe use a listbox to store them. (as of 1.09 Paranoia stores up to 15, but a different implementation will probabably be neccessary for more than that without being sloppy/ugly)
- Perhaps add a KoS list similar to ganklist or opium {halfway done?}
- KoS units need a different sound and a different popup message text
- further investigate causes of taint and fix them, disable options frame when in combat mode
- Allow the user to change the WarnFrame font
- Rewrite the ennntttiiirrreee enemy list system... the current system cannot update in combat and there does not seem to be any way around it thanks to StatusFrameButton's anchor, which taints StatusFrame, which in turn taints the main enemylist frame. So we cannot hide/show hostiles, modify text/button width, nor modify the Paranoia frame's height.
- finish the player db system, then add some way to browse the db similar to the /who frame.
- rewrite the entire hostile player handling system, it's bloated and buggy.
- limit the frequency of calls to onupdate to around 3-5 times per second, maybe a little less. possibly create a separate onupdate that does not update the hostile list that runs once per frame.
- more detailed stat tracking/calculating like Opium's PvP stats window (avg level, top10 killed players/guilds/classes, top10 killed by players/classes)
- allow user to change font of warnframe (fontlist is in 1.11 but not active)
Completed Goals
- at WarnHostilePlayer End, alwasy call Update() to update lists
- get warning sound from game data files to reduce download size (just got to dig it out again)
- option to hide list
- option to play sound or not
- alpha for the frame (border)
- when changing zones enemy list appears to fade in again, even if it is already visible
- Make a unit's name fade out the longer it's been on the list with no activity.
- a slider should allow player to change the time between warnings and the listTimeout
- add last seen coordinates/subzone to gHostileList table
- Add localdefense reporting
- Right clicking on an enemy should announce them to LocalDefense (or bring up a context menu with several options, LocalDef, Party, Raid, etc. and perhaps add to KoS list, etc.)
- add chat channel detection and dynamically update enemy announce dropdown
- Find another way to determine active battlefield reliably, without using too much CPU
- Detect on mouseover (use "UPDATE_MOUSEOVER_UNIT")
- Provide support for localization, and hopefully find some nice people willing to localize Paranoia
- Scan tooltips for additional information on hostiles
- Add frame scaling.
- Allow the user to change the alpha of the WarnFrame font
- Add party coop detection, ie. if a party member has Paranoia installed, then share hostile player data with them and add their hostiles to our list.
- Disable in instances
- Dont detect players on your faction you are dueling
- Add player database. Previously seen enemies will already have their class/level known from the last time they were seen (this also makes up half the the kos feature)
- Player guild storage
- Kill/death tracking for every player
- Prompt on death to add killing player to KoS (the code exists in 1.11 but is not active)
Keywordspam: detect alliance horde players anti gank camp enemy hostile popup rogue stealth paranoia alert warning combat log sound
- 1 comment
- 1 comment
Facts
- Date created
- 07 Apr 2008
- Categories
- Last update
- 06 Dec 2008
- Development stage
- Release
- Language
- deDE
- enUS
- esES
- frFR
- ruRU
- zhCN
- License
- GNU General Public License version 3 (GPLv3)
- Curse link
- Paranoia Enemy Player Alert
- Recent files
- R: v1.12.2 for 3.0.3 on 06 Dec 2008
- R: v1.12.1 for 3.0.2 on 20 Oct 2008
- R: v1.11 r81735 (updated Ace libraries) for 2.4.3 on 13 Oct 2008
- B: 1.12 r81738 (WotLK/Patch 3.0.2 ONLY) for 3.0.2 on 15 Sep 2008
- R: v1.11 r81735 for 2.4.3 on 15 Sep 2008
- #1
shadow096 Wed, 21 May 2008 13:32:02sounds good to try out ^_^