新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 关于 XML 的一般性技术讨论,提供 XML入门资料 和 XML教程
    [返回] 计算机科学论坛XML.ORG.CN讨论区 - XML技术『 XML基础 』 → 问大家一个xml文件汉化的问题 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 15452 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 问大家一个xml文件汉化的问题 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客楼主
    发贴心情 问大家一个xml文件汉化的问题

    我在汉化一个程序,这个程序要调用config.xml。在这个config.xml中,会计算一些东西,比如给一个量赋值,这个值为A+B+C A、B、C需要在程序中填写,应该说是一个变量(xml中这个应该算是变量吧?)在程序中,我把A汉化为D了(不汉化不行,否则界面显示是英文的,整个程序就2个A字符串,一个在exe文件中,一个在config.xml中)。但是在config.xml中,不能把这个A值汉化,别说这个程序了,windows都不认了。

    我想问下,能否用一个语句,当你改变D时,xml中对应的D改变,当xml需要计算A+B+C时,A的值为D

    如果我描述不清的地方或者需要程序和config.xml的说下


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:27:00
     
     starting 帅哥哟,离线,有人找我吗?
      
      威望:4
      等级:大二(研究C++)
      文章:223
      积分:1611
      门派:XML.ORG.CN
      注册:2006/3/23

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给starting发送一个短消息 把starting加入好友 查看starting的个人资料 搜索starting在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看starting的博客2
    发贴心情 
    能把那个XML放出来吗?看看
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:32:00
     
     starting 帅哥哟,离线,有人找我吗?
      
      威望:4
      等级:大二(研究C++)
      文章:223
      积分:1611
      门派:XML.ORG.CN
      注册:2006/3/23

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给starting发送一个短消息 把starting加入好友 查看starting的个人资料 搜索starting在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看starting的博客3
    发贴心情 
    那个config.xml中的字符集是什么?
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:44:00
     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客4
    发贴心情 
    不能上传附件,我只好把41k的东西都贴出来了,已经汉化了部分的,这些汉化没什么影响的,主要是这个地方的汉化
      <displaytext class="猎人" size="tiny">
        <text>远程爆击率:\t$1.2%</text>
        <value>5 + Agi / 53 + BonusCrit + RangedCritCalc + Talent[Lethal Shots] + Talent[Killer Instinct]</value>
      </displaytext>
    其中 Lethal Shots 翻译成 致死射击 后读不出来,但是原程序中Lethal Shots必须翻译成致死射击,否则界面显示英文
    选择这个为例是因为整个exe和xml就两个地方有Lethal Shots 字符串

    以下是原文件
    <?xml version="1.0"?>
    <!--
      WowEquip config file
      
      This file configures the class specific stats section of WowEquip. Any changes to it will be
      picked up while the app is running - you don't have to restart to see changes.
      The file is read top to bottom - you can use values within other values, as long as they are
      defined before they are used.
      All bonuses are defined first, regardless of where they occur, then all values are defined
      before any displaytext is formatted.
      Any value that isn't defined before use will have the value 0.
      Defining a value twice will result in the second definition being taken.
      Trying to redefine one of the built-in stats will cause an error.
      
      There are four tags that can be present within the file:
       <Bonus id="id"><name>bonus to search for</name></bonus>
             defines a bonus to search for from the players bonuses. You must give the bonus an ID
             which is used to refer to it in other calcuations. You can give the one or more names
             of bonues to search for, the app will sum all the bonuses named and the total is the
             value of the bonus.
               
       <Value id="id">formula</value>
             defines a calculated value. You can use bonuses and other values in your calculations.
             A standard set of arithmetic operators is available: +,-,*,/,^,(,)
             ^ respresents "power of" e.g. 2^3 = 8.
             The operators are evaluated in mathematical order, so ^ then */ then +-.
             e.g. 1 + 2 * 3 = 1 + (2 * 3) = 7.
             You can round values to integers with floor and ceil (down and up respectively).
             
             You can also use if/else constructs: if (condition) statment else statement.
             The else part is optional, and you may nest if/else constructs.
             The condition must be a logical test (==,!=,<,>,<=,>=) or a combination of several tests
             combined with the logical operators: or, and, not, xor. NB: == is a test for equality not =,
             != is "not equal", xor is "exclusive-or" which is true when one or the other of the tests
             is true, but not both.
             When using if/else you will need to set the value by assigning the special value "value"
             with the result (e.g. if (Level > 10) value = 10; else value = 1;). You cannot read from
             "value", so value = 5 + value; won't work, however you can use the following special
             assignments to affect it: +=,-=,*=,/=,^=. These have the effect of doing value = value <op> x;
             so value *= 2; is equivalent to value = value * 2;
               
             In addition to your own values, there are some special values that are always available:
              Basic Stats:
                Str, Agi, Sta, Int, Spi, HP, Mana, Armor, Arcane, Nature, Fire, Frost, Shadow
                <stat>.Base - gives the base part of the specific stat.
                <stat>.Bonus - gives the bonus part of the specific stat.
              Player attributes:
                Level
                Class - can only be compared with the following special values:
                  Druid, Hunter, Mage, Paladin, Priest, Rogue, Shaman, Warlock, Warrior
                Race - can only be compared with the following special values:
                  Dwarf, Gnome, Human, NightElf, Orc, Tauren, Troll, Undead
              Weapon Stats:
                <weap>.min, <weap>.max, <weap>.speed, <weap>.dps, <weap>.type
                  where <weap> is one of MH, OH and Rng for mainhand, offhand and ranged.
                <weap>.IsWeapon - true/false value for whether the equipped item is a weapon
                  (as opposed to a shield, held-in-hand item, etc.)
                MH.hands - gives the number of hands required to wield the weapon (1 or 2).
                OH.block - gives the block value of the currnetly equipped shield (or 0 if no shield).
                Ammo.dps - gives the DPS of the currently selection ammo.
              Talents:
                Talent[talent name] - gives the rank of the specified talent the player has.
       
      <displaytext class="classes" size="size">
        <condition>condition</condition>
        <text>name</text>
        <value>formula</value>
        <tooltip>
          <condition>condition</condition>
          <text>name</text>
          <value>formula</value>
        </tooltip>
      </displaytext>
             defines a line of text to display on the paper doll.
             
             The class attribute defines which classes to display this line for. It can be one or more
             class names separated with commas, or the word "all" which means display for all classes.
             
             The size attrib defines the size of the text. You can choose from: tiny, small, medium, large, huge.
             If this attribute is omitted the size defaults to small.
             
             The condition tag sets whether the text is displayed or not - if the condition is true then the text is
             displayed. If the condition tag is omitted then the text is always displayed.
             
             The text tag defines the text to display. You can put any value text in this, and a few special things:
               $value - inserts the value of the named value into the text. so $HP would insert the amount of HP
                        the character has. You can specify the number of decimal places to display by appending .x,
                        where x is the number of decimal places (so $Level.2 would display 60.00 for a level 60 character).
               $X -     where X is a number. Inserts the numbered value from this displaytext entry (see below). Numbers
                        start at 1.
               \t -     indicates where to break the left and right columns.
               \x -     where x is any other character inserts that character. So to get a $ or \ in the text you would use
                        \$ or \\.
             
             The value tag gives one of the values to insert into the text. The first value can be referenced as $1,
             the next $2, etc. It can contain any formula that a proper value tag can contain. You can have as many value
             tags as you like, or none at all. If you use $X and there aren't enough values for it, a zero will be inserted.
             
             The tooltip tag, if present, defines the tooltip to show for this lines of text. the tags all work the same as
             displayvalue, except that you can use \n to start a new line of tooltip. If no tooltip tag is present, or if
             the condition is false, no tooltip will be displayed for that text.

      <reporttext class="classes" size="size">
        <text>name</text>
        <condition>condition</condition>
        <value>formula</value>
      </reporttext>
             defines a piece of text in the other stats section of the report.
             
             Works the same as displayvalue, except that newlines are allowed (\n) and the tab character (\t) acts as a tabstop.
    -->

    <Config>

      <!-- Bonuses -->
      <bonus id="BlockValue">
        <name>使你的盾牌格挡值增加 #</name>
        <name>盾牌格挡值</name>
      </bonus>

      <bonus id="BonusFeralAP">
        <name>当处于猫、熊、巨熊形态时,+# 攻击强度</name>
      </bonus>

      <bonus id="BonusAP" types="Equip">
        <name>+# 攻击强度.</name>
        <name>攻击强度</name>
      </bonus>

      <bonus id="BuffAP" types="Buff">
        <name>+# 攻击强度.</name>
        <name>攻击强度</name>
      </bonus>

      <bonus id="BonusRAP">
        <name>+# 远程攻击强度.</name>
        <name>远程攻击强度</name>
      </bonus>
      
      <bonus id="RngSpeedBonus">
        <name>远程攻击速度提高15%.</name>
      </bonus>

      <bonus id="BonusBlock">
        <name>使你用盾牌格挡攻击的几率提高#%.</name>
      </bonus>
      
      <bonus id="BonusCrit">
        <name>使你造成致命一击的几率提高#%.</name>
      </bonus>

      <bonus id="BonusDodge">
        <name>使你躲闪攻击的几率提高#%.</name>
        <name>闪避</name>
      </bonus>
      
      <bonus id="BonusParry">
        <name>使你格挡攻击的几率提高#%.</name>
      </bonus>
        
      <bonus id="BonusSC">
        <name>使你的法术造成致命一击的几率提高#%.</name>
      </bonus>

      <bonus id="Defense">
        <name>防御技能提高+#点</name>
        <name>防御技能</name>
      </bonus>

      <bonus id="DefensiveStance">
     <name>伤害减少#%.</name>
      </bonus>

      <bonus id="HP5s">
        <name>每5秒恢复#点生命值.</name>
      </bonus>

      <bonus id="Mana5s">
        <name>每5秒恢复#点魔法值.</name>
        <name>魔法回复</name>
      </bonus>
      
      <bonus id="ManaRegen">
        <name>战斗时保持#%的法力恢复速度.</name>
      </bonus>

      <bonus id="ToHit">
       <name>使你击中目标的几率提高#%.</name>
        <name>Hit</name>
      </bonus>

      <bonus id="TrinketDmg" types="use">
        <name>提高所有法术和魔法效果所造成的伤害和治疗效果,最多#点。效果持续15秒.</name>
        <name>使你的法术伤害效果提高最多#点,法术治疗效果提高最多560点,持续20秒。你每施放一次法术,此增益的效果就降低35点伤害和70点治疗效果.</name>
      </bonus>
      <bonus id="SpellDmg">
        <name>提高所有法术和魔法效果所造成的伤害和治疗效果,最多#点.</name>
        <name>法术伤害</name>
        <name>法术伤害和治疗效果</name>
      </bonus>
      <bonus id="Healing">
        <name>提高所有法术和魔法效果所造成的伤害和治疗效果,最多#点.</name>
        <name>提高法术所造成的治疗效果,最多#点.</name>
        <name>治疗法术</name>
      </bonus>
      <bonus id="FireDmg">
        <name>提高火焰法术和效果所造成的伤害,最多#点.</name>
        <name>火焰伤害</name>
      </bonus>
      <bonus id="FrostDmg">
        <name>提高冰霜法术和效果所造成的伤害,最多#点.</name>
        <name>冰霜伤害</name>
      </bonus>
      <bonus id="ShadowDmg">
        <name>提高暗影法术和效果所造成的伤害,最多#点.</name>
        <name>暗影伤害</name>
      </bonus>
      <bonus id="NatureDmg">
        <name>提高自然法术和效果所造成的伤害,最多#点.</name>
        <name>自然伤害</name>
      </bonus>
      <bonus id="ArcaneDmg">
        <name>提高奥术法术和效果所造成的伤害,最多#点.</name>
        <name>奥术伤害</name>
      </bonus>

      <bonus id="AxeSkill">
     <name>弹手斧技能提高+#点.</name>
      </bonus>
      <bonus id="BowSkill">
     <name>弓技能提高+#点.</name>
      </bonus>
      <bonus id="CrossbowSkill">
     <name>弩技能提高+#点.</name>
      </bonus>
      <bonus id="DaggerSkill">
     <name>匕首技能提高+#点.</name>
      </bonus>
      <bonus id="FistSkill">
     <name>拳套技能提高+#点.</name>
      </bonus>  
      <bonus id="GunSkill">
     <name>枪技能提高+#点.</name>
      </bonus>
      <bonus id="MaceSkill">
     <name>单手锤技能提高+#点.</name>
      </bonus>
      <bonus id="PolearmSkill">
     <name>长柄武器技能提高+#点.</name>
      </bonus>  
      <bonus id="StavesSkill">
     <name>法杖技能提高+#点.</name>
      </bonus>
      <bonus id="SwordSkill">
     <name>单手剑技能提高+#点.</name>
      </bonus>
      <bonus id="THAxesSkill">
     <name>双手斧技能提高+#点.</name>
      </bonus>
      <bonus id="THMacesSkill">
     <name>双手锤技能提高+#点.</name>
      </bonus>
      <bonus id="THSwordsSkill">
     <name>双手剑技能提高+#点.</name>
      </bonus>  

      <!-- Calced Values -->
      <value id="AP">
        if (Class == Druid or Class == Mage or Class == Priest or Class == Warlock)
          value = Str * 2 - 20;
        else if (Class == Hunter or Class == Rogue)
          value = Level * 2 + Str + Agi - 20;
        else if (Class == Warrior or Class == Paladin)
          value = Level * 3 + Str * 2 - 20;
        else if (Class == Shaman)
          value = Level * 2 + Str * 2 - 20;

        value += BonusAP + BuffAP;
      </value>

      <value id="CatAP">AP + Level*2 + Agi + BonusFeralAP + Str*Talent[Heart of the Wild]*0.08 + Talent[Predatory Strikes]*Level*0.5</value>

      <value id="BearAP">
        if (Level >= 40)
          value = 120 + (Level-40)*3;
        else
          value = 30 + (Level-10); # bit of a guess
        value += AP + BonusFeralAP + Talent[Predatory Strikes]*Level*0.5;
      </value>

      <value id="dps">AP / 14</value>

      <value id="RAP">
        value = Agi * 2 + BonusRAP + BonusAP;
        if (Class == Hunter and Level > 10)
          value += (Level - 10) / 2;
      </value>

      <value id="rdps">RAP / 14 + Ammo.dps</value>

      <value id="SpellCrit">
        Int / 59.5 + BonusSC
      </value>

      <value id="FireTalents">
        1 + Talent[Arcane Instability]*0.01 + Talent[Firepower]*0.02
      </value>

      <value id="FrostTalents">
        1 + Talent[Arcane Instability]*0.01 + Talent[Piercing Ice]*0.02
      </value>

      <value id="CastingRegenMage">(Mana5s * 2 / 5) + (Spi / 4 + 12.5) * (0.3 + Talent[Arcane Meditation]*0.03)</value>

      <value id="NormSCritMage">(SpellCrit + Talent[Arcane Instability]) / 100</value>

      <value id="Evoc">(Spi / 4 + 12.5) * 16 * 4</value>

      <value id="MHCrit">
        value = 0;
        
        if (MH.type == Axe)
          value += Talent[Axe Specialization];
        else if (MH.type == Dagger)
          value += Talent[Dagger Specialization];
        else if (MH.type == Fist)
          value += Talent[Fist Weapon Specialization];
        else if (MH.type == Polearm)
          value += Talent[Polearm Specialization];        

        if (MH.type == Axe and MH.hands == 2)
          value += (THAxesSkill * 0.04);
        else if (MH.type == Mace and MH.hands == 2)
          value += (THMacesSkill * 0.04);
        else if (MH.type == Sword and MH.hands == 2)
          value += (THSwordsSkill * 0.04);
        else if (MH.type == Staff and MH.hands ==2)
          value += (StavesSkill * 0.04);

        else if (MH.type == Axe)
          value += (AxeSkill * 0.04);
        else if (MH.type == Dagger)
          value += (DaggerSkill * 0.04);
        else if (MH.type == Mace)
          value += (MaceSkill * 0.04);
        else if (MH.type == Sword)
          value += (SwordSkill * 0.04);
      </value>
      
      <value id="OHCrit">
        value = 0;
        
        if (OH.type == Axe)
          value += Talent[Axe Specialization] + (AxeSkill * 0.04);
        else if (OH.type == Dagger)
          value += Talent[Dagger Specialization] + (DaggerSkill * 0.04);
        else if (OH.type == Fist)
          value += Talent[Fist Weapon Specialization] + (FistSkill * 0.04);
        else if (OH.type == Mace)
          value += (MaceSkill * 0.04);
        else if (OH.type == Sword)
          value += (SwordSkill * 0.04);
      </value>

      <!-- Some generic stats -->
      <displaytext class="猎人,圣骑士,盗贼,萨满,战士">
        <condition>AP > 0</condition>
        <text>攻击强度:\t$AP</text>
      </displaytext>

      <displaytext class="猎人,圣骑士,盗贼,萨满,战士">
        <condition>MH.IsWeapon</condition>
        <text>近战伤害:\t$1 - $2</text>
        <value>(MH.min + dps * MH.speed) * (1 - DefensiveStance*0.01)</value>
        <value>(MH.max + dps * MH.speed) * (1 - DefensiveStance*0.01)</value>
        <tooltip>
          <text>DPS:\t$1.2</text>
          <value>(MH.dps + dps) * (1 - DefensiveStance*0.01)</value>
        </tooltip>
      </displaytext>

      <displaytext class="盗贼">
     <condition>OH.IsWeapon</condition>
     <text>副手伤害:\t$1 - $2</text>
     <value>(OH.min + dps * OH.speed) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.1)</value>
     <value>(OH.max + dps * OH.speed) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.1)</value>
     <tooltip>
      <text>DPS:\t$1.2\nCritical rate:\t$2.2\nTo Hit bonus:\t$3.2</text>
      <value>(OH.dps + dps) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.1)</value>
      <value>Agi / 29 + BonusCrit + Talent[Malice] + OHCrit</value>
      <value>Talent[Precision] + ToHit + OHHit</value>
     </tooltip>
      </displaytext>

      <displaytext class="战士">
     <condition>OH.IsWeapon</condition>
     <text>副手伤害:\t$1 - $2</text>
     <value>(OH.min + dps * OH.speed) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.05) * (1 - DefensiveStance*0.01)</value>
     <value>(OH.max + dps * OH.speed) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.05) * (1 - DefensiveStance*0.01)</value>
     <tooltip>
      <text>DPS:\t$1.2\nCritical rate:\t$2.2\nTo Hit bonus:\t$3.2</text>
      <value>(OH.dps + dps) * 0.5 * (1 + Talent[Dual Wield Specialization]*0.05) * (1 - DefensiveStance*0.01)</value>
      <value>Agi / 20 + BonusCrit + Talent[Cruelty] + OHCrit</value>
      <value>ToHit + OHHit</value>
     </tooltip>
      </displaytext>
      
      <displaytext class="猎人" size="tiny">
     <condition>OH.IsWeapon</condition>
     <text>副手伤害:\t$1 - $2</text>
     <value>(OH.min + dps * OH.speed) * 0.5</value>
     <value>(OH.max + dps * OH.speed) * 0.5</value>
     <tooltip>
      <text>DPS:\t$1.2\nCritical rate:\t$2.2\nTo Hit bonus:\t$3.2</text>
      <value>(OH.dps + dps) * 0.5</value>
      <value>5 + Agi / 53 + BonusCrit + OHCrit + Talent[Killer Instinct]</value>
      <value>ToHit + OHHit</value>
     </tooltip>
      </displaytext>

      <value id="ToHitCalc">
        value = ToHit;
            
        if (MH.type == Axe and MH.hands == 2)
         value += (THAxesSkill * 0.04);
        else if (MH.type == Mace and MH.hands == 2)
         value += (THMacesSkill * 0.04);
        else if (MH.type == Sword and MH.hands == 2)
         value += (THSwordsSkill * 0.04);
        else if (MH.type == Polearm and MH.hands == 2)
         value += (PolearmSkill * 0.04);
        else if (MH.type == Staff and MH.hands ==2)
         value += (StavesSkill * 0.04);
           
        else if (MH.type == Axe)
         value += (AxeSkill * 0.04);
        else if (MH.type == Dagger)
         value += (DaggerSkill * 0.04);
        else if (MH.type == Fist)
         value += (FistSkill * 0.04);
        else if (MH.type == Mace)
         value += (MaceSkill * 0.04);
        else if (MH.type == Sword)
         value += (SwordSkill * 0.04);
      </value>
      
      <value id="OHHit">
        value = 0;
        
        if (OH.type == Axe)
          value += (AxeSkill * 0.04);
        else if (OH.type == Dagger)
          value += (DaggerSkill * 0.04);
        else if (OH.type == Fist)
          value += (FistSkill * 0.04);
        else if (OH.type == Mace)
          value += (MaceSkill * 0.04);
        else if (OH.type == Sword)
          value += (SwordSkill * 0.04);
      </value>
       
      <value id="RangedToHitCalc">
      value = ToHit;
           
        if (Rng.type == Bow)
         value += (BowSkill * 0.04);
        if (Rng.type == Crossbow)
         value += (CrossbowSkill * 0.04);
        if (Rng.type == Gun)
         value += (GunSkill * 0.04);
      </value>

      <value id="RangedCritCalc">
        value = 0;
        
        if (Rng.type == Bow)
         value += (BowSkill * 0.04);
        if (Rng.type == Crossbow)
         value += (CrossbowSkill * 0.04);
        if (Rng.type == Gun)
         value += (GunSkill * 0.04);
      </value>
             
      <!-- Druid -->
      <displaytext class="德鲁伊">
        <condition>AP > 0</condition>
        <text>攻击强度:\t$AP</text>
        <tooltip>
          <text>猫形态攻击强度:\t$CatAP\n熊形态攻击强度:\t$BearAP</text>
        </tooltip>
      </displaytext>

      <displaytext class="德鲁伊">
        <condition>MH.speed > 0</condition>
        <text>伤害:\t$1 - $2</text>
        <value>(MH.min + dps * MH.speed) * (1 + Talent[Natural Weapons] * 0.02)</value>
        <value>(MH.max + dps * MH.speed) * (1 + Talent[Natural Weapons] * 0.02)</value>
        <tooltip>
          <text>猫形态伤害 (1s):\t$1 - $2\n熊形态伤害 (2.5s):\t$3 - $4</text>
          <value>(44 + CatAP/14) * (1 + Talent[Natural Weapons] * 0.02)</value>
          <value>(66 + CatAP/14) * (1 + Talent[Natural Weapons] * 0.02)</value>
          <value>(101 + (BearAP/14) * 2.5) * (1 + Talent[Natural Weapons] * 0.02)</value>
          <value>(152 + (BearAP/14) * 2.5) * (1 + Talent[Natural Weapons] * 0.02)</value>
        </tooltip>
      </displaytext>

      <displaytext class="德鲁伊">
        <text>爆击率:\t$1.2%</text>
        <value>4.15 + Agi.Bonus / 20 + BonusCrit</value>
        <tooltip>
          <text>野性形态爆击率:\t$1.2%\n法术爆击率:\t$SpellCrit.2%\n枭兽形态爆击率:\t$2.2%</text>
          <value>4.15 + Agi.Bonus / 20 + BonusCrit + Talent[Leader of the Pack]*3 + Talent[Sharpened Claws]*2</value>
          <value>SpellCrit + Talent[Moonkin Form]*3</value>
        </tooltip>
      </displaytext>

      <displaytext class="德鲁伊">
        <text>闪避:\t$1.2%</text>
        <value>
         value = Agi / 20 + BonusDodge + (Defense * 0.04);
         if (Race == NightElf)
           value += 1;
        </value>
      </displaytext>

      <displaytext class="德鲁伊">
        <condition>Level >= 10</condition>
        <text>熊形态生命:\t$1</text>
        <value>
          if (Level >= 40)
            value = HP + 600 + (Level-40)*31.8 + Sta*Talent[Heart of the Wild]*0.4;
          else
            value = HP + 20 + (Level-10) + Sta*Talent[Heart of the Wild]*0.4; # bit of a guess
        </value>
      </displaytext>

      <displaytext class="德鲁伊">
        <condition>Level >= 10</condition>
        <text>熊形态护甲:\t$1</text>
        <value>
          if (Level >= 40)
            value = Armor + (Armor.bonus - Agi.bonus*2 - Armor.enchant)*3.6;
          else
            value = Armor + (Armor.Bonus - Agi.Bonus*2 - Armor.enchant)*1.8;
        </value>
      </displaytext>

      <!-- Hunter -->
      <displaytext class="猎人" size="tiny">
        <condition>RAP > 0</condition>
        <text>远程攻击强度:\t$RAP</text>
      </displaytext>

      <displaytext class="猎人" size="tiny">
        <condition>Rng.speed > 0</condition>
        <text>远程攻击伤害:\t$1 - $2</text>
        <value>Rng.min + rdps * Rng.speed</value>
        <value>Rng.max + rdps * Rng.speed</value>
        <tooltip>
          <text>DPS:\t$1.2</text>
          <value>(Rng.dps + rdps) * (1 + RngSpeedBonus*0.01)</value>
        </tooltip>
      </displaytext>

      <displaytext class="猎人" size="tiny">
        <text>爆击率:\t$1.2%</text>
        <value>5 + Agi / 53 + BonusCrit + Talent[Killer Instinct]</value>
      </displaytext>
      
      <displaytext class="猎人" size="tiny">
        <text>远程爆击率:\t$1.2%</text>
        <value>5 + Agi / 53 + BonusCrit + RangedCritCalc + Talent[Lethal Shots] + Talent[Killer Instinct]</value>
      </displaytext>

      <displaytext class="猎人" size="tiny">
        <text>闪避:\t$1.2%</text>
        <value>
         value = Agi / 26.5 + BonusDodge + (Defense * 0.04);
         if (Race == NightElf)
           value += 1;
        </value>
      </displaytext>

      <displaytext class="猎人" size="tiny">
        <text>招架:\t$1.2%</text>
        <value>5 + BonusParry + (Defense * 0.04) + Talent[Deflection]</value>
      </displaytext>
    <!--
      <displaytext class="猎人">
       <text>命中率:\t$1%</text>
       <value>ToHitCalc + Talent[Surefooted]</value>
      </displaytext>
      -->
      <displaytext class="猎人" size="tiny">
       <text>远程命中:\t$1%</text>
       <value>RangedToHitCalc + Talent[Surefooted]</value>
      </displaytext>

      <!-- Mage -->
      <displaytext class="法师" size="small">
        <text>火焰伤害:\t+$1</text>
        <value>FireDmg + SpellDmg</value>
        <tooltip>
          <text>火焰伤害:\t+$FireDmg\n法术伤害:\t+$SpellDmg</text>
        </tooltip>
      </displaytext>

      <value id="AveNCFireball">((561+715)/2 + (FireDmg + SpellDmg)) * FireTalents</value>
      <value id="AveFireball">AveNCFireball * (1-NormSCritMage) + AveNCFireball * 1.5 * NormSCritMage</value>
      <value id="AveNCFireball12">((596+760)/2 + (FireDmg + SpellDmg)) * FireTalents</value>
      <value id="AveFireball12">AveNCFireball12 * (1-NormSCritMage) + AveNCFireball12 * 1.5 * NormSCritMage</value>
      <displaytext class="法师" size="small">
        <text>火球术:\t$1 - $2</text>
        <value>(561 + FireDmg + SpellDmg) * FireTalents</value>
        <value>(715 + FireDmg + SpellDmg) * FireTalents</value>
        <tooltip>
          <text>火球术\t等级 11\n最大爆击伤害:\t$1\n平均DPS:\t$2.1\n平均DPM:\t$3.2\n\n火球术\t等级 12\n伤害:\t$4 - $5\n最大爆击伤害:\t$6\n平均DPS:\t$7.1\n平均DPM:\t$8.2</text>
          <value>(715 + (FireDmg + SpellDmg + TrinketDmg)) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
          <value>AveFireball / (3.5 - Talent[Improved Fireball]*0.1)</value>
          <value>AveFireball / 395</value>
          <value>(596 + FireDmg + SpellDmg) * FireTalents</value>
          <value>(760 + FireDmg + SpellDmg) * FireTalents</value>
          <value>(760 + (FireDmg + SpellDmg + TrinketDmg)) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
          <value>AveFireball12 / (3.5 - Talent[Improved Fireball]*0.1)</value>
          <value>AveFireball12 / 410</value>
        </tooltip>
      </displaytext>

      <value id="AveNCScorch">((237+280)/2 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
      <value id="AveScorch">AveNCScorch * (1-NormSCritMage) + AveNCScorch * 1.5 * NormSCritMage</value>
      <displaytext class="法师" size="small">
        <text>灼烧:\t$1 - $2</text>
        <value>(237 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <value>(280 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <tooltip>
          <text>灼烧\t等级 7\n最大爆击伤害:\t$1\n平均DPS:\t$2.1\n平均DPM:\t$3.2</text>
          <value>(280 + (FireDmg + SpellDmg + TrinketDmg) * 1.5/3.5) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
          <value>AveScorch / 1.5</value>
          <value>AveScorch / 150</value>
        </tooltip>
      </displaytext>

      <displaytext class="法师" size="small">
        <text>冰霜伤害:\t+$1</text>
        <value>FrostDmg + SpellDmg</value>
        <tooltip>
          <text>冰霜伤害:\t+$FrostDmg\n法术伤害:\t+$SpellDmg</text>
        </tooltip>
      </displaytext>

      <value id="AveNCFrostbolt">((440+475)/2 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
      <value id="AveFrostbolt">AveNCFrostbolt * (1-NormSCritMage) + AveNCFrostbolt * (1.5 + Talent[Ice Shards]*0.1) * NormSCritMage</value>
      <value id="AveNCFrostbolt11">((515+555)/2 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
      <value id="AveFrostbolt11">AveNCFrostbolt11 * (1-NormSCritMage) + AveNCFrostbolt11 * (1.5 + Talent[Ice Shards]*0.1) * NormSCritMage</value>
      <displaytext class="法师" size="small">
        <text>冰箭术:\t$1 - $2</text>
        <value>(440 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
        <value>(475 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
        <tooltip>
          <text>冰箭术\t等级 10\n最大爆击伤害:\t$1\n平均DPS:\t$2.1\n平均DPM:\t$3.2\n\n冰箭术\t等级 11\n伤害:\t$4 - $5\n最大爆击伤害:\t$6\n平均DPS:\t$7.1\n平均DPM:\t$8.2</text>
          <value>(475 + (FrostDmg + SpellDmg + TrinketDmg)* (3/3.5) * 0.95) * (FrostTalents + Talent[Arcane Power]*0.35) * (1.5 + Talent[Ice Shards]*0.1)</value>
          <value>AveFrostbolt / (3 - Talent[Improved Frostbolt]*0.1)</value>
          <value>AveFrostbolt / (260 * (1 - Talent[Frost Channeling]*0.05))</value>
          <value>(515 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
          <value>(555 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
          <value>(555 + (FrostDmg + SpellDmg + TrinketDmg)* (3/3.5) * 0.95) * (FrostTalents + Talent[Arcane Power]*0.35) * (1.5 + Talent[Ice Shards]*0.1)</value>
          <value>AveFrostbolt11 / (3 - Talent[Improved Frostbolt]*0.1)</value>
          <value>AveFrostbolt11 / (290 * (1 - Talent[Frost Channeling]*0.05))</value>
        </tooltip>
      </displaytext>

      <displaytext class="法师" size="small">
        <text>奥术伤害:\t+$1</text>
        <value>ArcaneDmg + SpellDmg</value>
        <tooltip>
          <text>奥术伤害:\t+$ArcaneDmg\n法术伤害:\t+$SpellDmg</text>
        </tooltip>
      </displaytext>

      <value id="AveNCAM">((195+196)/2 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
      <value id="AveAM">AveNCAM * (1-NormSCritMage) + AveNCAM * 1.5 * NormSCritMage</value>
      <value id="AveNCAM8">(230 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
      <value id="AveAM8">AveNCAM8 * (1-NormSCritMage) + AveNCAM8 * 1.5 * NormSCritMage</value>
      <displaytext class="法师" size="small">
        <text>奥术飞弹:\t$1 - $2</text>
        <value>(195 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <value>(196 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <tooltip>
          <text>奥术飞弹\t等级 7\n最大爆击伤害:\t$1\n平均DPS:\t$2.1\n平均DPM:\t$3.2\n\n奥术飞弹\t等级 8\n伤害:\t$4\n最大爆击伤害:\t$5\n平均DPS:\t$6.1\n平均DPM:\t$7.2</text>
          <value>(196 + (ArcaneDmg + SpellDmg + TrinketDmg) / 5) * (1 + Talent[Arcane Instability]*0.01 + Talent[Arcane Power]*0.35) * 1.5</value>
          <value>AveAM</value>
          <value>AveAM * 5 / 595</value>
          <value>(230 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
          <value>(230 + (ArcaneDmg + SpellDmg + TrinketDmg) / 5) * (1 + Talent[Arcane Instability]*0.01 + Talent[Arcane Power]*0.35) * 1.5</value>
          <value>AveAM8</value>
          <value>AveAM8 * 5 / 655</value>
        </tooltip>
      </displaytext>

      <displaytext class="法师" size="small">
        <text>法术爆击率:\t$1.2%</text>
        <value>SpellCrit + Talent[Arcane Instability]</value>
        <tooltip>
          <condition>Talent[Incinerate] > 0 or Talent[Critical Mass] > 0</condition>
          <text>火焰法术爆击率:\t$1.2%\n灼烧 &amp; 火焰冲击爆击率:\t$2.2%</text>
          <value>SpellCrit + Talent[Arcane Instab] + Talent[Critical Mass]*2</value>
          <value>SpellCrit + Talent[Arcane Instab] + Talent[Critical Mass]*2 + Talent[Incinerate]*2</value>
        </tooltip>
      </displaytext>

      <displaytext class="法师" size="small">
        <text>魔法回复:\t$1.1/tick</text>
        <value format="pertick">CastingRegenMage</value>
        <tooltip>
          <text>唤醒:\t$Evoc</text>
        </tooltip>
      </displaytext>


      <!-- Paladin -->
      <displaytext class="圣骑士">
        <text>爆击率:\t$1.2%</text>
        <value>5 + Agi / 20 + BonusCrit + Talent[Conviction]</value>
      </displaytext>

      <displaytext class="圣骑士">
        <text>法术爆击率:\t$1.2%</text>
        <value>spellCrit + Talent[Holy Power]</value>
      </displaytext>

      <displaytext class="圣骑士">
        <text>格挡:\t$1.2%</text>
        <value>5 + BonusBlock + (Defense * 0.04) + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="圣骑士">
        <text>格挡值:\t$1</text>
        <condition>Oh.Block > 0</condition>
        <value>(Oh.Block + (Str + Str.Bonus)/25 + BlockValue) * (1 + Talent[Shield Spec]*0.1)</value>
      </displaytext>

      <displaytext class="圣骑士">
        <text>闪避:\t$1.2%</text>
        <value>Agi / 20 + BonusDodge + (Defense * 0.04) + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="圣骑士">
        <text>招架:\t$1.2%</text>
        <value>5 + BonusParry + (Defense * 0.04) + Talent[Deflection] + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="圣骑士">
       <text>命中率:\t$1%</text>
       <value>ToHitCalc + Talent[Precision]</value>
      </displaytext>
      
      <!-- Priest -->
      <value id="PriestHeal">Healing + Spi * Talent[Spiritual Guidance]*0.05</value>
      <displaytext class="牧师">
        <text>治疗效果:\t+$PriestHeal</text>
      </displaytext>

      <displaytext class="牧师">
        <text>快速治疗:\t$1 - $2</text>
        <value>812 * (1 + Talent[Spiritual Healing]*0.02) + PriestHeal * 1.5/3.5</value>
        <value>958 * (1 + Talent[Spiritual Healing]*0.02) + PriestHeal * 1.5/3.5</value>
      </displaytext>

      <displaytext class="牧师">
        <text>强效治疗术:\t$1 - $2</text>
        <value>2396 * (1 + Talent[Spiritual Healing]*0.02) + PriestHeal</value>
        <value>2674 * (1 + Talent[Spiritual Healing]*0.02) + PriestHeal</value>
      </displaytext>

      <displaytext class="牧师">
        <text>法术爆击率:\t$1.2%</text>
        <value>SpellCrit</value>
      </displaytext>

      <displaytext class="牧师">
        <text>魔法回复:\t$1.1/tick</text>
        <value format="pertick">(Mana5s * 2 / 5) + (Spi / 4 + 12.5) * (Talent[Meditation]*0.03 + ManaRegen*0.01)</value>
      </displaytext>


      <!-- Rogue -->
      <displaytext class="盗贼">
        <text>爆击率:\t$1.2%</text>
        <value>Agi / 29 + BonusCrit + Talent[Malice]</value>
      </displaytext>

      <displaytext class="盗贼">
        <text>闪避:\t$1.2%</text>
        <value>
          value = Agi / 14.5 + BonusDodge + (Defense * 0.04) + Talent[Lightning Reflexes];
          if (Race == NightElf)
           value += 1;
       </value>
      </displaytext>

      <displaytext class="盗贼">
        <text>招架:\t$1.2%</text>
        <value>
        value = 5 + BonusParry + (Defense * 0.04) + Talent[Deflection];
       </value>
      </displaytext>

      <displaytext class="盗贼">
       <text>命中率:\t$1%</text>
       <value>ToHitCalc + Talent[Precision]</value>
      </displaytext>
      
      <!-- Shaman -->
      <displaytext class="萨满">
        <text>命中率:\t$1.2%</text>
        <value>5 + Agi.bonus / 20 + BonusCrit + Talent[Thundering Strikes]</value>
      </displaytext>

      <displaytext class="萨满">
        <text>法术爆击率:\t$SpellCrit.2%</text>
      </displaytext>

      <displaytext class="萨满">
        <text>格挡:\t$1.2%</text>
        <value>5 + BonusBlock + (Defense * 0.04) + (Talent[Anticipation] * 0.08) + Talent[Shield Specialization]</value>
      </displaytext>

      <displaytext class="萨满">
        <text>格挡值:\t$1</text>
        <condition>Oh.Block > 0</condition>
        <value>Oh.Block + (Str + Str.Bonus)/25 + BlockValue</value>
      </displaytext>

      <displaytext class="萨满">
        <text>闪避:\t$1.2%</text>
        <value>Agi / 20 + BonusDodge + (Defense * 0.04) + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="萨满">
        <text>招架:\t$1.2%</text>
        <condition>Talent[Parry] > 0</condition>
        <value>5 + BonusParry + (Defense * 0.04) + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="萨满">
       <text>命中率:\t$ToHitCalc%</text>
      </displaytext>
      
      <!-- Warlock -->
      <displaytext class="术士">
        <text>暗影伤害:\t+$1</text>
        <value>ShadowDmg + SpellDmg</value>
      </displaytext>

      <displaytext class="术士">
        <text>暗影箭:\t$1 - $2</text>
        <value>(455 + (ShadowDmg + SpellDmg) * 3/3.5) * (1 + Talent[Shadow Mastery]*0.02)</value>
        <value>(507 + (ShadowDmg + SpellDmg) * 3/3.5) * (1 + Talent[Shadow Mastery]*0.02)</value>
      </displaytext>

      <displaytext class="术士">
        <text>法术爆击率:\t$1.2%</text>
        <value>SpellCrit</value>
      </displaytext>

      <displaytext class="术士">
        <text>生命回复:\t$1.1/tick</text>
        <value format="pertick">((HP5s+15) * 2 / 5)</value>
      </displaytext>

      <displaytext class="术士">
        <text>魔法回复:\t$1.1/tick</text>
        <value format="pertick">(Mana5s * 2 / 5)</value>
      </displaytext>


      <!-- Warrior -->
      <displaytext class="战士">
        <text>爆击率:\t$1.2%</text>
        <value>Agi / 20 + BonusCrit + Talent[Cruelty] + MHCrit</value>
      </displaytext>

      <displaytext class="战士">
        <text>格挡:\t$1.2%</text>
        <value>5 + BonusBlock + (Defense * 0.04) + Talent[Shield Specialization] + (Talent[Anticipation] * 0.08)</value>
      </displaytext>

      <displaytext class="战士">
        <text>格挡值:\t$1</text>
        <condition>Oh.Block > 0</condition>
        <value>Oh.Block + (Str + Str.Bonus)/25 + BlockValue</value>
      </displaytext>

      <displaytext class="战士">
        <text>闪避:\t$1.2%</text>
        <value>
         value = Agi / 20 + BonusDodge + (Defense * 0.04) + (Talent[Anticipation] * 0.08);
         if (Race == NightElf)
           value += 1;
       </value>
      </displaytext>

      <displaytext class="战士">
        <text>招架:\t$1.2%</text>
        <value>5 + BonusParry + (Defense * 0.04) + (Talent[Anticipation] * 0.08) + Talent[Deflection]</value>
      </displaytext>

      <displaytext class="战士">
       <text>命中率:\t$1%</text>
       <value>ToHitCalc</value>
      </displaytext>

      <!-- Reports -->

      <reporttext class="法师">
        <text>法术爆击率:\t$1.2%</text>
        <value>SpellCrit + Talent[Arcane Instability]</value>
      </reporttext>

      <reporttext class="法师">
        <condition>Talent[Critical Mass] > 0</condition>
        <text>\t($1.2% fire spells)</text>
        <value>SpellCrit + Talent[Arcane Instability] + Talent[Critical Mass]*2</value>
      </reporttext>

      <reporttext class="法师">
        <condition>Talent[Incinerate] > 0</condition>
        <text>\t($1.2% scorch &amp; fire blast)</text>
        <value>SpellCrit + Talent[Arcane Instability] + Talent[Critical Mass]*2 + Talent[Incinerate]*2</value>
      </reporttext>

      <reporttext class="法师">
        <text>\n</text>
      </reporttext>

      <reporttext class="法师">
        <text>魔法回复:\t$1.1/tick resting\t$2.1/tick casting (mage armor)\t$3.1f/tick casting (ice armor)\n</text>
        <value>(Mana5s * 2 / 5) + (Spi / 4 + 12.5)</value>
        <value>CastingRegenMage</value>
        <value>(Mana5s * 2 / 5) + (Spi / 4 + 12.5) * (Talent[Arcane Meditation]*0.03)</value>
      </reporttext>

      <reporttext class="法师">
        <text>\n奥术法术:\t+$1 伤害\n</text>
        <value>ArcaneDmg + SpellDmg</value>
      </reporttext>

      <reporttext class="法师">
        <text>奥术飞弹:\t$1 - $2\最大爆击伤害: $3\t平均DPS: $AveAM.1\t平均DPM: $4.2\t全部伤害: $5\n</text>
        <value>(195 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <value>(196 + (ArcaneDmg + SpellDmg) / 5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <value>(196 + (ArcaneDmg + SpellDmg + TrinketDmg) / 5) * (1 + Talent[Arcane Instability]*0.01 + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveAM * 5 / 595</value>
        <value>AveAM * 5 * floor((Mana+Evoc) / (595 - CastingRegenMage * 5/2))</value>
      </reporttext>

      <value id="AveNCAE">((249+270)/2 + (ArcaneDmg + SpellDmg) * 1.5/3.5) * (1 + Talent[Arcane Instability]*0.01)</value>
      <value id="AveAE">AveNCAE * (1-NormSCritMage) + AveNCAE * 1.5 * NormSCritMage</value>
      <reporttext class="法师">
        <text>奥术爆炸:\t$1 - $2\t最大爆击伤害: $3\t平均DPS: $4.1\t平均DPM: $5.2\t全部伤害: $6\n</text>
        <value>(249 + (ArcaneDmg + SpellDmg) * 1.5/3.5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <value>(270 + (ArcaneDmg + SpellDmg) * 1.5/3.5) * (1 + Talent[Arcane Instability]*0.01)</value>
        <value>(270 + (ArcaneDmg + SpellDmg + TrinketDmg) * 1.5/3.5) * (1 + Talent[Arcane Instability]*0.01 + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveAE / 1.5</value>
        <value>AveAE / 390</value>
        <value>AveAE * floor((Mana+Evoc) / (390 - CastingRegenMage * 1.5/2))</value>
      </reporttext>


      <reporttext class="法师">
        <text>\n火焰法术:\t+$1 伤害\n</text>
        <value>FireDmg + SpellDmg</value>
      </reporttext>

      <reporttext class="法师">
        <text>火球术:\t$1 - $2\t最大爆击伤害: $3\t平均DPS: $4.1\t平均DPM: $5.2\t全部伤害: $6\n</text>
        <value>(561 + (FireDmg + SpellDmg)) * FireTalents</value>
        <value>(715 + (FireDmg + SpellDmg)) * FireTalents</value>
        <value>(715 + (FireDmg + SpellDmg + TrinketDmg)) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveFireball / (3.5 - Talent[Improved Fireball]*0.1)</value>
        <value>AveFireball / 395</value>
        <value>AveFireball * floor((Mana+Evoc) / (395 - CastingRegenMage * (3.5 - Talent[Improved Fireball]*0.1)/2))</value>
      </reporttext>

      <value id="AveNCPyro">((716+890)/2 + (FireDmg + SpellDmg)) * FireTalents</value>
      <value id="AvePyro">AveNCPyro * (1-NormSCritMage) + AveNCPyro * 1.5 * NormSCritMage</value>
      <reporttext class="法师">
        <condition>Talent[Pyroblast] > 0</condition>
        <text>炎爆术:\t$1 - $2\t最大爆击伤害: $3\t平均DPS: $4.1\t平均DPM: $5.2\n</text>
        <value>(716 + (FireDmg + SpellDmg)) * FireTalents</value>
        <value>(890 + (FireDmg + SpellDmg)) * FireTalents</value>
        <value>(890 + (FireDmg + SpellDmg + TrinketDmg)) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveNCPyro / 6</value>
        <value>AveNCPyro / 440</value>
      </reporttext>

      <reporttext class="法师">
        <text>灼烧:\t$1 - $2\t最大爆击伤害: $3\t平均DPS: $4.1\t平均DPM: $5.2\t全部伤害: $6\n</text>
        <value>(237 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <value>(280 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <value>(280 + (FireDmg + SpellDmg + TrinketDmg) * 1.5/3.5) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveScorch / 1.5</value>
        <value>AveScorch / 150</value>
        <value>AveScorch * floor((Mana+Evoc) / (150 - CastingRegenmage * 1.5/2))</value>
      </reporttext>

      <value id="AveNCFBlast">((446+524)/2 + (FireDmg + SpellDmg)) * FireTalents</value>
      <value id="AveFBlast">AveNCFBlast * (1-NormSCritmage) + AveNCFBlast * 1.5 * NormSCritMage</value>
      <reporttext class="法师">
        <text>火焰冲击:\t$1 - $2\tMax Crit: $3\tAve DPS: $4.1\tAve DPM: $5.2\n</text>
        <value>(446 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <value>(524 + (FireDmg + SpellDmg) * 1.5/3.5) * FireTalents</value>
        <value>(524 + (FireDmg + SpellDmg + TrinketDmg) * 1.5/3.5) * (FireTalents + Talent[Arcane Power]*0.35) * 1.5</value>
        <value>AveFBlast / 1.5</value>
        <value>AveFBlast / 340</value>
      </reporttext>


      <reporttext class="法师">
        <text>\n冰霜法术:\t+$1 伤害\n</text>
        <value>FrostDmg + SpellDmg</value>
      </reporttext>

      <reporttext class="法师">
        <text>冰箭术:\t$1 - $2\t最大爆击伤害: $3\t平均DPS: $4.1\t平均DPM: $5.2\t全部伤害: $6\n</text>
        <value>(440 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
        <value>(475 + (FrostDmg + SpellDmg) * (3/3.5) * 0.95) * FrostTalents</value>
        <value>(475 + (FrostDmg + SpellDmg + TrinketDmg) * (3/3.5) * 0.95) * (FrostTalents + Talent[Arcane Power]*0.35) * (1.5 + Talent[Ice Shards]*0.1)</value>
        <value>AveFrostbolt / (3 - Talent[Improved Frostbolt]*0.1)</value>
        <value>AveFrostbolt / (260 * (1 - Talent[Frost Channeling]*0.05))</value>
        <value>AveFrostbolt * floor((Mana+Evoc) / (260 * (1 - Talent[Frost Channeling]*0.05) - CastingRegenMage * (3 - Talent[Improved Frostbolt]*0.1)/2))</value>
      </reporttext>

    </Config>

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:48:00
     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客5
    发贴心情 
    改成GBK utf-8 unicode等等都没用,如果改变编码直接说文档顶层无效,应该是xml中这种变量必须为英文字符导致的吧?我现在汉化的这些在程序中都可以体现
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:52:00
     
     starting 帅哥哟,离线,有人找我吗?
      
      威望:4
      等级:大二(研究C++)
      文章:223
      积分:1611
      门派:XML.ORG.CN
      注册:2006/3/23

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给starting发送一个短消息 把starting加入好友 查看starting的个人资料 搜索starting在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看starting的博客6
    发贴心情 
    字符集gb2312加上也是这样吗?
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:53:00
     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客7
    发贴心情 
    一样的,我加过了,不是显示不出来或者乱码,直接报错
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 18:55:00
     
     starting 帅哥哟,离线,有人找我吗?
      
      威望:4
      等级:大二(研究C++)
      文章:223
      积分:1611
      门派:XML.ORG.CN
      注册:2006/3/23

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给starting发送一个短消息 把starting加入好友 查看starting的个人资料 搜索starting在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看starting的博客8
    发贴心情 
    我COPY了一下文件.说是不是良好格式,和这个有关吗?其中有两"&"不能直接引用...换成&  amp;是合法的...
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 19:12:00
     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客9
    发贴心情 
    不是这个问题,到这里下吧
    http://bbs.yesky.com/attachment.php?aid=63938
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 19:18:00
     
     toway 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:5
      积分:73
      门派:XML.ORG.CN
      注册:2006/4/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给toway发送一个短消息 把toway加入好友 查看toway的个人资料 搜索toway在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看toway的博客10
    发贴心情 
    顶一下 ,有人会吗?帮帮忙
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/17 22:51:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML基础 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/6/23 23:46:13

    本主题贴数12,分页: [1] [2]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    281.250ms