View Full Version : Added Radar to CVS
Hello,
I have commited these things in CVS:
- ShowEQ-like radar, with targets on the rim. Changes:
+ frmMain.cs (1.5): added radarWindow to the DockingManager
+ MapCon.cs (1.14): notifies radar about player heading, targetted mob heading, targetted spot heading
+ RadarCon.cs (1.1): new, implements the radar
EDIT: in the current version in CVS, this change is added:
- Added a second circle on the radar: all blips which are in the range circle of the player are inside this
inner circle; all blips which are up to 2 times the range away are between the outer and the inner
circle, and the rest of blips are on the outer circle (optional feature)
- All mobs near the player are now displayed on the map, too. It's designed to be
optional, but the actual option isn't implemented in the menu (look for "radar" in the Settings class). Also, they can either use non-obtrusive cammo colors, or con colors.
In other words: The radar works like a fish eye lens for blips that are close to the player.
EDIT: Some code maintenance:
- MapPane, MapCon: Removed all usages of "Parent" - other components are set explicitly now, with SetComponents() called by frmMain.
Also, the major internal structures of the application have been refactored / cleaned up to make way for future enhancements. This should not have any visible effect for the end user (except new bugs of course :p ).
Have fun,
42!
And more...
- LogLib.cs added; LogLib.LogLevel added. All log messages cleaned up a bit.
- When loading maps, the correct line number is displayed for warnings.
- Settings.cs created, Settings class moved to there.
- PowerSavings mode added. If the main window is not in the foreground, then power savings are activated, making map redraw a bit less complete but faster. There's a Setting for that too, which is disabled by default. It cannot be activated from the GUI yet, edit prefs.xml and look for EnablePowerSavings.
The log level change means that the meaning of the logging level in the options dialog has been changed a bit. It should be safe to up it to 3 ("Info") for the normal user now. 4 Has debug info, 5 has more debug info, and 9 has that obnoxious trace info which lets the file explode.
TempLoginName
10-08-2004, 12:31 AM
I love power saving mode. Tweaked it to keep ground spawns showing though... you may want to add them back in your official version. They're pretty handy to have. Maybe even make a pwoer saving mode tab in the options window where you pick what major things are on/off in power saving mode.
Also, according to code, minimizing should make the map draw routine stop right? I ask because when running client/server on same machine, it still feels a little too stuttery sometimes (when I have it minimized to collect spawn location data).
Old No Name
slartibartfast
10-08-2004, 04:24 AM
Good Job 42!
I'll add the GUI config options required this weekend and make a new release.
...power saving mode. Tweaked it...
"Tweak" is the key word. What I neglected to mention is that on my PC the things I skip when in power saving mode aren't actually making the stuff use noticeable less power (CPU percentage on task manager) then when in normal mode, since the very basic stuff (cleaning the Graphics, and pasting the buffer to the screen) seem to take up most of the time. :cool: Some heavy tweaking should occur here. Some ideas
- Reduce update rate when in savings mode (not useful for all of us, for example I use the radar myself heavily, which benefits from the quick update rate).
- Switch off the main map altogether - this brings a LOT of CPU - but make sure the radar keeps ticking.
- Forage through the rest of the code, and look for more things to reduce (e.g., network code).
Should experiment with all of this, and different persons will need different stuff active in savings mode even, so maybe some more options are in order. Well, we'll see how it figures up in all of our priorities. :)
Added more to CVS:
PowerSavingsMode replaces PowerSavingsEnable. Possible values are any possible combinations of the following constants:
DrawMap = 0x00000001, // Does not draw the map at all, not even blanking it
Readjust = 0x00000002, // Skips the readjustment
Player = 0x00000004, // Skips drawing the player
Radar = 0x00000008, // Skips the radar
SpotLine = 0x00000010, // Skips the shift-click line
Spawns = 0x00000020, // Skips all spawns
SpawnTrails = 0x00000040, // Skips the trails
GroundItems = 0x00000080, // Skips the ground items
SpawnTimers = 0x00000100, // Skips spawn timers
SimplerSpawns = 0x00000200, // Simplifies spawn drawing a bit (direction lines and such)
SpawnRings = 0x00000400, // Skips rings around unimportant mobs like shopkeepers
GridLines = 0x00000800, // Skips grid lines
ZoneText = 0x00001000, // Skips zone text
//
Off = 0x00000000, // No savings happening
Min = SpawnTrails+ // Standard, nice, savings
SpawnTimers+
SimplerSpawns+
GridLines+
ZoneText,
More = Min+ // Takes away more uncritically things
GroundItems,
EvenMore = More+ // Takes away substantially
Readjust,
Max = 0x0fffffff, // Maximum savings - all enabled
MaxExceptRadar = Max ^ Radar, // Maximum savings - but Radar works
You can use the symbolic names OR integers in the config file.
I use MaxExceptRadar myself, and it reduces CPU usage by 20% when in background - down to 2-5 % CPU with 250ms refresh timer. 2,4 GHz P4.
Just adding stuff here until your next release, Slartibartfast...
- Hunted mobs (and only those) blink on the radar now.
Armaand
10-13-2004, 11:50 AM
HI 42. You seem like a godsend to this project, and I'm glad to see that Slart has some help now.
What exactly is this radar? Untill myseq came out, I used showeq, but I don't recognize this feature...
I also like it useing less memory while in the background, seeing as to how I run 2 eq sessions on one box plus myseq.
The original ShowEQ had a radar too if I recall correctly... you had a little green circle with dots on the edge (not on the circle itself). Was nice, but very limitted in its usefulness (sorry if any ShowEQ developer reads here, just IMO :) ). SEQ now takes the concept much farther. The radar is like a normal map display that's optimized to show the stuff close at hand, and can be conveniently put in a corner of the screen so it's always there. Just look at it when Slarti releases, you'll see everything first time you fire it up. Explaining it would be like showing a standstill of a movie and saying "that's it". :)
In CVS:
- Enhanced the radar so it always displays the nearest hunted mob as well.
Armaand
10-18-2004, 11:58 AM
any eta on next version with radar? or, seeing appears that we are only 3 here, how to implement the radarcon.cs? (Did notice no radarcon.resx. Maybe I should just skip it, lol.)
There is no RadarCon.resx. You should be able to just get the current sources from CVS (using anonymous access) and use the compile.bat (or whatever) to compile it using standard SDK. No need to buy anything.
Only Slartibartfast knows when he'll release. :)
Powered by vBulletin® Version 4.1.11 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.