Lua脚本与游戏测试(一)

Neva ·
更新时间:2024-09-20
· 676 次阅读

  ##lua游戏产业历史 (也可以叫解释型语言)   lua 在国外被广泛成熟使用后,起源 1993 年巴西歪果仁喊出来哒,至今是开源免费。暴雪神作 WOW 在国内疯狂到持续到现在,其中大量运用了 lua(后面介绍)。lua 脚本语言慢慢让普通用户也熟悉了,后面国人 mmorpg 大作例如《剑侠情缘3ol》也涵盖 lua 这门语言的身影,至今作品涵盖用lua已经是不计其数。   游戏项目开发从网易开始,对 lua 这个轻量的脚本语言使用越来越广,本人也是受云风影响慢慢从看他的博客,到自己学习写和了解结构,不过主要还是运用于读脚本和测试。   ps: 还有很多脚本语言可以用于游戏开发,优点是可以集中底层,并且编译和集成后十分小巧,脚本语言一直是备选方案。但 lua 有1个优点,lua一直不是只基于API级别的,还在于项目中扩展功能。   谈谈 WOW 里 lua 到底做了哪些东西   玩家看的到得   1、GUI 界面开发和编译 —— 你懂的,玩 WOW 的大部分人都用过插件吧   2、定义,存储和管理基础游戏数据(你也懂的,也导致了很多bug,这个后话)   3、游戏的人工智能( boss 技能施展条件= =,宏)   4、管理实时的游戏事件(点击c,打开人物界面,任务等,不过单机游戏= =特别多啊,这个也是废话)   5、创建游戏存储和载入系统(这个是废话,一定有)   看不到的   1、性能环节,支持程序底层语言来实现。   2、很小的数据和命令封成chunk,可以随时调用。   3、lua 变量默认全局(局部问题,可以后期用静态走查工具检查 很方便的)   4、兼容 C 语言系统,系统要求很低(32mb RAM )   5、lua 可以处理图像问题   来谈谈客户端抛错   测试人员先需要检查这个,客户端抛错,级别定义是 B。重要问题,在每个阶段都属于阻断性的问题。   在游戏测试时,还有些公司打成编译好的包给测试在手机上跑,同时不用 assert 这个函数是坑。   游戏测试一定要有 pc bulid 版本,这里 assert 函数处理函数一样的编译 lua 的 chunk,立即执行。   1、assert (v [, message])   函数1相当于C的断言,不满足v的条件message会打印出来,打断程序在内网如果点击继续可以恢复的,在外网不会卡住。assert (A,[, message]) 如果A正常,程序继续运行,A 异常打印 message。这个需要大家在开发的代码里自己看吧。   Cocos2d: [LUA ERROR] ASSERT FAILED ON LUA EXECUTE:不过后台里如果出现这个,其实也影响不大,要看具体情况   2、error (message [, level])   也是1个处理错误的。   · Level=1[默认]:为调用error位置(文件+行号)   · Level=2:指出哪个调用error的函数的函数   · Level=0:不添加错误位置信息   一般情况下是 2 个结合在一起,这里可惜没有内网开发环境抛错的图,不过这个大家应该看的懂吧。   这里依次对应的行是代表什么意思,测试读这个抛错信息知道是哪个代码块出现问题是基础的。



游戏测试 lua脚本 Lua 测试

需要 登录 后方可回复, 如果你还没有账号请 注册新账号