虽然我自己本身没有什么语法知识,不过我也不想永远靠人,想以具体事例去学一些基本的知识。
在RMVA里,我是这样修改的
RUBY 代码 - def item_hit(user, item)
- rate = 1#item.success_rate * 0.01 # 取得成功率
- rate *= (user.hit+ item.success_rate * 0.01 - 0.6 -eva)if item.physical? # 物理攻击:计算命中率的乘积
- rate *= (user.hit+ item.success_rate * 0.01 - 0.6 -mev)if item.magical? #魔法攻击:计算命中率的乘积
- return rate # 返回计算后的命中率
- end
复制代码
这个公式的命中是“角色命中+技能命中-60%-回避
如果我没猜错,在MV里应该是这几句了
JAVASCRIPT 代码 - //1622
- Game_Action.prototype.itemHit = function(target){
- if(this.isPhysical()){
- returnthis.item().successRate * 0.01 + this.subject().hit - 0.6 - target.eva;
- }elseif(this.isMagical()){
- returnthis.item().successRate * 0.01 + this.subject().hit - 0.6 - target.mev;
- }else{
- returnthis.item().successRate * 0.01;
- }
- };
- Game_Action.prototype.itemEva = function(target){
- if(this.isPhysical()){
- return target.pha;
- }elseif(this.isMagical()){
- return target.fdr;
- }else{
- return0;
- }
- Game_Action.prototype.itemCri = function(target){
- returnthis.item().damage.critical ? this.subject().cri - target.cev : 0;
- };
- //1825
- Game_Action.prototype.itemEffectRecoverHp = function(target, effect){
- var value = (target.mhp * effect.value1 + effect.value2) * target.rec;
- if(this.isItem()){
- value *= 1;
- }
- value = Math.floor(value);
- if(value !== 0){
- target.gainHp(value);
- this.makeSuccess(target);
- }
- };
- Game_Action.prototype.itemEffectRecoverMp = function(target, effect){
- var value = (target.mmp * effect.value1 + effect.value2) * target.rec;
- if(this.isItem()){
- value *= 1;
- }
- value = Math.floor(value);
- if(value !== 0){
- target.gainMp(value);
- this.makeSuccess(target);
- }
- };
复制代码
在这里,我修改为
物理命中率为“技能成功率% + 角色命中-0.6 - 目标回避” 0.6的含义是60%的技能成功率相当于100的基础命中。
魔法命中率为”技能成功率% + 角色命中-0.6 - 目标魔法回避”
必中的就直接为技能成功率
必杀的几率改为“角色必杀-目标必杀回避”
同时我将物理挡格更改为药物知识,将魔法挡格改为地面伤害,因为这两个不太常用。将药物知识相关的系数改为*1,地面伤害的暂时没改。
另外,我好像没有发现必杀伤害倍率的位置?
=============================
论坛的代码的话,JS代码写的名字叫什么?还是随便写一个就好?
本帖来自P1论坛作者lirn,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址: https://rpg.blue/forum.php?mod=viewthread&tid=385444 若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。 |