Przed wiekami oprócz ludzi świat zamieszkiwały gobliny, potwory i złe duchy. Wśród nich były także dwa węże - biały i zielony. Pewnego dnia młody zielarz Xu Xian (Raymond Lam) wpada do jeziora. Życie ratuje mu biały wąż pod postacią pięknej kobiety. Niebawem między mężczyzną a zaklętym w ludzkim ciele demonem rodzi się uczucie. Dowiaduje się o tym czarownik Fa Hai (Jet Li).