好奇,所以来了解一下
|  |      1lizhenda      94 天前 lua 好用,只是不更新了,不过依然是首选的呀。 | 
|  |      2maocat      94 天前 lua 的痛点就是他的数组下标起始位是 1 | 
|      4GeruzoniAnsasu      94 天前 抽象能力很弱,所有逻辑得用字符串拼接和 table 来实现。虽说 table 很万能,但这个数据结构本身就是非常原始的。宿主得提供足够多足够强大的接口,让 lua 只写循环、判断、匹配,那就还算舒服。 | 
|      5crackidz      94 天前 缺点太多了吧,现在很多已经在用 TypeScript 了,甚至用 C#也不错啊 | 
|  |      6guanzhangzhang      94 天前 没有自带类,需要写法才能实现 | 
|      7Dorathea      94 天前 感觉问题是不是偏了?   你的问题有假设 Lua 有痛点, 但实际上或许是使用场景的不同(所有语言都有痛点, 只是场景是否适合) Lua 在游戏服务器中, 我接触到的: * 将 Lua 和 C/C++ 结合, 快速实现业务需求 * 一个单纯的工具语言 * 纯 Lua 的游戏服务器 作为 1, 2 项, Lua 是合格的, 第三个出现的频率相当低, 某种意义上就不该这么用 没有自带类, 抽象能力弱, 等等... 这些我认为本来就不是 Lua 这个脚本语言的目标, 如果有这些需求, 我不会去用 Lua, 其他语言可以实现得更好 或者说实际上语言发展到现在, 太卷了, 那些 Lua 没有的 feature 并不是 Lua 不努力, 不好 | 
|  |      8donaldturinglee      94 天前 via Android 单 lua 拿出来对比 py 和 go 不行吧。实际上 lua 可能还是做一些需要热更新的场景然后集成到 c++/c 里面 | 
|  |      9geekvcn      94 天前 lua 世界最大的开源社区是魔兽世界插件,这就是最大的痛点。然后才是嵌入式和各种游戏引擎脚本,游戏服务器脚本 | 
|  |      10yplam      94 天前 via Android 主要是轻量高性能,以及历史原因吧,新项目感觉可以选 wasm | 
|      11feixiangcode      94 天前 lua 这门语言,写个小脚本问题不大,要是需要几个人十几个相互配合的项目,还是挺难的。 | 
|  |      12LanLiang      94 天前 lua 一般是在游戏服务器中作为动态脚本使用 | 
|  |      13AV1      94 天前 如果一定要选 lua ,我也会选择 TypeScriptToLua🐶 | 
|      14sunny352787      94 天前 你预设的问题不对,不是 lua 被 python 或者 go 替换了,而是 C/C++被 python 和 go 替换了,lua 在服务端只是作为嵌入式脚本写逻辑,本身并不能搭建完整的服务端,至少没见过人纯用 lua 实现服务端的。 | 
|      15nevermoreluo      94 天前 弱弱的问下,哪里或者说业界大厂谁选 py 了。。。。 | 
|  |      17Immortal      94 天前 问的没有上下文其实挺难回答. 之前在游戏公司客户端和服务端用的都是 Lua,也运行得很好. | 
|      18DexLee OP @nevermoreluo 貌似网易 python 多,腾讯 go 多 | 
|  |      19bronyakaka      94 天前 @nevermoreluo 都是引擎的脚本 | 
|      20nevermoreluo      93 天前 @bronyakaka 我知道引擎的脚本,但是 py 的 binding 实现比 lua 的开销高吧,lua 嵌入已经有很大的基础了,感觉 py 没那么大的优势,不过往 ai 靠的话也不好说? 所以我才问有谁家这么搞了,比较好奇。 | 
|  |      21bronyakaka      93 天前 @nevermoreluo #20 网易自研引擎的脚本是 py | 
|      23zxjxzj9      93 天前 lua 一般是作为热更的脚本使用,是跑逻辑的部分,一般来说搭配 lua 的是底下的 C++服务器。但是目前的情况来说,只要你这个游戏没有 pvp 联机内容(甚至有点弱联机也无所谓),那么根本不会有人想用 c++写后端,自找没趣。用 TS python GO 甚至 java 都是可以的。没有 C++自然也不会有 lua 了 | 
|      24BALDOOR      93 天前 应该是 c++写纯业务不够快,或者编译慢,人员水平参差不齐,容易出问题之类的,还有以前前端也用 lua 热更的原因吧 我在业务层没写过 c++😂,我写过纯 Rust 觉得没啥问题,当然我是 16 年就开始用 rust 的“老人” 现在 lua 只有一些老人坚守或者维护老项目用,新项目几乎要么 go 或者 java ,还有可以前后端通用的 ts/c#,也挺不错的 腾讯以前纯 c++,现在 go 多 网易前后端都是 py 例如三七之类的一些是 Java 阿里那个用 c++和 lua 43 用 erlang PHP/NodeJS 就一大堆了,都是小厂,做轻型/小游戏之类的 c#好像没怎么听说过,初创小公司倒是听过一大堆的,都是写 unity 的没有服务器积累经验,网上找一些开源的直接糊上去,c#开发效率和性能都挺优秀的,我问过以前的老人说他们 0 几年的时候用过.Net ,后来都转 java 了,貌似互联网那边用得也不算多,不怎么待见,不知道为毛,期待 c#的再次爆发 我现在用 Typescript+Rust ,学习速度开发效率和性能全拉爆,街上随便拉条狗过来都能写,爽飞了 现在游戏这边技术或者生态都逐渐向互联网靠拢,开发效率和体验都挺不错的,远远甩开以前各家定制的屎山 如果你不是规则的定制者,那么写什么你也左右不了,还不如加入一家好公司,福利好,好项目,来钱快 如果你是规则的定制者,我建议就是纯 c#或者 typescript+Rust 路线,小到初创,大到宇宙厂,所有需求都能 100%满足 | 
|      25DexLee OP | 
|      26BALDOOR      93 天前 @DexLee  18 年那时候用 go 的好像有人会搭配 lua(写业务),其实就是为了热更 现在的话,用 go 的一般是底层架构和上层业务全部用 go 至于为什么不搭配 lua ,游戏服务器技术各种语言/框架/解决方案都有,用什么,要看各家技术人员的喜好吧 go 写业务其实也还好,我曾经给别的团队帮忙的时候写过,虽然我没学过 go ,但也没啥不适应之类的 lua 做简易脚本是一把好手,现在有 typescript 了(有众多好爹撑腰就是牛逼),现在新项目上,用 lua 确实不应该了,性能,开发效率,和框架全部都是过去式了,除了不愿意接受新事物且固执的老人留守外,想放弃就放弃吧,时代必然 |