This is a list of unanswered questions or things I just haven't had time to test. I'm posting this in the hopes that other people will add their own mysteries or, better yet, that they know the answers to some of these. I have also included a list of discoveries I made while resolving items on the mystery list that I felt were mildly interesting/useful enough to warrant inclusion. I use AoMEE but I'm sure some of these will apply to other versions of AoM.
Terminology
Mysteries
Mysterious Proto Tags
What do these proto tags do? They are not listed in Warrior Mario's guide.
Discoveries
- Pre-placement = what you see in the editor when you have selected an object to place, but haven't placed it on the terrain yet, it is often different from the placed object in several interesting ways
- Why do some embellishments appear invisible or black when another of the same object has been placed and is visible on-screen?
- Why do some objects with animated UV maps appear animated during pre-placement but static when placed?
- Can large radius meshes be rendered far outside the terrain even if the DCL radius is small? Can the DCL radius ever extend outside the terrain?
- How many mipmap levels does EE use and is this number adjustable?
- Is it possible to make the alpha channel in icons be used for player color instead of transparency?
- The file sfx g lighting scorch.dcl has a lightmap tag, what does it do?
- Why are some models exported with AMP visibly darker than others? Android provides this picture.
(this probably has to do with faulty normals, unifying the normals can cause this to happen)
- Is there a way to tune the degree of transparency using the RenderAfterWater proto flag?
- Do special attacks work against units that carry the VisibleOwnerOnly flag?
- How do idletimeout and boredtimeout tags work? They seem to be a sort of “population average” timer so that all units don’t play at the same time, but it's not an uncertainty range, because some units do play at the same time, and it doesn’t respect the time at which the units were placed in the editor.
- Which proto flag caps the carry capacity of units that autogather like herd animals?
- How do the probabilistic params in ranged attack actions work? Specifically: Accuracy (how many shots are uncertain?), AccuracyReductionFactor, AimBonus, MaxSpread, SpreadFactor, TrackRating
- Why do some terrain textures have black lines on them (not at seams)?
- What the heck is going on when you delete the surface texture in waterbodies.xml or set the surface texture to another, correctly sized terrain texture?
- Is the Servant using his ExperienceUnit tag?
What do these proto tags do? They are not listed in Warrior Mario's guide.
- DoppleOnlyWhenDead (possibly displays alive state under fog if unit is actually dead)
- MutateDopples (possibly displays the pre-transformation object under fog if a transformation has occurred)
- DontSortAlphaPolys (theoretically should cull polys with 0 value in the texture's alpha channel but that doesn't seem to be what happens?)
- NonAutoFormedUnit
- DontRotateObstruction
- NoIdleActions
- AdjustPositionOnTerrainCollision (used by projectiles, how does the game know how to orient the mesh in the terrain?)
- DoNotCreateUnitGroupAutomatically
- ValidateResourceInventory
- DoNotValidateResourceInventory
- DCLs can use 4- and 8-bit alpha in the BTI but it only makes a difference during pre-placement, once placed, they exhibit the degree of partial transparency found in the TGA’s alpha channel even if the BTI is set to alpha=0 or 1, in effect, the DCL only uses the BTI during editor pre-placement, once placed it uses some default of 4 or 8
- Units with the VisibleOwnerOnly flag can attack enemies but cannot themselves be attacked, they can be detected by idle enemy military units who will walk to the last known location where an invisible unit attacked an allied object and then stand there, when the invisible unit attacks an enemy military unit, the enemy unit bugs out attempting to perform an attack animation but failing
- The doppled proto flag makes a unit visible under fog
- The last VariationLogic hotspot in an anim file is always used as the first variation placed in the editor
- Icons can be made transparent with alpha channel in the TGA, they can be partially transparent if the alpha is grey scale regardless of the BTI file (BTI is not used)
- The BoredTimeOut proto tag controls time until bored animations play, the tag isn’t used in the proto but all units that play bored animations have BoredTimeOut of ~20-30 game seconds by default
- Using curly brackets in the editor calls a number from en-language.txt, example {70001} for any text entry in player data, triggers, objectives, etc. (this is probably obvious for scenario designers)
- Removing a cliff terrain type from terraintypes.xml causes the cliff to use the highest entry in terraintypes.xml for the cliff face, i.e. GrassA (or GrassB if GrassA is also removed)
- There is a hard limit of 255 (8-bit byte) for the number of terrains that can be defined for each type in terraintypes.xml
- Models colored only with ambient and diffuse material colors (and no diffuse map textures) will show up colored in TT but black in EE
- In EE, units show up on the water surface during pre-placement, in TT, they show up underwater
- Proto units with 0 obstruction radius are not deleted by water placement (credits to Order of Azarath)
- If the vertical screen height is 1,024 (default), then there will be a box with that dimension and parts of buttons that fall outside that range (even if your screen is wider), can only be double clicked and not single clicked, this can be fixed by extending the resolution in the UI file
For attack actions, the damage per hit (DPH) is adjusted by the game so that the damage per second (DPS) specified in the proto remains constant. This is described by the formula:
DPH = DPS * (1 - armor) * (animation length) * (anim length multiplier)
- Particle effects don’t render against the sky box, they only render against the terrain, BRGs, and GRNs
- In EE, objects without materials appear white during pre-placement and black when placed.
- The terrain uses a continuous, smooth curve for normal vectors, this can be seen by bringing an object carrying the OrientWithGround flag near to a sharp terrain edge as in this picture.
- the proto tag "Tech" is a leftover from the alpha, it is still functional but is overwritten by button positions specified in the techtree (thanks LightningStorm)
- Terrain names can include spaces unless you want them to have a custom blend. Custom blends defined at the end of blends.txt will only work for single words so you must use _ if you want the terrain name to look like multiple words.
- HeighBonusMultiplier only takes effect when the relative difference in elevation between the units is >=3.23 meters. The multiplier does not depend on the relative elevation beyond or within this limit, the HeightBonusMultiplier uses a Boolean test with the 3.23 limit, there is no malus for units that are 3.23m below their targets, there is only a bonus for units 3.23m above their target.
- NotSearchable prevents proto units from being recognized by triggers (thanks Izalith & Lewonas)
- The initialresource proto tag prevents animals (or any other proto units carrying this tag) from playing their bored animations (thanks WinterGod)
[This message has been edited by Callistonian (edited 05-08-2020 @ 10:30 PM).]