You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Wiki/pages/骑砍2的控制台及相关指令.md

16 KiB

  • 皮蛋2023年03月18日完成初版
  • 皮蛋2023年03月21日修订
    1. 由胖巴迪补充变速指令。
    2. 由如何挽风--补充怀孕指令。
    3. 由现实之眼II补充使用指令将技能等级增加至上限1023的方法。
    4. 由丨寒煦丨修正指令“修改角色特性”的错误。
    5. 由丨寒煦丨补充增加角色技能专精点的指令。
    6. 由百里追风尘女子虚乌有和丨寒煦丨补充增加角色属性点的指令。
    7. 由驽马逸足补充升级定居点建筑的指令。

游戏版本v1.0.3

控制台是什么

  • 控制台是各种游戏中广泛存在的一个功能。
  • 对于游戏开发者来说,使用控制台的指令可以更方便地测试并调试游戏。
  • 对于游戏玩家来说,使用控制台的指令可以方便地实现某些作弊效果。
  • 骑马与砍杀2的控制台也具备以上的特点。

不同版本下的控制台

  • 随着骑砍2版本的更新控制台的指令在增加、减少或变更有时一个效果在不同版本需要输入不同格式的指令。
  • 在过早的版本前e1.3.0或更早),控制台是被锁定的功能,玩家客户端无法使用,需要安装解锁控制台的模组才能解锁控制台功能。

打开控制台

  • 在骑砍2中按下快捷键Alt+~打开控制台。
  • 再次按下Alt+~关闭。
  • 鼠标左键长按控制台可将其拖动。

输入指令

  • 当Windows窗口焦点在控制台时可以在控制台的输入框内输入指令也可以在其中执行复制及粘贴等文本快捷操作。
  • 指令输入完毕后,单击回车键执行指令,执行是否成功的结果会显示在控制台的主要框体中。
  • 首先输入“help”并单击回车执行控制台会列出当前所有可用指令。

指令的自动补全

  • 与大多数游戏的控制台类似,控制台拥有指令自动补全的能力。
  • 以一个实际例子说明我想要设置主角的年龄为18需要执行指令campaign.set_main_hero_age 18
    1. 我需要先输入ca,指令的待选列表中会出现campaign.localization.scenenotification.
    2. 接下来的操作是单击键盘按键“↓”选中排在首位的campaign.,然后单击回车将其置入输入框中。
    3. 然后输入易记的核心单词年龄age,指令的待选列表中出现了包含该字符的campaign.ai_raid_villagecampaign.get_heroes_at_agecampaign.is_hero_suitable_for_marriage_with_playercampaign.list_heroes_suitable_for_marriagecampaign.set_main_hero_age
    4. 单击键盘按键“↑”和“↓”选中该指令,然后单击回车将其置入输入框中。也可以通过鼠标单击指定的指令使其置入输入框中。
    5. 输入一个空格,然后输入18
    6. 此时,输入框内的指令是campaign.set_main_hero_age 18
    7. 单击回车执行该指令。

指令的执行成功与失败

  • 如果输入的指令错误或不存在,控制台会显示:
你输入的指令字符
Unknown command
  • 如果输入的指令存在,但是输入的数值有问题,控制台会显示正确的格式,例如:
campaign.give_troops looter1
Usage : campaign.give_troops [TroopId] [Number]

意思是需要按照Usage : 后的格式正确输入所需要的数值才能执行指令。

  • 如果指令执行成功,则会每个指令对应的成功文本,例如:
campaign.give_troops looter 1
Main hero gained 1 of 劫匪
  • 更常见成功情况是
你输入的指令字符
Success

控制台的语言支持

  • 控制台只支持英文语言的显示和使用。
  • 控制台无法识别中文或其他字符,输入后会显示??
  • 所以使用某些指令前通常是需要输入角色名字或定居点名字的指令必须先将游戏的语言设置为英语English才能正常使用。
    • 例如,使某角色死亡的指令,该指令要求输入目标的名字,但是由于中文字符无法识别。输入目标的英文名时简体中文语言下又无法找到该角色。

开启作弊模式

  • 大部分指令都需要当前的骑砍2处于作弊模式开启的状态下。
  • 开启作弊模式的指令:config.cheat_mode 1
  • 与之对应的,关闭作弊模式的指令是config.cheat_mode 0
  • 在大多数情况下,1代表开启,代表true0代表关闭,代表false
  • 注意,指令中1的前面有一个空格。在大多数游戏控制台中都是这样做的:在固定的指令字符和需要输入的每个变化的数值之间都用一个空格作为间隔。
  • 早期版本作弊模式的开启。
    • 在无法使用控制台的情况下开启作弊模式。
    • 这通常是在游戏刚发售时无法使用控制台的时期进行的操作。
    • 配置文件的路径是此电脑>文档>Mount and Blade II Bannerlord\Configs\engine_config.txt
    • 绝对路径C:\Users\你的Windows用户名\Documents\Mount and Blade II Bannerlord\Configs\engine_config.txt
    • 进入该文件搜索“cheat_mode”将该项等号后的值从0改为1。保存文件作弊模式开启。
    • 有时该文件修改不成功,解决方法:右键文件engine_config.txt,单击属性,在最后一栏中找到“只读”,将“只读”的勾去掉,并单击确定。

开启作弊模式后的快捷键作弊

  • 以下效果无需使用控制台指令实现。

在战斗场景中

  • 将玩家操控的角色血量恢复至满
    • Ctrl+H
  • 将玩家操控角色骑乘的骑乘物的血量恢复至满
    • Ctrl+Shift+H
  • 击杀一个敌人
    • Ctrl+F4
  • 击杀全部敌人
    • Ctrl+Alt+F4
  • 击杀一个队友
    • Ctrl+F2
  • 击杀全部队友
    • Ctrl+Alt+F2
  • 击杀玩家操控的角色
    • Ctrl+F3
  • 将玩家角色的操控权托管给电脑
    • Ctrl+F5

在世界地图中

  • 物品栏界面左侧展示并可拿取全部物品
    • 按“I”键打开物品栏
  • 部队栏左侧展示并可拿取全部兵种
    • 按“P”键打开部队栏
  • 将玩家部队移至指定坐标
    • 按住Ctrl键然后鼠标单击指定位置。

控制台的指令(不全)

  • 治疗玩家部队中的所有角色和士兵
    • campaign.heal_main_party
    • 易记词语heal
  • 给予金钱
    • campaign.add_gold_to_hero [Number] [HeroName]
      • 若不输入Number数额则给予1000第纳尔。
      • 若不输入HeroName角色的名字则给予主角。
    • 易记词语gold
  • 给予声望
    • campaign.add_renown_to_clan [PositiveNumber] [ClanName]
      • 若不输入PositiveNumber数值则给予100声望。
      • 若不输入ClanName家族名字则给予主角家族。
    • 易记字符ren
  • 给予影响力
    • campaign.add_influence [Number]
      • 若不输入Number数值则给予100影响力。
    • 易记字符flu
  • 作为领主加入国家
    • campaign.join_kingdom [KingdomName]
    • 只有将游戏语言切换至英文English后才能正常输入KingdomName国家名字。
    • 不能使用国家id只能使用国家名字。
  • 作为雇佣兵加入国家
    • campaign.join_kingdom_as_mercenary [KingdomName]
    • 只能将游戏语言切换至英文English后才能正常输入KingdomName国家名字。
    • 不能使用国家id只能使用国家名字需要输入英文。
  • 使玩家成为所属派系的统治者
    • campaign.lead_your_faction
  • 给予x个指定兵种至玩家部队
    • campaign.give_troops [TroopId] [Number]
    • 在e1.8.0及之后的版本中加入了新功能即通常开启作弊模式后打开部队界面左侧会展示并可拿取全部兵种。这个指令需要输入兵种的id比直接在部队界面拿要麻烦所以用较少。
  • 生成一个随机流浪者加入玩家部队
    • campaign.add_companion
    • 易记字符com
    • 不要使用指令campaign.add_random_hero_to_party,这个指令生成的角色数据异常,会导致坏档。
  • 生成x个随机流浪者加入玩家部队
    • campaign.add_companions [number]
    • 易记字符com
  • 给予指定经验值给部队中的所有兵种
    • 在v1.0.3版本中未找到。可能更新删除了该指令。
    • campaign.give_troops_xp [number]
  • 给予指定技能的指定经验值给玩家
    • campaign.add_skill_xp_to_hero [SkillName][PositiveNumber] [HeroName]
    • 现实之眼II“加经验的控制台代码可以让玩家突破300这个“基因锁”在给特定技能添加99999999经验之后它的等级会达到1023级。”
    • 驽马逸足:“这个指令也适用于同伴。”
    • 皮蛋:“这个指令一般不用,因为给予技能经验值受到学习效率,经验值达到下一等级后等级才会提升等一系列的因素影响,非常不好用。”
    • 只有将游戏语言切换至英文English后才能正常输入SkillName技能名字需要输入英文。
  • 给予x个指定物品至玩家物品栏
    • campaign.give_item_to_main_party [ItemObject] [Amount]
    • ItemObject中输入的是物品的id。
    • Amount输入的是数量。如果不输入则默认为1。
    • 通常不使用该指令,而是开启作弊模式后直接打开物品栏,在左侧找到想要的物品。
    • 只有一次性需要大量单一物品时才会使用例如需要为军团一次性补充1000袋谷物的情况。
  • 将指定定居点给予指定国家
    • campaign.give_settlement_to_kingdom [SettlementName] | [Kingdom]
  • 将指定定居点给予玩家
    • campaign.give_settlement_to_player [SettlementName/SettlementId]
  • 将玩家的某项技能等级设定为指定值
    • campaign.set_skill_main_hero [LevelValue] [SkillName]
    • LevelValue中输入等级值但只能在1至330之间。
    • 只有将游戏语言切换至英文English后才能正常输入SkillName技能名字需要输入英文。
    • 易记字符skill
    • 注意,部分技能被设定后,虽然显示是新的数值,但实际生效可能需要游戏内时间一天后。
  • 将玩家的全部技能等级设定为指定值
    • campaign.set_skill_main_hero [LevelValue] [SkillName]
    • 易记字符skill
    • 注意,部分技能被设定后,虽然显示是新的数值,但实际生效可能需要游戏内时间一天后。
  • 将全角色的全技能等级设定为指定值
    • campaign.set_all_skills_main_hero [Number]
    • 易记字符skill
    • 注意,部分技能被设定后,虽然显示是新的数值,但实际生效可能需要游戏内时间一天后。
  • 将同伴(部队中的流浪者及家族成员)的指定技能等级设定为指定值
    • campaign.set_skill_companion [LevelValue] [SkillName]
    • LevelValue中输入等级值但只能在1至330之间。
    • 只有将游戏语言切换至英文English后才能正常输入SkillName技能名字需要输入英文。
    • 易记字符skill
    • 注意,部分技能被设定后,虽然显示是新的数值,但实际生效可能需要游戏内时间一天后。
  • 与指定角色结婚
    • campaign.marry_player_with_hero [HeroName]
    • 只能和适龄且未婚的角色结婚。已有配偶或家族领袖不可以。
    • 只有将游戏语言切换至英文English后才能正常输入HeroName角色名字需要输入英文。
    • 易记字符mar
  • 显示全地图部队
    • campaign.set_parties_visible [1/0]
    • 输入的值1是开启,0是关闭。
    • 易记字符vis
    • 曾经最初的骑砍2版本可以用快捷键Ctrl+T达到与该指令同样的效果,后来快捷键被删除。
  • 显示全地图定居点信息(处于视野范围内可见)
    • campaign.set_settlements_visible [1/0]
    • 输入的值1是开启,0是关闭。
    • 易记字符vis
    • 曾经最初的骑砍2版本可以用快捷键Ctrl+T达到与该指令同样的效果,后来快捷键被删除。
  • 显示全地图藏身处
    • campaign.show_hideouts [1/2]
    • 输入值1时,只显示激活的藏身处,即内有强盗部队可以攻打的。
    • 输入值2时,显示全部藏身处,包括未激活的。
    • 易记字符hid
  • 使指定角色死亡
    • campaign.kill_hero [HeroName]
    • 只能使用名字而不能使用id。
    • 如果出现重名角色,则只会判定抓取列表中的第一个(可以理解为固定顺序中的第一个)。所以有时候不好用。
    • 只有将游戏语言切换至英文English后才能正常输入HeroName角色名字需要输入英文。
    • 易记字符kill
  • 使国家A向国家B宣战
    • campaign.declare_war [Faction1] [Faction2]
    • Faction1输入的是第一个国家的名字。Faction2输入的是第二个国家的名字。
    • 只有将游戏语言切换至英文English后才能正常输入Faction1、Faction2国家名字。
    • 易记字符war
  • 使全派系互相宣战
    • campaign.start_world_war
    • 易记字符war
  • 使玩家派系与其他全部派系开战
    • campaign.start_player_vs_world_war
    • 易记字符war
  • 使国家A与国家B停战
    • campaign.declare_peace [Faction1] [Faction2]
    • Faction1输入的是第一个国家的名字。Faction2输入的是第二个国家的名字。
    • 只有将游戏语言切换至英文English后才能正常输入Faction1、Faction2国家名字。
    • 易记字符pea
  • 使全派系互相停战
    • campaign.start_world_peace
    • 易记字符pea
  • 设定主角的年龄为指定值
    • campaign.set_main_hero_age [Age]
    • Age中输入年龄的值。
    • 易记字符age
  • 解锁全部锻造配件
    • 该指令似乎在某些版本不存在。
    • campaign.unlock_all_crafting_pieces
    • 易记字符unlock
  • 增加部队士气
    • campaign.add_morale_to_party [Number]
    • 不填写Number则默认增加10。
    • 易记字符mor
  • 创建玩家的国家
    • campaign.create_player_kingdom
    • 易记字符create
  • 填充x个士兵至玩家部队随机兵种
    • campaign.fill_party [Number] [Culture]
    • 易记字符fill
  • 移除指定定居点中的所有民兵
    • campaign.remove_militas_from_settlement [SettlementName]
    • 只有将游戏语言切换至英文English后才能正常输入SettlementName定居点名字需要输入英文。
    • 易记字符mili
  • 设定角色的锻造体力值
    • campaign.set_hero_crafting_stamina [Stamina] [HeroName]
    • 只有将游戏语言切换至英文English后才能正常输入HeroName角色名字需要输入英文。
    • 易记字符craft
  • 给予玩家100个锻造使用的全部类型材料
    • campaign.add_crafting_materials
    • 易记字符craft
  • 设定指定定居点忠诚度
    • campaign.set_loyalty_of_settlement [SettlementName] [loyalty]
    • loyalty中输入忠诚度的值可能需要输入1至100之间的值。
    • 只有将游戏语言切换至英文English后才能正常输入SettlementName定居点名字需要输入英文。
    • 易记字符lo
  • 设定指定角色的特质(性格)
    • campaign.set_hero_trait [heroname] | [trait] | [value]
    • 丨寒煦丨:“例如: campaign.set_hero_trait rhoda | honor | 2 将rhoda的荣誉特性设定为2级。 指定范围为-22”
    • 特质Trait一共有五种此处可能需要输入的是特质Trait的单词。
  • 设定指定角色的文化
    • campaign.set_hero_culture [HeroName] [CultureId]
    • 文化需要填写id而非名字。
    • 只有将游戏语言切换至英文English后才能正常输入HeroName角色名字需要输入英文。
  • 重置玩家的技能等级和特长
    • campaign.reset_player_skills_level_and_perks
  • 变更时间流逝速度
    • set_campaign_speed_multiplier
    • 最大值为15。
  • 使角色或角色的配偶怀孕。
    • campaign.conceive_child
    • 没有结婚时会自动结婚。
  • 增加指定角色的技能专精点。
    • campaign.add_focus_points_to_hero [positivenumber] [heroname]
  • 增加指定角色的属性点。
    • campaign.add_attribute_points_to_hero [positivenumber] [heroname]
  • 给定居点升级建筑
    • crafting.add_building_level 城市/城名字 | 建造任务
    • 驽马逸足: “自立以后需要的三级墙跟收税站可以用这个指令。 |左右要空格 按键盘上的shift+|就能打出来 |位于回车键上方的 \|键。”