Yam Chi-ho (Savio Tsang) was brought up in the triads and have been imprisoned on numerous occasions. Chi-ho was temporarily released from prison to attend his father's funeral, the police are tightly monitoring him, believing he will commit another crime, and thus, Chi-ho feels a great sense of stress. He later meets a passionate social worker, Ha Ching-man (Margie Tsang), who actively leads Chi-ho back on the right path. During one occasion, Chi-ho went to settle a dispute for his triad brother, causing his wife, Pui-kuen (Kitty Lai) to a miscarriage. Disappointed at how Chi-ho was unable to change his poor habits, Pui-kuen breaks up with him. While Chi-ho felt guilty, Ching-man comforts him and inspires him to reform.
Chi-ho's good friend, Chong Ka-chun (Donnie Yen), was a customs officer who was framed for corruption and was imprisoned as a result. After being released from jail, Ka-chun's wife, Yee-lei (Cheng Yuen-man) has been remarried to his friend, Fong Sai-hei (Felix Lok). However, Ka-chun discovers that Sai-hei was the one who framed him. Sai-hei kills Ka-chun's son and causes Yee-lei to go mad. To seek revenge, Ka-chun joins the triads and participates in smuggling activities. Ka-chun also forces his good friend, Ma Cheung (Joseph Lee), an ex-con and expert lock picker who planned to turn over a new life, to conspire with him. Cheung, who is raising money to marry his girlfriend, Suk-lan (Yip Yuk-ping), has no choice but to agree. Ka-chun unscrupulously climbs up in the triads, launching a series of slaughters, and leading Sai-hei to prison. Ka-chun also murders Ching-man's mother, which was witnessed by Cheung. When Ka-chun plans to silence Cheung, Chi-ho helps Cheung in countering against Ka-chun.