查看: 2042|回复: 8

[有事请教] 增加出战人数和改变角色站位问题(已解决)

[复制链接]
梦石
0
星屑
1073
在线时间
204 小时
注册时间
2023-7-14
回帖
69
发表于 2023-8-11 04:01:28 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 catxiaolang 于 2023-8-11 17:40 编辑

本人是召唤流爱好者,玩暗黑2和4都一定要选死灵法师招一堆骷髅去刷的那种。
所以执念的希望能够在自己的游戏中加入召唤流派。然而尝试了一些方法,得到的效果都不是很好。

设计是这样:
队伍角色上限为4人;
此外有4个额外的召唤物位置,排在4名角色前面;

理想的画面是这样的(图的P的)

1

1


2

2

和这样的

然而当我用Visu系插件Party System插件把最大出战人数修改到8后,得到的画面却是
这样的

4

4


3

3

甚至当队伍只有1人时画面是这样的

研究以后发现Party System插件只给了个修改每个角色的偏移量选项,不能从第几位开始另起一行。

随后又试图用MZ官方自带的Svactor插件修改坐标,得到的却是当角色普攻时游戏崩溃并出现一长串报错。
rmmz_managers.js:2036 TypeError: Cannot read property 'bitmap' of undefined
    at Sprite_Weapon.setPosition (SVActorPositionMZpro.js:458)
    at Sprite_Weapon.setup (SVActorPositionMZpro.js:453)
    at Sprite_Actor.<computed> [as forceWeaponAnimation] (VisuMZ_1_BattleCore.js:19985)
    at Game_Actor.Game_Battler.<computed>.startWeaponAnimation (VisuMZ_1_BattleCore.js:19985)
    at Game_Actor.<computed> [as performWeaponAnimation] (VisuMZ_1_BattleCore.js:19985)
    at Game_Actor.Game_Battler.requestMotion (VisuMZ_1_BattleCore.js:19985)
    at Game_Actor.performAttack (rmmz_objects.js:4656)
    at Game_Actor.Game_Battler.<computed>.<computed> [as performActionMotions] (VisuMZ_1_BattleCore.js:19985)
    at Game_Actor.<computed> [as performAction] (VisuMZ_1_BattleCore.js:19985)
    at Window_BattleLog.performAction (rmmz_windows.js:5517)
咱也不懂,问了ChatGPT它也说解决不了,叫我联系开发者。

又在以往的帖子里翻到了一个宠物召唤插件Pet Summon
https://rpg.blue/thread-493172-1-1.html
它的效果非常理想,可以选择把召唤物直接召唤到召唤者前面,也不用修改出战人数了,
但是我在自己的工程文件里却不知为何无法生效,
哪怕关了插件起个新工程文件也不行,很诡异,参考了原作者给的示例文件也没找到自己哪一步遗漏了。
在出处看到原作者似乎一直在努力试图解决与VS系列插件的兼容问题但不是很成功。

因为一些其它的设计需要,已经基本上绑定了Visu系列插件的框架。希望能够在兼容的前提下解决。
不知道有无大佬能指点迷津。
梦石
0
星屑
2910
在线时间
333 小时
注册时间
2020-7-23
回帖
120
发表于 2023-8-11 08:09:15 | 显示全部楼层
花钱定制吧
回复

使用道具 举报

梦石
0
星屑
8580
在线时间
1499 小时
注册时间
2018-9-29
回帖
543
发表于 2023-8-11 08:51:33 | 显示全部楼层
我看你應該是用了VisuStella的戰鬥插件
很遺憾地跟你說
VisuStella的插件跟大多數的免費插件都不相容
所以你如果想要召喚系統只有發信建議VisuStella做一套

然後你再花錢買XD
回复

使用道具 举报

梦石
0
星屑
5204
在线时间
457 小时
注册时间
2011-3-26
回帖
100
发表于 2023-8-11 10:39:02 | 显示全部楼层
本帖最后由 rfvtgbzxc 于 2023-8-11 10:41 编辑

是不是使用了vs_battlecore?
站位算法在其插件参数中修改:
QQ图片20230811103651.png

附一个每3人一行的站位算法:
[pre lang="javascript"]
// Declare Constants
const sprite = this;
const actor = this._actor;
const index = arguments[0];

const columnIndex = parseInt(index / 3);
const rowIndex = parseInt(index % 3);
// Make Calculations
const diffX = 16, columnDX = 64;
let x = Math.round((Graphics.width / 2) + 250)
x -= Math.floor((Graphics.width - Graphics.boxWidth) / 2);
x += columnIndex * columnDX + rowIndex * diffX;

const columnDiffY = 20, rowDY = 64, columnMaxMembers = 3;
let y = (Graphics.height - 120) - (columnMaxMembers * rowDY);
y -= Math.floor((Graphics.height - Graphics.boxHeight) / 2);
y += rowIndex * rowDY + (columnIndex % 2) * columnDiffY;

// Home Position Offsets
const offsetNote = /<SIDEVIEW HOME OFFSET:[ ]([\+\-]\d+),[ ]([\+\-]\d+)>/i;
const xOffsets = actor.traitObjects().map((obj) => (obj && obj.note.match(offsetNote) ? Number(RegExp.$1) : 0));
const yOffsets = actor.traitObjects().map((obj) => (obj && obj.note.match(offsetNote) ? Number(RegExp.$2) : 0));
x = xOffsets.reduce((r, offset) => r + offset, x);
y = yOffsets.reduce((r, offset) => r + offset, y);

// Set Home Position
this.setHome(x, y);
[/pre]

不过不清楚多了partysystem插件以后还能生效不
回复 1 0

使用道具 举报

梦石
0
星屑
1299
在线时间
159 小时
注册时间
2022-5-19
回帖
3
发表于 2023-8-11 15:23:17 | 显示全部楼层
这个我看了b站上有人出过visu改变站位的教程,你可以搜一下,具体是那个我忘了,这套插件不好用,会卡死的。
回复 1 0

使用道具 举报

梦石
0
星屑
1073
在线时间
204 小时
注册时间
2023-7-14
回帖
69
 楼主| 发表于 2023-8-11 17:13:03 | 显示全部楼层
rfvtgbzxc 发表于 2023-8-11 10:39
是不是使用了vs_battlecore?
站位算法在其插件参数中修改:

可行!谢谢你!

原来参数里就有只是不懂代码的我不理解它
正在让GPT教我怎么按需调整。
回复

使用道具 举报

梦石
0
星屑
114
在线时间
72 小时
注册时间
2010-6-26
回帖
16
发表于 2023-8-27 23:11:07 | 显示全部楼层
ChangeMaxUnitBattleParty.js这个可解决

点评

已经找到Visu中的解决方法啦,不过还是谢谢!  发表于 2023-8-28 12:39
回复

使用道具 举报

梦石
0
星屑
1225
在线时间
564 小时
注册时间
2014-11-30
回帖
126
发表于 2023-9-19 18:59:48 | 显示全部楼层
rfvtgbzxc 发表于 2023-8-11 10:39
是不是使用了vs_battlecore?
站位算法在其插件参数中修改:

每个角色单独设置坐标数字,不用计算公式,该怎么写呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部