Skip to content

JuniorDark/RustyHearts-Launcher

Repository files navigation

RHLauncher logo

Rusty Hearts Launcher

License Build GitHub release (latest by date)

Introduction

Rusty Hearts Launcher is a custom launcher for the Rusty Hearts game client. It provides several features, including self-updating, automatic game updates, account registration, and a news window.

Preview

image image image image image

Table of Contents

Features

  • Game Download: The launcher can download and install the client.
  • Game Update: The launcher can automatically download and install game updates.
  • Self-updating: The launcher can automatically update itself to the latest version.
  • Register account: Users can register a new account/change the password directly from the launcher.
  • News window: The launcher displays the latest news and updates about the game.

Setup

The launcher require the Rusty Hearts API to work. See the api documentation for instructions on setup.

API URL

In order for the launcher to work it need to be conected to the api. To change the URL address of the launcher API open the Config.ini (it will be created when opening the launcher for the first time).

The default URL for the api can be changed on IniFile.cs

Client region

The client region can be set on Service on Config.ini

  • usa (PWE) - Full api support
  • chn (Xunlei) - Only launcher support

Launcher self-update

In order for the launcher to automatically update itself, you need to use the launcher_info.ini in the launcher_update directory of the api. This file specifies the version of the launcher. After each update of the launcher, you need to change the version in the ini, as well in the launcher executable file.

Client download

In order to download the client, you need to use the client\download directory of the api.

The tool for creating the client files is available in the repository: https://github.com/JuniorDark/RustyHearts-MIPTool

Client patch

In order to create client patches, you need to use the patch directory of the api.

The tool for creating the patch files is available in the repository: https://github.com/JuniorDark/RustyHearts-MIPTool

Launcher Language

The launcher language can be changed on Lang on Config.ini or in the Config menu

  • en - English (en-US) default language
  • ko - Korean ("ko-KR) (Machine Translated)

Launcher customization

If you want to add a new language create a LocalizedStrings..resx with for the desired language. The english strings can be found on LocalizedStrings.resx resource file.

If you want to change the text on the buttons/images used in the launcher you can use the Photoshop .psd files included in the PSD Resources.rar

Prerequisites for Building Locally/Development

The launcher is built in .NET 7 and as such, the packages listed below are required to create a local and development build of the launcher. Furthermore, it uses many submodules and packages outside of this, which will automatically be loaded when the user sets up a local environment of the application.

  • Visual Studio 2022 (Any Edition - 17.4 or later)
  • Windows 10 SDK (10.0.19043.0) or Windows 11 SDK (10.0.22000.0) via Visual Studio Installer
  • .NET: .NET Core 7 SDK (7.0.100 or later)

System Requirements for Ready-to-use build

  • OS: Windows 10 1809 Update (build 17763) or later / Windows 11 (Any builds)
  • Architecture: x64/AMD64

License

This project is licensed under the terms found in LICENSE-0BSD.

Contributing

Contributions from the community are welcome! If you encounter a bug or have a feature request, please submit an issue on GitHub. If you would like to contribute code, please fork the repository and submit a pull request.

FAQ

  • Q: How do I report a bug?
    • A: Please submit an issue on GitHub with a detailed description of the bug and steps to reproduce it.
  • Q: How do I request a new feature?
    • A: Please submit an issue on GitHub with a detailed description of the feature and why it would be useful.
  • Q: How do I contribute code?
    • A: Please fork the repository, make your changes, and submit a pull request.

Credits

The following third-party libraries, tools, and resources are used in this project:

Support

If you need help with the launcher, please submit an issue on GitHub.