Usually the AI fill focus on attacking only one city. So the key is to have one city which draws his attention. Right now a good choice would be Shaka's Ndondakusuka (or whatever it is). The AI will often prioritize taking back its own cities, and that city is also the "most vulnerable". But most importantly it is on a hill. So if you capture that city, basically just whip walls in and stack lots of defensive units in it. Your guerilla GWs will make great defenders with their huge bonuses. Some spears to deal with chariots, some axes to deal with swords, and GWs to deal withs cats and others. Also be sure to get a medic unit going to heal fast. Then if Shaka "behaves" he will send stack after stack to get slaughtered trying to take the city. To do this effectively actually doesn't require a lot of units and your losses should be much less than his so you probably won't need to be building that many units either. Thus you can focus more on settling out your terrain (you have tons of good land) and recovering your economy. This is the approach I would take instead of trying to go after Shaka. He is a serious unit spammer and any forward progress for you would be slow and overall it would decrease your tech rate. But if you focus on building your economy and teching there's a good chance you'll be killing his longbows with cannons.