If you want to balance the resource towards fame, a geometric mean of each value + 1 to prevent a zero problem. Geometric mean with a zero as a variable is always zero since zero times anything is zero. Try some form of weighted geometric mean for your fame calculation.
Well, you have 7 variables, and under the 7+-2 rule, players won't have much problem remember this limited amount. If you have more resource variable in the same tier, then the game just gets harder. Remember to keep this 7+-2 rule, and that's the reason for creating tiers of resources. Major problems with a hybrid is that it's hard on players once the resources micromanagement just keeps getting longer and longer. That's why there should be some macromanagement on resources for the turn based portion of the game if there is LAN or other multiplayer support.
If you have multiplayer, you could have rejection of combat at the expense of fame based upon the attacker's fame relative to the defender's game. In some way, those with high fame will lose more fame if they reject combat, thus the game would be dynamic.
Have the resources regenerate at a cycle of 20 years of game time or longer, or don't have regenerating resources at all. If resources regenerate at a rate too high, then it removes some element of timing. One element of strategy is timing. When does the player predict such and such army will be at. When does the player predict such and such resources will respawn. At high level, the players feel for position, and they will know the possible position of their opponents without scouting. Scouting is use to verify that they opponent does do the predicted action. If not, the build orders may need to adapt to the opponent's action. Slow regenerating resources gives some degree of dynamic actions.
Like real life, there will always be a downtime during which gather, build, and research needs to happen.
Remember, "War is Deception" -- Sun Tsu
There must be ways to deceive other sides, whether players or AI.
It's about how Advance Wars determine the player's performance. If you instead use a similar method of adding the value from multiple goals, and ultimately try to maximize the overall value, then your AI may be more dynamic. Have multiple goals that are calculated independently.
(SPEED) Try to win as fast as possible, create a time limit for perfect score and a decay formula.
(POWER / ATTACK EFFICIENCY) Try to cause as much damage as possible, with killing enemy units worth a whole lot.
(TECHNIQUE / ATTRITION) Try to build a whole lot of units. Measure the percent of remaining forces.
In 1 & 2, set you have set points for destroying enemy units. In 3, you have points earn for gaining gold, but it should be modify so that the AI gain points for building units.
You need to make the building of high tier unit worth points using a multiplier so that high tier units are worth more than their cost by a significant amount. This will cause the AI to try to build as many high tier units first, and using the remaining gold to build units. The AI needs to maximize the amount of units it has, but needing a priority in having high tier units. Losing a unit should be worth the amount of points gain for building the unit plus the amount of points gain for gaining the gold. With this in effect, the AI will try to preserve its units.
A simple formula for earning points for unit is (Points Earn = Unit Tier * Unit Cost). This will allow the AI to maximize with the strongest possible units it can build. Of course, this is not the best strategy since high tier units need support from low tier units. I believe the attrition objective will counter the effect of purely building high tier units. Two opposing objective will mean that your AI should find a range of equilibrium, not a fix position.
You want to have multiple independant goals that will sum up together.
Maximizing the overall total score is what you want your AI to do.
You AI will never be as powerful as strong players, but average players may find them a challenge.
Remember that a larger percentage of player population are more casual than the 20th Century gamers.
Players don't like passive roles like dodging or blocking or guarding. Instead, counterstrike is the active ability they will rather have. What is counterstrike? Counterstrike is the ability to attack the opponent or opponent's weapon in the middle of the opponent's attack. Countering against the opponent's weapon [usually this is classified as parry] is to decrease the opponent's strength, and thus, diminish the opponent's attack power. However, it can also be use to redirect projectiles from hitting the player or allies. Countering with an attack at the opponent's body usually results in critical hits because the opponent's mentality is focus on the attack.
A realistic system should have these five elements as the basis. However, the emphasis of the game is to use minimal energy when fighting against opponents. Thus, dodging cause both players to lose orientation, so it will stall the battle. Blocking cause the player to diminish strength. Parry diminishes the opponent's strength. Counter will cause damage to return to the opponent. Like in real life, blocking takes the least amount of time. Follow by parry. Next is dodging. Counter takes the most amount of time. An attack against the enemy is usually not advise when the opponent is attacking. Countering requires a high time precision since counter is dodging and attack combined. Dodging requires a moderate time precision. Parry requires a moderate time precision as it is the combination of guarding and attacking [however the attack is against the opponent's weapon]. Blocking does not require much time precision, just needs to be started ahead of time and maintain until after the opponent's attack complete.
The merit of blocking is that most action game player don't use it often unless it is somewhat overpower. Most blocking system have the player takes minor damage and have a delay to when they can be active again. In such system, blocking in a corner equals lose the game. However, blocking in the middle of the field can have advantage against opponent's attack that have long recovery time. The recovery time of blocking is moderate, so simple attacks have advantage against them. However, non-simple attacks have long recovery time, so blocks have merit against these non-simple attacks only if a simple or quick attack can connect the block to get a hit against the opponent.
I prefer a system that has all five elements that I stated above.
A punch is 200 milliseconds. Pulling the arm back for a punch will make it total of 400 milliseconds. That's why advance fighters don't pull their arm back to get ready for a punch cause a 60% strength punch that hits is better than a 90% strength punch that gets blocked. Stepping forward takes about 450 milliseconds, so dodging has to be ahead of time or the punch reaches first. Dodging are sidestep, and sidestep usually takes 350 milliseconds after well martial arts training. However, blocking is about 250 milliseconds, so that's usually the first choice. A kick to counter the punch is usually not possible because kicking is about 300 milliseconds. Spin steps are use by advance fighters. Spin step is spinning on the ball or heel of your feet to take the shortest distance away from the opponents attack. These spin steps allow fighters to counter in the same amount of time the attacker takes to attack. The best dodging technique is the J step. The J step is a spin step with the front leg, and a side step with the rear leg that sets the person at an angle to their opponent. The J step is the best of the basic dodging techniques. The J step should be paired with a punch to the side of the opponent.
Okay, I made up those times so don't think those times are real.
[Edited by - Platinum_Dragon on November 28, 2010 9:07:28 PM]