搜索
查看: 2196|回复: 10

[沟通中] 关于支持lua语言的建议

[复制链接]
发表于 2020-9-22 21:00:14 | 显示全部楼层 |阅读模式
BUG反馈
引擎版本号: 200814
登陆器版本号: 200811
BUG描述: 关于引擎全方位开放lua接口建议
BUG重现方式:
修复后应达到的效果:
联系QQ: 隐藏内容

体验:
因为我没有玩过传奇,也没玩引擎,不了解游戏真的是头疼...
朋友推荐的HGEM2引擎做防SD比较全面,确实在这方面做得还是很强的。
也是少数支持Lua脚本做得比较好的。
但是目前提供的lua接口局限性很大,而且和老脚本高度耦合,感觉就是为老脚本服务的。
也可能你们在努力开发中。
建议:
现在能否先把服务端的lua接口扩展完,再做前端重构,或者提供一个M2命令的通用调用接口例如runM2Cmd,因为前端界面还可以用老脚本的写法通过hint去生成界面,然后通过RunLuaScript去调用.
这样就可以用lua去封装功能模块了,因为lua实在是太方便了。
比如装备回收,如果用传统方法去写,10几个装备就要写大量的代码,而且阅读性极差,容易产生错误。如果用lua 30左右代码就行了,而且阅读性很好,不容易出现错误,开发效率也高。
如果再提供sqlite类库,就可以自己去扩展新的功能和玩法了,更自由。

再例如技能强化功能,目前我可以通过runGmCmd去完成技能强化,但是只能是赋值操作不能累加操作,文档中有一个getSkillLevel好像只能获取到普通技能等级,不能获取技能多少重。
现在我要实现这个等级检查就要去QF封装一个usercmd命令供lua使用,或者我通过自定义变量来记录当前人物等级是多少,这样反而越来越麻烦,现在不是解决问题去用lua,而是使用lua去用lua...

小小建议,祝HGEM2越来越好!




 楼主| 发表于 2020-9-22 21:01:16 | 显示全部楼层

本帖子中包含更多资源

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

x
发表于 2020-9-22 21:22:15 | 显示全部楼层
本帖最后由 1580 于 2020-9-22 21:24 编辑

重构周期太长,还是不做考虑。个人时间有限,


目前只能是需要什么功能,再逐步支持上去了

你现在的需求是增加LUA操作技能强化等级??
 楼主| 发表于 2020-9-22 21:31:22 | 显示全部楼层
1580 发表于 2020-9-22 21:22
重构周期太长,还是不做考虑。个人时间有限,

是的,传统代码调整起来太繁琐了,hum+hero  12 *3   大概36个函数不过也可以在变量上做做文章,但是咱们不是有lua嘛
发表于 2020-9-22 21:34:30 | 显示全部楼层
只是想操作强化等级,这个直接增加两个方法即可。
 楼主| 发表于 2020-9-22 21:35:04 | 显示全部楼层
1580 发表于 2020-9-22 21:22
重构周期太长,还是不做考虑。个人时间有限,

服务端lua完全扩展完成有个好处,就是用户需要什么功能就可以自己通过lua自己去扩展了
 楼主| 发表于 2020-9-22 21:40:01 | 显示全部楼层
1580 发表于 2020-9-22 21:34
只是想操作强化等级,这个直接增加两个方法即可。

lua自定义一个get set 记录和读取当前技能等级吗?
发表于 2020-9-22 21:49:27 | 显示全部楼层
天策工作室 发表于 2020-9-22 21:40
lua自定义一个get set 记录和读取当前技能等级吗?

差不多,增加方法操作技能强化等级。LUA扩展一般是,有什么需求,再增加,

谈不上什么全扩展,至少有需求才能去实现
 楼主| 发表于 2020-9-22 22:10:18 | 显示全部楼层
1580 发表于 2020-9-22 21:49
差不多,增加方法操作技能强化等级。LUA扩展一般是,有什么需求,再增加,

谈不上什么全扩展,至少有需 ...

具体我也不是很了解,因为接触没几个月,我的理解就是,引擎提供基础支持,具体功能通过lua去扩展,例如有一个引擎,他的M2的是用lua来扩展功能的,通过lua也可以创建m2配置界面,通过sqlite类库操作新功能数据,例如套装功能,刀魂系统,等于说这些功能都可以自己去写,m2只是提供游戏基础对象接口,比如:hum对象 hero对象 map npc 等等的基础属性和方法  具体干什么,就可以通过Lua然后配合 扩展db 去实现功能,这样你们就不用在引擎原生语言上变动太多,这样M2就像是提供了一套SDK一样,具体功能,你们也可以去扩展,用户想到了也可以去扩展,而不是需要某个功能然后去更新M2,然后用户再去使用。好处就是你们也可以发布功能,用户也可以发布功能。个人想法
 楼主| 发表于 2020-9-22 22:19:27 | 显示全部楼层
举个简单的例子,就是M2原生语言可以做一些  各种型号的CPU  GPU 主板 等等,但具体我组装成什么配置,交给lua  这样你们也可以组装卖品牌机,我也可以组装卖组装机。个人设想
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|HGEM2论坛

GMT+8, 2025-6-9 14:18 , Processed in 0.450896 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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