Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/whitescent/Engine

Mapping your phone as a virtual joystick
https://github.com/whitescent/Engine

android gamepad jetpack-android jetpack-compose joystick kotlin material-you

Last synced: 5 days ago
JSON representation

Mapping your phone as a virtual joystick

Awesome Lists containing this project

README

        

# Engine

[![License - GPLv3.0](https://img.shields.io/badge/License-GPLv3.0-2ea44f)](https://choosealicense.com/licenses/gpl-3.0/#) [Get it on Google Play](https://play.google.com/store/apps/details?id=com.github.whitescent.engine)

![Frame 3](https://user-images.githubusercontent.com/31311826/218239687-d6f85bbb-2eef-410e-bd41-472cb7e178b7.png)

## 🤔 What's this?

[Engine](https://github.com/whitescent/Engine) is a software that allows you to use your phone as a virtual joystick, allowing you to play racing games like [Assetto Corsa](https://store.steampowered.com/app/244210/_Assetto_Corsa/) and [Euro Truck Simulator 2](https://store.steampowered.com/app/227300/Euro_Truck_Simulator_2/) more comfortably without a steering wheel.

https://github.com/whitescent/Engine/assets/31311826/b80ed056-afc3-4e85-929f-fef3ef9558d1

## 💦 Features:

* Mapping available data to virtual joystick data
* Designed using [Material 3 guidelines](https://m3.material.io/)
* The Screens and UI elements are built entirely using [Jetpack Compose](https://developer.android.com/jetpack/compose)
* Easy-to-use widget editor
* Several different presets can be set for widgets
* Light and dark color themes supported
* Ability to map the phone's volume keys as buttons to the game (e.g. you can manipulate the volume keys to upshift and downshift your car)
* Language support for:
* Chinese
* English

## 🚀 Usage:

1. Download the latest apk and msi files in the [releases](https://github.com/whitescent/Engine/releases).
2. Install [vJoy driver](https://github.com/jshafer817/vJoy/releases/tag/v2.1.9.1) in your computer.
3. Find your computer's IPv4 address using the `ipconfig` command.
4. Create a new preset in the Android app, then enter the obtained IPv4 address in the connection interface.
5. Enjoy!

## 🛠 Open Source Libraries

* [100% Jetpack Compose based](https://developer.android.com/jetpack/compose) + [Compose Multiplatform](https://github.com/JetBrains/compose-jb)
* [compose-destinations](https://github.com/raamcosta/compose-destinations)
* [Accompanist](https://github.com/google/accompanist)
* [vJoy](https://github.com/jshafer817/vJoy)

## 📄 License

GNU GPL v3.0 © [Engine](https://github.com/whitescent/Engine)

## ❤️ Acknowledgement

> Special thanks to [JetBrains](https://www.jetbrains.com/?from=engine) for providing free licenses of IDEs such as [IntelliJ IDEA](https://www.jetbrains.com/idea/?from=engine) for open-source projects.

[](https://www.jetbrains.com/?from=engine)