Wiki / Player Guide / Buildings / Pottery Workshop

Pottery Workshop

Pottery Workshop building
Pottery Workshop
Pottery Workshop work animation
Potter at work (animated)

The Pottery Workshop is a processing industry: it takes raw clay and turns it into pottery, a finished good that houses need to evolve and that the city can export for income.

It cannot run on its own — it must be fed clay, either from a local Clay Pit or imported over a trade route. Placing a workshop with no clay supply in the city raises an on-screen warning.

The workshop is a 2×2 building and, like all industry, it lowers the desirability of its surroundings — keep it away from housing you want to evolve to higher tiers.

Pottery Workshop

2×2Size
12Workers
−4Desirability

Cost (Normal)
30 Db
Cost by difficulty
VE 12 · Easy 20 · Normal 30 · Hard 40 · VH 50
Labor category
Industry & Commerce
Consumes
Clay
Produces
Pottery
Fire / Damage risk
Low / Medium

Output

Pottery commodity
Pottery — the finished good

One unit of clay becomes one unit of pottery; output scales with how fully the workshop is staffed.

Overview

Pottery was an everyday necessity in ancient Egypt — vessels for storing grain, water, beer, and oil. In the game it is one of the first manufactured goods a city learns to make, and the first that ordinary housing demands in order to evolve past the early tiers.

The Pottery Workshop is a classic two-stage industry: a raw material (clay) is dug nearby and carried to the workshop, where workers turn it into a finished product (pottery) that is then distributed to homes or sold abroad. Getting that supply line right — pit, workshop, storage, and a distributor — is the core of the pottery economy.

Mechanics

Clay in, pottery out

While the workshop has clay in stock and is staffed, its potter works continuously, consuming clay and producing finished pottery. A cartpusher then carries each completed batch to a Storage Yard (or directly to a buyer). If the workshop runs out of clay it stands idle until more is delivered.

Supplying clay

Clay comes from a Clay Pit built on a clay deposit by the Nile, or is imported over an open trade route. When you place a Pottery Workshop the game checks for a clay source and warns you if there is no active clay industry, no stored clay, and no import route set up.

Output rate & staffing

Production speed depends on how fully the workshop is staffed — a fully manned workshop produces at its base rate, and output falls off as the worker percentage drops. Keep the workshop connected to a housing block with spare labor, or it will throttle down.

Production chain

From riverbank clay to a finished pot
Clay Pit  →  digs raw clay
   ↳  Pottery Workshop  →  turns clay into pottery
       ↳  Storage Yard  →  stockpiles pottery
           ↳  Bazaar  →  House (evolution)  ·  or exported for income

Every leg runs on roads: clay is carried from the pit to the workshop, finished pottery to a Storage Yard, and from there a Bazaar distributes it to homes. Houses need pottery to climb past the early tiers, and any surplus can be sold abroad over a trade route.

Info window

Right-clicking the workshop opens its info window, showing the workers employed, how much clay is in stock, and current pottery output. It is the quickest way to spot a stalled workshop that has run dry of clay.

Pottery Workshop right-click info window
Pottery Workshop right-click info window

Tips

Developer reference

All paths relative to the repository root.

Building config — src/scripts/building/pottery.js

src/scripts/building/pottery.js defines building_pottery with its clay→pottery input/output, production rate, and the placement check. The cost array is indexed by difficulty (VE · Easy · Normal · Hard · VH).

building_pottery {
  input  { resource : RESOURCE_CLAY }
  output { resource : RESOURCE_POTTERY }

  production_rate : 20
  production_rate_dcy : [100, 80, 70, 60, 50]   // scales with staffing
  labor_category : LABOR_CATEGORY_INDUSTRY_COMMERCE
  building_size : 2
  cost [ 12, 20, 30, 40, 50 ]
  desirability { value[-4], step[1], step_size[1], range[4] }
  laborers[12]  fire_risk[4]  damage_risk[3]
  flags { is_workshop: true, is_industry: true }
}

// Warns the player when there is no clay source for the workshop
[es=(building_pottery, on_place_checks)]
function building_pottery_on_place_checks(ev) {
  ... city.warnings.show_if_not(has_active_industry || has_stored_clay, "#building_needs_clay")
}
C++ implementation — src/building/building_pottery.h / .cpp

src/building/building_pottery.h declares building_pottery (inherits building_industry), registered with BUILDING_METAINFO(BUILDING_POTTERY_WORKSHOP, …). It overrides is_workshop()true, can_play_animation() (drives the potter animation), and draw_ornaments_and_animations_height(); its sound channel is SOUND_CHANNEL_CITY_POTTERY_WORKSHOP. The shared consume-input / produce-output / dispatch-cartpusher logic lives in the building_industry base. The building_pottery_on_update_graphic handler in pottery.js switches between the work and none animations via building.can_play_animation.