楼主: ayase

[未归类主题(有空慢慢分)] 一个重写的任务属性lua脚本 by 2018.1.29

  [复制链接]

1478

时沙

0

精华

13

主题

声望: 1762   虚弱: 0

Lv.5(无冕者)

炉石积少成多时沙之瓶Doge祖国万岁!!信仰战假死猎人今天也只能打恢复的增强萨潜行者金鼠(ytfirefox制作) 犇向牛年(尚美制作)

发表于 2018-2-5 00:59:37 | 显示全部楼层
积分20啊,慢慢攒了。
回复

使用道具 举报

发表于 2018-2-20 11:32:43 | 显示全部楼层
很好很强大,前来食用
回复

使用道具 举报

381

时沙

8

精华

31

主题

声望: 7607   虚弱: 0

Lv.7(复仇者)

犇向牛年(尚美制作)炉石积少成多Doge银色北伐军小咕信仰战假死猎人今天也只能打恢复的增强萨划水武僧搓水法爷金鼠(ytfirefox制作) 比格沃斯先生时沙之瓶

发表于 2018-2-24 13:00:21 | 显示全部楼层
最近lua脚本没什么新功能出来了。
[发帖际遇]: mojito不小心把昂贵物品放入公会仓库,得到了25 声望. 幸运榜 / 衰神榜
回复

使用道具 举报

3402

时沙

62

精华

158

主题

声望: 48770   虚弱: 0

管理员

🔶收集癖,你懂的🔶

万神殿uiwow(lulus制)信仰战假死猎人今天也只能打恢复的增强萨跑路骑士吟游牧师孝顺骑士潜行者登山猎手划水武僧搓水法爷卖糖术神圣光永恒炉石祖国万岁!!积少成多奥的灰烬时沙之瓶炉石天马比格沃斯先生无敌的缰绳黑色宝石猎豹脚男奔波尔菠萝雷施小咕无冕者希尔瓦娜斯·风行者伊利丹·怒风泰兰德·语风莉莉安·沃斯泰坦之握荣耀属于联盟!为了部落!银色北伐军瓦兰纳尔·远古王者之锤金鸡报晓Doge哼哼(lulus制作)金鼠(ytfirefox制作) 犇向牛年(尚美制作)福虎贺岁(尚美制作)金兔迎春(尚美制作)祥龙贺岁(尚美制作)灵蛇献瑞(尚美制作)烈焰星驰(尚美制作)

 楼主| 发表于 2018-2-24 13:39:15 | 显示全部楼层
mojito 发表于 2018-2-24 13:00
最近lua脚本没什么新功能出来了。

因为没人写呗
或者说写了不共享出来呗

现在能找到的很多lua都是我以前写的
或者别人拿去改的

什么斗气啊那些 本质还是做任务属性 只不过换个壳子

不过lua限制也挺多的  很多人能c++写的东西也不会用lua去搞 {:4_181:}
比如这个任务属性的
源码自己加一个函数能很简单的实现
但是放到lua我就要自己完全想一套方案 去实现"加属性"这个操作

其实是饶了远路了 但是看到有些坛友需要 这个功能
而别人的端也不可能有我服务端里面的SetStates()这个函数
所以才会花时间重写这个即使脱离c++支持也能使用的任务属性lua

当然了 如果有大神愿意的话 这个加属性的"实现方案"是能提取出来用到别的地方的
比如打个怪加随机的属性啊 弄个赌博摸奖抽属性啊 或者直接弄个物品加属性都是没问题的
我估摸也没谁这么闲去搞这玩意了
因工作繁忙,只在晚上处理论坛事务.
回复

使用道具 举报

34

时沙

0

精华

0

主题

声望: 0   虚弱: 1

Lv.1(追随者)

发表于 2018-2-24 15:07:00 | 显示全部楼层
擦 什么是积分 都签了那么多天的到了  怎么才3积分   ……  令人沮丧
回复

使用道具 举报

1251

时沙

4

精华

18

主题

声望: 7496   虚弱: 0

Lv.7(复仇者)

12345

金兔迎春(尚美制作)福虎贺岁(尚美制作)犇向牛年(尚美制作)炉石无冕者伊利丹·怒风积少成多时沙之瓶炉石天马雷施哼哼(lulus制作)uiwow(lulus制)银色北伐军祖国万岁!!信仰战假死猎人今天也只能打恢复的增强萨潜行者金鼠(ytfirefox制作)

发表于 2018-2-26 00:31:09 | 显示全部楼层
收藏了!
[发帖际遇]: Romel不小心把昂贵物品放入公会仓库,得到了16 声望. 幸运榜 / 衰神榜
顶着虚弱升Max
回复

使用道具 举报

34

时沙

0

精华

0

主题

声望: 0   虚弱: 1

Lv.1(追随者)

发表于 2018-2-26 14:33:58 | 显示全部楼层
谢谢ayase大神,其实说实在话,也就是我年前在论坛里和梦白Q群里问过关于setstat这个函数该在lua中如何实现这个问题,没想到……还真是视万物平等有圣母之美誉的人呀(开个玩笑)
如果不介意 还有个问题想要请教一下
请问TrintyCore如果只有编译好的worldserver一套,不能反编译吗?如果不能反编译,那用别人的端就基本只能看是否支持lua然后再用lua开发了吧,听您的意思(这句,不过lua限制也挺多的  很多人能c++写的东西也不会用lua去搞),好像可以还能C++开发吗?
回复

使用道具 举报

3402

时沙

62

精华

158

主题

声望: 48770   虚弱: 0

管理员

🔶收集癖,你懂的🔶

万神殿uiwow(lulus制)信仰战假死猎人今天也只能打恢复的增强萨跑路骑士吟游牧师孝顺骑士潜行者登山猎手划水武僧搓水法爷卖糖术神圣光永恒炉石祖国万岁!!积少成多奥的灰烬时沙之瓶炉石天马比格沃斯先生无敌的缰绳黑色宝石猎豹脚男奔波尔菠萝雷施小咕无冕者希尔瓦娜斯·风行者伊利丹·怒风泰兰德·语风莉莉安·沃斯泰坦之握荣耀属于联盟!为了部落!银色北伐军瓦兰纳尔·远古王者之锤金鸡报晓Doge哼哼(lulus制作)金鼠(ytfirefox制作) 犇向牛年(尚美制作)福虎贺岁(尚美制作)金兔迎春(尚美制作)祥龙贺岁(尚美制作)灵蛇献瑞(尚美制作)烈焰星驰(尚美制作)

 楼主| 发表于 2018-2-26 15:36:30 | 显示全部楼层
luckytent 发表于 2018-2-26 14:33
谢谢ayase大神,其实说实在话,也就是我年前在论坛里和梦白Q群里问过关于setstat这个函数该在lua中如何实现 ...

你使用别人的服务端当然受别人服务端的限制了...
要看看别人的服务端是否支持lua,你才能放置lua脚本加功能,甚至自己写lua的功能
(其实写lua这样和修改数据库 dbc 是一样的 属于二次开发)
而你说的反编译啥的,我自问是没那个本事了

对于有自己的源代码的作者吧,当然能用c++书写功能的话就不会用lua了
因为lua执行实际上是调用c++的方法,中间其实是绕了远路了
比如lua里player:GetLevel() 返回等级这个吧
实际它是通过关键字 GetLevel 来对应进源码里的方法
然后获取数据,再压进lua的堆栈里
  1.     int GetLevel(Eluna* /*E*/, lua_State* L, Unit* unit)
  2.     {
  3.         Eluna::Push(L, unit->getLevel());
  4.         return 1;
  5.     }
复制代码

而直接的c++开发是直接读取内存的数据,不需要这个"绕远路"的过程,单单从效率上说,lua比不上c++的
所以能c++开发的作者,一般不会用lua做功能,也只有像我这些闲着的才会写点小功能放出来给别人玩的罢了

其实最重要的一点就是,除去效率问题.
lua的api只是映射了常用的c++里面的方法,还有更多的东西是从lua里获取不了的
比如你想在lua里获取某个物品的物品图标,这是没有的
你必须绕远路自己导出物品的图标数据,自己记录,并做好物品id和路径一一对应,
才能在lua里知道得到物品的图标路径
而如果C++里,直接读取dbc中的路径,加一个方法返回地址就行了

这就是上面说的lua限制了,获取你想要的数据的途径少的多,能做的也不多


因工作繁忙,只在晚上处理论坛事务.
回复

使用道具 举报

1920

时沙

0

精华

0

主题

声望: 590   虚弱: 0

Lv.5(无冕者)

灵蛇献瑞(尚美制作)祥龙贺岁(尚美制作)金兔迎春(尚美制作)福虎贺岁(尚美制作)炉石金鸡报晓积少成多时沙之瓶银色北伐军祖国万岁!!假死猎人今天也只能打恢复的增强萨潜行者金鼠(ytfirefox制作) 犇向牛年(尚美制作)

发表于 2018-2-26 16:11:09 | 显示全部楼层
很好很强大,
[发帖际遇]: qq302451403北伐诺森德,所向披靡,获得7 声望. 幸运榜 / 衰神榜
回复

使用道具 举报

34

时沙

0

精华

0

主题

声望: 0   虚弱: 1

Lv.1(追随者)

发表于 2018-2-26 17:42:14 | 显示全部楼层
本帖最后由 luckytent 于 2018-2-26 17:43 编辑
ayase 发表于 2018-2-26 15:36
你使用别人的服务端当然受别人服务端的限制了...
要看看别人的服务端是否支持lua,你才能放置lua脚本加功能 ...

谢谢耐心指教,也确实像您说的那样,还是在咱们论坛里找到的一个情川魔兽又深度开发了一些的版本,本来自己也还算是计算机系毕业的,虽然多年没碰过编程之类还是答应了科室同事们架一个几人玩的局域网。
但是毕竟比不上网上流传的商业端那么丰富,于是只能讨论一些玩法然后自己开发,从dbc到数据库再到lua编程,真是觉得麻烦的不行,改个法术重启几次服务器都再正常不过……


幸好有了这个论坛和乐于帮助分享我们的站长和其他几位大神,真是学到不少,不过想到重新冲进C++的海洋就浑身哆嗦,还是将就着来吧,不知道咱们的AZ端有没有线上服务器,有的话倒是可以和同事们安利一下的。
都是贫下中农,也没有什么财力赞助,只能精神点赞,谢谢了。
再劳烦问下,为什么我发帖这时还是提示离线状态……
回复

使用道具 举报

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