Initializing...
Money: ${{money() | bignum:2:3}}
Paint: {{paint() | bignum:2}} / {{paintMax() | bignum:0}} ({{paint() * 100 / paintMax() | number:2}}%) +{{paintSpeed() | bignum:2}}/sec
Picture quality: {{getPictureLevel(getCurrentPictureId())}}
Layer progress:{{getFillCnt() | bignum:0:3}} / {{getFillMax() | bignum:0:3}} ({{getFillCnt() * 100 / getFillMax() | number:2}}%)

Brushes

{{getBrushStrength(currentBrushId()) | bignum:0:3}} pixels/click
{{getBrushConsumption(currentBrushId()) | bignum:3:3}} paint/click
{{item.name}}

{{getWorkerStrength($index) / getWorkerDrawInterval($index) | bignum:0:3}} pixels/sec
{{getWorkerConsumptionPerSec($index) | bignum:3:3}} paint/sec
{{getPictureLevel($index)}} Picture quality {{getPictureLevel($index)}} ({{shopCtr.paintedPercentRemain()}}% to be painted to reach the next picture quality)
Price ${{shopCtr.getPictureSellPrice($index) | bignum:2}}
Selling:{{shopCtr.getSellTimeFromStartFormatted($index)}} / {{shopCtr.getSellTimeTotalFormatted($index)}}
The manager is hired and sells this picture 24h/day.
Selling:{{shopCtr.getSellTimeFromStartFormatted($index)}} / {{shopCtr.getSellTimeTotalFormatted($index)}}
Paint bucket

The paint bucket contains magic paint that you can use to create your pictures.

Capacity {{paintMax() | bignum}}
After upgrade: {{upgCtr.getPaintBucketNextRealSize() | bignum}}
Speed of replenishment +{{paintSpeed() | bignum:0:3}} paints/sec
After upgrade: +{{upgCtr.getPaintBucketNextRealSpeed() | bignum:0:3}} paints/sec
{{item.name}}

{{item.descr}}

Strength level {{brushProps($index).strengthLevel}}
Creates {{upgCtr.getBrushStrength($index) | bignum:0:3}} pixels/click
After upgrade: {{upgCtr.getBrushNextStrength($index) | bignum:0:3}} pixels/click
Efficiency level {{brushProps($index).efficiencyLevel}}
Uses {{upgCtr.getBrushConsumption($index) | number:3}} paints/click
After upgrade: {{upgCtr.getBrushNextConsumption($index) | number:3}} paints/click
{{item.name}}

Strength level {{workerParams()[$index].strengthLevel}}
Creates {{getWorkerStrength($index) | bignum:0:3}} pixels/action
After upgrade: {{upgCtr.getWorkerNextStrength($index) | bignum:0:3}} pixels/action
Efficiency level {{workerParams()[$index].efficiencyLevel}}
Uses {{getWorkerConsumption($index) | bignum:3:3}} paints/action or {{getWorkerConsumptionPerSec($index) | bignum:3:3}} paints/sec
After upgrade: {{upgCtr.getWorkerNextConsumption($index) | bignum:3:3}} paints/action or {{upgCtr.getWorkerNextConsumption($index) / getWorkerDrawInterval($index) | bignum:3:3}} paints/sec
Drawing speed level {{workerParams()[$index].drawIntervalLevel}}
Makes {{1 / getWorkerDrawInterval($index) | bignum:3:3}} actions/second
After upgrade: {{1 / upgCtr.getWorkerDrawNextInterval($index) | bignum:3:3}} actions/second
Area size: whole picture Area size level {{workerParams()[$index].areaSizeLevel}}
Area size {{getWorkerAreaSize($index)}} pixels
After upgrade: {{upgCtr.getWorkerAreaNextSize($index)}} pixels
Exponential strength level {{workerParams()[$index].expStrengthLevel}}
Increases the strength every action on {{getWorkerExpStrength($index) | bignum:0:3}} pixels
After upgrade: {{upgCtr.getWorkerExpStrengthNextSize($index) | bignum:0:3}} pixels

{{item.name}} {{achCtr.achievementsLevel()[$index] | bignum}} / {{item.levelMax}}

Current multiplier: x{{achCtr.achievementsMult()[$index] | bignum:1}}

{{achCtr.achievementStats()[$index] | bignum}} / {{achCtr.getAchievementReq($index) | bignum}}

MAX

{{statsCtr.statisticsList()[key].name}}: ${{item | bignum:(key == 'money' ? 2 : 0)}}{{statsCtr.getActiveTime()}} (rank: {{statsCtr.getBigValueRank(item) | number:0}})

You have no available ads.


{{item.unavailableText}}

Number format
Example: {{1e11+1 | bignum}}
The picture quality auto-improve interval in seconds

Are you sure?

To export, click the "Export" button and wait, then click the text above and copy it (ctrl-c). To import, paste (ctrl-v) your exported data and click the "Import" button.

It's normal for imported saves to have more money and pictures levels than you exported with. Your helpers continue its work even after saved data is exported/before it's imported.


Skip time:
Last idle execution time: {{dbgCtr.idleExecTimeLast() | number:3}}
Max idle execution time: {{dbgCtr.idleExecTimeMax() | number:3}}
Save size max: {{dbgCtr.saveSizeMax() | bignum:0}}
Save packed size max: {{dbgCtr.savePackedSizeMax() | bignum:0}}