Derby won 3-0 when this fixture played out last season and they started positively with almost all of the first 20 minutes played in Bristol City's half.
Callum Elder saw a strike deflected wide inside two minutes, former Robins forward Andi Weimann had a goal-bound shot blocked and Morris then drilled an effort from a tight angle which was cleared at the near post, as Bristol City seemed content to soak up the pressure.
Gradually the scales began tilting as the visitors started dominating possession and controlling territory. Captain and former Derby man Jason Knight scuffed a shot from the edge of the box after 25 minutes for their first attempt at goal, but it was Twine who found the net 10 minutes later.
After scoring twice in the opening day 4-1 thrashing of Sheffield United, Twine was picked out in space in the box by Mark Sykes and had time to take two touches and calmly side-foot home.
Moments later City should have made it 2-0 as they won the ball on halfway and in a three-on-two Emil Riis picked out Mehmeti, but he took one too many touches and eventually shot wide.
Derby came out with renewed energy after the break and the intensity picked up when Rhian Brewster was brought on for his debut along with Ward and Bobby Clark in a triple change on the hour mark.
Yet Bristol City remained the only side able to create anything, with Jacob Widell Zetterstrom saving a fairly tame curler from Armstrong, while Mehmeti intercepted a loose ball that he was unable to bury into the corner.
Morris then made them pay, equalising late on with his third goal in as many matches since making a summer move from Luton.
Ward's header, from Elder's cross into the box, forced an excellent one-handed save out of Radek Vitek, but Morris pounced first to put the loose ball into the net.
Twine almost snatched back the three points for City in the dying minutes but Zetterstrom dived to keep out his free-kick that was heading for the top corner.