Pemberontakan Trunajaya
Perang ini berawal dengan kemenangan pihak pemberontak: pasukan Trunajaya mengalahkan pasukan kerajaan di Gedogog (1676), lalu berhasil menduduki hampir seluruh pantai utara Jawa dan merebut keraton Mataram di Keraton Plered (1677). Raja Amangkurat I meninggal ketika melarikan diri dari keraton. Ia digantikan oleh anaknya, Amangkurat II yang meminta bantuan kepada VOC dan menjanjikan pembayaran dalam bentuk uang dan wilayah. Keterlibatan VOC berhasil membalikkan situasi. Pasukan VOC dan Mataram merebut kembali daerah Mataram yang diduduki, dan merebut ibu kota Trunajaya di Kediri (1678). Pemberontakan terus berlangsung hingga Trunajaya ditangkap VOC pada akhir 1679, dan juga kekalahan, kematian atau menyerahnya pemimpin pemberontakan lain (1679–1680). Trunajaya menjadi tawanan VOC, namun dibunuh oleh AmangkuratII saat kunjungan raja pada tahun 1680.
Pertempuran Gegodog
Tahun 1676, raja memutuskan untuk mengerahkan pasukan besar untuk memadamkan pemberontakan. Bala tentara ini jauh lebih besar daripada pasukan Trunajaya, namun sebagian besar terdiri dari para petani wajib militer. Juga termasuk para tentara cadangan dari Jawa Barat. Raja menugaskan putra mahkota untuk memimpin bala tentara ini; dia tidak menyadari peran putra mahkota dalam pemberontakan atau berencana agar dia dibunuh semasa kampanye militer. Para pangeran lainnya juga bergabung dalam bala tentara, termasuk paman raja Pangeran Purbaya, saudara Sultan Agung tersisa satu-satunya yang hampir berusia 80 tahun, serta putra raja yang lain, Pangeran Singasari yang merupakan musuh utama putra mahkota.