Skip to content

harrison314/ColdWatersTelemetry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cold Waters Telemetry mod

Cold Waters Telemetry is a mod for the game Cold Waters that adds telemetry for your submarine. When the game starts, the mod opens a port with an SSE (Server-Sent Events) endpoint (the default is http://localhost:2222/), which you can connect to from your own application to process submarine events (events are in JSON format).

Important

The goal of the mod is to allow other developers to create their own programs that process data from Cold Waters or create hardware controls for submarines.

I created an app for the plugin that displays real-time data on my second monitor (in a web browser).

Cold Waters Web APP

The mode offers the following types of events (see definitions):

  • depthUnderKeelWarned
  • iceWarned
  • mineWarned
  • speed
  • depth
  • rudder
  • ballast
  • sonarPing (include EMS)
  • curse
  • breefing
  • message
  • toBattlestations
  • missionOrders

Install Guide

Installing the mod

  1. Download the file ColdWatersTelemetry.WithBepInEx.zip from the release page and extract it to the game's root directory.
  2. Launch Cold Waters.
  3. Check the file BepInEx\LogOutput.log to see if it contains the log entry Loading [Cold Waters Telemetry 1.0.0.0].

The configuration file where you can set the SSE endpoint is located in BepInEx\config\CwTP.harrison314.cfg.

Run web app

  1. Download the file ColdWatersModWebApp.zip from the release page
  2. Run ColdWatersModWebApp.exe
  3. Browse url from log or use startup parameter eg. --urls http://localhost:5080/ for custom startup URL.

In the appsetings.json configuration file, you can set the address for the SSE endpoint and configure filtering of game messages.

Development

For development, you need to have the .NET Framework 3.5 enabled on Windows and .NET 10 installed, with BepInEx for 32-bit installed in game (see https://github.com/BepInEx/BepInEx/releases/tag/v5.4.23.5 BepInEx_win_x86_5.4.23.5.zip).

To compile the mod, use:

cd src\src\ColdWatersTelemetryMod
dotnet publish -c Release --property:ColdWatersPath=<path to ColdWaters>

To compile the web app, use:

cd src\src\ColdWatersModWebApp
dotnet publish -c Release

Links

Technology

Other links