单机游戏鬼影镇开启飞行模式、隐藏控制台和内置作弊器的方法
鬼影镇吧
全部回复
仅看楼主
level 2
贴吧里我看了没有开飞行模式的帖子。借鉴了玄风君的视频,但是视频太长了。自己总结写一下加了些东西,免费分享给各位骚包们[酷]
[彩虹]一篇文章将鬼影镇控制台秘籍指令、隐藏控制台秘籍指令和开启游戏内置修改器说完全。
包括实现这些效果:飞行模式,轻功,无敌,随意变恶魔,随身商店,一击必杀,一键加血,和一般控制台指令。使用方法手把手教学。篇幅原因,只有文字没有图片,但是也足够详细,有不懂的地方可以问我。话不多说,开整!
[灯泡]前提
下载鬼影镇贴吧吧主的最新修改版或者按以下方法自己手动解压(以网上的中文版为例)
第一步:
解压游戏目录中的data01.res文件,选择winrar解压缩软件打开,打开会报错,点击winrar软件窗口上方的工具栏里的工具,选择修复压缩文件,等待修复完成。完成后发现同目录下多出了一个rebuilt.data00.res文件,用winrar打开rebuilt.data00.res文件,解压到同目录下。注意不要把原来的中文strings.txt覆盖了,不然就变成英文了。
第二步:
将原来的数据包,即data01.res文件和rebuilt.data00.res文件,删除掉,否则游戏会出错。
[灯泡]开启隐藏控制台秘籍
第一步:
Shade_CHS\SCRIPTS\definitions的globals.h用记事本打开,搜索#ifdef CHEATS。
找到:
string ConsoleCheat
#ifdef CHEATS
int CheatSwordLevel
int CheatTears
int CheatWeapons
int CheatTorch
int CheatMagicShop
string CheatAddItem
#endif
删除前后的
#ifdef CHEATS和#
endif,然后保存。
第二步:
游戏目录\SCRIPTS\player中的interface.h用记事本打开,同样搜索#ifdef CHEATS。
找到以下字段:
#ifdef CHEATS
world wrl = World
if(CheatSwordLevel)
...
...
...
if(CheatMagicShop)
{
CheatMagicShop = 0
world Wr = World
Wr.M_LoadShop(Wr)
}
#endif
删除前后的
#ifdef CHEATS和#
endif,然后保存。
第三步:
进游戏,同时按Ctrl+Alt+F3打开控制台,输入以下内容:
CheatWeapons 1000获得所有武器
CheatTorch 0获得一个未点燃的火把
CheatTorch 1获得一个点燃的火把
CheatMagicShop 1打开商店(走出商店则回到原位置)
CheatTears 1000获得1000点天使之泪
下面附上常用的控制台代码:
iamtrax-----------------所有武器
iamjabba--------------加满能量
iamgod----------------自杀
iamfido----------------加50个天使之泪
iamzozo---------------加弹药
iamartie ---------------魔剑增强
liliput ------------------------------敌人变小
dcheat 1 ---------------无敌的恶魔
dcheat 0 ---------------恶魔变弱
globalmap--------------- 显示关卡编号
输入密码时,可以使用“上”“下”按钮翻动上一句输入的密码,方便使用。
输入的作弊码正确,会自动跳转到下一行(此时已成功启用作弊码),如作弊码错误,则会出现一行以NO开头的英文,按CTRL+ALT+F3可退出输入界面。
[灯泡]开启内置修改器
第一步:
游戏目录\SCRIPTS\player中的player.h用记事本打开,同样搜索#ifdef CHEATS。
第二步:
找到以下字段:
void ProcessCheats()
{
#ifdef CHEATS
if(KeyState(KC_LCONTROL))
...
...
...
// if(KeyState(KC_W))
// {
// ClearKey(KC_W)
// g_escjq()
// }
}
#endif
}
删除前后的
#ifdef CHEATS和#
endif,然后保存。
第三步:
进游戏,按Ctrl+组合键即可快速开启,以下是修改器组合键及对应效果:
Ctrl+I无敌
Ctrl+D恶魔和人随时切换
Ctrl+G一击必杀
Ctrl+H加血
第四步:
想要开启飞行模式,还需要一步,搜索#ifdef DEVELOPER
找到以下字段:
#ifdef DEVELOPER
if(KeyState(KC_L))
{
ClearKey(KC_L)
if(addenemy)
b_addenemy = true
}
...
...
...
g_iFly = false
GravityOn()
SetMoveType(this, WALK)
SetFlags(this, TFL_SOLID|TFL_TOUCHTRIGGERS)
SetFlags(this, TFL_VISIBLE)
ClearFlags(this, TFL_NOMPIVOT)
Show(true)
}
}
#endif
删除前后的
#ifdef CHEATS和#
endif,然后保存。
进入游戏按下组合键:
Ctrl+F飞行模式(再次按取消,人物会坠落要注意,血条会消失,按Esc两次即可恢复)
Ctrl+L生成一个持剑铁甲怪
*注意以上内置修改器的组合键,一定不可以和其他操作键位冲突,冲突的话按下组合键是没有效果的,需要在设置里面修改操作键位。
[灯泡]其他内容
①在player.h中搜索void GravityOn(),找到以下字段:
void GravityOn()
{
weight = 80
SetWeight(this, weight)
}
修改数值80即可改变游戏重力,80为游戏默认值。注意修改后虽然能跳更高,但是坠落伤害是不变的。不建议改太多,稍微改小些即可。
②想要修改掉落伤害,在player.h中搜索 // landing effect
往下找到以下字段:
if(GetImmortality() == false && zheight > LAND_HURT_HEIGHT)
{
FFE_Landing()
FullbodyAnim(a_jump + 3,0.0, AF_ONCE)
Sound(6, SF_ONCE)
Health -= zheight - LAND_HURT_HEIGHT / (LAND_KILL_HEIGHT - LAND_HURT_HEIGHT) * MaxHealth
clamp Health<0, MaxHealth>
UpdateHealth()
if(Health <= 0)
{
Kill(0,0,ZeroVec,ZeroVec)
return true
}
SetAStatus(AS_LANDING)
aphase = 0
// effect
childparticles = new misc_particle_effector
childparticles.SetParms("particle/dustfootlandinglarge.ptc", coords + "0 0 -32", true, 2)
return true
}
其中的Health -= zheight - LAND_HURT_HEIGHT / (LAND_KILL_HEIGHT - LAND_HURT_HEIGHT) * MaxHealth就是计算公式
这段代码有个关键条件zheight > LAND_HURT_HEIGHT,判断跳跃高度是否大于着陆受伤高度。那可以把着陆受伤高度(即LAND_HURT_HEIGHT)改得更大些,这样就不容易受伤,注意他的值要小于LAND_KILL_HEIGHT,否则会出bug。
游戏目录\SCRIPTS\definitions的gameplay.h(这个文件记录着游戏所有的常量数值)用记事本打开,搜索LAND_HURT_HEIGHT这个常量值看看。找到以下字段:
const float LAND_HURT_HEIGHT = 130
const float LAND_KILL_HEIGHT = 260
推荐改成:
const float LAND_HURT_HEIGHT = 300
const float LAND_KILL_HEIGHT = 600
这样已经足够高了,数值太大将会失去很多游戏乐趣。
进游戏测试完成,配合改重力可以实现“轻功大师”的效果。
[玫瑰][玫瑰][玫瑰]
本帖长期存在,希望能帮到同样喜欢这个老游戏的骚包。吧主加个精就更好了[吐舌]
2024年09月08日 05点09分 1
level 2
2024年09月08日 05点09分 2
level 1
怎么使用
2025年01月28日 02点01分 3
level 4
要是可以做一个像风灵月影那样的修改器就好了
2026年01月19日 16点01分 4
level 1
整完这些我打开控制台游戏就崩溃了
2026年02月01日 12点02分 5
level 3
了不起
2026年02月02日 08点02分 6
1