Category: Unit Mods
Addon Information
Works with 3.3
Download Latest Version.
To add favorites please register for a free account. If you already have one you need to login. How do I install this? (FAQ)
Author:
Version:
3.3.5.3
Date:
09-04-2010 06:15 AM
Size:
9.30 Kb
Downloads:
9,878
Favorites:
296
MD5:
Pictures
Click to enlarge
Scaled nameplates using _VirtualPlates.
Click to enlarge
Overlapping nameplates without _VirtualPlates.
Click to enlarge
Compatible with danltiger's TidyPlates.
Click to enlarge
Also works with Caellian's caelNameplates.
Click to enlarge
Works with a variety of plates.
VirtualPlates   Updated less than 3 days ago!   Popular! (More than 5000 hits)
Nameplates are hard to look at. They fill your screen and make an absolute mess when you're fighting lots of mobs. _VirtualPlates gives them depth, so they fit into the game world instead of covering it.
Note: _VirtualPlates will no longer work after the Cataclysm expansion.
Details

This has little configuration, and should work with most other nameplate skinning mods such as Aloft, TidyPlates, and caelNameplates. You might prefer to turn on Allow Overlapping Unit Nameplates in Interface Options > Names > Unit Nameplates so nameplates won't bump into each other. The sample screenshots were taken with this new feature enabled.

Options

_VirtualPlates' options can be found in the Interface Options > _VirtualPlates menu.
  • Nameplate Scale Limits:
    • Minimum Scale: Limits how small nameplates can shrink to. Values can range from 0 (meaning disabled) to 1 (meaning plates won't get smaller than their default size). For example, a value of 0.5 would keep plates from shrinking beyond half their original size.
    • Limit maximum scale: When enabled, this prevents nameplates from getting too big when they get close to your camera.
    • Maximum Scale: Similar to the “Minimum Scale” slider, but this value controls how many times larger than the default size a nameplate can grow to.
  • Scale Factor: When nameplates are this many yards from the screen, they'll be normal sized. Larger distances mean larger nameplates.
  Change Log - VirtualPlates
  • 3.3.5.3:
    • Final release. _VirtualPlates will no longer work after the Cataclysm expansion.
    • Added deDE localization by muhmiauwau from CurseForge.
  • 3.3.5.2:
  • 3.3.5.1: Removed options to adjust scale factors based on camera zoom, since camera info is no longer available to addons.
  • 3.3.0.1:
    • Hack workaround for blacklisted nameplate depths.
    • No longer forces overlapping nameplates feature on.
    • OnUpdate script handlers on plate Visuals now get assigned to the plates directly to preserve their execution order.
  • 3.2.2.5:
    • Fixed issue where addons could get a hold of raw nameplates before _VirtualPlates replaced them.
    • Reworked handling of frame levels. _VirtualPlates shouldn't interfere with the relative frame levels of children any more.
  • 3.2.2.4: Added a Maximum Scale option.
  • 3.2.2.3: Now loads LibCamera-1.0 properly.
  • 3.2.2.2:
    • Added a configuration pane with various options.
    • ScaleFactor can now optionally scale with camera distance.
    • Added a minimum scale option to prevent plates from getting too small at long range.
  • 3.2.2.1: Initial commit.
  Optional Files - VirtualPlates
Sorry, there are currently no optional files available.
  Archived Versions - VirtualPlates
File Name
Version
Size
Author
Date
3.3.5.2
8kB
Saiket
07-02-2010 08:49 PM
3.3.5.1
7kB
Saiket
06-22-2010 05:54 PM
3.3.0.1
14kB
Saiket
12-08-2009 02:41 PM
3.2.2.5
14kB
Saiket
11-08-2009 09:20 PM
3.2.2.4
13kB
Saiket
10-30-2009 06:42 PM
3.2.2.3
13kB
Saiket
10-25-2009 02:54 AM
3.2.2.2
13kB
Saiket
10-25-2009 01:57 AM
3.2.2.1
3kB
Saiket
10-23-2009 11:24 PM
  Comments - VirtualPlates
Post A Reply Comment Options
Old Today, 12:23 AM  
spiralofhope
A Defias Bandit
 
spiralofhope's Avatar

Forum posts: 2
File comments: 13
Uploads: 0
Sorry to hear about the API change breaking your addon. I guess Blizzard thought that addons learning mob distance in this manner would make some raid encounters too easy.

I wish they could just turn it off for those encounters though, and not just take the feature out.

It's been a great pleasure using this Addon. I guess I won't get into tanking since I can't properly interact with the play field. Regular-sized name plates are awful, and just scaling everything down isn't a solution for me. I'll probably be turning name plates entirely off come Cataclysm. =/
spiralofhope is offline Report comment to moderator  
Reply With Quote
Old Yesterday, 02:19 PM  
ComputerNerd
A Murloc Raider

Forum posts: 5
File comments: 17
Uploads: 0
Sorry to hear that it won't work anymore come cataclysm.
This is a really novel idea that you did a great job in implementing.
ComputerNerd is offline Report comment to moderator  
Reply With Quote
Old Yesterday, 07:07 AM  
Fl7x
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Thumbs up Re: Broken in Cataclysm

That's F***ng lame!!

I almost can't play with the standard Blizz nameplates... They are too big. I hope they implement something like that awesome addon, or at least allow the modders to work with plates.

I'm Beta-Tester... So I'll try that Blizz take that into consideration.

Great work Saiket. For me that's a MUST A HAVE Addon..


Quote:
Originally posted by Saiket
Come Cataclysm, _VirtualPlates won't work anymore, so version 3.3.5.3 will be the last release until then. Blizzard removed the ability of addons to read how far away nameplates are, so they can no longer be scaled.

You can keep using the mod until Cataclysm though; It's not broken yet!
Last edited by Fl7x : 09-04-2010 at 07:09 AM.
Fl7x is offline Report comment to moderator  
Reply With Quote
Old Yesterday, 06:22 AM  
Saiket
A Theradrim Guardian
 
Saiket's Avatar
Interface Author - Click to view interfaces

Forum posts: 68
File comments: 243
Uploads: 15
Broken in Cataclysm

Come Cataclysm, _VirtualPlates won't work anymore, so version 3.3.5.3 will be the last release until then. Blizzard removed the ability of addons to read how far away nameplates are, so they can no longer be scaled.

You can keep using the mod until Cataclysm though; It's not broken yet!
Saiket is online now Report comment to moderator  
Reply With Quote
Old 07-03-2010, 09:05 AM  
OttoDeFe
A Chromatic Dragonspawn
 
OttoDeFe's Avatar
Interface Author - Click to view interfaces

Forum posts: 173
File comments: 186
Uploads: 8
Issue seems solved - thank you so much!
__________________
"They say
the pen is mightier than any saber -
any sword -
but if there's a war
I just don't know if a Bic will save ya..."

-- Last Offence
OttoDeFe is offline Report comment to moderator  
Reply With Quote
Old 07-03-2010, 02:08 AM  
Saiket
A Theradrim Guardian
 
Saiket's Avatar
Interface Author - Click to view interfaces

Forum posts: 68
File comments: 243
Uploads: 15
Quote:
Originally posted by Cyprias
Mind if I ask what the problem was Saiket? Is there something I can do on my end to help?

/author of PlateBuffs & LibNameplate.
_VirtualPlates uses a child frame bolted onto each original nameplate to act as a replacement, so when the original plate was hidden by WoW, the replacement's OnHide script would fire as expected. The problem was that LibNameplate-1.0 checks Plate:IsShown (Plate being the replacement), and technically the replacement was still "Shown", but not visible. The fix was easy on my end; I just hide the replacement explicitly when the original plate gets hidden now. I'll take the blame for the errors. :P

I do suggest checking plates' OnShow/Hide/Update scripts before assuming they've been overridden though. The reason the error message here looks like that is because LibNameplate would attempt to HookScript every second or so when things broke, causing it to hook its own hook. Each new HookScript is one "<in C code>: ?" line in the stack trace. Took me a while to figure that one out, heheh.
Saiket is online now Report comment to moderator  
Reply With Quote
Old 07-03-2010, 01:40 AM  
Cyprias
A Kobold Labourer
Interface Author - Click to view interfaces

Forum posts: 1
File comments: 42
Uploads: 8
Mind if I ask what the problem was Saiket? Is there something I can do on my end to help?

/author of PlateBuffs & LibNameplate.
Cyprias is offline Report comment to moderator  
Reply With Quote
Old 07-02-2010, 08:57 PM  
Saiket
A Theradrim Guardian
 
Saiket's Avatar
Interface Author - Click to view interfaces

Forum posts: 68
File comments: 243
Uploads: 15
Quote:
Originally posted by OttoDeFe
Seeing the error below from time to time - just using this and PlateBuffs. I think it may be an interaction between the two, but the error points here, so I figure I'll post here first.

Code:
28x C stack overflow:
<in C code>: ?
*edit*

PlateSpinner I forgot to mention - shows/hides plates based on combat. I did notice that might be an issue as well. Any help/ideas would be great!

**edit**

The showing of the plates when a hostile initiates the combat seems to produce the overflow consistently.

***edit***

It seems to do it on it's own from time to time... I get the same overflow with the other addons disabled.
Thanks for the report. Took me a while to figure this one out, but version 3.3.5.2 should now work with PlateBuffs and LibNameplate-1.0.
Saiket is online now Report comment to moderator  
Reply With Quote
Old 06-26-2010, 10:18 AM  
OttoDeFe
A Chromatic Dragonspawn
 
OttoDeFe's Avatar
Interface Author - Click to view interfaces

Forum posts: 173
File comments: 186
Uploads: 8
Seeing the error below from time to time - just using this and PlateBuffs. I think it may be an interaction between the two, but the error points here, so I figure I'll post here first.

Code:
28x C stack overflow:
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
...:
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?
<in C code>: ?

Locals:
(*temporary) = <unnamed> {
 1 = <unnamed> {}
 2 = <unnamed> {}
 3 = <unnamed> {}
 4 = <unnamed> {}
 5 = <unnamed> {}
 6 = <unnamed> {}
 7 = <unnamed> {}
 8 = <unnamed> {}
 9 = <unnamed> {}
 10 = <unnamed> {}
 11 = <unnamed> {}
 12 = <unnamed> {}
 13 = <unnamed> {}
 0 = <userdata>
 OnUpdate = <function> defined =[C]:-1
}
(*temporary) = 0.016000000759959
(*temporary) = <function> defined =[C]:-1
(*temporary) = <unnamed> {
 1 = <unnamed> {}
 2 = <unnamed> {}
 3 = <unnamed> {}
 4 = <unnamed> {}
 5 = <unnamed> {}
 6 = <unnamed> {}
 7 = <unnamed> {}
 8 = <unnamed> {}
 9 = <unnamed> {}
 10 = <unnamed> {}
 11 = <unnamed> {}
 12 = <unnamed> {}
 13 = <unnamed> {}
 0 = <userdata>
 OnUpdate = <function> defined =[C]:-1
}
(*temporary) = 0.016000000759959
 = <function> defined =[C]:-1
 = <function> @ !!!_VirtualPlates\_VirtualPlates.lua:441:

  ---
*edit*

PlateSpinner I forgot to mention - shows/hides plates based on combat. I did notice that might be an issue as well. Any help/ideas would be great!

**edit**

The showing of the plates when a hostile initiates the combat seems to produce the overflow consistently.

***edit***

It seems to do it on it's own from time to time... I get the same overflow with the other addons disabled.
__________________
"They say
the pen is mightier than any saber -
any sword -
but if there's a war
I just don't know if a Bic will save ya..."

-- Last Offence
Last edited by OttoDeFe : 06-27-2010 at 10:26 AM.
OttoDeFe is offline Report comment to moderator  
Reply With Quote
Old 06-23-2010, 03:39 AM  
Zergreth
A Fallenroot Satyr
 
Zergreth's Avatar
Interface Author - Click to view interfaces

Forum posts: 22
File comments: 97
Uploads: 12
Quote:
Originally posted by Saiket
Don't worry, the new version will work almost exactly the same.
Alrighty
Zergreth is offline Report comment to moderator  
Reply With Quote
Old 06-22-2010, 03:54 PM  
Saiket
A Theradrim Guardian
 
Saiket's Avatar
Interface Author - Click to view interfaces

Forum posts: 68
File comments: 243
Uploads: 15
Quote:
Originally posted by Zergreth
As far as I understand, _VirtualPlates will break with the introduction of 3.3.5. Don't have the patch yet, since I'm playing EU, but the patch notes on wowwiki.com say:


You use those vars for _VP, don't you?
Don't worry, the new version will work almost exactly the same.
Saiket is online now Report comment to moderator  
Reply With Quote
Old 06-22-2010, 06:28 AM  
Zergreth
A Fallenroot Satyr
 
Zergreth's Avatar
Interface Author - Click to view interfaces

Forum posts: 22
File comments: 97
Uploads: 12
As far as I understand, _VirtualPlates will break with the introduction of 3.3.5. Don't have the patch yet, since I'm playing EU, but the patch notes on wowwiki.com say:
Quote:
Camera-related (Yaw, Pitch and Distance) variables will no longer return values, in an attempt to break the functionality of certain addons used to simulate 3D drawings.
You use those vars for _VP, don't you?
Zergreth is offline Report comment to moderator  
Reply With Quote
Old 06-21-2010, 06:04 AM  
danltiger
A Murloc Raider
 
danltiger's Avatar
Interface Author - Click to view interfaces

Forum posts: 6
File comments: 772
Uploads: 20
Nice! Great idea; I'll see if that works, thanks! :-)

Quote:
Originally posted by Saiket
I found lots of ways to crash the game when writing _VP and my own nameplate mod, and most of them were caused by re-anchoring/parenting certain textures to my own frame. I don't think there's a good way to fix that though, since it's so hard to test and the crash reports don't have any meaningful info in them.

Just a guess, but the event for being mind-controlled might fire just before nameplates are updated, so we might be able to add a makeshift fix for Mac clients:
Code:
if ( IsMacClient() ) then
	-- Hide nameplates while mind controlled (or feared/on a flightpath)
	local Frame = CreateFrame( "Frame" );
	Frame:SetScript( "OnEvent", function ( self, Event )
		self[ Event ]( self );
	end );
	function Frame:PLAYER_CONTROL_LOST ()
		self.ShowFriends = GetCVar( "nameplateShowFriends" );
		self.ShowEnemies = GetCVar( "nameplateShowEnemies" );
		SetCVar( "nameplateShowFriends", 0 );
		SetCVar( "nameplateShowEnemies", 0 );
	end
	function Frame:PLAYER_CONTROL_GAINED ()
		SetCVar( "nameplateShowFriends", self.ShowFriends or 0 );
		SetCVar( "nameplateShowEnemies", self.ShowEnemies or 0 );
	end
	Frame:RegisterEvent( "PLAYER_CONTROL_GAINED" );
	Frame:RegisterEvent( "PLAYER_CONTROL_LOST" );
end
No idea if it will actually work though.
__________________
Author Portal
Tidy Plates, Tidy Threat, and Tidy Bar
danltiger is offline Report comment to moderator  
Reply With Quote
Old 06-19-2010, 05:05 PM  
Saiket
A Theradrim Guardian
 
Saiket's Avatar
Interface Author - Click to view interfaces

Forum posts: 68
File comments: 243
Uploads: 15
Quote:
Originally posted by danltiger
Heya Sai,

Some Mac users have been experiencing crashes when using Tidy Plates, after getting mind-controlled. This also seems to be happening with VirtualPlates...

http://forums.worldofwarcraft.com/th...742&pageNo=3#0

Just wondering what your thoughts were. Certainly, it's a bug in the client which should be fixed by Blizz, but if there's something we can do...

Later!
I found lots of ways to crash the game when writing _VP and my own nameplate mod, and most of them were caused by re-anchoring/parenting certain textures to my own frame. I don't think there's a good way to fix that though, since it's so hard to test and the crash reports don't have any meaningful info in them.

Just a guess, but the event for being mind-controlled might fire just before nameplates are updated, so we might be able to add a makeshift fix for Mac clients:
Code:
if ( IsMacClient() ) then
	-- Hide nameplates while mind controlled (or feared/on a flightpath)
	local Frame = CreateFrame( "Frame" );
	Frame:SetScript( "OnEvent", function ( self, Event )
		self[ Event ]( self );
	end );
	function Frame:PLAYER_CONTROL_LOST ()
		self.ShowFriends = GetCVar( "nameplateShowFriends" );
		self.ShowEnemies = GetCVar( "nameplateShowEnemies" );
		SetCVar( "nameplateShowFriends", 0 );
		SetCVar( "nameplateShowEnemies", 0 );
	end
	function Frame:PLAYER_CONTROL_GAINED ()
		SetCVar( "nameplateShowFriends", self.ShowFriends or 0 );
		SetCVar( "nameplateShowEnemies", self.ShowEnemies or 0 );
	end
	Frame:RegisterEvent( "PLAYER_CONTROL_GAINED" );
	Frame:RegisterEvent( "PLAYER_CONTROL_LOST" );
end
No idea if it will actually work though.
Saiket is online now Report comment to moderator  
Reply With Quote
Old 06-19-2010, 02:22 AM  
danltiger
A Murloc Raider
 
danltiger's Avatar
Interface Author - Click to view interfaces

Forum posts: 6
File comments: 772
Uploads: 20
Heya Sai,

Some Mac users have been experiencing crashes when using Tidy Plates, after getting mind-controlled. This also seems to be happening with VirtualPlates...

http://forums.worldofwarcraft.com/th...742&pageNo=3#0

Just wondering what your thoughts were. Certainly, it's a bug in the client which should be fixed by Blizz, but if there's something we can do...

Later!
__________________
Author Portal
Tidy Plates, Tidy Threat, and Tidy Bar
danltiger is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.




The Network:
EQInterface | EQ2Interface | LoTROInterface | MMOInterface | War.MMOUI | WoWInterface | VGInterface | Allakhazam | Thottbot | Wowhead | TankSpot | Zam


©2009 MMOUI / ZAM Network
vBulletin - Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.