第一部分、entity

+

Majesty 2的修改方法出人意料地简单,参数设置不说,居然连存档文件都没加密

对于战役存档,我们需要做的就是用文本编辑器(记事本等)打开“我的文档majesty2profilessavescampaignssave#mission.sav”(#为存档序号);单人游戏存档路径则为“我的文档majesty2profilessavessinglessave#mission.sav
如不确定哪个存档是自己想要改的,也可先打开同文件夹中的info.sav,里面记录了该存档的名称和保存时间

那么下面介绍修改方法
注:1.研究仍在进行中,所以暂时并不能解释全部参数,欢迎补充指正
  2.说明统一加在//号后,实际存档文件不包含//及其后部分(这是废话 >_< );普通注释绿色,重点注释兰色
  3.各参数可改动的幅度未测试,请不要改得太过,否则后果自负

第一部分 entity   


entity部分包含了存档中所有单位的基本信息,包括敌我英雄、怪物、建筑、巢穴、可破坏的景观等
该部分条目的命名方式与游戏中的实际名称基本相同,修改时只需要在其中查找自己需要修改的条目名称即可。如修改城堡只需查找“{entity "castle”,修改卫兵只需查找“{entity "guard”。而其中有几类条目带有统一前缀,包括hero_(英雄)、guild_()公会、logovo_(巢穴)等

这里以英雄为例
{entity "hero_elf" 0x688//条目类型为英雄,职业精灵,内部遍号0x688
        {player 255}//(接上行)由于各单位的属性都是分几部分保存的,所以要记住此编号
        {operatable}
        {aid 25}
        {position -83.03 -30.65}//所在位置坐标
        {xform zl 21.38}
        {"fsm"//当前动作
                {animationstates {"walk" 68.3977 2.025 0 "POSE_FINISHED"}
                }
                {statework "move_default"
                        {active}
                        {activeanim "walk"}
                }
                {worksubset "default"}
                {working}
                {phase 1}
                {current_sta 20}
                {treads "tread_pose"}
        }
        {"entitynationality"
                {fatherland {kingdomdescriptor "player"}//阵营,参数:player、enemy
                        {humanplayer 0}
                }
                {havefatherland 1}
        }
        {"name"//姓名,有人喜欢的话研究下姓名和id的对应关系吧
                {locname {prefixid 0}
                        {nameid 35}
                        {surnameid 17}
                        {prefix ""}
                        {name "#elfN20"}
                        {surname "#elfS3"}
                }
        }
        {"entityclasses"//分类,可选类别待统计
                "blood_splash"
                "dwarf_friendly_target"
                "elf"
                "hero"
                "mana_user"
                "unit"
        }
        {"level"//等级,当前Lv和当前XP以及上次更新单位外观时的等级
                {currentlevel 17}
                {currentexperience 586.235}
                {lastlevelupdatedview 16}
        }
        {"rpgmodule"
                {effectorcash//单位身上附有的临时属性加成
                        {movement 1.5}
                        {dps 5 37 5}
                        {defence 13 43 73}
                }
                {unitclassrandomization//单位相对于基础值的属性浮动
                        {strength -5}//(接上行)全部改成正值,单兵坦克诞生
                        {agility -1}
                        {intellect 5}
                        {stamina -2}
                        {dps "" "" ""}//dps和defence的修改方法参见上面临时属性加成
                        {defence "" "" ""}
                }
                {perks//拥有的专长(从市场、公会等处购买的非消耗品,武器防具不在此列)
                        {perkinstance "perk_enchant_weapon_attack"}
                        {perkinstance "artefact_of_protection"}
                        {perkinstance "artefact_of_regeneration" {reactivate 0.265}
                        }
                        {perkinstance "state_elf_buff" {remove 26.997}
                        }
                }
        }
        {"health"
                {value_new
                        {max 475.2}//最大HP
                        {current 142.264}//当前HP
                }
        }
        {"mana"
                {value {Value 130.588 UseMin 1 Min 0 UseMax 1 Max 156}//当前和最大MP
                }
        }
        {"motivator"//行动动机(这里只分为工作、装备升级和休息三类)
                {current_motive relaxation}
                {task_counters
                        {work 0}
                        {relaxation 0}
                }
                {source_motives
                        {work {Value 0 UseMin 1 Min 0 UseMax 1 Max 100}
                        }
                        {relaxation {Value 0 UseMin 1 Min 0 UseMax 1 Max 100}
                        }
                }
                {update_motives
                        {work}
                        {relaxation}
                }
                {change_factors
                        {work 1}
                        {relaxation 1}
                }
        }
        {"motivationmodifier"
                {isentitydie 0}
        }
        {"mover"
                {footpath {handle 0}
                        {flag 1}
                        {state 10}
                        {destination -33.4833 -31.1262}
                        {lookat 1 -31.1262}
                        {action "move"}
                        {goal "move"}
                        {anim "work"}
                }
                {syncanimation "move_resume"}
        }
        {"itemsattachment"//武器及防具(目前不确定此参数是否与属性挂钩)
                {attachment "p_weapon" "hero_elf_bow_03"}
                {attachment "p_helm" "hero_elf_helm_03"}
                {attachment "p_shield" "hero_elf_shield_03"}
        }
        {"snd_props"//命中与闪避因子
                {prop {tag "attackprop"}{val "arrow_light"}}
                {prop {tag "hitprop"}{val "leather"}}
        }
        {"texmod"
                {"/entity/units/heroes/hero_elf/hero_elf_tracery_" "0"}
        }
        {".speed_property" {moving}//移动速度因子(未测试)
                {speed_factor 1.5}
        }
}