lua编写游戏脚本教程服务器端,lua用的多吗

1、根据游戏策划需求,独立设计开发相应的游戏模块;

2、了解整个游戏服务器系统,维护相应模块,解决服务器问题;

3、使用C或Lua编程语言编写后台服务程序,读取并操作数据库数据;

1、计算机相关专业者优先,大学专科及以上学历;

2、有较强的逻辑思维,能独立分析系统的数据流及控制流;

3、熟悉lua脚本语言,有lua编程经验者优先;

4、熟悉C或C++语言优先;

5、熟悉游戏客户端的开发流程,热爱游戏;

6、热衷于技术钻研,工作踏实、负责,有良好的抗压能力。

是一个小巧的脚本语言,巴西里约热内卢天主教大学里的一个研究小组于1993年开发,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行。一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。相比Python和Per的内核,Lua的内核小于120KB,而Python的内核大约860KB,Perl的内核大约1.1MB。Lua语言支持面向对象编程和函数式编程,它提供了一个通用类型的表table,可以实现数组、哈希表、集合、对象的功能。Lua支持协同进程机制。作为一门可扩展的语言,Lua提供简单而稳定的交互接口,如Lua和C程序可通过一个堆栈交换数据,这使得Lua语言可以快速地和其它语言实现整合。

总体来说,Lua语言具备以下优点:

(2)性能优良、速度快

正因为Lua语言具备了这样的特点,使得它能和游戏开发领域的需求完美地结合起来,因为我们需要这样的一门语言,它能够和C/C++进行完美地交互,因为我们需要它对底层进行封装。它需要足够地简单,因为我们需要简单、灵活、快速地编写代码。那么显然Lua就是我们一直在寻找地这种语言。

目前大部分游戏都采用了Lua语言进行功能开发,在进行多语种发行的时候就会遇到时区显示的问题。以韩国版本为例,场景如下:

1、服务器处于固定的位置,比如放在首尔机房;

2、玩家所处的位置不确定,可能在韩国,或者是出差在其它国家或地区;

无论在哪个国家或地区,统一显示服务器的当前时间。在PC上查看,即便在国内测试的时候也显示韩国首尔的时间(比北京时间快1个小时)。

 
 

从源码可以看到 ! 调用了

 

gmtime_r 函数是标准的POSIX函数,它是线程安全的,将日历时间转换为用UTC时间表示的时间。

注:UTC ―― 协调世界时,又称世界统一时间、世界标准时间

也就是说 “!*t” 得到的是一个 UTC 时间,为0度的经线(子午线),亦称本初子午线,通常将它与GMT视作等同(但是UTC更为科学和精确)。

首尔位于东9区,所以实际的时间应该是 UTC + 9,9就是时区差 ―― 9个小时。北京位于东8区,即 UTC + 8。

如何保证游戏内全部统一为服务器的时间呢?

服务器需要返回给客户端当前的时区的差值,比如韩国就返回 9,国内就返回 8,越南返回 7,北美返回

我要回帖

更多关于 lua编写游戏脚本教程 的文章

 

随机推荐