ryuka_labs-DeadeyeInstinct icon

DeadeyeInstinct

Adds configurable aim assist modes for mouse and controller, including Magnet, Natural, and HardLock, with weakspot targeting, auto fire, and Low / Medium / High presets.

Last updated 2 hours ago
Total downloads 687
Total rating 0 
Categories Mods
Dependency string ryuka_labs-DeadeyeInstinct-1.2.7
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

Deadeye Instinct

Your aim does not move alone.
It follows instinct, pressure, and the weak point hiding under the monster's skin.

Deadeye Instinct is a configurable aim assist overhaul for SULFUR.

It expands the game's original controller aim assist into a stronger and more flexible system for both mouse and controller. It includes three assist styles: Magnet, Natural, and HardLock.

Features

  • Mouse aim assist support
  • Controller aim assist support
  • Three assist styles:
    • Magnet
    • Natural
    • HardLock
  • Optional weakspot targeting
  • Smooth target tracking
  • Low / Medium / High / Custom presets for Magnet and Natural
  • 360-degree HardLock target scanning
  • HardLock target priority scoring
  • Optional AutoFire
  • Runtime weakspot debug overlay
  • Edge softening to reduce snap-back jitter
  • Controller escape handling for Magnet mode
  • In-game toggle key to switch the assist on or off, with an on-screen notice
  • Configurable hold key to temporarily disable the aimbot

Assist Modes

Magnet

Magnet is the stronger normal assist mode.

It behaves like a magnetic pull toward the target area. When weakspot targeting is enabled, it tries to pull toward the best available weakspot instead of the enemy's center.

This mode is recommended if you want a strong but still aim-assist-like effect.

Natural

Natural is the smoother assist mode.

It is designed to feel more like aim friction or sticky aim rather than direct snapping. It helps stabilize aim near targets, reduces overshooting, and keeps player input feeling more natural.

This mode is recommended if you want aim assist without an obvious lock-on feeling.

HardLock

HardLock is the experimental strong lock mode.

It scans hostile NPCs around the player, chooses a target using priority scoring, and directly rotates the camera toward the selected target point. It is designed for extreme assist behavior, not subtle assist.

HardLock can optionally use AutoFire.

Turning It Off In Game

Press the toggle key (default `, the key left of 1) to switch aim assist and AutoFire off, and again to switch them back on. A short notice shows which state you are in. The switch starts on every time the game starts.

Hold the hold-to-disable key (default LeftAlt) to pause the assist only while the key is down.

While the assist is off, the game's own aim assist behaves exactly as it does without the mod.

[Master Switch]
EnableAimbot = true
ToggleKey = BackQuote
HoldDisableKey = LeftAlt

Both keys accept keyboard keys and the middle or side mouse buttons (Mouse2, Mouse3, Mouse4). Set a key to None to turn it off.

Preset System

Magnet and Natural use a simplified preset system.

[Assist Mode]
Mode = Magnet

[Preset]
MagnetPreset = High
NaturalPreset = Medium

Available preset values:

Low
Medium
High
Custom

Rules:

  • Mode = Magnet uses MagnetPreset
  • Mode = Natural uses NaturalPreset
  • Low, Medium, and High use built-in runtime values
  • Custom uses the advanced config values

Default setup:

MagnetPreset = High
NaturalPreset = Medium

HardLock Recommended Config

[Assist Mode]
Mode = HardLock

[Master Switch]
EnableAimbot = true
ToggleKey = BackQuote
HoldDisableKey = LeftAlt

[HardLock]
HardLockMaxDistance = 90
HardLockMaxDistanceCap = 90
HardLockRequireVisibleTarget = true
HardLockRequireLineOfSight = true
HardLockPreferWeakspot = true
HardLockWeakspotBias = 1

[HardLock Target Priority]
HardLockTargetPriority = ThreatWeighted
DistanceWeight = 0.75
LowHealthWeight = 0.25
WeakspotWeight = 0.15
StickyTargetBonus = 0.20

HardLockMaxDistanceCap is a safety cap. The actual search distance is:

min(HardLockMaxDistance, HardLockMaxDistanceCap)

Set HardLockMaxDistanceCap = 0 only if you intentionally want to disable the safety cap.

AutoFire

AutoFire is optional and disabled by default in normal release usage. It does not fire at a target that cannot take damage at the moment, such as a boss between phases.

[Auto Fire]
EnableAutoFire = false
AutoFireOnlyInHardLock = true
AutoFireRequireAligned = true
AutoFireMaxAngleDegrees = 1.0
AutoFirePulseSeconds = 0.04
AutoFireReleaseSeconds = 0.04
AutoFireRespectSemiAuto = true

AutoFire does not directly call:

Weapon.Shoot()
Weapon.AttemptShoot()
Weapon.DispatchProjectile()

Instead, it controls the original trigger state through the game's normal weapon pipeline. This allows the original weapon logic to handle ammo, cooldown, reload, semi-auto behavior, full-auto behavior, animations, sound, and durability.

Weakspot Targeting

Magnet and HardLock can prioritize enemy weakspots.

The weakspot system uses the game's actual hitbox data:

  • Hitmesh
  • Hitmesh.Data
  • Hitmesh.Data.GetShapeMultiplier()
  • HitboxColliders
  • runtime hitmesh / vertex data

Known base hitbox multiplier order found during development:

Eye     = 1.5
Head    = 1.0
Thorax  = 0.75
Body    = 0.5
Groin   = 0.5
Arm     = 0.25
Leg     = 0.25
Block   = 0

Important limitation:

This system currently uses the base hitbox multiplier. It does not fully evaluate final damage after weapon-specific states, buffs, elemental effects, or projectile context.

Weakspot Debug Overlay

[Debug - Weakspot Overlay]
EnableWeakspotDebugOverlay = true
WeakspotDebugOnlyTrackedTarget = true
WeakspotDebugShowAllPositiveShapes = false

The overlay draws the hit shapes the game tests bullets against, in the plane it tests them in.

Default color meaning:

Red     = very high multiplier
Orange  = high multiplier
Yellow  = medium multiplier
White   = lower positive multiplier

This is mainly for testing and tuning.

Installation

  1. Install BepInEx 5 for SULFUR.
  2. Put Deadeye Instinct.dll and the lang folder into:
BepInEx/plugins/Deadeye Instinct/
  1. Start the game once.
  2. Edit the generated config file:
BepInEx/config/ryuka.sulfur.deadeyeinstinct.cfg

If upgrading from prototype builds, remove the old config:

BepInEx/config/ryuka.sulfur.strongaimassist.cfg

Compatibility

Deadeye Instinct is designed around the game's existing aim assist, input, camera, and weapon trigger pipeline.

Normal Magnet / Natural path:

AimAssist.ScanForTarget  (Deadeye picks the target)
→ AimAssist
→ rotationPullDelta
→ InputReader
→ CameraController

Deadeye picks the target the game's aim assist tracks, so the game's own friction, pull and bullet magnetism follow the same enemy. It only picks enemies the game itself treats as targets (alive, active, targetable, hostile, not invisible) and that are in line of sight.

HardLock path:

GameManager.aliveNpcs
→ hostile target filtering
→ target priority scoring
→ ExtendedCameraController.RotateTowardPosition()

HardLock does not turn the camera while the game holds it (cutscenes, dialogue, menus).

AutoFire path:

Holdable.SetTrigger(bool)
→ Weapon.HandleShootingUpdate()
→ Weapon.AttemptShoot()
→ Weapon.Shoot()

Deadeye Instinct does not directly patch projectile spawning or projectile flight behavior.

Notes

This mod is intended for SULFUR's single-player / PvE gameplay.

The default presets are intentionally strong. Use Low or Medium if you want a lighter assist feel.

HardLock and AutoFire are experimental strong-assist features and may require tuning depending on weapon, enemy type, and level layout.

SULFUR Config Localization Support

This mod includes localization files for SULFUR Config.

This localization support is only for the in-game configuration page provided by SULFUR Config. It localizes the mod name, config sections, setting names, and setting descriptions shown in the config UI.

It does not change the game’s own text, item names, dialogue, or gameplay content.

Supported SULFUR Config languages:

  • English
  • Simplified Chinese
  • Traditional Chinese
  • Swedish
  • French
  • Italian
  • German
  • Spanish
  • Portuguese
  • Russian
  • Polish
  • Japanese
  • Korean
  • Turkish
  • Arabic

Source Code

The source code for this mod is available in my GitHub repository.

It is shared for learning, reference, and transparency. The repository only contains my original mod source code and packaging text. It does not include SULFUR game files, Unity assemblies, BepInEx binaries, paid assets, or decompiled game source.

If you are another modder, feel free to study how the mod works or use it as a reference for your own implementation.

Deadeye-Instinct