Files @ 787f2aabbded
Branch filter:

Location: ATITD-Tools/Desert-Paint-Lab/README.md

Jason Maltzen
Update search for paint lab interface: check for 4 corners and left/right line of solid portion of the color area, fix papyrus texture check for new brighter papyrus texture.
# Desert Paint Lab

This is a tool for players to record their [Pigment Laboratory](http://www.atitd.org/wiki/tale6/Pigment_Laboratory)
ingredient reactions in [A Tale in the Desert](http://www.atitd.com/).

### Features

* Easily scans your screen for the paint bench reaction values, without any math, measuring, or manual number entry.
* Warns you when a reaction clipped below 0.
* Supports multiple character profiles.
* Can export to [PracticalPaint](http://www.atitd.org/wiki/tale7/File:PracticalPaint.Zip) data format.
* Includes simulator for experimenting with recipes without spending ingredients.
* Includes a recipe generator

## Tale 8

This application has not yet been tested for Tale 8.  We will be testing it out as soon as we get our hands on a Pigment Lab.  If you find any problems with it, please [open an issue](https://bitbucket.org/Malkyne/desert-paint-lab/issues) or /chat Afrah or Snoerr
in the game.


## Directions

### Download Desert Paint Lab

You can always find the available downloads, on [the download page](https://bitbucket.org/Malkyne/desert-paint-lab/downloads).

The most recent version is [T7 Release Candidate 15](https://bitbucket.org/Malkyne/desert-paint-lab/downloads/DesertPaintLab_T7_RC15.zip). For Mac, you can download a [dmg containing a Mac app bundle](https://bitbucket.org/Malkyne/desert-paint-lab/downloads/DesertPaintLab_T7_RC15.dmg).

This application should run under Mono on Mac, Linux, and Windows.  If you are on Windows,
and do not have Mono installed, you can install [GTK# for .NET](http://www.mono-project.com/download/#download-win),
without the need for installing Mono. On Mac or Linux, download and install the [Mono runtime](http://www.mono-project.com/download).

### Set Up a Profile

The first time you run Desert Paint Lab, it will prompt you to make a profile.  You may either create a new profile, or import an existing PracticalPaint reactions.txt file.

### Start Testing!

Add two ingredients to your paint bench.  Select those same ingredients in Desert Paint Lab.  Then, with the Pigment Lab dialog unobstructred, select the **Capture** button.  Once you are satisfied with the result, click the **Record** button.  The data will automatically be added to your profile.

### Clipped?  Huh?

Occasionally, you will see a warning dialog that informs you that a "Reaction clipped."  That means that one or more of the color components moved outside of the testable range.  This makes it impossible to calculate the reaction from these two ingredients.

You can solve this by doing a three-way test.

1. In your clipped reaction, let's call your **1st** ingredient **A** and your **2nd** ingredient **B**.
1. Select a **non-catalyst** ingredient **C** for which you have already tested **C + A** and **C + B**.  It is OK if there was a reaction in those earlier tests.  Desert Paint Lab can work out the math.
1. In Desert Paint Lab, select ingredients as follows:
    1. **C**
    2. **A**
    3. **B**
1. Add the ingredients in your Pigment Lab _in exactly that order_.
1. Capture.
1. Record.

For clipped reactions, your **C** ingredient should be one that corrects for the clipped color.  Here are some suggested **C** ingredients for clipping correction:


Clip Color  | Clip Direction | Correction | Suggested "C" Ingredient
------------|----------------|------------|---------------------------
Red         | Low            | +Red       | Carrot (224) or Red Sand (144)
Red         | High           | -Red       | Silver Powder (16) or Toad Skin (48)
Green       | Low            | +Green     | Falcon's Bait (240) or Copper (192)
Green       | High           | -Green     | Red Sand (16) or Silver Powder (16)
Blue        | Low            | +Blue      | Falcon's Bait (224) or Copper (192)
Blue        | High           | -Blue      | Red Sand (24) or Clay (32) or Carrot (32) or Silver Powder (32)


In many cases, it may be easiest to go back and do these three-way tests after you have finished all of your other testing.

### Catalysts

For catalyst to catalyst reaction tests, follow the three-way instructions, as above.

### Finishing Up

When you're done testing your reactions, you can either use the built-in Pigment Lab simulator (`Window > Run Simulator`) to experiment with recipes, without dipping into your precious ingredient stocks.  Alternatively, you can export your reactions in PracticalPaint format.

## Generating Recipes

### What do all these settings do?

* _Minimum Ingredients_ is the minimum number of ingredients the generator will use in a recipe. It's best to leave this at 1 so the simple single-ingredient recipes are included (like 10 carrots for 'carrot')
* _Maximum Ingredients_ limits how many ingredients will be used in a recipe. Ingredients after the 5th will still affect the resulting color, but won't use their reactions.
* _Silk Ribbon Recipes_ sets the generator up to create recipes for silk ribbons. Ribbons use a base concentration of 50 instead of the 10 that is used for paint.
* _Maximum Concentration_ is the maximum recipe concentration. Recipes with a concentration above 10 will still produce a single db of paint, but can use larger quantities of ingredients to make smaller color adjustments. Increasing this will increase the time required to search all the possible combinations.
* _Full Quantity Depth_ is the number of ingredients in the recipe that will use up to the "full quantity" value as the limit for those ingredients over the ingredient's maximum.
* _Full Quantity_ is the maximum quantity of any ingredient to use up to the Full Quantity Depth. For example, with a Full Quantity of 15 and a Full Quantity Depth of 3, a recipe could use up to 15 of each of the first 3 ingredients. After that it will be limited by the setting for that specific ingredient.

## Known Issues

### Slowness

If you are running on a multi-screen system, or a very high-resolution screen, you may find that Desert Paint Lab is rather slow in determining paint reactions.  That's because you have a lot of screen real-estate to scan, to look for the Pigment Lab dialog.  You can speed up the scanning process by ensuring that your Pigment Lab Dialog is as far to the upper-left of the screen as possible.

### Multiple Displays

When Desert Paint Lab asks for the resolution for a multiple-display setup, enter the combined resolution of all displays. Generally the detected default for this will be correct. For example, two 1920x1080 displays in a side-by-side configuration would be a combined resolution of 3840x1080. In a stacked configuration, they would be 1920x2160.

### Retina / High-Density Screens

High DPI screens may be displaying the game at something other than a 1:1 game-pixel to screen-pixel ratio.  These screens didn't exist, back when Desert Paint Lab was created. The current version now prompts you for your screen resolution when it starts to work around this. If you see a crash when trying to capture a reaction, it's likely because the resolution is incorrect. For example, Snoerr's MacBook Pro has a retina screen with a resolution of 2880x1800. Mono (and therefore DesertPaintLab) detects it as having a resolution of 1440x900. He enters his resolution as 2880x1800 and sets the Game pixel width in screen pixels to 2.

## Mac user FAQ

Q: How do I find my native screen resolution?

A: You can find it by opening up "About this Mac" from the Apple menu and clicking on the "Displays" tab. That should show the screen size and resolution to enter.

## For Developers

This application was developed using [MonoDevelop](http://www.monodevelop.com/), and originally used the [Stetic GTK UI designer](http://www.monodevelop.com/documentation/stetic-gui-designer/).