Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sewer56/sewer56.sonicriders

A C# library designed for the use of hacking with Reloaded Mod Loader which provides definitions, implementations and direct memory access to the game's functions, variables and structures.
https://github.com/sewer56/sewer56.sonicriders

Last synced: 19 days ago
JSON representation

A C# library designed for the use of hacking with Reloaded Mod Loader which provides definitions, implementations and direct memory access to the game's functions, variables and structures.

Awesome Lists containing this project

README

        

# Introduction

Sewer56.SonicRiders is an easy to use, and complete to all reverse engineering knowledge of the game C# library designed for the use of hacking with Reloaded II. The library provides definitions, implementations and direct memory access to all of the known game's functions, variables and structures.

## Usage

### API

*Sewer56.SonicRiders.API* provides you with direct easy access to API that allows you to easily perform various different actions such as editing different data structures through the use of pointer wrappers - allowing you to easily edit memory on the fly.

Example:
```csharp
Player.Players[0].ExtremeGear = Structures.Enums.ExtremeGear.TurboStar;
```

### Functions

*Sewer56.SonicRiders.Functions* provides you with a huge listing of game functions. These functions can be easily called or hooked.

**Calling Example**
```csharp
Functions.GetInputs.GetWrapper()(/* No Parameters */);
```

**Hooking Example**
```csharp
_blockInputsHook = Functions.GetInputs.Hook(BlockGameInputsIfEnabled).Activate();

private int BlockGameInputsIfEnabled()
{
// Skips game controller input obtain function is menu is open.
if (!_isEnabled)
return _blockInputsHook.OriginalFunction();

return 0;
}
```

### Structures
*Sewer56.SonicRiders.Structures* provides the various different structures, enumerables and other custom definitions for the game:

```csharp
public struct RunningPhysics2
{
///
/// The maximum speed until a switch to gear 2 is performed.
///
public float GearOneMaxSpeed;

///
/// The maximum speed of gear 2.
///
public float GearTwoMaxSpeed;

///
/// Defines the speed limit for gear 2.
///
public float MaxSpeed;

///
/// Defines the acceleration of gear 1.
///
public float GearOneAcceleration;

///
/// Defines the acceleration of gear 2.
///
public float GearTwoAcceleration;

///
/// Defines the acceleration of gear 3. (When exceeding gearTwoMaxSpeed)
///
public float GearThreeAcceleration;

///
/// Unknown
///
public float Field_18;
}
```

### Utility Functions

*Sewer56.SonicRiders.Utility* provides you with various utility functions such as custom formulas to calculate various statistics on players depending on several key factors, for example:

```csharp
public static float GetGearSpeed(ExtremeGear* extremeGear, FormationTypes formationType)
```

would return the regular driving speed at level 1 for a specified gear and character combination.