设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3952|回复: 17
打印 上一主题 下一主题

[已经解决] 如何让NPC绕过障碍物以最短距离到达某坐标

[复制链接]

Lv4.逐梦者

梦石
8
星屑
3943
在线时间
396 小时
注册时间
2017-10-11
帖子
154
跳转到指定楼层
1
发表于 2018-4-2 03:40:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
要让NPC到达某坐标,如果没有障碍物的情况下很容易,判断XY坐标,X大于目的地则向左走,小于则向右走诸如此类。
但一但遇到不通行的障碍物时,就复杂了很多。尤其是将NPC放进迷宫里,该怎样才能让它以最短距离走出迷宫呢?

Lv2.观梦者

梦石
0
星屑
910
在线时间
94 小时
注册时间
2005-10-22
帖子
397
2
发表于 2018-4-2 07:22:00 | 只看该作者
我记得有个Java的栗子是专门做了这个,然后,将其翻译过来就OK啦。
做脚本先从修改脚本做起,我只修改自己觉得能用到的东西。
以后的任何作品都将不会进行分享。
Bilibili:https://space.bilibili.com/288814521
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33489
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

3
发表于 2018-4-2 08:01:24 | 只看该作者
MV 默认的自寻路功能还行,只是RGSS用自寻路的地方不多,没人愿意过来。

点评

O.O! 我把MV的自寻路移植到 XP 了!没想象中的麻烦,效果还不错,~汗~  发表于 2018-4-2 10:52
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23999
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

4
发表于 2018-4-2 08:56:21 手机端发表。 | 只看该作者
用a*寻路呗
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
39021
在线时间
5719 小时
注册时间
2006-11-10
帖子
6619
5
发表于 2018-4-2 09:34:13 | 只看该作者
真正的Ai自动寻路咱是不会写啦, 不过咱有个取巧的方法可以用于复杂途径NPC寻路

因为地图是自己画的嘛, 所以,在复杂岔路口埋个隐形事件做标志, 事件接触触发, 给某个变量赋值, 然后NPC的行动方式上就设置, XX==0的时候直线走 == 2的时候往下, == 8 的时候往上........要是无目的的话,大可加上条件分歧判断, 面向XX的时候... 角色坐标大于XX的时候....

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4598
在线时间
1206 小时
注册时间
2016-4-7
帖子
982

开拓者

6
发表于 2018-4-2 19:54:35 | 只看该作者
附庸的附庸不是我的附庸,女儿的女儿还是我的女儿。CK2沉迷ing
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

7
发表于 2018-4-6 15:46:08 | 只看该作者

点评

↓ 1. 希望给出卡住的例子;2.这个脚本确实会受事件影响  发表于 2018-4-7 20:18
2.这个寻路脚本似乎无法绕过事件NPC,路上遇到事件NPC或者主角挡路的时候,就会卡住不动  发表于 2018-4-7 18:30
感谢回答,发现两个问题1.把寻路脚本写在角色移动路线里的脚本时,会出现遇到障碍物卡住的情况  发表于 2018-4-7 18:29

评分

参与人数 1+1 收起 理由
CCD0645 + 1 塞糖

查看全部评分

(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
8
星屑
3943
在线时间
396 小时
注册时间
2017-10-11
帖子
154
8
 楼主| 发表于 2018-4-7 21:31:31 | 只看该作者
myownroc 发表于 2018-4-6 15:46
诸如此类:https://rpg.blue/forum.php?mod=viewthread&tid=369348 ?



就是这样,把移动到某位置的脚本写在移动路线里面,就会出现遇到障碍物角色不动的情况 FindPath000.zip (207.48 KB, 下载次数: 52)

点评

还有就是,能不能把事件NPC作为障碍考虑进去,因为地图总会有NPC,被挡到的几率也不低  发表于 2018-4-7 21:33
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
8
星屑
3943
在线时间
396 小时
注册时间
2017-10-11
帖子
154
9
 楼主| 发表于 2018-4-9 20:36:53 | 只看该作者
CCD0645 发表于 2018-4-7 21:31
就是这样,把移动到某位置的脚本写在移动路线里面,就会出现遇到障碍物角色不动的情况 ...

@myownroc

点评

emmmmmm发现脚本用了个错误的算法,该脚本需要重构,请耐心等待_(:з」∠)_  发表于 2018-4-14 19:34
这个脚本有点久远,给我点时间看看_(:з」∠)_  发表于 2018-4-14 19:27
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

10
发表于 2018-4-14 19:54:46 | 只看该作者
本帖最后由 myownroc 于 2018-4-14 20:13 编辑


以上内容可以无视
emmmmm  正在解决遇到障碍停止的问题

点评

非常感激你的回答。 用了这个寻路脚本https://rpg.blue/thread-406436-1-1.html 算是解决了。  发表于 2018-4-15 02:18

评分

参与人数 1+1 收起 理由
CCD0645 + 1 塞糖

查看全部评分

(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-27 16:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表