本游戏java调用lua配置文件,可以修改lua里的参数作弊以及更好的了解游戏。
注意:文件修改后另存为,编码改成ANSI再替换就可以达成修改结果,直接保存是不行的。
人物属性修改
配置文件在 ..ProjectZomboidmedialuashareddefines.lua 中:
LootModifier = 0.6, --物品暴击率
RunningEnduranceReduce = 0.00020, --奔跑减少的体力速率,改小可多跑
ImobileEnduranceIncrease = 0.06 * 0.06, --移动增加的体力速率,改大回复快
--总之Increase是增加的意思,Reduce是减少的意思,以下类同
ThirstIncrease = 0.0000040 * 2, --口渴增加速率,改小少吃
ThirstSleepingIncrease = 0.0000010, --睡觉时口渴增加速率
ThirstLevelToAutoDrink = 0.1, --自动喝水的界限
ThirstLevelReductionOnAutoDrink = 0.1, --自动喝水的界限
--以下是饥饿速率
HungerIncrease = 0.0000032 * 2,
HungerIncreaseWhenWellFed = 0,
HungerIncreaseWhileAsleep = 0.0000004,
--以下是疲劳速率
FatigueIncrease = 0.000045,
--以下是压力速率
StressDecrease = 0.00003,
--以下是无聊速率
BoredomIncrease = 0.0002,
BoredomDecrease = 0.0385,
UnhappinessIncrease = 0.0005,
--以下是压力增加
StressFromSoundsMultiplier = 0.00002, --从声音处增加?比例?
StressFromBiteOrScratch = 0.00005, --从咬或抓伤处增加
--以下是?痛苦?速率
AngerDecrease = 0.00002, --痛苦减少
BroodingAngerDecreaseMultiplier = 0.3, --流血痛苦增加乘数
SleepFatigueReduction = 0.0001, --睡眠疲劳减少度
DistanceFromContainersToPickup = 1.3, --?距离容器多少可以捡起物品?
--以下是淋湿速率
WetnessIncrease = 0.0015,
WetnessDecrease = 0.01,
CatchAColdIncreaseRate = 0.003, --生病增加的概率
CatchAColdDecreaseRate = 0.175, --生病减少概率
--以下是中毒速率
PoisonLevelDecrease = 0.0010,
PoisonHealthReduction = 0.0465,
FoodSicknessDecrease = 0.0015, --吃坏食物的增加度
物品属性修改
配置文件在 ..ProjectZomboidmediascripts 里:
camping.txt 是帐篷设施
evolvedrecipes.txt是?合成?物品,不要改
farmdistribution.txt是?农田里物品分配?,后面的应该是概率,要改应该可以在0-100范围
farming.txt是有关农业的 食物、种子及合成物品
fixing.txt是修补物品,不需要改
items.txt是物品,主要就是改这个,下一个帖子详细介绍
Lot_Rural_Farmhouse_00_distribution.txt是在各地出现各种物品的概率
newitems.txt是新物品,其中包括钓鱼有关的以及诸多小物品
PS:其中第一个猎刀很好用,弥补了以前没有合适的刀具武器
recipes.txt是食谱
suburbsdistribution.txt是?郊区?物品分配概率
uniquerecipes.txt是?独特?合成物品:我这就两个:
4个西红柿=西红柿汤,高兴+15,无聊+15(??是正数)
橘子+蓝莓?(BerryBlue)=未加工的蛋糕(CakeRaw)
物品修改
以 ..ProjectZomboidmediascriptsitems.txt 为例:
依次为
/******************武器****Weapon************************/
消防斧为例:
item Axe
{
MaxRange=1.5, //挥动范围?
WeaponSprite=Fireaxe, //名称:消防斧
MinAngle=0.2, //最小角度??不明白有什么用处
Type=Weapon, // 类型
MinimumSwingTime=3.0, //最小摆动时间,就是速录,技能效果应该就是加的这个
KnockBackOnNoDeath=TRUE, //从后面打(僵尸)是否会死??
SwingAmountBeforeImpact=0.002, //冲击之前的摆动总计?,准备时间?
Categories=Axe, //分类:斧头
ConditionLowerChanceOneIn=30, //可耗损的量??,越大用的越久
Weight=3, //自身重量
SplatNumber=1, //??
PushBackMod=0.3, //击退
MaxDamage=2.5, //最大伤害
SubCategory=Swinging, //伤害类型,决定给哪个技能加分,另Stab是刺,Firearm是枪
ConditionMax=15, //最大状态??不知道是什么意思
MaxHitCount=2, //最多可一次伤害的僵尸数目
DoorDamage=35, //对门的伤害
(PS:门大约为150,破坏后会变成2木板+门锁+2门胶,自己做的门不能填补原房屋)
IdleAnim=Idle_Weapon2, //空闲时的??类型
SwingAnim=Bat, //摆动类型
CriticalChance=20, //临界机会??猜测为暴击率
WeaponWeight=3, //装备为武器的重量
DisplayName=Axe, //显示名称
MinRange=0.61, //最小??,武器基本都一样
SwingTime=3.0, //摆动时间,上面还有一个最小摆动时间
HitAngleMod=-30, //打击幅度??,
MinDamage=1, //最小伤害
SplatSize=5, //??溅血多少
KnockdownMod=2, //推倒效果??
SplatBloodOnNoDeath=TRUE, //是否溅血
Icon=Axe, //图标
RunAnim=Run_Weapon2, //奔跑时??类型
TwoHandWeapon = TRUE, //是否可以双手使用
}
/********************常规****Normal************************/
item Needle
{
Weight=0.1, //重量
Type=Normal, //类型
DisplayName= Needle, // 名称
Icon=Needle, //图标
}
/*****************文化*******Literature************************/
item BookFishing3
{
NumberOfPages=300, //页数
Weight=0.8, //重量,(这个真的很重)
Type=Literature, //类型
DisplayName=Advanced Fishing, //名称
Icon=Book, //图标
SkillTrained = Fishing, //加技能选择
(PS:捕鱼Fishing,木器Carpentry,厨艺Cooking,农业Farming,没有“陷阱”)
LvlSkillTrained = 2 //所用等级:用于第3个级别
}
/******************食物******Food************************/
item Salt
{
HungerChange=-10, //饥饿
Weight=0.2, //重量
Type=Food, //类型
DisplayName=Salt, //名称
Icon=Salt, //图标
Spice = true, //是否作料
ThirstChange=20, //渴
BoredomChange=15, //无聊
UnhappyChange=20, //不高兴
EvolvedRecipe = Soup:1;Stew:1;Pie:1;Stir fry:1;Burger:1;Salad:1;RoastedVegetables:1,
//合成配方(需要配合其它文件改)
}
还有其它参数:
DaysTotallyRotten= 4, //完全腐败天数
DaysFresh= 2, //保鲜天数
IsCookable=TRUE, //是否能被加热
MinutesToCook=5, //加热时间
MinutesToBurn=8, //加热至烧糊的时间
/***************生活物资?*********Drainable************************/
比较杂~~~蜡烛、水壶、电池等
/******************衣物******Clothing************************/
item Vest
{
Palettes=Vest_White,
BodyLocation=Top, //身体部位
PalettesStart=Vest_,
Type=Clothing,
Temperature=4, //温度
SpriteName=Vest,
DisplayName=Vest,
Icon=Vest,
}
还有肥料
UseDelta=0.35, //使用乘数
技能书修改
技能书主要有3个属性可以改:重量、页数(影响读的时间)和加成效果(点数表示乘的倍数,基础在游戏里干一个活都是3):
1.配置文件在 ..ProjectZomboidmediascriptsitems.txt 文件里
查找 /************************Literature************************/
(第一项是 item Book)
下面的就是各种技能书了,一共有5x4个
每个等级对应一本,共5级,依次为钓鱼(BookFishing)、木工(BookCarpentry)、厨艺(BookCooking)和农业(BookFarming),没有 陷阱。
项目例子如下:
item BookFarming1
{
NumberOfPages= 240, //页数
Weight=0.8, //重量
Type=Literature, //类型
DisplayName=Farming for Beginners, //名称
Icon=Book, //图标
SkillTrained = Farming, //对应技能
LvlSkillTrained = 0 //对应已有的技能等级
}
2.在 ProjectZomboidmedialuaserverXpSystemXPSystem_SkillBook.lua里显示了4种技能5个等级的每种书技能加成效果,示例如下:
SkillBook["Cooking"] = {};
SkillBook["Cooking"].perk = Perks.Cooking;
SkillBook["Cooking"].maxMultiplier1 = 3;
SkillBook["Cooking"].maxMultiplier2 = 5;
SkillBook["Cooking"].maxMultiplier3 = 8;
SkillBook["Cooking"].maxMultiplier4 = 12;
SkillBook["Cooking"].maxMultiplier5 = 16;
后面的点数是倍率的效果。
初始角色技能选择修改
可以选择角色的特殊技能了:
在 ProjectZomboidmedialuasharedNPCsMainCreationMethods.lua 里
搜索 BaseGameCharacterDetails.DoTraits = function()如下属性依次为(built28,各版本可能不太一样):
Axeman 消防员自带技能:斧头专精
Handy 建筑工人自带技能:巧手
ThickSkinned 建筑工人自带技能:厚外皮
Patient耐心
ShortTemper 坏脾气
Brooding 忧郁
Brave 勇敢
Cowardly懦弱
Clumsy笨拙
Graceful优雅
Hypercondriac疑病症患者
ShortSighted近视
HardOfHearing听力不好
KeenHearing伶俐的耳朵
EagleEyed 鹰眼
HeartyAppitite食欲旺盛
LightEater轻食族
Athletic运动健将
Overweight过度体质
Strong强壮
Stout壮硕
Weak 虚弱
Feeble柔弱
Resilient坚毅生命力
ProneToIllness易发疾病
LightDrinker易醉
HeavyDrinker好饮酒徒
Agoraphobic广场(室外)恐惧症
Claustophobic幽闭症患者
Lucky 幸运
Unlucky 不幸
Marksman警官自带技能:神枪手
NightOwl警卫自带技能:猫头鹰
GiftOfTheGab?未出现,下一版的自带新技能?,意译应为“外交家”(the ability to speak easily and topersuade other people with your words)
Outdoorsman公园巡护员自带技能:野外生存者
中间有一个数字表示技能点数,最后一个参数 false/true 表示是否可以增删,把true的改为false就可以在人物技能栏选择里出现了
(PS:选择不同人物时,其特殊技能仍会出现在已选栏中,是程序另外在选择人物时添加的,暂时不清楚程序在哪,所以可以重复选择技能,效果不会叠加)
示例为:
TraitFactory.addTrait("Axeman", getText("UI_trait_axeman"), 0,getText("UI_trait_axemandesc"), true);
...
TraitFactory.addTrait("Lucky", getText("UI_trait_lucky"), 2,getText("UI_trait_luckydesc"), false);