In-game event

RustForge - Version 5.5.2.4 "The EvoEngine Update"

RustForge Sign Painter · published · build 22860054

Transmission from RustForge 🎙️

v5.5.2.4 is a precision-focused update that refines how the engine communicates with your system with a new input engine "EvoEngine". This release introduces "Input Batching," a significant change to how mouse movements and clicks are processed. By grouping movement and action data into multiple packets, I’ve managed to slash the required thread overhead in half. This update also puts more control in your hands with the new End of Line timing setting, allowing for a perfectly tuned experience regardless of your hardware's frame rate.


Patch Highlights

  • Input Packet Batching: Re-engineered the mouse engine to use Advanced Batching logic. This batches movement and click events into a single instruction, effectively doubling the efficiency of the input stream.

  • Configurable End of Line (EOL) Delay: A new user-facing setting that controls the pause between brush strokes. This replaces hardcoded timings, allowing for custom optimization based on your specific FPS.

  • Sleep Cycle Optimization: Removed 50% of the redundant "wait" states between movement and click events, resulting in a faster, more responsive painting flow.

  • Time-Based Event Logic: Transitioned AutoSave, Timelapse capturing, and VoidWatch triggers from row-based to time-based intervals. This ensures consistent operation regardless of painting speed or image complexity.


Balancing & Logic

Input Packet Batching

  • The Challenge: Previously, every mouse movement and every click required its own separate command and a subsequent "sleep" period to ensure the game registered the input. This created a "Move-Sleep-Down-Sleep-Up-Sleep" chain that added significant time to high-detail paintings.

  • The Fix: v5.5.2.4 implements SendInput batching. When the engine needs to click, it now sends the "Move" and the "Click" status in a single packet. This eliminates the need for a sleep cycle between moving to a pixel and pressing the button, making the painting process significantly more fluid and less prone to OS-level or Unity Engine input lag.

End of Line Timing

  • The Challenge: Different systems handle the transition between painting lines differently. On some rigs, moving to a new line too quickly causes "Ghost Lines" or diagonal streaks because the mouse-up event hasn't fully cleared.

  • The Fix: The new End of Line Delay setting allows you to tune this transition. While high-end rigs (120+ FPS) can run with minimal delay, users running at ~80 FPS will find that a setting of 20ms–30ms provides perfect stability without sacrificing total paint time.

Time-Based Event Triggers

  • The Challenge: Row-based triggers (like capturing a timelapse every 10 lines) could be inconsistent. On images with very long lines, snapshots were too far apart, on high-detail images with short lines, they triggered too rapidly.

  • The Fix: AutoSave and Timelapse snapshots now trigger based on exact time intervals (e.g., every 30 seconds or 5 minutes). This provides a predictable rhythm for background tasks and prevents system stutter during complex pathing.


📈 Known Issues

HD Canvas Scaling (The Moiré Effect)
If you zoom in/out heavily on most canvases like the Large Banner on Pole or the XL Picture Frame, the Rust 1.00 brush will physically be too small to cover RustForge's 1-pixel movement steps, leaving microscopic gaps. Fix: Do not zoom in while mapping/painting. If you must zoom in/out, increase your Rust brush size to 1.10 - 1.50ish to bridge the gaps!Contour Tracing & Smart Pathing Resume (Resume issues)

With how Contour Tracing and Smart Pathing work with omnidirectional painting, and calculating the best paths for curves, etc. it is not possible to resume from the exact spot the painting was paused at. Instead it will resume from the currently painting color, and begin from the start of that color to ensure nothing is missed. This is an intended feature of these two new advanced methods. It could add a few minutes to your painting times total if paused and resumed, but this is far better than missing chunks of your painting due to differing calculations and having to restart.

More from RustForge Sign Painter

Other announcements

All events