Well, I was thinking about it again, and coding actually wouldn't be THAT bad. I know how I'd do it in C++ anyways, and most codes are fairly similar between languages. There would be a simple integer function that calls for a certain value, x, where x is the exp constant for that monster. For example, let's say you're fighting a barren soul. By itself it gives 50 exp (if I remember correctly) to each creature when you have a full army of 6. (obviously, 300 exp). For clarification's sake, this is level 1 barren soul which has 200v. That's simple math. x=1.5 so when d=damage and E=reward, E=d*x. Computers definitely understand math, and as I said this equation can be an integer function. The only thing would be going to every monster and assigning their x values, which could be time consuming. Another thing to take into account would be extra vital energy because of healing and bonuses from the user stats. To account for those, the x value can be dropped down a bit to account for an average value of that creature. Lets assume a good combo and say that barren soul has 300v now. x can be 1.
This is merely a possible solution. I'm still not sure the overall outcome would be worth the time consumption involved to set it up.