24 June 2025
Feng Zhou Zhan Jian (封舟戰艦) — The Ming ironclad
Feng Zhou Zhan Jian (封舟戰艦) — The Ming ironclad
5 January 2025
Lian Zhu Pao (連珠砲) and Yu Gu Pao (漁皷砲)
![]() |
Drawing of a Lian Zhu Pao (right) and Yu Gu Pao (left), from 'Wu Bei Ji Yao (《武備集要》)'. |
16 December 2024
Hui Ping (灰瓶) and Yan Guan (煙罐)
![]() |
Some ceramic containers that could be made into Hui Ping and Yan Guan (highlighted), from 'Wu Bei Ji Yao (《武備集要》)'. |
Hui Ping (灰瓶) and Yan Guan (煙罐)
12 December 2024
22 May 2024
Patreon supporter only: Xu Chao Guang (許朝光), Yelang Beyond the Sea
![]() |
Wokou engaging in rape and pillage, from 'Tai Ping Kang Wo Tu (《太平抗倭圖》)'. |
30 April 2024
Battle of Jiksan
![]() |
This illustration actually depicts Battle of Byeokjegwan rather than Battle of Jiksan, hence the snowy terrain. Unfortunately there is a serious lack of modern illustration of Battle of Jiksan, so I have to make do with what I can find. The particular painting is the handiwork of Feng Zi Jian (冯子建). |
Prelude
The Battlefield
![]() |
Ming army went all the way from Hanseong to Jiksan to interdict Japanese army (click to enlarge). |
Belligerents
Ming army
Japanese army
Kuroda Nagamasa's army
1) Vanguard
2) Scout
3) Full army (after reorganisation)
Mōri Hidemoto's reinforcement
1) Vanguard
2) Main army
The Battle
Aftermath
![]() |
Route of retreat of the Ming army (click to enlarge). |
The Elusive Battle of Sosapyeong
![]() |
Ming army engaged Japanese army once again on October 18, 1597 (click to enlarge). |
![]() |
Japanese activities on October 20, 1597 (click to enlarge). |
Analysis
Unexpected retreat
Reference
Further reading
I've prepared some extra contents for Battle of Jiksan which are exclusive to my Supporter-tier Patrons! The article is best read as a companion article to this one and can be accessed here. If you like my work, please support me via Patreon!Battle of Jiksan
29 February 2024
Qian Dan Yi Wo Feng (鉛彈一窩蜂)
Qian Dan Yi Wo Feng (鉛彈一窩蜂)
![]() |
Drawing of Qian Dan Yi Wo Feng in shoulder bag for transportation (top right), and the same cannon when deployed (top bottom), from 'Wu Bei Ji Yao (《武備集要》)'. |
Volley gun version
![]() |
Drawing of a matchlock volley gun Yi Wo Feng, from 'Wu Bei Ji Yao (《武備集要》)'. |
Qian Dan Yi Wo Feng (鉛彈一窩蜂)
28 January 2024
Du Huo Fei Pao (毒火飛砲)
![]() |
Drawing of a paper fuse (top right), paper sealing tube (middle right), wooden fuse (top bottom), shell casing (top left) and bombard (bottom left), from 'Wu Bei Ji Yao (《武備集要》)'. |
EXTRA: Bigyeok Jincheonroe (비격진천뢰 or 飛擊震天雷)
![]() |
Drawing of a large Bigyeok Jincheonroe, from 'Yungwon pilbi (《융원필비》 or 《戎垣必備》)'. |
![]() |
Bamboo sealing tube (left), iron lid (middle), and bomb casing of a Bigyeok Jincheonroe with a squarish fuse hole (right). |
Du Huo Fei Pao (毒火飛砲)
15 October 2023
Patreon supporter only: The twenty-four generals of Yue Gang (月港)
6 September 2023
War cart regiment of Zeng Xian (曾銑)
![]() |
Satellite map of modern Hetao region. |
The plan to reclaim Hetao
War cart regiment of Zeng Xian (曾銑)
16 June 2023
Patreon supporter only: Zhang Lian (張璉), Flying Dragon Emperor
![]() |
Flying Dragon Temple in Raoping County, Guangdong, built to venerate Zhang Lian. |
30 October 2022
Niao Chuan (鳥船)
![]() |
A replica Zhejiang Niao Chuan built in 2003. Although seaworthy, the replica's sails appear much smaller than historical ships. |
Niao Chuan (鳥船)
10 October 2022
Fu Chuan (福船)
![]() |
Drawing of a Fu Chuan with full bamboo palisade, from 'Jing Guo Xiong Lue (《經國雄略》)'. Note its rolled, rather than folded, sails. |
Fu Chuan (福船)
27 September 2022
Patreon post: Flaws and gaps of samurai armour
This article is a continuation of my previous armour comparison blog post, exploring various gaps and weakness of Japanese armour. The article is available to my patrons one month early, but it is open to public now!
Patreon post: Flaws and gaps of samurai armour
20 June 2022
Ming Chinese cavalry tactics — Part 2
26 April 2022
Patron only: Post-Ulsan skirmishes
Patron only: Post-Ulsan skirmishes
6 December 2021
Patron only: Battle of Bantan
Patron only: Battle of Bantan
19 October 2021
The bare-footed militia of Changning
![]() |
A barefoot She man from Luoyuan County. Image cropped from 'Huang Qing Zhi Gong Tu (《皇清職貢圖》)'. |
The bare-footed militia of Changning
20 April 2021
Siege of Ulsan
Prelude
With Joseon navy virtually annihilated and Gyeongsang, Jeolla, as well as Chungcheong Province trampled underfoot, Japan had achieved all initial objectives of the second invasion. All hope seems lost for the Koreans, and even the Chinese reeled from the ferocity of the attack (after Battle of Jiksan, many Ming commanders and troops were seriously contemplating a full retreat from Korea). Yet, in a strange twist, Japanese invaders suddenly halted their advance, retreated southwards, and began to construct a series of fortresses along the entire coast, among them Ulsan Fortress Complex, the focus of this blog post.
It turned out Hideyoshi learnt well from his past mistakes and took steps to correct his failures (perhaps a little too well). The Japanese were overeager during the first invasion and tried to advance as fast as they could, which resulted in severe logistics issues that left them unable to mount an effective defence against Ming counterattack. They were also unaccustomed with the harsh Korean winter, and wanted to wait out the winter before resuming attack. Thus for the second invasion the Japanese decided to take it slow. The overall strategy of the second invasion was to quickly crush Korean defence, then consolidate and dig in. Once Japanese footholds in Korea were sufficiently secure, a new phase of invasion would begin, followed by yet another phase of consolidation and digging in. Nevertheless, while Hideyoshi's overall strategy was sound, his decision to have the Japanese army halt its offensive and consolidate gave precious breathing space to his enemies, allowing the Koreans to stabilise from the initial shock and the Chinese to send in reinforcement.
The Battlefield
![]() |
Important locations of the siege campaign marked on a modern satellite map. Made by myself using Google Earth and Adobe Illustrator (click to enlarge). |
Important fortresses involved in the Siege of Ulsan were:
Ulsan Fortress (蔚山城)
![]() |
Section of a Ming period map 'Si Lu Wo Zhai Zong Tu (《四路倭寨總圖》)' depicting Ulsan Fortress (right) and the smaller Dosan Fortress (left). Note the double-layered palisades of Ulsan Fortress. |
Katō Kiyomasa actually built the fortress during the first invasion, although at the time it was a relatively small and unimportant fort. After Japanese army retreated from Hanseong (한성 or 漢城, present-day Seoul) near the end of the first invasion, Katō Kiyomasa began to expand and fortify the original fort, entrusting Asano Yoshinaga to carry out the task.
The fortress was also known as Dongbudongseong (동부동성 or 東部洞城) during the period of Japanese occupation of Korea. Japanese historians generally regard this fortress to be simply a dejiro (出城, lit. 'Satellite castle') subservient to Dosan Fortress, downplaying its importance (even though it was actually larger than Dosan Fortress).
After the war, the hill which Ulsan Fortress was built on became the site of a Confucian academy known as Gugang Seowon (구강서원 or 鷗江書院), although the academy had since been relocated and the hill flattened to make way for modern urban development.
Dosan Fortress (島山城)
![]() |
Ruin of Dosan Fortress now reclaimed by nature. |
Some Japanese sources call the fortress Urusan Shinjō (蔚山新城, lit. 'Ulsan New Fortress') to differentiate it from the original Ulsan Fortress. Nowadays, it is also known as Ulsan Japanese Castle, and the hill which the fortress was built on is also home to Hakseong Park.
Bangujeong Fort (伴鷗亭城)
A secondary fort located at the south of Ulsan Fortress, built atop the ruin of a Goryeo-era walled settlement. It was named after Bangujeong (반구정 or 伴鷗亭, lit. 'Pavilion of accompanying seagulls'), a pavilion built by righteous army leader Yi Eung-chun (이응춘 or 李應春) before the war.Seobudongseong (서부동성 or 西部洞城)
Eastern Camp
A military camp situated somewhere outside Bangujeong Fort (its exact location is currently unknown as few traces of the palisade survive). It was garrisoned by Asano Yoshinaga, although he left the camp before Ming army attacked in the earnest.Taehwa River Fort (太和江寨)
A river fort located at about 2 ~ 3.5 kilometres west of Dosan Fortress, overseeing Taehwa River from both sides.Byeongyeongseong (병영성 or 兵營城, lit. 'Barrack fortress')
![]() |
Surviving Korean wall section of Byeongyeongseong (click to enlarge). |
Belligerents
Ming-Joseon coalition
Ming Army
Military Superintendent: Ma Gui (麻貴)
Middle Division leader: Gao Ce (高策)
Middle Division commander: Zu Cheng Xun (祖承訓), Po Gui (頗貴), Wu Wei Zhong (吳唯忠), Li Hua Long (李化龍)
Strength: 11,690
Left Division leader: Li Ru Mei (李如梅)
Left Division commander: Chen Yin (陳寅), Mao Guo Qi (茅國器), Yang Deng Shan (楊登山), Bai Sai (擺賽), Lu De Gong (盧得功), Dong Zheng Yi (董正誼)
Strength: 13,006
Right Division leader: Li Fang Chun (李芳春), Jie Sheng (解生)
Right Division commander: Lu Ji Zhong (盧繼忠), Yang Wang Jin† (楊萬金), Chen Yu Wen (陳愚聞)
Strength: 11,630
Total Strength: 36,326*
Casualties: 798 killed; 823 succumbed to injury or sickness; 2,908 wounded
Casualties (horse): 213 killed, 2,330 died to attrition (injury, sickness, cold, malnutrition, exhaustion etc.)
*Note: The primary Ming source 'Liang Chao Ping Rang Lu (《兩朝平攘錄》)' erroneously included a few Ming commanders that were yet to enter Korea into the tally, so the strength of Ming army was actually lower than 36,326.
Joseon Army
Commander-in-chief: Gwon Yul (권율 or 權慄)Notable commander: Kim Ung-seo (김응서 or 金應瑞), Yi Si-eon (이시언 or 李時言), Seong Yun-mun (성윤문 or 成允文), Gwon Eung-soo (권응수 or 權應銖), Jeong Gi-ryong (정기룡 or 鄭起龍), Go Eon-baek (고언백 or 高彥伯)
Notable official: Jang Un-ik (장운익 or 張雲翼), Yi Deok-hyeong (이덕형 or 李德馨)
Strength: 12,500*
Casualties: 298 killed; 876 seriously wounded (casualty report only up to date to February 7, 1598. Casualties for the remaining days unknown)
Joseon Navy*
Notable commander: Yi Un-ryong (이운룡 or 李雲龍)Strength: Unknown
Casualties: N/A
Japan
Japanese Army
Commander-in-chief: Katō Kiyomasa (加藤清正)Notable commander: Asano Yoshinaga (浅野幸长), Reizei Motomitsu† (冷泉元満), Asunuma Motohide† (阿曾沼元秀), Tsuno Ieyori† (都野家頼), Shishido Mototsugu (宍戸元続), Ōta Kazuyoshi (太田一吉), Katō Yasumasa (加藤安政), Katō Yasuyuki (加藤安之), Katō Yosaemon (加藤与左衛門)
Rōnin: Aso Kazuo (阿蘇大夫)
Strength: 10,000 ~ 23,000+
Casualties:
- 18,360+ killed on the first day; 896+ died to starvation or froze to death during the siege (according to Ōkōchi Hidemoto).
- 14,000 ~ 19,000+ killed over the course of the entire siege (according to Nabeshima Naoshige fukōho).
- "Thousands" killed on the second day (according to Chosen Nichinichi-ki, diary of Japanese monk Kyonen).
Japanese Relief Force (Seosaengpo)
Commander-in-chief: Mōri Hidemoto (毛利秀元)Notable commander: Yamaguchi Munenaga (山口宗永), Kuroda Nagamasa (黒田長政), Ankokuji Ekei (安国寺恵瓊), Takenaka Shigetoshi (竹中重利), Nabeshima Naoshige (鍋島直茂), Nabeshima Katsushige (鍋島勝茂), Hachisuka Iemasa (蜂須賀家政), Ikoma Kazumasa (生駒一正), Katō Yoshiaki (加藤嘉明), Wakisaka Yasuharu (脇坂安治), Hayakawa Nagamasa (早川長政), Kakimi Kazunao (垣見一直), Kumaga Naomori (熊谷直盛), Chosokabe Motochika (長宗我部元親), Nakagawa Hidenari (中川秀成), Ikeda Hideuji (池田秀氏), Ikeda Hideo (池田秀雄), Mōri Katsunobu (毛利勝信), Mōri Katsunaga (毛利勝永), Akizuki Tanenaga (秋月種長), Takahashi Mototane (高橋元種), Itō Suketaka (伊東祐兵), Sagara Yorifusa (相良頼房)
Japanese Relief Force (Other)
Notable commander: Shimazu Toyohisa (島津豊久), Kikkawa Hiroie (吉川広家), Mōri Takamasa (毛利高政), Tōdō Takayoshi (藤堂高吉), Tōdō Yoshikatsu (藤堂良勝), Matsuura Shigenobu (松浦鎮信), Kurushima Hikozaemon (来島彦左衛門), Kan Uemonpachi (菅右衛門八)Casualties: 2,800+ killed (according to Ōkōchi Hidemoto)
The Battle
『此賊七千,足當倭奴十萬。』"Seven thousand Jurchens could resist a hundred thousand Japanese."
— Li Ru Mei's impression of the capabilities of Japanese army.
After reorganising Ming army into three divisions, Xing Jie ordered Yang Hao and Ma Gui to lead Left and Right Division to Ulsan, departing from Chunju, passing through Mungyeong Saejae, Andong and Gyeongju. Xing Jie was concerned that Konishi Yukinaga (小西行長) at Suncheon might come to Ulsan's aid, so he arranged a detachment from Middle Division to be stationed at Uiryeong, both to defend against possible Japanese reinforcement from Jeolla Province, and to reinforce Ming army attacking Ulsan Fortress when needed. On top of that, Xing Jie also picked 1,500 Ming cavalry and ordered them, along with some Joseon troops, to march to Suncheon through Cheonan, Jeonju and Namwon while putting up an appearance that they were about to attack, as well as spreading false rumours that he was about to personally lead a huge army of 200,000 to Namwon to lay siege to Suncheon Fortress. These were all diversion tactics to pin down Konishi Yukinaga's force. In reality, Xing Jie himself stayed behind in Hanseong with only 1,500 Ming troops.
Upon receiving Xing Jie's order, Yang Hao and Ma Gui crossed Han River and departed for Ulsan. Ma Gui arrived at Mungyeong City on January 13, 1598 and held a secret war council attended by both Ming and Joseon military leadership. During the council, Ma Gui secretly asked Gwon Yul to dispatch Joseon Navy under Yi Un-ryong to support the siege campaign, and promised him several hundred Southern troops, along with 200 Ming and Joseon arquebusiers, to support Yi Un-ryong's fleet.
On January 24, 1598, Yang Hao arrived at Uiseong. After consulting his Jubbansa (접반사 or 接伴使, a Joseon official appointed to a specific Ming delegate to serve as his adjutant, aide-de-camp, and sometimes translator) Yi Deok-hyeong, he decided to send a number of Ming and Joseon scouts, among them a Japanese defector known only by his Korean name Yeo Yeo-moon (여여문 or 呂汝文), to reconnoitre Ulsan Fortress Complex ahead of the main army.
On January 26, 1598, all three divisions of Ming army arrived at Gyeongju. Yang Hao held a war council to discuss the finer details of the siege campaign, and Ming army began final preparation before the attack. Ma Gui intended to commit the full might of Ming army into attacking Ulsan Fortress Complex. However, he too was concerned about the potential reinforcement from Suncheon and Jinju, so he ordered Dong Zheng Yi to lead his troops to defend Namwon and Gurye (the fact that Ming military leadership made multiple arrangements as a precaution against Konishi Yukinaga's reinforcement shows that they saw him as a very dangerous foe). On top of that, Ma Gui also dispatched Yu Cheng En (于承恩), leading a small contingent of Southern troops and Joseon naval troops, to sneak to Seosaengpo and set up a dummy army (using scarecrows for troops, long poles for weapons, fabric scraps for clothes and banners, as well as making noise with horns and drums) to sow confusion.
The next day, Yeo Yeo-moon returned from his reconnaissance mission, bringing with him valuable intelligence and a detailed map of various facilities inside Ulsan Fortress Complex drawn by himself. With all preparation complete, Ming army departed Gyeongju and marched south towards Ulsan on January 28, 1598. Yeo Yeo-moon once again moved ahead of Ming army and blended into Japanese territory unnoticed.
![]() |
Overall strategic map of the siege campaign (click to enlarge). |
Day 1: A payback for Byeokjegwan
January 29, 1598 (25th year of Wanli reign, 12th month, 23rd day)
![]() |
Japanese positions on January 29, 1598, before the arrival of Ming army (click to enlarge). |
In a flash, what was originally meant to be a harassing attack quickly evolved into a serious assault, and then a wanton slaughter. Japanese garrison fell into complete disarray, and all three of its commanders (Reizei Motomitsu, Asunuma Motohide and Tsuno Iyeori) were killed in action. The chaos at Byeongyeongseong eventually alerted the main Japanese force at around 7 am, prompting Shishido Mototsugu, Ōta Kazuyoshi and Asano Yoshinaga to rush to Byeongyeongseong's rescue with a large army of more than 10,000 troops.
![]() |
Li Ru Mei crossed Dongcheon River with 300 cavalry to attack Byeongyeongseong, then lured the Japanese reinforcement into an ambush (click to enlarge). |
Day 2, dawn: Fall of Ulsan Fortress
January 30, 1598 (25th year of Wanli reign, 12th month, 24th day)
![]() |
Japanese positions at the break of dawn of January 30, 1598 (click to enlarge). |
![]() |
Ming army launched a three-pronged simultaneous attack against Ulsan Fortress Complex (click to enlarge). |
Day 2, midday: Assault on Dosan Fortress
January 30, 1598 (25th year of Wanli reign, 12th month, 24th day)
![]() |
Ming army attacking Dosan Fortress from three directions. Blue colour indicates captured portions of the fortress. |
![]() |
Japanese flotilla sailing from Seosaengpo Fortress to Ulsan Fortress (click to enlarge). |
![]() |
Ming army attempted to intercept the Japanese flotilla (click to enlarge). |
![]() |
Known Ming positions at the end of January 30, 1598 (click to enlarge). |
![]() |
Position of Lu Ji Zhong at the end of January 30, 1598 (click to enlarge). |
Day 3: Fierce assault
January 31, 1598 (25th year of Wanli reign, 12th month, 25th day)
Like the previous day, the attack on Dosan Fortress began before dawn. Ming army launched its most ferocious attack on Dosan Fortress, commencing no less than seven assaults over the entire day. Wearing a green robe and carrying a white banner, Katō Kiyomasa personally commanded the defence of the fortress, leading the arquebusiers from the front and even participating in the shooting along with Asano Yoshinaga.
![]() |
Li Ru Mei engaging Japanese flotilla, supported by Gao Ce and Zu Cheng Xun (click to enlarge). |
Later that day, Yang Hao dispatched a messenger carrying Shang Gong Qi (賞功旗, lit. 'Banner of reward') and Mian Si Tie (免死帖, lit. 'Badge of pardon') to Dosan Fortress to call for Japanese surrender, of which Katō Kiyomasa replied that he will only surrender if Koreans also agree to the terms. Yang Hao however saw through Katō Kiyomasa's ruse/stalling tactic and withdrew the offer.
Day 4: Respite
February 1, 1598 (25th year of Wanli reign, 12th month, 26th day)
A handful of Korean supplies from Gyeongju—enough to sustain the troops (but not the horses) for a few more days—managed to make its way to the frontline on the first day of February. Having received some supplies at last after enduring days of hunger and restless battles, Yang Hao decided to allow Ming army to rest for a day. He summoned Gwon Yul and informed him of the decision, but ordered Joseon army to continue the attack as well as bury all water wells near Dosan Fortress.Gwon Yul duly followed the command and ordered Joseon army (along with some defected Japanese troops) to launch the attack. Joseon troops approached the fortress with their wooden shields held high, intending to pile up firewood and other flammable material at the base of the fortress and set it on fire. They were quickly beaten back by Japanese defenders and suffered heavy casualties, causing the army to fall into panic. To restore order and reassert control of the chaotic situation, Gwon Yul made a brutal example out of Jeonje (전제 or 全霽), district administrator of Youngsan, as well as several other officials. Their execution scared the rest of the Joseon army straight. Gwon Yul and Yi Deok-hyeong then went on to personally lead the assault. With renewed rigour, Joseon troops tore through the palisades of Dosan Fortress and moved closer to the base of the fortress proper. Unfortunately, hails of arquebus gunfire stopped even this determined assault dead in its track, and Joseon army was forced to retreat after suffering another wave of casualties.
![]() |
Relief column from Seosaengpo Fortress and flotilla from Yeompo naval base going to Ulsan Fortress (click to enlarge). |
![]() |
Li Ru Mei engaging Japanese flotilla (click to enlarge). |
On the same day, Yang Hao once again dispatched a messenger carrying Shang Gong Qi and Mian Si Tie to Dosan Fortress. However, for this time the messenger went to the outskirt of Dosan Fortress and shouted for the entire Japanese garrison to hear, enticing them to surrender. One Japanese troop capitulated and ran away from the fortress to surrender to Ming army. Yang Hao was greatly delighted by the news and rewarded the defected Japanese troop handsomely. He gifted a fine steed to the Japanese troop and paraded him around Dosan Fortress to show off, enticing even more Japanese troops to defect. Powerless to stop Yang Hao's ploy, Katō Kiyomasa was forced to shut off the fortress entirely to prevent further desertion.
At around 3 pm, the weather suddenly changed. Heavy winds began blowing and rain started pouring. By evening, the rain had turn into a heavy downpour which persisted for the entire night. Due to the fact that it was winter season in Korea, many Ming troops that camped in the wild were drenched by freezing rainwater and frostbitten.
Day 5: Raging storm
February 2, 1598 (25th year of Wanli reign, 12th month, 27th day)
![]() |
Japanese flotilla once again sailing from Yeompo naval base to Ulsan
Fortress (click to enlarge). |
![]() |
Ming Left Division and Zhejiang infantry scrambled to engage Japanese flotilla (click to enlarge). |
Day 6: A turn for the worse
The heavy rain slowly subsided on the sixth day. According to some Japanese sources, on this day some Ming troops moved their cannons to Hakseongsan and launched an artillery barrage across the hill into Dosan Fortress. Several Japanese troops were pulverised by cannon fire, causing a panic to spread. Japanese troops attempted to run for cover, but they were stopped by Katō Kiyomasa, who remained unfazed even as some cannonballs landed near him. Katō Kiyomasa's calmness and non-reaction misled Ming artillerymen into believing that their shots missed the mark, so they adjusted their guns and launched the next salvo with a higher trajectory, overshooting Dosan Fortress. It was at this point that Katō Kiyomasa ordered his troops to act as if they were getting shot at to further deceive the Chinese. As a result, Ming artillerymen continued to fire their cannons using high trajectory, missing most of their shots.This can only mean one thing—new Japanese reinforcement was under way.
![]() |
Yamaguchi Munenaga and Mōri Katsunobu's flotilla sailing
from Seosaengpo Fortress to Ulsan Fortress (click to
enlarge). |
![]() |
Ming troops at the river bank engaging Japanese flotilla (click to enlarge). |
Meanwhile, Katō Kiyomasa's messenger only just arrived at Suncheon Fortress (which was farther away from Seosaengpo). Incidentally, construction of Suncheon Fortress was completed on the same day, and Shimazu Yoshihiro (島津義弘) with his son Shimazu Tadatsune (島津忠恒) were hosting a celebratory feast with other Japanese commanders inside Suncheon Fortress when they received the news about Ulsan under siege. Due to Xing Jie's diversionary attack, Japanese commanders at Suncheon Fortress were reluctant to send out their full force to relief the siege. Kakimi Kazunao even specifically ordered Shimazu Yoshihiro to stay behind to defend the fortress, and only went to Ulsan with his own troops. Perhaps not wanting to lose reputation for not sending out help, Shimazu Yoshihiro later wrote a letter to his nephew Shimazu Toyohisa, asking him to go to Ulsan in his stead. He also dispatched a few retainers and 50 arquebusiers to reinforce Shimazu Toyohisa's 500 troops.
The rain finally stopped by nightfall, only to be replaced by strong westerly winds. The freezing winds took a serious toll on Ming troops, in particular Zhejiang infantry guarding the river banks. At midnight, Katō Shigetsugu (加藤重次), Shōbayashi Hayato (庄林隼人) and Kondō Shirou Goemon (近藤四郎右衛門), leading a contingent of 100 mounted samurai and 300 arquebusiers, sallied out of the eastern gate of ninomaru of Dosan Fortress to harass Ming army. They launched a few volleys of fire arrows and arquebus shots at Ming camps at the east side of Dosan Fortress before turning back.
Day 7: Renewed attack
February 4, 1598 (25th year of Wanli reign, 12th month, 29th day)
The strong wind that began to blow since last night persisted into the seventh day of the siege. At dawn, Yang Hao ordered Ming army to gather more firewood in preparation for another attack on Dosan Fortress, as he felt the strong wind could be helpful in spreading the fire. At noon, another 26-ship flotilla from Yeompo arrived at Ulsan and began approaching Dosan Fortress, and once again Ming troops guarding the river banks bombarded the flotilla with cannons. While both sides were busy exchanging fire against each other, one samurai and a few of his followers suddenly dashed out of Dosan Fortress to the river bank and began shouting to the flotilla. Although he did not understand Japanese, Yang Hao was alerted enough that he immediately dispatched Ming Right Division to reinforce Wu Wei Zhong's Zhejiang infantry at the river banks, as well as asking them to be extra vigilant. Ming army repelled the flotilla at around 5 pm.
![]() |
Japanese flotilla sailing from Yeompo naval base to Ulsan
Fortress for the fourth time (click to enlarge). |
After today's attack, Yang Hao appeared to have a change of mind. He probably felt that trying to take the fortress by force was no longer practical after days of consecutive failures, and wanted to adjust his strategy to that of encirclement and investment. To this end, Yang Hao ordered his troops to upgrade their tents into semi-permanent thatched shelters, and urged Gwon Yul and Yi Deok-hyeong to hasten the next delivery of supply. Ma Gui suggested Yang Hao to lift the blockade of one side of Dosan Fortress, then ambush the Japanese as they came out. However Yang Hao rejected his idea.
Late into the night, a small Japanese ship sneaked back to Dosan Fortress, presumably due to the shouting communication earlier in the day. About 30 Japanese troops came out of Dosan Fortress and attempted to board the ship. However, they were immediately attacked by Ming troops laying in ambush. After a brief skirmish, Wu Wei Zhong's Zhejiang infantry managed to behead six Japanese troops, whereas Ming Right Division troops beheaded one. The rest ran back into Dosan Fortress.
In the meantime, Mōri Hidemoto finally arrived at Seosaengpo at around 4 pm. Japanese commanders at Seosaengpo held a war council that night to decide their next course of action—whether to send a relief force to Dosan Fortress immediately, or wait for further Japanese reinforcement to arrive before sending out help. They concluded that an advance party would be dispatched the next day, but the majority of Japanese forces should stay and wait for more reinforcement.
Day 8: Living hell
February 5, 1598 (25th year of Wanli reign, 12th month, 30th day)
![]() |
Japanese advance party and flotilla from Seosaengpo went to Ulsan (click to enlarge). |
Later in the day, Katō Kiyomasa wrote a letter to Ming army, informing the Chinese of his intention to negotiate for surrender. He requested permission to let in a Buddhist monk on the Japanese flotilla to serve as translator and draft the written agreement, on the pretense that no one in Dosan Fortress spoke Chinese. On the Ming side, Yang Hao already knew that taking Dosan Fortress by force would be difficult, and his troops were in a terrible shape, so when he received news that the Japanese were trying to sue for peace, he gladly accepted it and let the Buddhist monk enter Dosan Fortress. After some back and forth communication, both sides agreed to hold a peace talk in three days, in which Katō Kiyomasa was required to personally attend. Little did Yang Hao know, the flotilla was not Katō Kiyomasa's, but a scouting flotilla sent by Mōri Hidemoto, Kuroda Nagamasa, Yamaguchi Munenaga and Takenaka Shigetoshi. It had already made contact and coordinated with Japanese troops inside Dosan Fortress using flag signals beforehand, so when the "Buddhist monk" was allowed to enter the fortress, he brought with him the news of the arrival of Japanese relief force, which boosted the morale of Japanese troops tremendously. The flotilla returned to Seosaengpo afterwards.
Day 9: An uneasy new year
February 6, 1598 (26th year of Wanli reign, 1st month, 1st day)
Day 10: Reinforcement
February 7, 1598 (26th year of Wanli reign, 1st month, 2nd day)
![]() |
Japanese relief force marched to Ulsan while Japanese flotilla sailed to Yeompo Naval Base (click to enlarge). |
Day 11: Day of reckoning
February 8, 1598 (26th year of Wanli reign, 1st month, 3rd day)
![]() |
Japanese fleet sailed to Ulsan, cutting off Lu Ji Zhong in the process (click to enlarge). |
![]() |
Japanese relief force set up a new camp and began harassing Zu Chen Xun and Wu Wei Zhong's detachment (click to enlarge). |
|
First Division of the Japanese relief force attempted to cross Taehwa River only to be beaten back by Li Ru Mei and Jie Sheng (click to enlarge). |
![]() |
Standoff at Taehwa River (click to enlarge). |
- Bai Sai and Po Gui remained at Jeotan, keeping a look-out against Japanese relief force in the new camp. Joseon commanders Yi Si-eon and Seong Yun-mun and some Joseon troops were sent to assist them.
- Li Ru Mei, Jie Sheng and some Joseon troops defended the river bank between Dosan Fortress and Jeontan against potential landing of Japanese fleet on Taehwa River, as well as potential river crossing of Japanese troops from the other side.
- Southern troops under Wu Wei Zhong and Mao Guo Qi were stationed around the river confluence, guarding against both Japanese troops at the southern bank of Taehwa River and Japanese fleet on Dongcheon River.
![]() |
Final repositioning of Ming army before it launches its last attack (click to enlarge). |
Day 12: Final Attack and Retreat
February 9, 1598 (26th year of Wanli reign, 1st month, 4th day)
![]() |
A flotilla of 90 Japanese ships on Taehwa River began to slowly sail upstream (click to enlarge). |
![]() |
Ming army lifted the siege and began to retreat. Ming cavalry were recalled to perform rearguard action (click to enlarge). |
![]() |
Ming troops stranded at the southern bank of Taehwa River attacked into Japanese camp (click to enlarge). |
![]() |
Japanese First Division crossed Taehwa River (click to enlarge). |
![]() |
Replica of Kikkawa Hiroie's thirteen flap uma-jirushi displayed at the entrance of Sengoku no Niwa Museum of History (戦国の庭歴史館), Hiroshima, Japan. |
![]() |
Kikkawa Hiroie recaptured Byeongyeongseong, forcing Yang Hao to change direction. Ming rearguard engaged and repelled Japanese pursuers from Dongcheon River (click to enlarge). |
![]() |
Shimazu Toyohisa blocked Yang Hao's line of retreat, forcing him to turn north (click to enlarge). |
![]() |
Wu Wei Zhong's detachment forcibly crossed Taehwa River under heavy fire (click to enlarge). |
![]() |
Zu Cheng Xun stormed through Japanese camp and sneaked to Seosaengpo Fortress (click to enlarge). |
![]() |
Japanese Second and Third Division crossed Taehwa River, captured Hakseongsan, and rendezvoused with First Division (click to enlarge). |
![]() |
Final encounter behind the hill of Baegamsa Temple (click to enlarge). |
Aftermath
Analysis
- "Ulsan Japanese Castle" was a single castle (it was actually a massive multi-fortress complex, as were all other Waeseong in Korea);
- Ming army suffered heavy casualties due to undisciplined retreat, leaving its troops vulnerable to Japanese pursuit (Ming army actually retreated in good order and protected its rear remarkably well, and only suffered relatively light casualties);
- The disorganised retreat was caused by Yang Hao fleeing before his army, causing the rest to break ranks (Yang Hao actually stayed behind and was among the last to retreat);
- Japanese fortification design and mastery of matchlock firearms conferred them unique advantages against contemporary Chinese siege tactics (on the contrary, Ming army quickly captured all but one fortresses of the entire complex, and nearly captured the last one).
Missed opportunity
Attributions and Special Thanks
While originally I planned to write this blog post based on my original research, I quickly came to realise that neither my knowledge on this topic, nor access to historical documents, nor my ability to understand and interpret those documents to construct a comprehensive narrative are up to the task. As such, the completion of this article would not be possible without massive amount of inputs and guidance from Mi Zhou Zhai (米粥斋), an expert in the field, through an intermediate (who wishes to remain anonymous). I also borrowed heavily from 《万历朝鲜战争全史》written by Zhu Er Dan (朱尔旦), who also penned the three-part critique of Samuel Hawley's book that I translated. For that, I owe them my utmost gratitude.Reference
Chinese sources
- 《明史》
- 《明史稿》by 萬斯同
- 《明史紀事本末》by 谷應泰
- 《明神宗實錄》
- 《國榷》by 談遷
- 《萬曆邸鈔》a collection of Wangli-era Dibao (邸報) gazette/newspaper.
- 《萬曆野獲編》by 沈德符
- 《兩朝平攘錄》by 諸葛元聲
- 《東征記》by 徐希震
- 《經略禦倭奏議》by 邢玠
- 《太僕奏議》by 張輔之
- 《東師奏報失實疏》first-hand casualty report of the siege campaign co-authored by Yang Hao and Ma Gui. Included in《太僕奏議》
- 《全邊略記》by 方孔炤
- 《武備志》by 茅元儀
- 《牧齋初學集》by 錢謙益
- 《崖山西生鎮都督洞層岩鐫刻記》by 片碣頌
Korean sources
- 《宣祖昭敬大王實錄》
- 《宣廟中興志》
- 《征蠻錄》by 李擢英
- 《再造藩邦志》by 申炅
- 《象村稿》by 申欽
- 《懲毖錄》by 柳成龍
- 《慕夏堂文集》by 金忠善
- 《洪吉童傳》attributed to 許筠
- 《月沙先生集》by 李廷龜
- 《請留經理再奏》included in《月沙先生集》
- 《看羊錄》by 姜沆
- 《金陵集》by 南公轍
- 《磻溪隨錄》by 柳馨遠
- 《星湖先生僿說》by 李瀷
- 《宋經略書》by anonymous
Japanese sources
General
- 『豊臣秀吉譜』by 林羅山
- 『朝鮮蔚山合戦之図』not to be confused with the famous folding screen painting.
- 『義演准后日記』by 三宝院義演
- 『西笑和尚文案』by 西笑
- 『藩翰譜』by 新井白石
- 『日向記』
- 『岩国市史』
Asano clan
- 『浅野家文書』
- 『浅野幸長蔚山籠城以下万事覚書』included in『浅野家文書』
- 『浅野幸長家臣某蔚山籠城覚書』included in『浅野家文書』
- 『幸長手記』
Katō clan
- 『清正公行状』
- 『清正記』by 古橋左衛門又玄
- 『清正高麗陣覚書』by 川兵太夫
- 『本山豐前守安政父子戰功覺書』
- 『下川文書』
Kikkawa clan
- 『吉川家譜』
- 『吉川家文書』
- 『吉川広家朝鮮役戦功覺書』included in『吉川家文書』
Kuroda clan
- 『黒田家譜』
- 『黒田家文書』
- 『黒田記略』
Shimazu clan
- 『島津国史』
- 『島津家文書』
- 『義弘公御譜中』
- 『旧記雜錄後編』
- 『西藩烈士干城録』
- 『本藩人物誌』
- 『征韓錄』
- 『又七郎豐九譜中』
- 『朝鮮役録』by 五代秀尭
Mōri clan
- 『毛利家記』
- 『毛利秀元記』by 黒川真道
- 『陰德太平記』by 香川正矩
- 『萩藩閥閲録』
- 『安西軍策』by anonymous
- 『宍戸記』
- 『松井物語』
Nabeshima clan
- 『鍋島家文書』
- 『鍋島直茂譜考補』
Ōta clan
- 『朝鮮日々記』by 慶念
- 『大河内秀元陣中日記』by 大河内秀元
Tachibana clan
- 『立齋舊聞記』
Tōdō clan
- 『高山公実録』
Early modern sources
- 『南藤蔓綿録』by 梅山無一軒, 1804~1817
- 『征韩偉略』by 川口長孺, 1831
- 『大日本編年史』by 小西惟沖, 1883
- 『如蘭社話』by 邨岡良弼 et al., 1912
- 『朝鮮征伐記』by 黑川真道, 1916
- 『日本戦史: 朝鮮役』by 参謀本部, 1924
- 『碧蹄戦史』by 渡邊刀水, 1938
- 『秀吉の朝鮮経略』by 京口元吉, 1939
Modern references
- 『近世日本国民史·豊臣氏時代: 朝鮮役』by 徳富蘇峰, 1981
- 『関ヶ原合戦と近世の国制』by 笠谷和比古, 2001
- 『加藤清正―朝鮮侵略の実像』by 北島万次, 2007
Further Reading
Siege of Ulsan