Wiki / Player Guide / Missions / Serabit Khadim

Serabit Khadim — The Bedouin of the East

Mission
11 of 38 — first mission of the Old Kingdom, Dynasties 3–4
Era
Old Kingdom · ~2613 BC · Pharaoh Huni
Classical name
Serabit el-Khadim (southwest Sinai)
Starting funds
Very Easy 30 000 Db Easy 20 000 Db Normal 15 000 Db (pak) Hard 10 000 Db Very Hard 8 000 Db
Debt interest
Very Easy 10% Easy 15% Normal 20% (pak) Hard 25% Very Hard 30%
Deities
Seth · Ra (pak also lists Ptah)
Trade
Men-nefer · Selima · Abu · Nekhen · Behdet (all land, start closed)
Previous mission
Saqqara — The First Pyramid
Next mission
Player's choice: Buhen or South Dahshur
Status
Implemented

Briefing

The mission opens with the history panel (message_history_serabit_khadim) and the mission briefing popup (message_mission_serabit_khadim):

Like Den before him, Pharaoh Huni has ordered an expedition into the harsh land of Sinai to acquire turquoise gemstones and copper. He wishes you to lead this expedition, to a place called Serabit Khadim, where the building remains of an earlier Egyptian outpost may still be found. Their current condition is unknown, but they may still provide some means of defense for the expedition.

You should be aware that the last such expedition sent to this area never returned. A later expedition sent to recover them also did not return. Nevertheless, if we are to arm our soldiers adequately, our Kingdom needs copper for making weapons, and this metal is scarce in our land.

Prepare yourself, for you will be under constant threat of attack from the Bedouin of the Sinai desert, and from our enemies the Canaanites. Mine what copper and gemstones you may under these conditions, and be prompt in fulfilling Pharaoh's requests. You may employ jewelers to use any surplus gemstones to fashion jewelry for the people occupying the settlement.

Serabit el-Khadim is a real plateau in the southwest Sinai peninsula where the ancient Egyptians mined turquoise from the Old Kingdom onward. A temple of Hathor, "Lady of Turquoise", stood at the site, and the Proto-Sinaitic inscriptions discovered there by Flinders Petrie's 1905 expedition are among the earliest known alphabetic writing. In the campaign this is the first mission of the Old Kingdom block: a hostile desert outpost with no Nile floodplain, sustained by mining, hunting, and caravan trade.

Objectives

Goals match mission1.pak scenario 11. Kingdom 80 is the real difficulty: refused or late requests hit reputation hard. Keeping copper, weapons, and luxury goods flowing is the core of the mission.

Scripted events

Full empire redefine + event schedule verified against pak scenario 11 (2026-07-25 dump). Empire id 8. Scenario enemy is Libyan (ENEMY_7_LIBIAN). No land/sea invasion spawn points in pak. Favour-KR Pharaoh army size 51 (attack random). Timed raids use pak attack targets (vaults / food / best buildings / random).

Year 1+ · month 0 Clay pit floods ×5 recurring (pak i=16–20) — each ruins one working clay pit if any exist.
Year 1 · month 7 Gift: 32 chickpeas. Recurring request: 8 copper / 18 months (ok +5 / refuse −10 / late −5).
Year 1 · month 10 Libyan raid of 8.
Year 2+ · month 4 Bedouin raid of 16 (recurring yearly; Libyan sprites).
Year 3 · month 3–4 Libyan raid of 12; copper 11 / 18mo (ok +6 / refuse demand copper −7 → KR −8); land trade problem.
Year 4 · month 8 Libyan raid of 20.
Year 5 · month 9 Weapons 13 / 18mo (same ok/refuse/late leaves as copper 11).
Year 6+ Libyan raids 28 / 28 / 32 (y6, y8m6, y10m1). Year 7+: luxury 16 / 24mo recurring. Year 8: weapons 21 / 12mo (refuse → Kerma siege → KR −8 → open Nekhen).

Strategy

Serabit Khadim is a desert survival mission: no floodplain farming, hostile raids from year 2, and a kingdom rating goal that punishes a stalled economy. Everything revolves around the two mines and the defense of the settlement.

Phase 1 — Settle and feed

Food comes from Hunting Lodges — ostrich herds roam the map. Place housing near the road, cover it with Water Supply, Firehouse, Architect's Post, and Police Station, and set up two or more Hunting Lodges with a Granary and Bazaar. There is no Nilometer here; water and food are scarce, so keep the housing block compact.

Phase 2 — Mines and industry

Copper Mines and Gemstone Mines are the reason this expedition exists. Site them on the ore-bearing rock, staff them via Work Camps, and store output in Storage Yards. Clay Pits (groundwater on the map) feed the Pottery Workshop; from year 1 month 0 the desert can flood up to five pits each year — keep spares or import clay from Behdet. A Weaponsmith turns copper into weapons; the Jewels Workshop turns gems into luxury goods.

Phase 3 — Defense

The first Libyan raid arrives late in year 1, then larger waves from year 2 onward. Build a Recruiter, a Weaponsmith, and at least one Infantry Fort and one Archers Fort before year 2. Mud walls, gatehouses, and towers are available — wall off the approach to the housing block and mines. The old outpost ruins on the map hint at the defensive line. Raids continue through the mission, so do not disband the army after the first victory.

Phase 4 — Trade and the kingdom rating

Five land routes (all start closed — pay to open): Men-nefer (350), Nekhen (400), Behdet (500), Abu (540), Selima Oasis (1 100). Import food staples, beer, linen, timber, and papyrus; export copper, gems, and jewelry. Fulfill every request from Pharaoh. If the rating stalls, send gifts from personal savings — and watch favour (Pharaoh army of 51 when kingdom hits 0).

Tips

Available buildings

All buildings are available from mission start — there are no progressive unlocks in this mission:

CategoryBuildings
Housing & roadsVacant Lot · Clear Land · Road · Road Block · Low Bridge · Ferry
MunicipalFirehouse · Architect's Post · Police Station · Village Palace · Personal Mansion · Tax Collector · Courthouse
HealthWater Supply · Apothecary · Physician
Food & distributionHunting Lodge · Bazaar · Granary · Storage Yard
IndustryCopper Mine · Gemstone Mine · Clay Pit · Pottery Workshop · Brewery · Jewels Workshop · Work Camp
MilitaryRecruiter · Weaponsmith · Infantry Fort · Archers Fort · Mud Wall · Mud Gatehouse · Mud Tower
ReligionTemple & Shrine of Seth · Temple & Shrine of Ra · Festival Square
EntertainmentBooth · Juggler School · Bandstand · Conservatory · Pavilion · Dance School
EducationScribal School
BeautificationSmall / Medium / Large Statue · Gardens · Plaza

Developer reference

Collapsed sections below show exactly where each part of this mission lives in the source tree. All paths are relative to the repository root.

Mission script — src/scripts/mission/m_011_serabit_khadim.js

The entire mission — configuration block, variables, and all event handlers — lives in one file:

src/scripts/mission/m_011_serabit_khadim.js

This file is imported by src/scripts/missions.js. The mission11 { … } block at the top is the static configuration parsed at startup:

// m_011_serabit_khadim.js — full empire redefine 2026-07-25
mission11 {
  map_file : "data/maps/m_011_serabit_khadim.map"
  start_message : "message_mission_serabit_khadim"
  player_rank : 5

  choice [                       // post-victory: Buhen (13) / Dahshur (14)
    { name : "Buhen",   id : 13 }
    { name : "Dahshur", id : 14 }
  ]

  initial_funds [30000, 20000, 15000, 10000, 8000]
  debt_interest [10, 15, 20, 25, 30]

  win_criteria {
    population    { enabled : true, goal : 2000 }
    kingdom       { enabled : true, goal : 80 }
    housing_level { enabled : true, goal : 4 }
  }

  entry_point [28, 84]
  exit_point  [83, 84]
  // empire id=8; hide_pak_* + cities/routes/ornaments/texts
}

Goals match pak (pop 2000, kingdom 80, housing 4). Trade: Men-nefer / Selima / Abu / Nekhen / Behdet — all land, start closed. Display: Byblos, Kerma, Kyrene, Saqqara. Kebet is not on this scenario.

Event handlers — all functions in m_011_serabit_khadim.js

Handlers fire only while mission=mission11 is active. Timed invasions use city.start_foreign_army_invasion with ENEMY_7_LIBIAN and per-wave invasion_attack_target from pak.

  • event_mission_start Start message; empire.set_id(8); advisors; Libyan + Egyptian packs. mission11_on_start
  • city_animals / create_herds Two ostrich herd points (remake; pak animals=0). mission11_register_animals
  • requests / gift / trade gift chickpeas; copper 8 recurring; copper 11; weapons 13; luxury 16 recurring; weapons 21; land trade problem; clay pit floods ×5 y1m0+; shared ONLY_VIA leaves. mission11_pharaoh_*
  • raids + favour Libyan 8 VAULTS / 12 BEST / 20 FOOD / 28 VAULTS / 28 RANDOM / 32 BEST; beduin 16 RANDOM y2m4+; favour 51 RANDOM. mission11_libyan_* / beduin_* / favour

Dump helper: src/js/js_test_mission_pak_dump.cpp (__test_mission_pak_dump / GamestateIO::load_mission_pak_raw; ad-hoc tests/99_tmp_*.js).

Game messages — src/scripts/game_messages_en.js

Popup dialogs and the opening history panel are defined in src/scripts/game_messages_en.js. To edit text, find the entry by key and change the text: field inside its content { … } block.

KeyIDLineWhen shown
message_history_serabit_khadim 211 2605 History briefing shown before mission starts (narrator text — "The Bedouin of the East")
message_mission_serabit_khadim 411 4866 start_message — first popup on mission load

Briefing and victory narration audio: Voice/Mission/211_mission.mp3 and Voice/Mission/211_victory.mp3 (configured in the sounds block of the mission config).

Save file and map data

The map layout, terrain, ore deposits, and the kingdom road entry point come from the original Pharaoh campaign pack:

mission1.pak (scenario offset for id 11 — see GamestateIO::get_campaign_scenario_offset, src/io/gamestate/boilerplate.cpp:120)

The binary map is loaded by the engine before the JS script runs. The scripting system is loaded from src/scripts/missions.js, which imports mission/m_011_serabit_khadim.js by path. If you rename or move the file, update the import there.