3.0 (May 05, 2023)
====================
Updated to be compatible with Starsector 0.96a
Renamed mod back to Combat Radar and removed all campaign functionality
Greatly increased the default maximum shown for all renderer plugins
2.5b (August 28, 2020)
========================
Moved version file hosting to GitHub
2.5 (November 16, 2018)
=========================
Updated to be compatible with Starsector 0.9a
Added the Squall to the missile lock icon exclusion list
Missile renderer changes:
- Changed missile contact colors to make them easier to distinguish from ships
(default dark purple for enemy and burnt out missiles, dark green for allied,
orange for missiles that are locked onto the player ship)
- Added "enemyMissileColor" and "friendlyMissileColor" to radar_settings.json
2.4c (May 05, 2017)
=====================
Temporarily hide ship debris (will write a proper renderer for it later)
2.4b (April 21, 2017)
=======================
Fixed choppy radar animations when time dilation ship systems are in effect
2.4 (April 21, 2017
=====================
Updated to be compatible with Starsector 0.8a
Campaign radar is disabled by default now that vanilla has its own radar UI
- Enable by setting "showCampaignRadar" to false in data/config/settings.json
2.3b (March 16, 2017)
=======================
Switched version file hosting to Bitbucket
Combat Readiness renderer changes:
- Fixed timer bar being misaligned by a single pixel
2.3 (November 10, 2016)
=========================
Bumped up default radar size by 25% (was 1/5 of display height, now 1/4)
Slightly lowered default radar transparency (was 70%, now 65%)
Reversed direction of radar ring fade, now more transparent towards center
- To use the old setting, enable "reverseRingFade" in radar_settings.json
Added "showMemoryUsage" setting to radar_settings.json (disabled by default)
Fixed SpriteBatch position issues when used with non-centered SpriteAPIs
Removed Slick2D geometry classes (now unused, see ShipRenderer changes below)
Added data/config/radar/excluded_missile_locks.csv:
- Missiles in this file will not be drawn orange when targeting the player,
nor will a missile lock icon be shown
Campaign nebula renderer changes:
- Custom campaign terrain with the tag "radar_nebula" will be drawn as nebulae
- Added slight alpha level variations to visually break up the nebula tile map
Combat asteroid renderer changes:
- Fixed asteroids being drawn when the player flagship is destroyed
Missile renderer changes:
- Fixed flares using the wrong settings, obeys flareContactSize setting now
Ship renderer changes:
- Completely rewritten; now draws ships using their sprite, not collision
bounds, for perfect accuracy - this includes fighters as well
- Shields are now drawn underneath ships
- Minimum render sizes for ships and fighters (independent of zoom level; by
default a ship will never go below 8 pixels wide, nor a fighter below 6)
This should fix small ships becoming nigh-invisible at max zoom
- Bumped up default maxShown setting to 100 (was 60)
- New settings:
- "renderMode", controls whether ships/fighters are drawn using their sprites
or as simple triangles. Valid options: SPRITES, SIMPLE_FIGHTERS, SIMPLE_ALL
- "minShipSize", minimum size in pixels a ship will be rendered at regardless
of current zoom level (no more invisible ships at max zoom)
- "minFighterSize", same as above, but for fighters only
- "simpleIcon", the sprite used when a simple render mode is used. By default
this is the same triangle used for fleets in the campaign radar
New combat renderer: NebulaRenderer
- Equivalent to campaign nebulae renderer
2.2 (December 25, 2015)
=========================
Empty rows in radar CSVs are ignored correctly
Added to radar_settings.json:
- "radarSize", determines the size of the radar as a fraction of the display
height, defaults to 0.2 or 20% display height. Keep in mind that the radar
adds 10% of its diameter as padding to the side/below.
- "allyColor", the color of teammates in battle
Increased default "maxShown" settings due to optimizations to sprite rendering
Added getAlliedContactColor() to CommonRadar interface
Added isPointOnRadar() to CommonRadar interface
Added ReloadRadar console command (only if Console Commands mod is enabled)
Battle progress renderer changes:
- Allies have their own section of the bar
Combat ship renderer changes:
- Allied ships have their own color
New campaign renderer: NebulaRenderer
- Handles nebula and deep hyperspace, does not show hyperspace storms yet
New optional renderer: MemoryUsageRenderer
- Appears to the left of the radar in both campaign and combat
- White portion of bar is fraction used of max allocatable memory
- Gray portion of bar is fraction allocated of max allocatable memory
- Shows heap memory on left, non-heap memory on right
(heap is the value most users will want to keep an eye on)
- Disabled by default, enable in the relevant CSVs in data/config/radar
New utility class: SpriteBatch
- Aids in efficiently drawing a sprite many times in a row
Miscellaneous optimizations and improvements
2.1 (November 19, 2015)
=========================
(thanks to MesoTroniK for spritework and extensive help testing new features)
Updated to be compatible with Starsector 0.7a
The "maxShown" setting has been enabled for all renderers, defaults increased
Added "verticesPerCircle" setting, increase this for smoother radar rings
Asteroid renderer (both campaign and combat) changes:
- Uses a sprite now, should look much smoother
- Scaled based on their true size, not a flat value multiplied by zoom level
Campaign fleet renderer changes:
- Uses a sprite now, should look much smoother
- Unknown (transponder off) contacts are shown in neutral colors
- Fixed issue where player fleet would flash bounty colors if a faction was
paying for kills against their enemies and was hostile towards the player
Planet renderer changes:
- Uses vanilla map icons instead of polygons
- Differentiates between planets and stars
Battle objective renderer changes:
- Fixed pop-in issue when objective is at the very edge of radar
- Added a slight tinge to the center of the objective diamond
- Changed render order to be drawn below other combat entities
Combat readiness renderer changes:
- Bar is dimmed until you have started losing combat readiness
- Remaining peak CR timer is shown as a white line down the middle of the bar
Combat ship renderer changes:
- Separated ship and shield rendering
- Increased transparency of shields
- Added smoothing to shields (might cause artifacts on some cards, let me know)
- Bumped default shield segment count from 18 (?!) to 64
- Transparency of ship contacts is based on the alpha of the actual sprite
- Ships with custom right click ship systems won't be momentarily
transparent on the radar when using them now (ex: Exigency Incorporated)
- Fighters taking off or landing on a carrier should fade in/out
- Removed "phasedShipAlphaMult" setting, added "minShipAlphaMult"
(ships with 0 alpha will be completely invisible regardless of this setting)
- Polygon triangulator is now a config file option, added the other Slick2D
triangulator implementations
- Fixed bug causing shields to have the wrong number of segments
- Bumped default fighter contact scaling from 175% to 225% actual size
- Use sprite size instead of collision radius for calculating fighter size
(this should fix the issue with shield drones and their oversized radius)
- Fixed issue where a fighter's shields weren't being scaled
Missile renderer changes:
- Uses a sprite now, should look much smoother, sprite shows facing of missile
- Differentiates between missiles and flares
- Missile contacts are the same size at every zoom level
- New settings: "missileContactSize" and "flareContactSize"
2.0 (October 04, 2015)
========================
Radar framerate is now separate from Starsector's framerate, defaults to 20 FPS
Merged radar settings into a single file, data/config/radar/radar_settings.json
Combined campaign and combat radars into one codebase
Replaced CampaignRadar and CombatRadar with a generic CommonRadar interface
Added excluded_ships.csv, can exclude single hulls or ones with certain prefixes
Added excluded_missiles.csv, can exclude missiles by their projectile ID
Added RadarSettings class to retrieve loaded renderers and radar settings
Added getCurrentSightRadius() to CommonRadar interface
Improved icon for relays in the campaign
All renderers now support a "maxShown" setting where valid
Campaign fleet renderer changes:
- Fleets with a bounty on their head are now shown as gold on the radar
(faction-level bounties flash between gold and their regular color so you
won't accidentally chase/attack a friendly faction)
Combat progress renderer changes:
- Relative fleet balance calculation is no longer based on information that
the player can't obtain in-game, is instead now based on the ship's fleet
point costs (with a 75% penalty to calculated strength for civilian ships)
New combat renderer: MapBorderRenderer
- Displays retreat zones in yellow
- Displays gravity barrier line in red
- Displays out of bounds in grey
New combat renderer: ShipRenderer
- Replaces ShipSimpleRenderer and ShipPolygonRenderer
- Draws proper polygons for ships instead of approximations like old system
- Will fall back to approximations on ships that can't be triangulated (only
the Paragon in vanilla and a handful of ships in existing mods)
- To draw ships as triangles instead (like with the old ShipSimpleRenderer),
change "simpleMode" to true in radar_settings.json under "shipRenderer"
- Shields are drawn filled, can be reverted to the old behavior by changing
"drawSolidShields" to false in radar_settings.json under "shipRenderer"
New utility class: DrawQueue
- Aids in efficiently drawing many primitive shapes multiple frames in a row
- Handles native buffer allocation/data/resizing automatically
- Uses VBOs if the user's card supports them (hint: it does)
New utility class: ShapeUtils
- Calculates vertices (as float arrays) for common shapes
All interfaces are now fully documented (see javadoc.zip in mod folder)
Miscellaneous optimizations and improvements
1.1f (March 06, 2015)
=======================
Fixed a bug that caused intermittent radar corruption in the campaign
Lines and points on the radar should look much sharper now (thanks Alex)
1.1e (February 12, 2015)
==========================
Stations and planets with the "comm_relay" tag aren't considered relays
The campaign radar won't draw anything with the tag "radar_nodraw"
1.1d (December 09, 2014)
==========================
Hopefully fixed a bug where campaign radar components would occasionally vanish
1.1c (December 03, 2014)
==========================
The radar is no longer drawn over menus or when the HUD is turned off
Greatly increased the speed of the battle progress bar animation
Fixed crash in ShipPolygonRenderer when rendering ships that lack bounds
Radar no longer reactivates when the player's ship is fully destroyed
1.1b (October 23, 2014)
=========================
Campaign fleet renderer changes:
- Fleets are only colored red if they are hostile towards the player
Battle progress bar changes:
- Doesn't show initial relative fleet strengths in a simulation battle
- Ignores ships still in picker in simulation battles
- Doesn't count the reserves of a fleet in full retreat
1.1 (October 21, 2014)
========================
Updated to support Starsector .65a
Station rendering fixed in campaign
Comm relays are now included on the campaign radar
Zooming is now done using +/-, toggling the radar on/off is still K by default
Zooming in/out is now animated
Just my $0.02 on what we're seeing (for what it's worth, given that I am just yapping):I originally tried this as a square box, but IMO rectangular radars are ugly. Definitely agree on matching the UI colors, though. Luckily that's pretty trivial to change.
1. A square presentation using the same colors as the UI would fit better visually.
2. I'd place it in the right corner, so that it's out of the way but isn't in a zone that's too busy with other information.It's in the lower right due to the 'rendering over menus' issue. If I moved it to the top right it'd render over a lot of the tactical map's buttons.
3. I'm sure a fair amount of the CPU time is spent on drawing the vector'd triangles.I wouldn't worry about the triangles, that'll be a non-issue once I optimize. :)
B. Give users a key that can turn it on / off in any context.That's next on my list!
Nicely done! I was wondering about the primitive draw methods you put in LazyLib... ;)I actually added those methods after stumbling across a page (http://slabode.exofire.net/circle_draw.shtml) that described drawing circles using a simple repeated rotation. At the time I didn't even know rendering in combat was possible and was planning on making a campaign-level radar. :)
I meant squared up with the menu edge.Yeah, the current positioning is just an arbitrary guess until I can spend the time getting it right. I don't think the combat UI is scaled, so once I measure the existing UI getting the radar to look good will be easy. I'm considering leaving a bit of extra space for potentially implementing this (http://fractalsoftworks.com/forum/index.php?topic=7516.0) suggestion, though.
As for the aesthetics, the rest of the UI is angular, so it's standing out. A box around it, perhaps, and fade the outer circles, something like this?Spoiler(http://www.wolfegames.com/TA_Section/ss_radar_ui_rework.png)[close]
Honestly this feature should become part of the main code, the current radar system...doesn't give quite a satisfactory amount of real time information. Are you able to have different size and different colour vectors as proposed by Xenoargh, that would be invaluable in larger battles.Maybe as a toggleable option, though I personally prefer the triangles. The trick is including as much information as possible without it being an indecipherable mess, and blurred points take longer to mentally process than distinct shapes. Plus, I think in most battles knowing a ship's facing is more important than their current velocity.
Damn useful indeed. I hope you'll also manage to implement the missiles detection into the radar too, i hate being surprised by Pilums lrm storms.I'm planning on displaying ships (including phased status and a marker around your current target), missiles, asteroids, and maybe shield arcs. There will be a settings file to toggle these on/off. :)
68278 [Thread-6] ERROR com.fs.starfarer.combat.String - java.lang.RuntimeException: Attempt to access data of a consumed InputEvent
java.lang.RuntimeException: Attempt to access data of a consumed InputEvent
at com.fs.starfarer.util.A.C.o00000(Unknown Source)
at com.fs.starfarer.util.A.C.getEventValue(Unknown Source)
at org.lazywizard.radar.CombatRadarPlugin.advance(CombatRadarPlugin.java:210)
at com.fs.starfarer.title.Object.float$Oo.super(Unknown Source)
at com.fs.starfarer.combat.super.B.o00000(Unknown Source)
at com.fs.starfarer.combat.CombatEngine.advance(Unknown Source)
at com.fs.starfarer.combat.F.????00(Unknown Source)
at com.fs.super.oOOO.?0000(Unknown Source)
at com.fs.starfarer.combat.String.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Thread.java:619)
Huh, I've never thought about that. Although as far as I know (which isn't much after only two weeks of OpenGL experience), concave polygons need to be broken up into multiple convex polygons to be filled properly. That would make rendering slower/more difficult.Should be able to use GL_POLYGON, although that's a bit slow.
Have to vote for a different color for missiles as well, otherwise, that's looking TOTALLY AWESOME.
I just hope that it, er, won't kill CPUs if we're dealing with Vacuum-sized space battles, heh.
Awesome. Will try integrating this with the current Vacuum build and see how this goes :D
Is this mod incompatible with other mods atm?
The Radar is pretty epic! I have to ask however if it is possible to show cloaked ships somehow on the radar. It would be kinda nice to know if theres a cloaked ship closing in behind me instead of just a ship. The radar it self works like a charm.
Damn LazyWizard, when will you officially join Fractal Softworks? I mean, everything you do should be definitely added in the game, better directly become a dev rather than a modder. ;D
Having trouble with it crashing when i load up a battle
here's the logSpoiler83951 [Thread-6] ERROR com.fs.starfarer.combat.String - java.lang.NoClassDefFoundError: org/lazywizard/lazylib/opengl/DrawUtils
java.lang.NoClassDefFoundError: org/lazywizard/lazylib/opengl/DrawUtils
at org.lazywizard.radar.CombatRadarPlugin.renderBox(CombatRadarPlugin.java:202)
at org.lazywizard.radar.CombatRadarPlugin.advance(CombatRadarPlugin.java:588)
at com.fs.starfarer.title.Object.float$Oo.super(Unknown Source)
at com.fs.starfarer.combat.super.B.o00000(Unknown Source)
at com.fs.starfarer.combat.CombatEngine.advance(Unknown Source)
at com.fs.starfarer.combat.F.øÒÒ000(Unknown Source)
at com.fs.super.oOOO.Ò00000(Unknown Source)
at com.fs.starfarer.combat.String.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.lazywizard.lazylib.opengl.DrawUtils
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
[close]
Tried integration, but I hit a problem:
CombatRadarPlugin.reloadSettings() won't work; reloadSettings() isn't public.
Just asking, is there a way to integrate this for the campaign screen? Just so I can track fleet further out from my field of view without having to check the campaign map and stopping the game every few seconds.
- Slightly reduced default radar range from 2250 to 2100 su
Am I the only one here feeling that the old default radar range of 2250 was already too short? It just seems contrary to the idea of being a radar and all. I still felt like checking the map & command UI every few seconds to satisfy my OCD of situation awareness with the 2250 default value. Personally I found 5000 to be more suitable for my taste, while an even larger number is required while commanding a carrier fleet with large amount of fighters.
1.1 (October 21, 2014)
========================
Updated to support Starsector .65a
Station rendering fixed in campaign
Comm relays are included on the campaign radar
Zooming is now done using +/-, toggling the radar on/off is still K by default
Zooming in/out is now animated
1.1b (October 23, 2014)
=========================
Campaign fleet renderer changes:
- Fleets are only colored red if they are hostile towards the player
Battle progress bar changes:
- Doesn't show initial relative fleet strengths in a simulation battle
- Ignores ships still in picker in simulation battles
- Doesn't count the reserves of a fleet in full retreat
1.1c (December 03, 2014)
==========================
The radar is no longer drawn over menus or when the HUD is turned off
Greatly increased the speed of the battle progress bar animation
Fixed crash in ShipPolygonRenderer when rendering ships that lack bounds
Radar no longer reactivates when the player's ship is fully destroyed
SpoilerThere seems to be a bug with Common Radar when trying to fight Junk Pirates. I testes it a few times and it crashes the game just in the beginning of the battle when enemy ships are coming into view.
The end of log:Spoiler125474 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.MercAndPirateFleetManager - Checking whether to spawn pirate or merc fleet for market [Gateway]
125474 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.MercAndPirateFleetManager - 1 out of a maximum 2 pirate/merc fleets in play for market [Gateway]
125494 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.MercAndPirateFleetManager - Spawned merc fleet [Mercenary Patrol] from market Gateway
127333 [Thread-5] INFO com.fs.starfarer.combat.CombatEngine - FP1: 127, FP2: 101, maxFP1: 225, maxFP2: 175
185013 [Thread-5] INFO com.fs.starfarer.loading.LoadingUtils - Loading JSON from [shaderSettings.json]
201453 [Thread-5] ERROR com.fs.starfarer.combat.O0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO - java.lang.NullPointerException
java.lang.NullPointerException
at org.lazywizard.radar.renderers.combat.ShipPolygonRenderer.getShape(ShipPolygonRenderer.java:110)
at org.lazywizard.radar.renderers.combat.ShipPolygonRenderer.render(ShipPolygonRenderer.java:247)
at org.lazywizard.radar.CombatRadarPlugin.render(CombatRadarPlugin.java:311)
at org.lazywizard.radar.CombatRadarPlugin.advance(CombatRadarPlugin.java:348)
at com.fs.starfarer.title.ooOO.o0oO$Oo.super(Unknown Source)
at com.fs.starfarer.combat.A.OoOO.o00000(Unknown Source)
at com.fs.starfarer.combat.CombatEngine.advance(Unknown Source)
at com.fs.starfarer.combat.void.void.class$super(Unknown Source)
at com.fs.A.oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOO.?0000(Unknown Source)
at com.fs.starfarer.combat.O0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.super(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)[close][close]
SpoilerI don't really remember, but I think I had a similar crash when I had Common Radar and ASP Syndicate.
Embarrassingly, I never got around to reporting it.[close]
There seems to be a bug with the campaign radar; seemingly at random, when flying around, I notice areas where the radar will first lose the radial radar mask thing, then lose color, then finally disappear entirely. This also causes the combat radar to act funky, though fortunately it does not affect missions.
There seems to be a bug with the campaign radar; seemingly at random, when flying around, I notice areas where the radar will first lose the radial radar mask thing, then lose color, then finally disappear entirely. This also causes the combat radar to act funky, though fortunately it does not affect missions.
Do you play with dev versions of you mods? I have all the currently updated mods active and never observed that.
There seems to be a bug with the campaign radar; seemingly at random, when flying around, I notice areas where the radar will first lose the radial radar mask thing, then lose color, then finally disappear entirely. This also causes the combat radar to act funky, though fortunately it does not affect missions.
Could you try replacing the jar in the mod folder with this one (https://bitbucket.org/LazyWizard/common-radar/downloads/lw_Radar.jar) and see if the problem disappears?
Meanwhile I am off to dig in the mod's code to erase the Combat Radar portion of said code.Nooooooo. The radar's code is by far the ugliest of all my mods.
~SNIP
For the other crash, it looks like you have a newer version of LazyLib that uses API methods that don't exist in old versions of Starsector. For .6.2a you'll want LazyLib 1.9b (https://bitbucket.org/LazyWizard/lazylib/downloads/LazyLib%201.9b.zip).Meanwhile I am off to dig in the mod's code to erase the Combat Radar portion of said code.Nooooooo. The radar's code is by far the ugliest of all my mods.
1.1e (February 12, 2015)
==========================
Stations and planets with the "comm_relay" tag aren't considered relays
The campaign radar won't draw anything with the tag "radar_nodraw"
The number of patches to 1.1 is getting ridiculous.Well, you're still doing better @ that than OpenSSL, so that's something :D
Ever been mildly annoyed at how hard it is to tell when a ship is about to retreat in a pursuit battle? This might help:Definitely looks useful.Spoiler(https://i.imgur.com/36M2CFj.png)
The dim yellow area shows where retreat is possible. The red line is the gravity barrier around the battle map.[close]
2.0 (October 04, 2015)
========================
Radar framerate is now separate from Starsector's framerate, defaults to 20 FPS
Merged radar settings into a single file, data/config/radar/radar_settings.json
Combined campaign and combat radars into one codebase
Replaced CampaignRadar and CombatRadar with a generic CommonRadar interface
Added excluded_ships.csv, can exclude single hulls or ones with certain prefixes
Added excluded_missiles.csv, can exclude missiles by their projectile ID
Added RadarSettings class to retrieve loaded renderers and radar settings
Added getCurrentSightRadius() to CommonRadar interface
Improved icon for relays in the campaign
All renderers now support a "maxShown" setting where valid
Campaign fleet renderer changes:
- Fleets with a bounty on their head are now shown as gold on the radar
(faction-level bounties flash between gold and their regular color so you
won't accidentally chase/attack a friendly faction)
Combat progress renderer changes:
- Relative fleet balance calculation is no longer based on information that
the player can't obtain in-game, is instead now based on the ship's fleet
point costs (with a 75% penalty to calculated strength for civilian ships)
New combat renderer: MapBorderRenderer
- Displays retreat zones in yellow
- Displays gravity barrier line in red
- Displays out of bounds in grey
New combat renderer: ShipRenderer
- Replaces ShipSimpleRenderer and ShipPolygonRenderer
- Draws proper polygons for ships instead of approximations like old system
- Will fall back to approximations on ships that can't be triangulated (only
the Paragon in vanilla and a handful of ships in existing mods)
- To draw ships as triangles instead (like with the old ShipSimpleRenderer),
change "simpleMode" to true in radar_settings.json under "shipRenderer"
- Shields are drawn filled, can be reverted to the old behavior by changing
"drawSolidShields" to false in radar_settings.json under "shipRenderer"
New utility class: DrawQueue
- Aids in efficiently drawing many primitive shapes multiple frames in a row
- Handles native buffer allocation/data/resizing automatically
- Uses VBOs if the user's card supports them (hint: it does)
New utility class: ShapeUtils
- Calculates vertices (as float arrays) for common shapes
All interfaces are now fully documented (see javadoc.zip in mod folder)
Miscellaneous optimizations and improvements
MWAhahahahahaha.... Perfect!QuoteAdded excluded_ships.csv, can exclude single hulls or ones with certain prefixes
Added excluded_missiles.csv, can exclude missiles by their projectile ID
2.1 (November 19, 2015)
=========================
(thanks to MesoTroniK for spritework and extensive help testing new features)
Updated to be compatible with Starsector 0.7a
The "maxShown" setting has been enabled for all renderers, defaults increased
Added "verticesPerCircle" setting, increase this for smoother radar rings
Asteroid renderer (both campaign and combat) changes:
- Uses a sprite now, should look much smoother
- Scaled based on their true size, not a flat value multiplied by zoom level
Campaign fleet renderer changes:
- Uses a sprite now, should look much smoother
- Unknown (transponder off) contacts are shown in neutral colors
- Fixed issue where player fleet would flash bounty colors if a faction was
paying for kills against their enemies and was hostile towards the player
Planet renderer changes:
- Uses vanilla map icons instead of polygons
- Differentiates between planets and stars
Battle objective renderer changes:
- Fixed pop-in issue when objective is at the very edge of radar
- Added a slight tinge to the center of the objective diamond
- Changed render order to be drawn below other combat entities
Combat readiness renderer changes:
- Bar is dimmed until you have started losing combat readiness
- Remaining peak CR timer is shown as a white line down the middle of the bar
Combat ship renderer changes:
- Separated ship and shield rendering
- Increased transparency of shields
- Added smoothing to shields (might cause artifacts on some cards, let me know)
- Bumped default shield segment count from 18 (?!) to 64
- Transparency of ship contacts is based on the alpha of the actual sprite
- Ships with custom right click ship systems won't be momentarily
transparent on the radar when using them now (ex: Exigency Incorporated)
- Fighters taking off or landing on a carrier should fade in/out
- Removed "phasedShipAlphaMult" setting, added "minShipAlphaMult"
(ships with 0 alpha will be completely invisible regardless of this setting)
- Polygon triangulator is now a config file option, added the other Slick2D
triangulator implementations
- Fixed bug causing shields to have the wrong number of segments
- Bumped default fighter contact scaling from 175% to 225% actual size
- Use sprite size instead of collision radius for calculating fighter size
(this should fix the issue with shield drones and their oversized radius)
- Fixed issue where a fighter's shields weren't being scaled
Missile renderer changes:
- Uses a sprite now, should look much smoother, sprite shows facing of missile
- Differentiates between missiles and flares
- Missile contacts are the same size at every zoom level
- New settings: "missileContactSize" and "flareContactSize"
Since this last update, the combat radar seems basically unusable for me at the widest zoom (least zoomed-in) setting. Anything smaller than a cruiser amounts to a small sliver of pixels, with frigates being like 5x2. I don't recall it being that way in the previous version, but I don't see anything in the changes that would explicitly cause it. My screen resolution is horrid by today's standards at 1280x800, so I can't complain too much.
On that note, is there a way to scale the whole interface? I feel like I could almost double the size of the radar and not have it particularly in the way.
2.2 (December 25, 2015)
=========================
Empty rows in radar CSVs are ignored correctly
Added to radar_settings.json:
- "radarSize", determines the size of the radar as a fraction of the display
height, defaults to 0.2 or 20% display height. Keep in mind that the radar
adds 10% of its diameter as padding to the side/below.
- "allyColor", the color of teammates in battle
Increased default "maxShown" settings due to optimizations to sprite rendering
Added getAlliedContactColor() to CommonRadar interface
Added isPointOnRadar() to CommonRadar interface
Added ReloadRadar console command (only if Console Commands mod is enabled)
Battle progress renderer changes:
- Allies have their own section of the bar
Combat ship renderer changes:
- Allied ships have their own color
New campaign renderer: NebulaRenderer
- Handles nebula and deep hyperspace, does not show hyperspace storms yet
New optional renderer: MemoryUsageRenderer
- Appears to the left of the radar in both campaign and combat
- White portion of bar is fraction used of max allocatable memory
- Gray portion of bar is fraction allocated of max allocatable memory
- Shows heap memory on left, non-heap memory on right
(heap is the value most users will want to keep an eye on)
- Disabled by default, enable in the relevant CSVs in data/config/radar
New utility class: SpriteBatch
- Aids in efficiently drawing a sprite many times in a row
Miscellaneous optimizations and improvements
{
"plugins":
{
#"CombatRadarPlugin":"org.lazywizard.radar.plugins.CombatRadarPlugin"
},
"graphics":
{
"radar":
{
"flare":"graphics/lw_radar/campaign/planet.png",
"missile":"graphics/lw_radar/combat/missile.png",
"missileLock":"graphics/lw_radar/combat/missile_lock.png",
"asteroid":"graphics/lw_radar/campaign/planet.png",
"fleet":"graphics/lw_radar/campaign/fleet.png",
"jumpPoint":"graphics/lw_radar/campaign/portal.png",
"planet":"graphics/lw_radar/campaign/planet.png",
"star":"graphics/lw_radar/campaign/star.png",
"station":"graphics/lw_radar/campaign/station.png",
"relay":"graphics/lw_radar/campaign/relay.png",
"nebula":"graphics/lw_radar/campaign/nebula.png"
}
}
}
2.3 (November 10, 2016)
=========================
Bumped up default radar size by 25% (was 1/5 of display height, now 1/4)
Slightly lowered default radar transparency (was 70%, now 65%)
Reversed direction of radar ring fade, now more transparent towards center
- To use the old setting, enable "reverseRingFade" in radar_settings.json
Added "showMemoryUsage" setting to radar_settings.json (disabled by default)
Fixed SpriteBatch position issues when used with non-centered SpriteAPIs
Removed Slick2D geometry classes (now unused, see ShipRenderer changes below)
Added data/config/radar/excluded_missile_locks.csv:
- Missiles in this file will not be drawn orange when targeting the player,
nor will a missile lock icon be shown
Campaign nebula renderer changes:
- Custom campaign terrain with the tag "radar_nebula" will be drawn as nebulae
- Added slight alpha level variations to visually break up the nebula tile map
Combat asteroid renderer changes:
- Fixed asteroids being drawn when the player flagship is destroyed
Missile renderer changes:
- Fixed flares using the wrong settings, obeys flareContactSize setting now
Ship renderer changes:
- Completely rewritten; now draws ships using their sprite, not collision
bounds, for perfect accuracy - this includes fighters as well
- Shields are now drawn underneath ships
- Minimum render sizes for ships and fighters (independent of zoom level; by
default a ship will never go below 8 pixels wide, nor a fighter below 6)
This should fix small ships becoming nigh-invisible at max zoom
- Bumped up default maxShown setting to 100 (was 60)
- New settings:
- "renderMode", controls whether ships/fighters are drawn using their sprites
or as simple triangles. Valid options: SPRITES, SIMPLE_FIGHTERS, SIMPLE_ALL
- "minShipSize", minimum size in pixels a ship will be rendered at regardless
of current zoom level (no more invisible ships at max zoom)
- "minFighterSize", same as above, but for fighters only
- "simpleIcon", the sprite used when a simple render mode is used. By default
this is the same triangle used for fleets in the campaign radar
New combat renderer: NebulaRenderer
- Equivalent to campaign nebulae renderer
2.3b (March 16, 2017)
=======================
Switched version file hosting to Bitbucket
Combat Readiness renderer changes:
- Fixed timer bar being misaligned by a single pixel
2.4 (April 21, 2017
=====================
Updated to be compatible with Starsector 0.8a
Campaign radar is disabled by default now that vanilla has its own radar UI
- Enable by setting "showCampaignRadar" to false in data/config/settings.json
2.4b (April 21, 2017)
=======================
Fixed choppy radar animations when time dilation ship systems are in effect
Kinda wished the 0.8 campaign radar would show deep hyperspace.
Kinda wished the 0.8 campaign radar would show deep hyperspace.
(It does? Or am I missing something?)
The radar doesn't handle ship splitting properly.
Can this mod be used only for combat? I rather like the vanilla radar, but it's only in the campaign.
Version 2.4 is up, get it here (https://bitbucket.org/LazyWizard/common-radar/downloads/Common%20Radar%202.4.zip) (mirror (http://www.mediafire.com/file/o4ilgc5c9bwduad/Common_Radar_2.4.zip)). This mod requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0).
Changelog:Quote2.4 (April 21, 2017
=====================
Updated to be compatible with Starsector 0.8a
Campaign radar is disabled by default now that vanilla has its own radar UI
- Enable by setting "showCampaignRadar" to false in data/config/settings.json
I would wait to get this until after the Wizard fixes it for splitting shipsCan this mod be used only for combat? I rather like the vanilla radar, but it's only in the campaign.Version 2.4 is up, get it here (https://bitbucket.org/LazyWizard/common-radar/downloads/Common%20Radar%202.4.zip) (mirror (http://www.mediafire.com/file/o4ilgc5c9bwduad/Common_Radar_2.4.zip)). This mod requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0).
Changelog:Quote2.4 (April 21, 2017
=====================
Updated to be compatible with Starsector 0.8a
Campaign radar is disabled by default now that vanilla has its own radar UI
- Enable by setting "showCampaignRadar" to false in data/config/settings.json
2.5 (November 16, 2018)
=========================
Updated to be compatible with Starsector 0.9a
Added the Squall to the missile lock icon exclusion list
Missile renderer changes:
- Changed missile contact colors to make them easier to distinguish from ships
(default dark purple for enemy and burnt out missiles, dark green for allied,
orange for missiles that are locked onto the player ship)
- Added "enemyMissileColor" and "friendlyMissileColor" to radar_settings.json
This mod does not break anything !!!
It must be something else . best to show a screenshot with the problem! ;)
How come more people aren't begging for this to be updated to 0.95a? Does it secretly already work on 0.95a? or is there a new mod that's taken this mod's place?
Does it secretly already work on 0.95a?
How come more people aren't begging for this to be updated to 0.95a? Does it secretly already work on 0.95a? or is there a new mod that's taken this mod's place?
Maybe other people are polite.
How come more people aren't begging for this to be updated to 0.95a? Does it secretly already work on 0.95a? or is there a new mod that's taken this mod's place?
In this case you'd be correct. I threw up an untested 0.95a version of the mod on the Discord on the day 0.95a released. I haven't heard any reports of problems, so I assume it works fine. You can grab it here (https://cdn.discordapp.com/attachments/825068217361760306/825088447999770634/Combat_Radar_dev_discord.zip).
I appreciate having the dev version and acknowledge that people develop these mods for free so beggars can't be choosers, but...
If it's possible to just change the number and have it work, and that version is already spread online and linked to this thread, why not just call that an updated version and clear up any confusion? It's listed on the mod index thread as "incompatible" when it really isn't incompatible. Maybe I'm missing something but if there is a functioning version why not just call that v2.5c or whatever and solve what seems to be just a bureaucratic issue?
3.0 (May 05, 2023)
====================
Updated to be compatible with Starsector 0.96a
Renamed mod back to Combat Radar and removed all campaign functionality
Greatly increased the default maximum shown for all renderer plugins
{"enabledMods": [
"$$$_lightshow_nc",
"adjustable_skill_thresholds",
"anotherportraitpack",
"lw_autosave",
"brdy_addon",
"blackrock_driveyards",
"combatactivators",
"cmutils",
"timid_commissioned_hull_mods",
"lw_console",
"aaacrew_replacer",
"hm_flagpack",
"exoticatechnologies",
"GrandColonies",
"Guardian_prototype",
"HexShields",
"sun_hyperdrive",
"IndEvo",
"lw_lazylib",
"leadingPip",
"lunalib",
"MagicLib",
"nexerelin",
"planet_search",
"yunru_pilot_radiant",
"scalartech",
"speedUp",
"sun_starship_legends",
"tahlan",
"Tesseract_prototype",
"uaf",
"US",
"variants_lib",
"audio_plus",
"shaderLib"
]}