• IS THIS SITE UGLY? Click "RG3" at the very bottom-left of this page to change it. To dismiss this notice, click the X --->
MQ2EQWire

Plugin - MQ2EQWire 2019-08-21

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#1


MQ2EQWire is eqmule's latest creation. It lowers resource requirements by a significant amount.

Replacement for MQ2FPS / MQ2Viewport? I'd like to hear opinions.

It also looks really cool.
 
Last edited:

ihc385

Moderator
Joined
Dec 4, 2016
Likes
325
RedCents
6,865¢
#3
Just tried this out, seems promising but as plure said we need some commands or idea of what the options are.
I constantly monitor my cpu use on my keyboard, 6 chars with pretty much max settings on all
With no rendering/fps management I'm at around 70% CPU use
With MQFPS - FGrendering at 1 ( every frame ) and BG at 30, both FG and BG FPS set to 40 I'm at 16-20%
With EQWire - and the default ini setting I'm around 50-55%

With FPS My group follows perfectly, bc commands all work flawlessly and mac's run smooth.
With EQWire I can eventually loose a member of my group due to it thinking I warped, 2 of 6 chars are missing some of my bc commands ( using /doortarget and /click left door to jump through port stones/books ) and I get stutters on 2 of 5 background chars. I'm pretty sure with the default all its doing is setting my BG render to 0 with no fps management....its much smoother when I pan my camera around. Pretty sure I just need to tweak some settings but no clue what they are :)
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#4
I'm assuming there are some commands to set it up?
There are no commands, the only setting is in the ini.

When in the background 0 frames per second will be drawn.
Change that setting to for example 10 and 10 frames will be drawn per second.

(There is a internal command called /wire which takes on and off as arguments but that's for internal use only, no functionality whatsoever related to frame drawing and the ini setting, it basically just turn wire on and off. I would recommend people don't use the command unless u are a developer who wants to see what eq looks like in wire mode.)

Bottom line:
There isn't much to it at the moment, you don't need the command to use it.
 
Last edited by a moderator:

eqmule

MQ2 Lead Dev
Moderator
Joined
Feb 1, 2013
Likes
444
RedCents
20,407¢
#6
If you test this, you need to unload mq2fps because using both will surely screw up any kind of testing you are doing. Use one or the other but not both.

Unlike mq2fps, mq2eqwire does not Sleep(xxxxx) the mainloop. All it does is skip over the draw call.

This means MQ2/eq will run faster.
It doesn't necessarily mean you will lower cpu usage because your macros will now execute faster and EverQuest will be able to execute other functions faster instead of spending time drawing stuff.

That also means if your character who is in the background and following your main using for example /stick will never ever get stuck or lag behind. If it does it's because u have some other plugin sleeping in the mainloop, for example eq built in FPS limiter or mq2fps.

The problem with mq2fps and built in FPS limiter is that both has functionality that is misleading. A true FPS limiter (which mq2eqwire is) limits drawing per second (Frames (Drawed) Per Second) but mq2fps as well as the built in version in options also adds a sleep to the mainloop which will lower cpu for sure but it also lowers performance. So if anything we should rename the plugin and the in game option to PLS (Performance Limiting per Second)

Now I understand that if people want to actually lower the performance in order to lower the cpu usage, they should have that option and in that case use mq2fps, but if you are only after skipping drawing while in the background to increase performance, then use mq2eqwire.
 
Joined
Jun 18, 2014
Likes
252
RedCents
3,853¢
#7
the frame rate did increase(due to wire frames) maybe add once in foreground turn off wire? just a thought sort of like viewport does. I just loaded it in my guild hall but I am wondering do I need to zone to see a change? I have background 0 as my ini setting also
 

eqmule

MQ2 Lead Dev
Moderator
Joined
Feb 1, 2013
Likes
444
RedCents
20,407¢
#8
I need to remove the /wire command cause it seem to cause confusion.

Please don't use the /wire command.

This plugin does nothing for you if you only run it on one client and that client has focus.
Only clients that are not in focus (background client) will benefit from this plugin
 
Joined
Jun 18, 2014
Likes
252
RedCents
3,853¢
#9
thats how i have it, 1 toon i drive has it loaded but not /wire on 8 other accounts with it loaded and /wire on

and I love seeing it all in wire frame reminds me of eqdraw
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#10
Perhaps we should set EQWire to unload mq2fps to prevent misuse
 
Joined
Jun 18, 2014
Likes
252
RedCents
3,853¢
#11
would be helpful. Seem to have no issues so far with it running and no mq2fps
 

eqmule

MQ2 Lead Dev
Moderator
Joined
Feb 1, 2013
Likes
444
RedCents
20,407¢
#12
Mq2fps still has the option to slow down the gameloop and as weird as it sounds some people want that cause although it makes your game lag, it also lowers cpu...
 
Joined
Jun 18, 2014
Likes
252
RedCents
3,853¢
#14
fyi I have been using this since it was posted while boxing 12 seems to be working ok so far no issues no mq2fps nor using mq2cpuload and no eqplaynice. seems to be reducing overall resoruces, ram has been down can almost get to 14 clients. cpu usage down also just the weird when bringing a background instance to foreground slight loading of about 1 second.
 

jimbob

Moderator
Joined
May 31, 2014
Likes
124
RedCents
2,378¢
#16
If you test this, you need to unload mq2fps because using both will surely screw up any kind of testing you are doing. Use one or the other but not both.

Unlike mq2fps, mq2eqwire does not Sleep(xxxxx) the mainloop. All it does is skip over the draw call.

This means MQ2/eq will run faster.
It doesn't necessarily mean you will lower cpu usage because your macros will now execute faster and EverQuest will be able to execute other functions faster instead of spending time drawing stuff.

That also means if your character who is in the background and following your main using for example /stick will never ever get stuck or lag behind. If it does it's because u have some other plugin sleeping in the mainloop, for example eq built in FPS limiter or mq2fps.

The problem with mq2fps and built in FPS limiter is that both has functionality that is misleading. A true FPS limiter (which mq2eqwire is) limits drawing per second (Frames (Drawed) Per Second) but mq2fps as well as the built in version in options also adds a sleep to the mainloop which will lower cpu for sure but it also lowers performance. So if anything we should rename the plugin and the in game option to PLS (Performance Limiting per Second)

Now I understand that if people want to actually lower the performance in order to lower the cpu usage, they should have that option and in that case use mq2fps, but if you are only after skipping drawing while in the background to increase performance, then use mq2eqwire.
I can't believe that Sleep would be used in a main loop of a program. It's generally safe for threads, but is far less than ideal to limit frame rate. In an ideal world, MQ2 (or at least macro/plugin execution) would take place in a different thread, but thread synchronization functions and thread safety are a real PITA (ask the new EQBCS server if you don't believe me). :)
 
Joined
Dec 29, 2017
Likes
984
RedCents
4,170¢
#17
Testing with MQ2EQWire - 6/1/18

Note: Foreground info was attained by "peeking" at the Task Manager by hovering it in the taskbar and watching the number, as EQ thought the instance was still in the foreground.

MQ2EQWire Loaded.

Set unlimited Foreground/Background FPS on advanced EQ Display settings while stationary in the foreground, a single instance of eqgame.exe:
  • CPU Usage: 11.7-12.5%
  • Memory Usage: 984.5mb (Least Memory Usage set)
  • GPU Usage: 13-16%

Set unlimited Foreground/Background FPS on advanced EQ Display settings while stationary in the background, a single instance of eqgame.exe:
  • CPU Usage: 9.5-11.2
  • Memory Usage: 988.5mb (Least Memory Usage set: may have increased due to increased time in the game?)
  • GPU Usage: 15.4-18% (You could watch it climb when the instance was moved to background)




Set Foreground FPS to 26 on advanced EQ Display settings while stationary in the foreground, a single instance of eqgame.exe:
  • CPU Usage:4.3-7.9%
  • Memory Usage:1055.7 (Least Memory Usage set...memory usage appears to be unaffected by MQ2EQWire)
  • GPU Usage:5.1-6.8%

Set Foreground FPS to 26 on advanced EQ Display settings while stationary in the background, a single instance of eqgame.exe:

  • CPU Usage: 2.1-2.5%
  • Memory Usage: 962.4 MB (Least Memory Usage set: Accidentally closed the game while changing from discord to taskmanager, to eq, to chrome, to fail. Lol)
  • GPU Usage: 2.2-3.3%

MQ2EQWire not loaded.

Set unlimited Foreground/Background FPS on advanced EQ Display settings while stationary in the foreground AND background, a single instance of eqgame.exe:
  • CPU Usage: 11.4-13.3
  • Memory Usage:1051.6MB (least Memory Usage set)
  • GPU Usage: 13.4-14.1

Set Foreground FPS to 26 on advanced EQ Display settings while stationary in the foreground AND background, a single instance of eqgame.exe:
  • CPU Usage: 6.6-8%
  • Memory Usage: 1051.4MB (Least Memory Usage set)
  • GPU Usage: 6.2-6.8%


Results: EQ built-in FPS setting does have an effect on the CPU/GPU usage, but adding MQ2EQWire to the mix does help the situation. I did test background FPS alteration without MQ2EQWire and found that CPU/GPU were affected, but not as significantly as using both MQ2EQWire and the built in FPS settings. Additionally, it didn't appear to affect memory, so you're still limited on the number of instances you can run based on physical memory. But Setting lower Foreground FPS with MQ2EQWire -does- benifit you greatly compared to not adjusting it. Simply because when in the foreground MQ2EQWire simply doesn't do anything.

Why is that foreground FPS being changed in the game affects the background usages while running MQ2EQWire? No idea. But the overall take away here is that used in conjunction to limit foreground FPS you can, in fact, use less overall CPU/GPU by an impressive amount.
@eqmule
 

Razkle

Single-handedly keeping Daybreak in business
Moderator
Joined
Mar 27, 2014
Likes
113
RedCents
1,723¢
#18
set it to 26 and noticed an immediate change, well done!
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#19
Redbot submitted a new resource:

MQ2EQWire - Reduce EverQuest's CPU and GPU usage


A RedGuides exclusive plugin
MQ2EQWire lowers the CPU and GPU requirements for EverQuest when it's running in the background without affecting in-game performance. FPS limiters claim to do something similar, such as the one included in EverQuest's options -> display -> advanced as well as MQ2FPS, but they also reduce response and action times of clients running in the background. MQ2EQWire entirely...
Read more about this resource...
 
Joined
Oct 5, 2012
Likes
4
RedCents
741¢
#20
I havent used it, but does it actually make things look like wire frames? Could someone take a picture? Obviously, obscuring whatever needs to be obscured.
 
Joined
Jan 20, 2013
Likes
86
RedCents
651¢
#21
I havent used it, but does it actually make things look like wire frames? Could someone take a picture? Obviously, obscuring whatever needs to be obscured.
Doesnt look like anything. Imagine mq2fps without rendering the screen when its in the background at all. Except the macros and EQ dont lag.
 
Joined
Dec 29, 2017
Likes
984
RedCents
4,170¢
#22
@Slade the Magician It does not make things appear to be wireframe. It causes any background processes of EQ to stop drawing 3d Graphics. However, the character can still move around as if the graphics were functional. This does not keep the UI from updating.
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#23
In alpha versions it showed everything in wireframe, it looked really cool.
 
Joined
Nov 7, 2013
Likes
17
RedCents
251¢
#24
I havent used it, but does it actually make things look like wire frames? Could someone take a picture? Obviously, obscuring whatever needs to be obscured.
no it doesn't. It literally just doesn't draw. The screen will stay the exact same as when you take it away from being the front. Chat and boxes still update but the picture doesn't.
Edit: After i posted there were 2 more posts explaining it lol
 
Joined
Sep 21, 2017
Likes
8
RedCents
90¢
#26
I run my toons with /viewport 896 0 2048 1536
Will it go back to that when I switch between toons? Or will reset viewport to default?
Or can I set the ini to switch back to whatever viewport setting I want?
 
Joined
Mar 24, 2018
Likes
117
RedCents
834¢
#27
I unloaded viewport after installing this because it seems to do the same thing only better.
 
Joined
Sep 21, 2017
Likes
8
RedCents
90¢
#28
I run my toons with /viewport 896 0 2048 1536
Will it go back to that when I switch between toons? Or will reset viewport to default?
Or can I set the ini to switch back to whatever viewport setting I want?
I posted this on the wrong thread. Lmao
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#29
Agreed, there is no reason for viewport if you have eqwire
 
Joined
Sep 21, 2017
Likes
8
RedCents
90¢
#30
Where do I find the ini for this?
It isn’t doing anything for me.
I extracted it to my release folder,loaded in my toons, turned on kissassist, typed /bcaa //plugin mq2eqwire, it says it’s loaded but it isn’t working and I can’t find the ini to adjust settings.
 

Redbot

lvl 69 Rouge
Moderator
Joined
Oct 15, 2004
Likes
715
RedCents
41,030¢
#31
Where do I find the ini for this?
It isn’t doing anything for me.
I extracted it to my release folder,loaded in my toons, turned on kissassist, typed /bcaa //plugin mq2eqwire, it says it’s loaded but it isn’t working and I can’t find the ini to adjust settings.
There is no .ini , no configuration.

So you get a message that it's loaded? Does it say "now in front /back" in your mq2 window?
 
Joined
Oct 28, 2005
Likes
73
RedCents
583¢
#35
one thing that i don't like is with dual monitors if i'm surfing the web it thinks my primary EQ window is in the back so stops drawing
 

dannuic

Moderator
Joined
Sep 12, 2004
Likes
122
RedCents
5,912¢
#36
It's the same for all foreground/background detection. All we can do is detect which window has focus, not the geometry of all the windows in your UI. So unfortunately, I don't think that's fixable.
 
Joined
Aug 10, 2015
Likes
19
RedCents
777¢
#38
All I can say is this is amazing. Running 18 I went from 100% CPU usage (with stick figures and no graphics on), to no stick figures, and graphics on, and down to 65ish CPU usage. It's really great.

As stated above, I have dual monitors and run two groups, for the two main chars on screen I just unload the plugin so I can watch in real time.
 

eqmule

MQ2 Lead Dev
Moderator
Joined
Feb 1, 2013
Likes
444
RedCents
20,407¢
#39
Initially this plugin had a /wire on-off command I’m not sure it’s enabled in the rg version but if it is and u want to try it to see what wireframe world looks like go for it but it won’t impact performance the way I thought it would and in some zones it just looks like a black screen with a single wire in it... it’s just for fun at this point until I figure out more about that stuff... anyway /wire is not it’s primary function for now that’s just fluff, the real benefit in it is the no drawing while in the back...
 
Top