Skip to content

At your command!

Compare
Choose a tag to compare
@rurounijones rurounijones released this 07 Mar 00:50
· 104 commits to main since this release

DCS-gRPC 0.4.0 Released!

We are pleased to announce version 0.3.0 of DCS-gRPC. The main feature of this release is the addition of the Command APIs that allow DCS-gRPC clients to create a command menu structure in the F10 command menu and recieve events when players trigger those commands. This API was created with contributions from Andrei Zbikowski. As well as this we have other new APIs, enhancements to existing APIs, and bug-fixes.

We have added a summary of currently implemented APIs online which can be viewed here. For full documentation of current APIs see the 0.4.0 API Documentation page.

Please note that this release is not 100% backwards compatible with 0.3.0. Although we try to avoid breaking changes there is no guarantee while we in the 0 major version. For more information on our versioning policy please see here.

There are a number of demo client applications for DCS-gRPC. Please see this page for more information on them.

Changelog

Added

  • ForcePlayerSlot API
  • PlayerChangeSlotEvent emitted when player changes slot
  • StreamUnits can optionally specify the category of the units which may be monitored.
  • APIs for creating the F10 radio menus and letting players run them. These will emit events to DCS-gRPC clients when run.

Fixed

  • MarkToCoalition was sending the mark to the incorrect coalition.
  • NetService.GetPlayers overwrote CoalitionService.GetPlayers (see Breaking Changes for details)
  • Corrected proto files from camel-casing to snake-casing; not a runtime breaking change but some code generators
    may generate different casing by convention, creating a compiler only issue.
    • net.proto - GetPlayerInfo.remote_address
    • mission.proto - PlayerSendChatEvent.player_id
  • Corrected proto files with enumerations to be named correct; compiler-only breaking change, not runtime.
    • coalition.proto - AddGroupRequest.Point - enum Type has been renamed to PointType
    • coalition.proto - AddGroupRequest - enum members of Skill has been prefixed with SKILL_
  • CoalitionService.GetPlayers did not filter correctly on specified coalition
  • StreamUnits would only monitor the Plane groups; now monitors all groups with the default option of GROUP_CATEGORY_UNSPECIFIED

Breaking Changes

  • Added GROUP_CATEGORY_UNSPECIFIED to dcs.v0.common.GroupCategory; breaking change as all indexes have changed.
  • CoalitionService.GetPlayers was renamed to CoalitionService.GetPlayerUnits; fixes conflict with NetService.GetPlayers

Please see the full changelog for the changelog that shows all historical changes.

Installation

To install please download the DCS-gRPC-0.4.0.zip and extract into your DCS Saved Games folder. The README.md contains instructions on how to enable DCS-gRPC on a per-mission basis or on a per-server basis. For ease of use we recommend using the per-server basis.

Make sure your DCS server instance is completely stopped (Not just the mission) when installing DCS-gRPC.

An example mission with DCS-gRPC integration called DCS-gRPC-Example.miz is included in the Missions folder; this example will start DCS-gRPC with the default settings if you have set it up on a per-mission basis. Note that this is not needed if you are setting up DCS-gRPC using the per-server method.

Support & Contact

You can reach us via the Github issues and Discord. We don't think DCS-gRPC requires yet another Discord so we have instead created a DCS-gRPC section on the OverlordBot Discord . You can also find Binary and RurouniJones on other DCS related Discords (e.g. The Hoggit Discord).