improve converter + docs

remove note about not supporting prescale
use relative links

on conversion
  - flip rotation sign
  - set angle snapping
  - set domain weights to prescale
This commit is contained in:
a1xd 2021-09-22 18:25:27 -04:00
parent 86dd171864
commit adb528c121
3 changed files with 14 additions and 13 deletions

View file

@ -115,12 +115,11 @@ ra::accel_args convert_natural(const ia_settings_t& ia_settings, bool legacy) {
double accel = get("Acceleration").value_or(0);
double cap = get("SensitivityCap").value_or(0);
double sens = get("Sensitivity").value_or(1);
double prescale = get("Pre-ScaleX").value_or(1);
ra::accel_args args;
args.limit = 1 + std::abs(cap - sens) / sens;
args.decay_rate = accel * prescale / sens;
args.decay_rate = accel / sens;
args.offset = get("Offset").value_or(0);
args.mode = ra::accel_mode::natural;
args.legacy = legacy;
@ -135,11 +134,10 @@ ra::accel_args convert_quake(const ia_settings_t& ia_settings, bool legacy) {
double accel = get("Acceleration").value_or(0);
double cap = get("SensitivityCap").value_or(0);
double sens = get("Sensitivity").value_or(1);
double prescale = get("Pre-ScaleX").value_or(1);
ra::accel_args args;
double accel_b = std::pow(accel * prescale, power - 1) / sens;
double accel_b = std::pow(accel, power - 1) / sens;
args.accel_classic = std::pow(accel_b, 1 / (power - 1));
args.cap = cap / sens;
args.power = power;
@ -155,10 +153,14 @@ bool try_convert(const ia_settings_t& ia_settings) {
ra::settings& ra_settings = *(new ra::settings());
ra_settings.degrees_rotation = get("Angle", "AngleAdjustment").value_or(0);
vec2d prescale = { get("Pre-ScaleX").value_or(1), get("Pre-ScaleY").value_or(1) };
ra_settings.dom_args.domain_weights = prescale;
ra_settings.degrees_rotation = -1 * get("Angle", "AngleAdjustment").value_or(0);
ra_settings.degrees_snap = get("AngleSnapping").value_or(0);
ra_settings.sens = {
get("Post-ScaleX").value_or(1) * get("Pre-ScaleX").value_or(1),
get("Post-ScaleY").value_or(1) * get("Pre-ScaleY").value_or(1)
get("Post-ScaleX").value_or(1) * prescale.x,
get("Post-ScaleY").value_or(1) * prescale.y
};
double mode = get("AccelMode").value_or(IA_QL);

View file

@ -2,11 +2,10 @@
See the Guide to understand all options and features in-depth.
## What are the differences between Raw Accel and InterAccel?
- The sensitivity and prescale fields in InterAccel are not present in Raw Accel. See the next question for helping converting your InterAccel settings to Raw Accel.
- Separate x and y prescale values, which no one should have, are not supported in Raw Accel. For something similar but better, check out the "By Component" section of the guide.
- Raw Accel uses a new kind of cap by default. See the guide for more information on this. It takes a value in counts/ms instead of max desired sensitivity. The old style is available for those who want it. See the next question for converting the old to new style.
- The sensitivity field in InterAccel, which was useful for converting from Quake's `cl_mouseAccel`, is not in Raw Accel.
- Raw Accel uses a new kind of cap by default, see the [guide](Guide.md#caps) for more information. The old style is available for those who want it.
- Raw Accel uses a new kind of offset. The difference is subtle in most cases, and ensures a continuous transition at speeds around the offset.
- There are many new features and curve types available. See the guide for information on all of these.
- There are many new features and curve types available. See the [guide](Guide.md) for information on all of these.
## How do I convert InterAccel settings to Raw Accel?
Drag 'n drop your InterAccel profile/settings.txt onto `converter.exe`. For GUI differences see the image below:
@ -17,7 +16,7 @@ See the guide to understand more about the Gain Cap option and other new feature
Yes. That is one of the fundamental goals of this driver. It is fully signed and has a one-second delay on write, so it cannot be used to cheat and should be considered safe by AntiCheat programs. However, we can never guarantee that the humans in control over AntiCheat code make the right decisions. So far it is working in FaceIT, Valorant, and Diabotical matches.
## How do I install the driver, uninstall the driver, or start the GUI?
Instructions for these are in the beginning of the guide.
Instructions for these are in the beginning of the [guide](Guide.md#installation).
## Does the GUI need to be running for Raw Accel to work?
No. Once settings are passed to the driver by the GUI, they stay in use until the computer is shut down.

View file

@ -132,4 +132,4 @@ This curve style is a blank canvas on which to create a curve. It allows the use
![LUTExample](images/LUT_example.png)
## Further Help
Further help and frequently asked questions can be found in the [FAQ](https://github.com/a1xd/rawaccel/blob/master/doc/FAQ.md).
Further help and frequently asked questions can be found in the [FAQ](FAQ.md).