Project1

标题: 网游小地图(全景+自动寻路)(·全方位更新·) [打印本页]

作者: ★_茄孓    时间: 2011-8-13 17:25
标题: 网游小地图(全景+自动寻路)(·全方位更新·)
本帖最后由 ★_茄孓 于 2011-8-20 16:23 编辑

今年要上大学咯···在家闲着无聊,酷爱RM
所以就试试写写这东西!
路途蛮艰辛的啦~不过还是成功了!
希望对RPG游戏制作者有用哦!
说明一些内容:
脚本里面Window_Micromap是小地图核心
小地图基本属性在里面顶端几段脚本设置
还有那个寻路脚本不是很优势哦!!
希望有大大能写出更好的寻路脚本!
所以我就能很邪恶的采用分段寻路了!
希望过的去!!!
有什么问题联系我哦!

如果有用双远景或者三远景的朋友们,为了让地图不失去比例可以在让窗口的【宽】,【高】
是该远景图的【宽】,【高】的倍数即可!所以在该张地图上弄以个【并行事件】内容:
等待 1 帧
【事件脚本】$micromap.set(x,y,width,height)
暂时消除事件

比如你有一张1920*3840的远景图那么除以32可得到地图宽高即60*120(高是宽的2倍,满足即可不失去比例)
所以你的窗口要设置为比如
$micromap.set(0,0,240,480)# x,y自己调,居中的算法那么X,Y将是
x = (640-窗口宽度)/2
y = (480-窗口高度)/2
所以最后居中地图
x = (640-240)/2 = 200
y = (480-480)/2 = 0
$micromap.set(200,0,240,480) # 即可
当然只要满足比例都可以的比如:
$micromap.set(0,0,120,240)
$micromap.set(0,0,180,360)
还有就是关于小地图的显示与否可以用事件脚本
$micromap.key(true/false)
来设置。
这里附上这张地图示范


小地图.zip (2.3 MB, 下载次数: 10813)
按W键开关小地图===========================================================================

2011.8.11更新:
1·修正寻路中卡路的BUG,原因鼠标左击也能移动````所以移动数组混乱
2·增加了寻路路径显示的功能
3·增加了Bitmap#blur效果(模糊效果很不错的呵呵!)--作者 忧雪の伤 在此谢谢!

===========================================================================

2011.8.16更新:
1.很猥琐的让主角在行走时被移动的NPC碰到后,仍然可以到达目的地!
2.场景切换后小地图不更换
3.窗口有所修正比较美观

===========================================================================

2011.8.17更新:
1.增加四方向与八方向寻路选择
2.修正了下路径位置和大小
3.美化窗口

===========================================================================

2011.8.18更新:
1.修正空洞BUG
2.美化小地图人物显示效果
3.修正最后一步PATH没有描绘出!
4.鼠标瞄准NPC坐标修正!

===========================================================================
Name : 茄子
Q Q    : 9244579
截图:







话不多说再来一个范例工程

P1.jpg (95.33 KB, 下载次数: 41)

P1.jpg

P2.jpg (217.68 KB, 下载次数: 34)

P2.jpg

P3.jpg (140.51 KB, 下载次数: 35)

P3.jpg

1.jpg (130.49 KB, 下载次数: 32)

1.jpg

1.jpg (131.06 KB, 下载次数: 33)

1.jpg

33.jpg (146.56 KB, 下载次数: 32)

33.jpg

p2.jpg (124.69 KB, 下载次数: 35)

p2.jpg

作者: 灵魂の补给    时间: 2011-8-13 17:28
应该绘出主角到试点的路径,就好看咯
作者: ★_茄孓    时间: 2011-8-13 17:29
有想过,应该没问题,只是分段寻路下,有一两个路径有点怪异,所以,待会去想想!!
作者: 忧雪の伤    时间: 2011-8-13 18:15
提个建议:增加 blur,对小地图进行模糊,我觉得美观很多。
作者: denis466    时间: 2011-8-13 19:24
的确,感觉小地图有点那啥,模糊下效果不错
作者: 涂鸦boy    时间: 2011-8-13 20:18
要来是要做这个啊~(大爱)
作者: fux2    时间: 2011-8-13 20:49
且不说我怎么点都不寻路,在看地图的时候还能打开菜单就够猎奇了= =
作者: 精灵使者    时间: 2011-8-13 21:51
本帖最后由 精灵使者 于 2011-8-13 22:04 编辑

大致看起来和我设计的那个小地图脚本差不多——事件层考虑了移动的事件……不会很卡么?by精灵
【不是创意的创意】小地图脚本
作者: 忧雪の伤    时间: 2011-8-14 01:20
  1. class Bitmap
  2.   def blur(strength = 2, opacity = 10)
  3.           (-strength).upto(strength) do |x|
  4.             (-strength).upto(strength) do |y|
  5.                     next if x.zero? and y.zero?
  6.                     src_rect = Rect.new(0, 0, width - x, height - y)
  7.               blt(x, y, self, src_rect, opacity)
  8.             end
  9.     end
  10.   end
  11. end
复制代码
格式有点小问题= =b,不过不影响使用就是了……
作者: gghg1989    时间: 2011-8-14 07:19
提示: 作者被禁止或删除 内容自动屏蔽
作者: ★_茄孓    时间: 2011-8-14 12:00
本帖最后由 ★_茄孓 于 2011-8-14 13:49 编辑
提个建议:增加 blur,对小地图进行模糊,我觉得美观很多。
谢谢你的建议,我去尝试下!!

我就挺纳闷为啥最近的地图脚本用的全是我的SMP地图范例= =。。。
这个帖子收藏到地图区资料库可以么= =。。。

你的地图很好看,哈哈!!
且不说我怎么点都不寻路,在看地图的时候还能打开菜单就够猎奇了= =

这个郁闷了,压缩工程时最后把【单击寻路】的开关关闭了看地图打开菜单这个我不能确定你们地图的类是否有做改变,自己做个判断就可以了?????确实我在范例中应该做个判断!!

大致看起来和我设计的那个小地图脚本差不多——事件层考虑了移动的事件……不会很卡么?by精灵
【不是创意的创意】小地图脚本

你的好像是随跟效果吧呵呵··事件我是单独Sprite描绘,所以没有重绘地图的,并不卡!




★_茄孓于2011-8-14 13:42补充以下内容:
谢谢大家的建议哈!
更新如下:
1·修正寻路中卡路的BUG,原因鼠标左击也能移动````所以移动数组混乱
2·增加了寻路路径显示的功能
3·增加了Bitmap#blur效果(模糊效果很不错的呵呵!)--作者 忧雪の伤 在此谢谢!

作者: 涂鸦boy    时间: 2011-8-14 20:35
本帖最后由 涂鸦boy 于 2011-8-14 20:36 编辑

试玩了下跟新版,感觉已经很强悍了呢,暂时还不知道兼容性如何(比如显名、八方之类的)就是有几点小遗憾:寻路过程中碰到路被移动中的NPC挡住的时候,虽然会绕道,但是会在终点之前就停止(步数限制?)。还有那啥,能否用远景当小地图啊?


涂鸦boy于2011-8-14 20:41补充以下内容:
已经是RM上一大突破啦,又受益了千万小白。。但是,小地图上的NPC不能选中啊?查看也很困难呢,能不能直接点选寻路+显名?
作者: ★_茄孓    时间: 2011-8-14 20:42
1:一般不会冲突 注意下Scene_Map类可以把我里面修改的部分拷贝到你的Scene_Map里面,有鼠标的要注意Mouse模块了这里面就只有Game_Player的Update有做修改, 其他应该没问题的!!
2:对于进行寻路的时候被移动的NPC挡了1下之后就会影响到路径的损失所以这个问题我还在更新中,谢谢!
3:小地图可以用远景的,只要小地图的比例正确那么坐标就会精确
比如你一张640*480的远景那么地图就应该20*15才会精确··
一般双远景三远景的都会让地图刚刚好全部显示远景,而且不重复就可以了···


作者: 灵九哲    时间: 2011-8-15 09:20
听了作者的介绍,感觉不错,收藏了!
作者: 风花雪月    时间: 2011-8-15 15:27
顶一下...这原本是为<勇敢世界2>做的吧...不过一般不是网游的话大概不会用就是了,应该没玩家玩单机游戏也这么懒吧囧,另外我也觉得小地图有必要模糊,等比例缩小很...
作者: 精灵使者    时间: 2011-8-15 16:57
最近我的小地图脚本将更新远景图计算算法(大雾)
作者: 退屈£无聊    时间: 2011-8-16 17:54
触爆了!
话说我觉得那个小框有点小恶心,能否考虑把整个框扩大然后把鼠标所指的XY放到下面描绘?
NPC能否用小黄点标出打开地图时所在位置(浏览地图中NPC位置更变无视= =
作者: 懒虫起床    时间: 2011-8-17 10:17
本帖最后由 懒虫起床 于 2011-8-17 10:26 编辑

楼上的  看下图
事件也一样改就可以了




很有爱,求出一个8方向的版本就好了。

切换地图好像有点问题
作者: 冰舞蝶恋    时间: 2011-8-17 10:47
神触=-=
果断仰望之
作者: ★_茄孓    时间: 2011-8-17 11:23
本帖最后由 ★_茄孓 于 2011-8-17 14:08 编辑

2011.8.16更新:
1.很猥琐的让主角在行走时被移动的NPC碰到后,仍然可以到达目的地!
2.场景切换后小地图不更换
3.窗口有所修正比较美观



作者: 懒虫起床    时间: 2011-8-17 14:13
什么时候出八方向寻路
作者: ★_茄孓    时间: 2011-8-17 14:16
2011.8.17更新:
1.增加四方向与八方向寻路选择
2.修正了下路径位置和大小
3.美化窗口


作者: 星尘泪    时间: 2011-8-17 15:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: fux2    时间: 2011-8-17 17:25
★_茄孓 发表于 2011-8-17 14:16
2011.8.17更新:
1.增加四方向与八方向寻路选择
2.修正了下路径位置和大小

再次报错

作者: ★_茄孓    时间: 2011-8-17 18:41
=。=这个问题有点棘手······修正ing
有完整鼠标八方向脚本的朋友们注意整合问题 鼠标脚本里面 我仅仅在Game_Player的刷新函数做了点修改!
你们可以把他们复制到完整鼠标八方向脚本里面的Game_Player里面去


★_茄孓于2011-8-17 19:18补充以下内容:
已经修正
原因:走空洞,目标地可以移动的,周围却是封闭的!
方法:逆向判断排除这种可能。
作者: 灵九哲    时间: 2011-8-17 19:48
修复之后好多了,呵呵!加油
作者: ★_茄孓    时间: 2011-8-18 11:10
本帖最后由 ★_茄孓 于 2011-8-18 11:12 编辑


2011.8.18更新:
1.修正空洞BUG
2.美化小地图人物显示效果
3.修正最后一步PATH没有描绘出!
4.鼠标瞄准NPC坐标修正!


作者: 懒虫起床    时间: 2011-8-18 11:32
本帖最后由 懒虫起床 于 2011-8-18 11:33 编辑

在茄子大人这么多天的努力下系统终于完善了,使用了一下感觉非常好,大家顶,怎么好的东西沉了可惜了
作者: ★_茄孓    时间: 2011-8-18 16:44
基本上比较完善了,所以更新暂时告一段落。
有什么意见和BUG请大家提出来,我一周做个修改,谢谢!!

作者: 鬼火    时间: 2011-8-19 02:05
希望可以加个禁用小地图的开关,在屋内或走迷宫的时候可以禁用小地图~~~
作者: t57663893    时间: 2011-8-19 22:17
很不错,茄子的脚本写得更厉害了.
作者: ★_茄孓    时间: 2011-8-20 16:15
本帖最后由 ★_茄孓 于 2011-8-20 16:22 编辑
希望可以加个禁用小地图的开关,在屋内或走迷宫的时候可以禁用小地图~~~

您好,新的工程已经附上,主楼已经写好怎么使用脚本来控制地图的显示了,范例里面也有示范!
很不错,茄子的脚本写得更厉害了.
都是你的功劳啦!
作者: 懒虫起床    时间: 2011-8-25 00:21
大爱,顶起
作者: 574656549    时间: 2011-8-27 23:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: 素材发布    时间: 2011-9-25 20:29
太好了 反正是网游的我都支持
作者: zx16589042    时间: 2011-10-5 20:33
本帖最后由 zx16589042 于 2011-10-5 20:34 编辑

LZ你的脚本比我写得那个坐标精准得多....(我用的是浮点数:L)
作者: yangnan82    时间: 2011-12-16 21:22
俺是菜鸟,请教一下,用了这个脚本后,再用八方向行走时,比如说人物往右下走,那么他就右一下,下一下,右下右下,重复的移动到目标,不能斜着走了,:dizzy:看他走眼都花了,请问一下如何解决呢,谢谢。
作者: chd114    时间: 2012-5-19 15:11
为何只下载到AUDIO和DATA
作者: chd120    时间: 2012-6-3 13:50
怎样去掉鼠标和自动寻路?
作者: maju_saka    时间: 2012-6-3 14:08
竟然有这种东西……完全看不懂……
作者: zxc52590    时间: 2012-12-1 19:53
好強!這種東西是什麼啊!表示對樓主敬畏
作者: 905423717    时间: 2012-12-1 20:50
6R有朝一日定会逆天……




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1