RangeCircle 1.2.6 - User Manual
================================

1. What is RangeCircle?

RangeCircle is a projection-only range overlay addon for Return of Reckoning.

It displays one or more projected range circles around your character. Unlike the earlier 2D ellipse versions, this build calculates a real horizontal circle in world coordinates and projects each point to screen space with WorldToScreen.

It is not a true ground decal, but it behaves much more naturally with camera angle and zoom.

2. Installation

Extract the folder into:

Interface\AddOns\RangeCircle

Required structure:

Interface\AddOns\RangeCircle\RangeCircle.mod
Interface\AddOns\RangeCircle\RangeCircle.lua
Interface\AddOns\RangeCircle\RangeCircle.xml
Interface\AddOns\RangeCircle\RangeCircleCamera.lua
Interface\AddOns\RangeCircle\RangeCircleZoneData.lua
Interface\AddOns\RangeCircle\textures\dot.dds

Requires LibSlash.

3. Opening the menu

/rangecircle menu

Alternative:

/rangecircle config
/rangecircle ui

4. Range presets

/rangecircle preset 10
/rangecircle preset 20
/rangecircle preset 25
/rangecircle preset 30
/rangecircle preset 45

5. Rings

RangeCircle supports up to three projected rings.

/rangecircle ring 1
/rangecircle ring 2
/rangecircle ring 3

Enable or disable the active ring:

/rangecircle enable
/rangecircle disable
/rangecircle ringtoggle

Show only the active ring:

/rangecircle one

Show three default rings:

/rangecircle three

6. Centering

If the projected ring does not visually align with the character, use:

/rangecircle nudge 10 0
/rangecircle nudge -10 0
/rangecircle nudge 0 10
/rangecircle nudge 0 -10

You can also set an exact offset:

/rangecircle move x y

Reset the projected offset:

/rangecircle center

7. Projection tuning

Quality:

/rangecircle quality low
/rangecircle quality normal
/rangecircle quality high

Point size:

/rangecircle pointsize 20

Ground/Z offset:

/rangecircle zoffset 4

Calibration guide:

The most important projected-mode calibration is the ground/Z offset. If the circle is projected too high or too low, it may appear to slide over the floor when you rotate or tilt the camera, even if your character has not moved.

Recommended starting value:

/rangecircle zoffset 4

Suggested calibration method:

1. Stand on a flat floor with clear tile/grid lines.
2. Set the ring to a visible preset, for example /rangecircle preset 20 or /rangecircle preset 30.
3. Use a top-down camera and note which floor tiles the ring touches.
4. Lower the camera to your normal gameplay angle without moving the character.
5. If the ring no longer touches the same floor tiles, adjust Z offset, not nudge.
6. Try small changes around 4, for example /rangecircle zoffset 3, /rangecircle zoffset 4 and /rangecircle zoffset 5.
7. Use nudge only after Z offset is stable, and only to centre the ring visually around the character.

Rule of thumb:

- If the ring shifts when the camera angle changes, adjust zoffset.
- If the ring is consistently displaced in every camera angle, adjust nudge.

Opacity:

/rangecircle alpha 70

Colour:

/rangecircle color 80 200 255

8. Limitations

RangeCircle does not create a true 3D decal on the terrain. It draws projected UI points. Sloped terrain, stairs and unusual camera/animation states may require small manual offsets.

9. Best practice

Use normal or high quality when testing calibration.
Use point size 20-28 if the points are hard to see.
Use nudge controls from the menu to centre the circle once, then leave the offset saved.


Version 1.2.2: added more colour presets in the menu (White, Cyan, Purple, Orange, Pink and Lime).


Version 1.2.2: reorganised the configuration menu into clearer columns and sections.


Version 1.2.3: added a calibration guide and changed the recommended/default projected ground height to zoffset 4 after in-game testing.


Version 1.2.6 calibration update:
- Projected range presets were recalibrated using War Quarters floor tiles, treating each tile as 5 ft.
- The projected world scale now uses 14 internal units per foot for 10/20/25/30/45 ft rings.
- Dot placement now uses adaptive screen-space spacing, so large rings have more uniform point distribution and fewer empty edges.


Version 1.2.6 notes:
- Added the 40 ft preset.
- PROJECTED_UNITS_PER_FOOT is now calibrated to 16.
- Added custom projected radius commands: /rangecircle range <feet>, /rangecircle feet <feet>, /rangecircle radius <feet>.
- Added menu buttons Range -1 ft and Range +1 ft for active ring custom sizes.


Version 1.2.6: added a Default ranges button and /rangecircle defaultranges command to restore the default Ring 1/2/3 preset ranges.
