Skip to content

About

A reference plugin for ATS & ETS2 to intercept and programmatically send chat messages in Convoy mode. Demonstrates advanced signature scanning and function hooking.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

SPF Convoy Chat Messaging Plugin

Logo SPF Framework

GitHub Release GitHub License

Patreon Stars Discord Youtube


A reference plugin for American Truck Simulator and Euro Truck Simulator 2 that demonstrates how to intercept and manipulate the in-game Convoy chat system. This plugin is primarily intended for educational purposes and research.

🎓 Demonstration Purpose

This project is a high-level example of reverse engineering and plugin development using the SPF-Framework. It showcases:

  • Signature Scanning: Finding internal game functions by instruction patterns.
  • Dynamic Data Extraction: Extracting global pointers and structure offsets directly from machine code.
  • Function Hooking: Intercepting game logic using trampolines to monitor or modify behavior.

Features

  • Programmatic Chat Sending: Send messages to the convoy chat directly from the plugin UI.
  • Message Type Support: Test different chat channels: Player (Broad), Local, Private, and System.
  • Real-time Interception: Log every incoming and outgoing chat message, including Sender IDs and internal type IDs.
  • Auto-Capture Logic: Automatically finds the game's Chat Manager instance using advanced memory scanning.
  • Integrated Logger: View the history of intercepted messages within the plugin window.

Support the Project

If you find this reference plugin useful for your own development, consider supporting us on Patreon.

► Support on Patreon

How to Build 🛠️

This is a standard CMake project. To build it from source:

  1. Clone this repository.
  2. Ensure you have CMake and a compatible C++ compiler with the MSVC toolchain (e.g., Visual Studio) installed.
  3. Create a build directory inside the project folder.
  4. Run CMake from the build directory to generate project files (e.g., cmake ..).
  5. Build the project using your chosen build tool (e.g., run cmake --build .).

Installation

Prerequisites

You must have the SPF Framework installed for this plugin to work.

Steps

  1. Download the latest release of this plugin.
  2. Copy the SPF_ConvoyChatMessaging folder into your game's \bin\win_x64\plugins\spfPlugins\ directory.

How to Use

  1. Start the game and enter a Convoy session.
  2. Press Ctrl + Y to open the Convoy Chat Manager window.
  3. Capture the instance: The plugin is designed to automatically capture the Chat Manager as soon as you create or join a Convoy session. If the status remains red for any reason, simply type any message in the standard game chat to trigger manual capture via the input hook.
  4. Send Messages: Enter text, select the message type, and click "Send".
  5. Monitor Chat: View all captured messages in the "Intercepted Messages" table.

🙏 Acknowledgements

This project was created using the SPF-Framework, the foundation for modern plugin development in ATS/ETS2.

About

A reference plugin for ATS & ETS2 to intercept and programmatically send chat messages in Convoy mode. Demonstrates advanced signature scanning and function hooking.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages