Hello all,
I can't seem to figure out where to start with Blender or the import/export scripts,
so I thought I would ask for community help. I'm working out the specs for the 0.3 branch of GAE and I've decided that there's a few things that are defiantly requirements.
Improved Death SequencesI need static models (i.e., one frame animations) of various items that are owned by current magitech (as well as FPM) characters: weapons, hats/helms, shields or anything else that they can easily drop. I would like to improve the battle ground scene by having these objects fly about based upon the direction of the attack that killed them (and probably how hard they were hit when they died). I did this in a Quake mod once and it turned out really nice. Hats/helms shouldn't always come off, but swords and probably even shields should (perhaps some unit's shields might have a chance of staying on) . In short, we need the physics for objects to fly about, bounce off of the ground, splash, sink, etc.
For this to work, we would need to chop up the existing death animations. First off, we remove said objects. For hats/helms, we use the original animation and remove the person. In most cases, this will also require a hair animation that is separate. This way, if the helm is staying on, the helm and person dying animation can be played out and they will stay perfectly in sync (since they are all interpolated the same way). Since removing the helm or hat from units will expose their heads, this means we'll need hair. But just adding it to the death animation can cause problems with it bleeding through the hat/helm. Thus, the hair animation will have to be separate, but work just like the hat/helm animation, following the path of the dying unit. Then, when a unit dies and we decide that that time the head covering should come off, we start the animations of the hair and unit dying, but we'll just use the 1st frame of the head covering animation, treating it as a static model and use physics to send it flying about. When the unit dies and we decide that they keep their hat, we'll just play the unit & hat dying animations (again, at the same time), but without the hair.
If we decide to do the same for shields that we do for head coverings, it would be the same. The unit's death animation will not have the shield. The shield would them have a death animation that follows the unit and when we want to have their shield fall, we treat it as a static model and toss it about with physics.
Animated TilesetsMy thought here was to create separate tilesets for the two existing in Glest, "Animated Forrest" and "Animated Winter Forrest" leaving the original "Forrest" and "Winter Forrest" in it's original state. Animation would be optional (as most features in GAE). I have not yet decided for sure on the design for the “swaying in the wind” mechanism of tileset objects (trees, etc.), but these are my current thought. Each tree should have an "animation" with 4 or more frames. The 1st frame would be the normal position and the remaining frames would be the furthest "swaying" position, starting with north. The minimum required frames (or separate g3d files, whichever makes more sense) for this to work would be 4, a normal, and one each for swaying the maximum amount at 0, 120 and 240 degrees. The number of actual frames required to keep it from looking funky would be based upon the object. You can have 9 frames, a center and one for each of 0, 45, 90, 135, 180, etc. Rendering the tree when being effected by wind would require 2 interpolations, one for the angle (using the two angular models nearest the actual angle) and another for magnitude (between the result of the 1st interpolation and the center model). World objects could still have other animation sequences caused by other environmental factors (e.g., the next item).
Each tree type should also have leaves that we can blow around. This will probably work with the existing particle system, or at least with minimal modifications/additions to it (I haven't learned that part of the engine yet).
Tileset "Whatsit"sA "whatsit" is a usually small feature of the landscape that is animated and has a limited set of Ai functions, but does not effect game play. Whatsits interact with the environment in a preset fashion and interact with units as well. An example of this would be a bird. There should be several varieties of birds (at least 3 or 4), they should each have their own songs and animation sequences, although they may share the same behavior. The animations should be 20-50 polygons (very simple) and include a sitting in tree or bush singing, flying and possibly a pecking stuff on the ground. Whatsit behavior is tied to tilesets, so you would only see birds pecking on the ground under a bush or tree. Each tree model should have locations for a bird to execute it's "singing" action. Thus, multiple birds could be in the same tree, but they would only sit in various places. A bird would interact with units by being shy and flying away if a unit comes near them.
Another example would be a water snake. They would frequent bushes and trees in the water, but would only travel in the water unless cornered. A watersnake would probably only have two actions, "move" and "hang around and slither"
A final example is a squirrel. A squirrel can jump from tree to tree and interact with the tree by causing it to have a branch twitch.
Further, various whatsits can have different interactions with different unit types. For example, a bird might not be at all afraid of a sprite and stay put even if the sprite is hovering directly above it. Whereas a bird would flee quite early at the rumbling sound of a catapult or other huge seige weapon traveling across the landscape. I'm not %100 sure how to make that tech tree neutral, except to define “factors” that whatsits are sensitive to at various levels. Examples of factors could be noise, potential for harm (attack units scoring higher here), sensitivity towards nature, etc.
In a less pleasant landscape, a tileset may have imp whatsits that like noise and harmful units. Maybe mosquitoes. These two are just some random ideas to consider for the design, not necessarily what I think would add significantly to the game.
While none of these proposed features do anything to improve the actual gameplay, they will add an extraordinary amount to the feel of the game, which is a significant part of the game experience. If there are anybody out there who would like to contribute with animation sequences, I would be very grateful.
EDIT Nov 5, 2008: Changing title of this thread
EDIT Jan 12, 2009: Restored original text from Google cache, as it seems to have gotten truncated in the forum conversion