【RPG Maker MZ】实时调整敌人的名称、属性、能力等

文章介绍了如何在游戏运行时通过脚本调用来修改敌人属性,如最大生命值、战斗图片和掉落物等。提供了一个示例函数,用于随机改变敌人的名字、图片和属性,适用于创建RogueLike类型的游戏,简化大量敌人设计的工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先要知道,在游戏运行过程中,调用管理后台,输入$dataEnemies[id]即可看到对应ID的敌人属性。

 

最基本的一些信息。

【actions】使用的技能。
【battlerName】敌人的战斗图片名称
【dropItems]掉落物品
【exp】掉落经验
【gold】掉落金币
【name】敌人名字
【params】敌人的8项基础属性。这是以数组形式保存的,依次为mhp,mmp,atk,def,mat,mdf,agi,luk

知道这些之后,就可以搞事情了。比如通过事件中的脚本调用:

$dataEnemies[74].params[0]=9999;
//id为74的敌人,最大生命变为9999

如果想搞一些更有趣、更随机的功能,可以写一个函数,然后在游戏中运行,比如《缝合尖塔》中用到的:

function changeRandomEnemy(id) {
	var randomEnemyName = ["不完整","猎奇","诡异","偷懒","无名","闯入"];
	var randomEnemyBattleName = ["fhg_01","fhg_02","fhg_03","fhg_04","fhg_05"];
	var enemy_value = $gameActors.actor($gameParty._actors[0]);
	$dataEnemies[id].name = randomEnemyName[Math.floor(Math.random() * randomEnemyName.length)]+"尖塔猎手";
	$dataEnemies[id].battlerName = randomEnemyBattleName[Math.floor(Math.random() * randomEnemyBattleName.length)];
	$dataEnemies[id].params[0] = enemy_value.mhp*4;
	$dataEnemies[id].params[1] = 9999;
	$dataEnemies[id].params[2] = enemy_value.atk*2;
	$dataEnemies[id].params[3] = enemy_value.def*2;
	$dataEnemies[id].params[4] = enemy_value.mat*2;
	$dataEnemies[id].params[5] = enemy_value.mdf*2;
	$dataEnemies[id].params[6] = enemy_value.agi*2;
	$dataEnemies[id].params[7] = enemy_value.luk*2;	
}

这是一个让敌人名字随机、图片随机、属性是队伍中1号位角色的2倍。

触发战斗后,这个ID为171的敌人先来一段变身的动画,然后就变成设定好的“随机敌人”了。这种方法很适合偷懒做RogueLike,或者是需要大批量做野怪。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值