After that, Zhang was tossed around in big waves and heavy rain.
"The raindrops hitting my face felt like hailstones. I tried to hold my breath but water was forced into my mouth anyway," Zhang said.
He managed to tie the life jacket to his belt and keep moving, hoping to run into a boat or reach a dock.
He did see a boat coming his way. He shouted, but either because it was too dark or his voice drowned in the rainstorm, the boat left.
After missing his first chance of getting saved, Zhang struggled to keep awake in the cold water. "Just hang in there a little longer, I told myself."
As dawn approached, Zhang saw land. He then felt reeds in the water and dragged himself towards the shore. A distance of a dozen meters took him an hour and half to finish.
Zhang stumbled on toward the buildings and was eventually discovered and sent to a hospital.
"I'm still alive," Zhang blurted out when he got a chance to call his family. On the other end of the line, his wife and 15-year-old son broke down as they thought Zhang had little chance of survival.
Zhang repeatedly expressed "regret" when recounting his arduous journey toward land. "Life jackets are accessible in all of the cruise's cabins. If it had not happened so fast, a lot of people could've been saved," Zhang sobbed.
Wang Yangsheng, who works at the Yueyang Maritime Rescue Center, said throughout more than a decade working there, he heard of very few cases where a boat does not even have time to send out a distress call before going underwater.
The rescue center received an alarm call from the crew of another boat, who saw two people in the water at 10:10 p.m. The center immediately sent a patrol boat and picked them up at 11:51 p.m.
That's when the sinking of Eastern Star became known to the outside world.
So far 15 people have been rescued while thousands of rescuers are racing against the clock to pull more people out of the sunken cruise.
More families are anxiously waiting for the news of their loved ones onboard the Eastern Star.
Wang said the intermittent rainfall in the region could complicate ongoing rescue efforts while rescuers have to take extra caution when cutting through the ship's hull to save those trapped inside.
That does not take into account people that have drifted away. Many of the survivors were rescued more than 6 miles away from the site where the boat capsized. Rescuers also found a dead body.
But many pray for miracles.
On Tuesday noon, a 65-year-old woman was rescued after having been trapped in the sunken ship for more than 17 hours. Rescuers found she could still talk, though not clearly. A medical check showed she did not suffer severe injuries, despite her clothes being torn in several places.