Table of Contents

Class PlotterConfig

Namespace
chia.dotnet
Assembly
chia-dotnet.dll

Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

public record PlotterConfig : IEquatable<PlotterConfig>
Inheritance
PlotterConfig
Implements
Inherited Members
Extension Methods

Properties

AltFingerprint

This is the key Fingerprint used to select both the Farmer and Pool Public Keys to use. Utilize this when you want to select one key out of several in your keychain.

[JsonProperty("a")]
public uint? AltFingerprint { get; init; }

Property Value

uint?
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

Buckets

More buckets require less RAM but more random seeks to disk. With spinning disks you want less buckets and with NVMe more buckets. There is no significant benefit from using smaller buckets - just use 128.

[JsonProperty("u")]
public int Buckets { get; init; }

Property Value

int

Defaults to 128

Buffer

Define memory/RAM usage. Default is 4608 (4.6 GiB). More RAM will marginally increase speed of plot creation. Please bear in mind that this is what is allocated to the plotting algorithm alone. Code, container, libraries etc. will require additional RAM from your system.

[JsonProperty("b")]
public int Buffer { get; init; }

Property Value

int

Defaults to 4608

Delay

The number of seconds to delay before beginning the plotting

[JsonProperty("delay")]
public int Delay { get; init; }

Property Value

int

Defaults to 0

DestinationDir

Define the final location for plot(s). Of course, -d should have enough free space as the final size of the plot. This directory is automatically added to your ~/.chia/VERSION/config/config.yaml file.

[JsonProperty("d")]
public string DestinationDir { get; init; }

Property Value

string

No default - must be set

ExcludeFinalDir

Skips adding [final dir] to harvester for farming.

[JsonProperty("x")]
public bool ExcludeFinalDir { get; init; }

Property Value

bool

Defaults to false

FarmerPublicKey

This is your "Farmer Public Key". Utilise this when you want to create plots on other machines for which you do not want to give full chia account access

[JsonProperty("f")]
public string? FarmerPublicKey { get; init; }

Property Value

string
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

Memo

Debug purposes only

[JsonProperty("memo")]
public string? Memo { get; init; }

Property Value

string
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

NoBitField

Setting to true will disable the bitfield plotting algorithm, and revert back to the older b17 plotting style. After 1.0.4 it’s better to use bitfield for most cases

[JsonProperty("e")]
public bool NoBitField { get; init; }

Property Value

bool

Defaults to false

NumThreads

The number of threads to devote to each plot

[JsonProperty("r")]
public int NumThreads { get; init; }

Property Value

int

Defaults to 2

Number

The number of plots that will be made, in sequence.

[JsonProperty("n")]
public int Number { get; init; }

Property Value

int

Defaults to 1

OverrideK

Only needed when Size is set to K25

[JsonProperty("overrideK")]
public bool? OverrideK { get; init; }

Property Value

bool?

Defaults to false.

Parallel

[JsonProperty("parallel")]
public bool Parallel { get; init; }

Property Value

bool

Defaults to false

PoolContractAddress

[JsonProperty("c")]
public string? PoolContractAddress { get; init; }

Property Value

string
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

PoolPublicKey

This is your "Pool Public Key". Utilise this when you want to create plots on other machines for which you do not want to give full chia account access.

[JsonProperty("p")]
public string? PoolPublicKey { get; init; }

Property Value

string
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference

Queue

[JsonProperty("queue")]
public string Queue { get; init; }

Property Value

string

Defaults to "default"

Size

Define the size of the plot(s).

[JsonProperty("k")]
public KSize Size { get; init; }

Property Value

KSize

Defaults to K32

TempDir

Define the temporary directory for plot creation. This is where Plotting Phase 1 (Forward Propagation) and Phase 2 (Backpropagation) both occur. The -t dir requires the largest working space: normally about 2.5 times the size of the final plot.

[JsonProperty("t")]
public string TempDir { get; init; }

Property Value

string

No default - must be set

TempDir2

Define a secondary temporary directory for plot creation. This is where Plotting Phase 3 (Compression) and Phase 4 (Checkpoints) occur.

[JsonProperty("t2")]
public string? TempDir2 { get; init; }

Property Value

string

If not set defaults to TempDir