.NET 6.0
dotnet add package Socha --version
NuGet\Install-Package Socha -Version
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Socha" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Socha --version
#r "nuget: Socha,"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Socha as a Cake Addin
#addin nuget:?package=Socha&version=

// Install Socha as a Cake Tool
#tool nuget:?package=Socha&version=

C# client for Software-Challenge Germany 2022/2023

build and test NuGet version (Socha) Discord Documentation

This repository contains a random client for the game "Hey, Danke für den Fisch" written for the .NET platform.

Because it is a random client, it will only do seemingly random moves. If you wish to build your own client on top of this one you have two options.


You can either clone this repository and add your code or use the nuget package.

Both approaches require you to have the .NET 6.0 SDK installed!

Using the nuget package

If you use Visual Studio 2022 (without the "Code") you can create a new console project and add the Socha package through the GUI.

If you use another IDE, create a new folder you want to work in, then execute the following commands in the CLI:

dotnet new console
dotnet add package Socha

Then paste the following code into the Program.cs:

using SochaClient.Backend;

Starter.Main(args, new Logic());

public class Logic : SochaClient.Backend.Logic
    public Logic()
        // TODO: Add init logic

    public override Move GetMove()
        // TODO: Add your game logic
        return GameState.GetAllPossibleMoves().First();

Finally you can use the following command in the console to compile and execute the program:

dotnet run

Using the repository directly

With Git installed you can clone this repo and add your code to the Logic.cs class in the socha-logic folder.

This project can either be used with Visual Studio 2022 on Windows by opening the .sln file or with another IDE such as Visual Studio Code on any operating system.

To run this project in the latter case change into the socha-client-csharp folder and use the run command of .NET.

dotnet run

If you wish to pass program arguments to the dotnet execution you can use -- like so:

dotnet run -- --help

Deployment on the socha contest server

Make sure that you only include standard .NET libraries.

Put all files and folders in this folder in a .zip archive including the Then upload that .zip on the contest site.

If you want to make modifications and edit the file, make sure to save it using linux line endings. You can either edit it on a Linux system or use Notepad++/wsl on Windows.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed. 
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated 425 10/16/2022 401 10/15/2022
23.0.2 469 10/15/2022

Initial release with support for the game "Hey, danke für den Fisch!" in the season 22/23