帝国时代4 控制台脚本v2.3
本帖最后由 M奥M 于 2024-8-17 02:04 编辑由于战役只能使用一个国家,对于仓鼠玩家并不友好,在此分享自用脚本。
cheat.lua是控制台脚本。
sbp.txt是部分单位sbp名单。
ebp.txt是部分建筑ebp名单。
ubp.txt是部分科技ubp名单。
readme.txt是这个说明。
首先将cheat文件夹放入游戏根目录,像是这样:
"D:\Age of Empires IV\cheat\cheat.lua"
然后用开发者模式进入游戏。
对于Steam版:
创建启动文件快捷方式,右键点击快捷方式属性,目标一行最后面添加 -dev -nomovies,像是这样:
"D:\Age of Empires IV\RelicCardinal.exe" -dev -nomovies
对于Microsoft版:
cmd输入start shell:AppsFolder\Microsoft.Cardinal_8wekyb3d8bbwe!Game -dev -nomovies
-dev启用带控制台的开发者模式,-nomovies跳过游戏启动动画。
每局游戏开始后CTRL+SHIFT+~打开控制台,输入dofile("cheat/cheat.lua"),控制台显示cheat activated说明开启成功,再次按下CTRL+SHIFT+~关闭控制台。
功能列表:
-1. CTRL+SHIFT+~ 启用/停用控制台
0. 控制台输入dofile("cheat/cheat.lua") 启用脚本
1. CTRL+HOME 重新加载脚本
2. CTRL+END 禁用全部功能
3. CTRL+F 启用/停用战争迷雾
4. CTRL+B 启用/停用奖励增益
5. CTRL+O 建筑添加城堡网络能力
6. CTRL+M 资源加99999
7. CTRL+P 启用/停用人口超控
8. CTRL+N 生成各国村民
9. CTRL+SHIFT+N 生成各国村民
10. CTRL+G 启用/停用快速采集
11. CTRL+E 启用/停用快速生产
12. CTRL+W 启用/停用快速建筑
13. CTRL+Q 启用/停用冷却缩减
14. CTRL+UP 提升时代
15. CTRL+DOWN 降低时代
16. CTRL+L 锁定/解锁单位/建筑外观
17. CTRL+U 锁定/解锁地标/奇观建造
18. CTRL+SHIFT+U 解锁所有建造限制
19. CTRL+C 复制单位/建筑
20. CTRL+X 剪切单位/建筑
21. CTRL+V 粘贴单位/建筑
22. CTRL+SHIFT+C 复制单位/建筑所有者
23. CTRL+SHIFT+V 粘贴单位/建筑所有者
24. CTRL+H 治疗单位/建筑
25. CTRL+I 启用/停用单位/建筑无敌
26. CTRL+J 启用/停用单位超级速度
27. CTRL+T 瞬移单位/建筑
28. CTRL+R 旋转单位/建筑
29. ALT+DELETE 点燃建筑
30. CTRL+DELETE 杀死单位/建筑
31. CTRL+SHIFT+DELETE 湮灭单位/建筑
32. CTRL+ALT+DELETE 启用安全窗口
33. CTRL+SPACE 启用/停用计时器
34. CTRL+TAB 切换玩家颜色
35. CTRL+Z 还原世界
36. CTRL+PAGEUP 战役立刻胜利
37. CTRL+PAGEDOWN 战役立刻失败
38. 控制台输入upgrade("name") 启用/停用name科技
39. 控制台输入spawn("name",(id)) 生成id拥有的name单位/建筑
详细说明:
-1. CTRL+SHIFT+~ 启用/停用lua控制台。
--开发者模式。
0. 控制台输入dofile("cheat/cheat.lua") 启用cheat.lua脚本。
--最厉害的海盗。
1. CTRL+HOME或在控制台输入reload 重新加载脚本。用于第二局游戏时快速开启。
--快速启动。
2. CTRL+END或在控制台输入deactivate 一键禁用所有可能导致问题的功能。用于防止崩溃。
--没关就是开了?
3. CTRL+F或在控制台输入tooktheredpill 为玩家启用/停用战争迷雾。个别战役如果报错,关闭报错提示后启用战争迷雾,恢复后过一会再启用就好了。
--索伦邪眼。
4. CTRL+B或在控制台输入iamironman 为玩家启用/停用4个奖励增益。包括故事模式生命值加成和法兰西战役中3个炮兵加成。
--风灵月影宗。
5. CTRL+O或在控制台输入oi 为当前所选建筑添加能力。包括3个城堡网络强化。
--五号化合物。
6. CTRL+M或在控制台输入showmethemoney 为玩家增加99999食物、木头、黄金、石头、维齐尔点数、橄榄油、经验值。
--买下银行。
7. CTRL+P或在控制台输入pointbreak 为玩家启用/停用人口上限超控999。
--我即是虫群。
8. CTRL+N或在控制台输入theblip 在屏幕中央生成各国村民。包括老版8个国家和1个诺曼人(战役前几关村民)。
--我就是埃蒙。
9. CTRL+SHIFT+N或在控制台输入theblip(1) 在屏幕中央生成各国村民。包括新版8个国家。
--我就是埃蒙。
10. CTRL+G或在控制台输入moredotsmoredots 为玩家启用/停用村民快速采集。
--996。
11. CTRL+E或在控制台输入catfoodforprawnguns 为玩家启用/停用单位快速生产。
--996。
12. CTRL+W或在控制台输入warpten 为玩家启用/停用村民快速建筑。
--996。
13. CTRL+Q或在控制台输入hanshotfirst 为玩家启用/停用技能快速冷却。如果圣女贞德技能进入冷却后再启用需要等待一个完整周期。
--时空提速。
14. CTRL+UP或在控制台输入waraintwhatitusedtobe 为玩家提升时代。
--懒得盖地标了。
15. CTRL+DOWN或在控制台输入medievalman 为玩家降低时代。
--去年忘记盖地标了。
16. CTRL+L或在控制台输入capsical 锁定/解锁当前所选单位/建筑外观。
--美国冰棍。
17. CTRL+U或在控制台输入modifythephasevariance 锁定/解锁所有建筑。先拍一个地标然后停用到二选一界面再启用就能盖俩了。
--盛世王朝。
18. CTRL+SHIFT+U或在控制台输入sosayweall 解锁所有建造限制。包括哨站,船坞,战役限制等,没想到好的关闭方法,所以使用前记得保存。
--你的游戏。
19. CTRL+C或在控制台输入copy 复制当前所选单位/建筑到剪贴板。在控制台中显示复制的单位/建筑/所有者信息。
--克隆人之战。
20. CTRL+X或在控制台输入cut 剪切当前所选单位/建筑到剪贴板。在控制台中显示复制的单位/建筑/所有者信息。
--快速删除。
21. CTRL+V或在控制台输入paste 在屏幕中央粘贴剪贴板中的单位/建筑。
--可再生资源。
22. CTRL+SHIFT+C或在控制台输入copyowner 复制当前所选单位/建筑所有者到剪贴板。在控制台中显示复制的所有者信息,未选中时将复制所有者为世界。
--咬人精步兵听不懂人话。
23. CTRL+SHIFT+V或在控制台输入pasteowner 将当前所选单位/建筑所有者变更为之前复制的。个别战役转换AI生产建筑可能报错,关闭报错提示后转换为原来的就好了。
--刷上油漆。
24. CTRL+H或在控制台输入imadoctornotaroachjim 治疗当前所选单位/建筑。
--满血复活。
25. CTRL+I或在控制台输入whosyourdaddy 切换当前所选单位/建筑无敌状态。
--但是代价是什么呢?
26. CTRL+J或在控制台输入runbarryrun 切换当前所选单位超级速度。存在上限,猜测和模型动作同步有关,没找到更好的修改办法。
--我停不下来。
27. CTRL+T或在控制台输入zeleport 瞬移当前所选单位/建筑到屏幕中央。移动建筑后可能会导致村民寻路出现问题。
--时空跃迁。
28. CTRL+R或在控制台输入russianroulette 旋转当前所选单位/建筑朝屏幕中央。大部分建筑正面其实是反面。
--建筑党福音。
29. ALT+DELETE或在控制台输入shesawitch 点燃当前所选建筑。血量置25%。
--燃烧吧。
30. CTRL+DELETE或在控制台输入youshallnotpass 杀死当前所选单位/建筑。
--原力锁喉。
31. CTRL+SHIFT+DELETE或在控制台输入thesnap 湮灭当前所选单位/建筑。
--我即是天命。
32. CTRL+ALT+DELETE 调出安全窗口。万一卡死了用这个结束任务。
--Win快捷键。
33. CTRL+SPACE或在控制台输入seethatcomming 为玩家启用/停用任务计时器。
--有点问题。
34. CTRL+TAB或在控制台输入CHANGE 切换玩家颜色。
--唯一常量。
35. CTRL+Z或在控制台输入xelnagascycle 还原世界所有中立物体为第一次运行脚本时的状态。谨慎使用,记得保存。
--无尽的轮回。
36. CTRL+PAGEUP或在控制台输入whatisbestinlife 战役立刻胜利。只能用于战役。
--快速通关。
37. CTRL+PAGEDOWN或在控制台输入letsjustbugoutandcalliteven 战役立刻失败。敌方玩家不存在时会报错。
--快速失败。
38. 控制台输入upgrade("name") 为玩家启用/停用name科技。例子:upgrade("upgrade_siege_chemistry")立刻完成化学的研究,upgrade("upgrade_mil_camel_archers_improved_weapon_abb")立刻完成黑衣大食新兵训练营的研究,更多科技ubp见ubp.txt。
--新兵训练营带来的生命值加成比故事模式生命值加成少。
39. 控制台输入spawn("name",(id)) 在屏幕中央生成id(可选)拥有的name单位/建筑,未输入id时默认为玩家,id为0时中立。例子:spawn("unit_villager_1_eng")生成玩家拥有的英格兰村民一个,spawn("gaia_huntable_deer",0)生成中立的一只鹿,spawn("york_wooden_castle_eng",2)生成2号玩家(一般是敌方)拥有的约克城堡,更多单位sbp/建筑ebp见sbp.txt/ebp.txt,或者复制时留意控制台。
--不小心生成了红色盒子复制粘贴一下就好了。
按键绑定可在cheat.lua脚本末尾修改。
控制台输出可前往"文档\My Games\Age of Empires IV\warnings.log"末尾实时复制。
4个奖励增益定义在cheat.g_cheat_bonus_upgrade_list,可以往里面添加其他想要立刻获取的科技ubp。
9个各国村民定义在cheat.lua中g_cheat_spawn_villager_list,可以往里面添加其他想要立刻生成的单位sbp。
全部单位sbp/建筑ebp/科技upgrade/能力abilities可以在根目录EssenceEditor.exe -> Continue Without A Mod -> Attributes -> Open Attributes -> Attributes查看,或用Janne的Essence.ArchiveViewer解包"D:\Age of Empires IV\cardinal\archives\Attrib.sga"即可查看。
scar控制台输入以下代码查看玩家拥有的科技ubp:
for i=0,BP_GetPropertyBagGroupCount(PBG_Upgrade)-1 do
local name = BP_GetPropertyBagGroupPathName(PBG_Upgrade,i)
if Player_HasUpgrade(Game_GetLocalPlayer(),BP_GetUpgradeBlueprint(name)) then
print(name)
end
end
scar控制台输入以下代码查看玩家拥有的能力abp:
for i=0,BP_GetPropertyBagGroupCount(PBG_Ability)-1 do
local name = BP_GetPropertyBagGroupPathName(PBG_Ability,i)
if Player_HasAbility(Game_GetLocalPlayer(),BP_GetAbilityBlueprint(name)) then
print(name)
end
end
cheat.lua脚本基于v5.0.7274.0开发,理论上兼容所有版本,后面多了文明的版本如果报错截图控制台和错误信息,论坛上各位大佬估计知道咋改,咕咕咕。如果报错的话关闭控制台后ESC暂停再开始就好了。水雷帝国时代4和英雄连3直接用lua控制台脚本都有bug会闪退,cheat.lua代码中大家可以看到我实际上用lua控制台(CTRL+SHIFT+~)侧载了scar控制台(ALT+SHIFT+`),真正功能实现都是在scar控制台中所以也可用scar控制台直接调用Cheat开头的scar方法,有更好方法实现欢迎修改。所有生成方法调用了precache预缓存,这样即使未出现在本局游戏中的物体也不会有模型未加载的红盒子问题,已经和Janne说了。脚本中所调用方法部分来源于水雷3部英雄连官方脚本文档,部分来源于水雷帝国时代4官方脚本文档,部分来源于CheatCommands Mod作者Janne的gitbub:https://github.com/Janne252/coh3-scar-types。
如果你觉得这个脚本有点意思,不妨请作者吃顿饭吧,欢迎打赏!
本帖最后由 M奥M 于 2024-6-28 14:04 编辑
v2.0:
方法尽可能解耦,侧载scar,加入按键绑定,所有生成方法调用precache预缓存模型,加入以下功能:
iamironman 启用/停用奖励增益
theblip 生成各国村民
moredotsmoredots 启用/停用快速采集
modifythephasevariance 启用/停用地标解锁
正在研究:
暂停计时器
恢复世界初始状态
解锁战役时代进程、奇观限制
使用其他文明独有科技,如法兰西使用英国圈地
各位大佬如果知道咋实现,欢迎分享!
本帖最后由 M奥M 于 2024-7-4 23:06 编辑
v2.1:
加入以下功能:
脚本加载后解锁所有限制建造内容。
Cheat_SetOnFire() 点燃建筑
Cheat_ToggleTimerRate() 启用/停用计时器
Cheat_TogglePlayerColour() 切换玩家颜色
Cheat_SaveWorldObjects() 保存所有中立物体
Cheat_LoadWorldObjects() 加载所有中立物体
Cheat_ToggleWonderUnlock() 启用/停用地标/奇观解锁
正在研究:
v10.1.48
暂停计时器bug
使用其他文明独有科技,如法兰西使用英国圈地
各位大佬如果知道咋实现,欢迎分享!
v2.2:
若兼容,屏幕中心位置将更准确
快速建造等modifier现在可以正确取消
Cheat_Spawn() 现在可以正确生成单位附属物品
Cheat_AddResources() 现在将同时添加橄榄油和圣女贞德经验值
Cheat_TogglePopCap() 现在可以切换人口上限
Cheat_SpawnVillagerXP3() 生成新版8个村民
Cheat_AgeDown() 现在会修改建筑时代外观
Cheat_ToggleLockCurrentTierVisuals() 新增锁定/解锁单位/建筑外观
Cheat_ToggleBuildingProductionAvailability() 取代Cheat_ToggleWonderUnlock(),现在将解锁所有建筑。
正在研究:
暂停计时器bug
控制非玩家单位
使用其他文明独有科技,如法兰西使用英国圈地
各位大佬如果知道咋实现,欢迎分享! 本帖最后由 M奥M 于 2024-8-17 11:58 编辑
v2.3:
感谢pjy612大佬的建议,第二局游戏开始时可快速加载脚本,未加载脚本时按键触发功能不再崩溃
脚本加载后不再立即解锁所有限制建造内容,使用Cheat_UnlockAvailability()以解锁哨站,船坞,战役等建造限制
Cheat_AddBonusAbility() 新增为所选建筑添加城堡网络能力
Cheat_AddResources() 现在将同时添加维齐尔点数
Cheat_TogglePopCap() 现在将正确显示人口上限
Cheat_ToggleFastConstructionAndRepair() 现在将同时适用于其他人类单位
Cheat_ToggleFastCD() 现在将正确快速冷却圣女贞德技能
Cheat_Cut() 新增剪贴板剪切
Cheat_ToggleSuperSpeed() 新增启用/停用单位超级速度
Cheat_Win() 新增战役立刻胜利
Cheat_Lose() 新增战役立刻失败
Cheat_Deactivate() 新增一键禁用全部功能
ubp.txt 更新了一些可能有用的科技ubp名单
正在研究:
英雄连3
暂停计时器bug
控制非玩家单位
使用其他文明独有科技,如法兰西使用英国圈地
各位大佬如果知道咋实现,欢迎分享!
感谢分享
666666666666
111111111111
苏丹第二关太不友好,我要CCM 11111111111111111
赞,,,,,,,,,
感谢分享
66666666666
6666666666666666666666666666666666 感谢不知道哪位大佬打赏的5块!
v10.1.48下好啦,开整!
支持,楼主..... v10.1.48今天突然进不去游戏了,显示战役已锁定是什么情况? M奥M 发表于 2024-7-8 09:45
v10.1.48今天突然进不去游戏了,显示战役已锁定是什么情况?
楼主,科技ubp名单从哪里可以找到更加全面的啊?
本帖最后由 M奥M 于 2024-7-17 15:34 编辑
安静。就好 发表于 2024-7-17 07:00
楼主,科技ubp名单从哪里可以找到更加全面的啊?
v1.10.48.0版本的话根目录有个EssenceEditor.exe -> Continue Without A Mod -> Attributes -> Open Attributes -> Attributes,upgrade(ubp)为升级项id目录,sbp为小队id目录,ebp为实体id目录,abilities为能力id目录。
老版本全部单位sbp/建筑ebp/科技ubp可以用Janne的Essence.ArchiveViewer解包"D:\Age of Empires IV\cardinal\archives\Attrib.sga"即可查看。
M奥M 发表于 2024-7-17 15:32
v1.10.48.0版本的话根目录有个EssenceEditor.exe -> Continue Without A Mod -> Attributes -> Open Attri ...
谢谢,找到了:D
大佬辛苦了哈,感谢 支持楼主........ 本帖最后由 M奥M 于 2024-8-2 10:29 编辑
战役胜利:
World_EndSP(true,0)
战役失败:
World_EndSP(false,0)
维齐尔点数上限改为9:
Player_SetStateModelInt(Game_GetLocalPlayer(), "vizier_limit_ott", 9)
维齐尔点数强制改为9:
Player_SetResource(Game_GetLocalPlayer(),RT_Command,9)
按顺序9个维齐尔科技ubp:
upgrade_imperial_monk_formation_ott
upgrade_imperial_mehter_drums_ott
upgrade_anatolian_hills_ott
upgrade_imperial_military_campus_ott
upgrade_imperial_manned_siege_ott
upgrade_imperial_trader_capacity_ott
upgrade_imperial_military_training_ott
upgrade_imperial_janissary_company_ott
upgrade_imperial_blacksmith_stockpile_ott 感谢分享 感谢分享,但v5.0.7274.0版本玩一局后第二张图会闪退。 666666666666 GTA110 发表于 2024-8-4 11:27
感谢分享,但v5.0.7274.0版本玩一局后第二张图会闪退。
那你试试≤v2.1的版本呢?现在v2.2我在新的10.1.48上测试的。 感觉楼主可以弄个 重载的加载的快捷键
function reloadCheat() dofile("cheat/cheat.lua") end
bind("CONTROL+F1","reloadCheat")
这样 只要打开游戏 手动弄一次 dofile 。
之后 每局游戏 开始 只用 Ctrl+F1 一下能好了。
另外 是不是 能做个什么保险操作
Scar_DoString 的时候 先
if 函数 then 函数() end
会不会好点 不然 一旦忘了 直接弹窗 然后游戏挂了。。。
怎么调试兵种的移动速度呀。 本帖最后由 M奥M 于 2024-8-9 23:31 编辑
pjy612 发表于 2024-8-6 21:03
感觉楼主可以弄个 重载的加载的快捷键
function reloadCheat() dofile("cheat/cheat.lua") end
bind("CONTR ...
有道理,感谢大佬建议。
我这似乎只会弹个报错,游戏不会挂。
这两天事有点多,有空了一定更,咕咕咕。
Edit:
无语了,报错V11.0.782会闪退,V10.1.48不会闪退。
恩麒 发表于 2024-8-7 20:22
怎么调试兵种的移动速度呀。
所选单位100倍速:
Misc_GetSelectedSquads(g_cheat_sgroup, true)
Modify_UnitSpeed(g_cheat_sgroup,100)
Edit:
好像有点问题,有上限,我再研究研究。