LPC 语言教程:从零学习MUD游戏开发(包括精华内容导航)

世界杯男子

版权所有:mud.ren; 版本:v2019,本教程持续更新中,欢迎提供建议和意见。如果有问题可以这里留言,也可以加QQ群:285533476,本群是本教程……

版权所有:mud.ren; 版本:v2019,本教程持续更新中,欢迎提供建议和意见。如果有问题可以这里留言,也可以加QQ群:285533476,本群是本教程后续部分从零开发LPMUD游戏开发出来的DQMUD交流群。

注意:每当教程有更新时,请一定下载最新的学习代码测试。

项目源码:https://github.com/fluffos/lpc-test

国内镜像:https://gitee.com/mudren/lpc-test

视频教程:https://space.bilibili.com/44130173/

在线测试:https://test.mud.ren/

前言

本教程是LPC开发基础教程,参考常见的编程语言教程分章节目录讲解,教程内容持续更新和完善,LPC语言是类C语言,和C语言语法相似度极高,对很多通用的编程基础知识本书不做具体讲解,只会根据大家留言反馈做一些关键补充。

这里需要强调的是:编程是技能,不是知识,技能只有在不断练习下才会有进步。本教程是要求大家上手练习的,而不是只是阅读,只有亲自实践才能真正掌握,就像打篮球一样,看再多的 NBA 视频,你都无法成为篮球高手,你的篮球学习,只有当你站着球场上,真真实实地拍打篮球,才算开始。所以,我希望大家能边阅读教程,边根据示例操作,并把自己的问题和想法做一些尝试。

真正遇到困难时,可在对应小节下留言提问或在本站发贴提问,教程会根据大家的问题优化完善,方便学习,如果你认为本教程有帮助,请点个赞,谢谢。

大家可以关注我的抖音(抖音号:mudren),有一定的粉丝基础后,我会直接开直播教学和答疑。

LPC语言基础教程

基础教程部分全面的讲解LPC语言的语法知识,LPC语言是类C语言,有C语言基础学习会事半功倍,和C语言完全一样的知识,本书会讲,但不会非常详细的讲解。对C语言基础欠缺的同学,推荐看看C语言入门书籍,更有助于学习LPC语言。

第一章 LPC语言初探

本章为LPC基本介绍,初步了解LPC语言是什么、有什么用、基本语法、现状如何、未来的发展趋势,以及LPC开发学习的准备工作。

LPC语言简介

LPMUD游戏驱动说明

从零开始学习LPC的准备工作

LPC语言的基本语法(和C语言相同)

LPC语言中的保留字和术语说明

第二章 LPC语言的变量和数据类型

在编程中,我们必须和各种数据打交道,数据既是程序处理的对象,也是程序处理的结果,数据又被分为各种类型。本章内容重点讲解LPC语言的数据类型,相对C语言,LPC语言的数据类型有较大的调整,在LPC语言中有10种数据类型,是哪10种呢?本章一一介绍。

LPC语言的数据类型1:和C语言相似的数据类型

LPC语言的数据类型2:不同于C语言的数据类型

LPC语言中的常量和变量

LPC语言中的数据类型小结

LPC语言中的转义字符和颜色控制

第三章 LPC语言的运算符和表达式

程序,无非是对各种关系(数值关系、逻辑关系等)进行操作的代码集合,对关系的操作都可以看成是对数据的操作,对不同数据的操作,C 语言提供了对应的运算符。使用运算符把操作数结合起来形成的式子,称为表达式。而LPC语言也不例外,本章重点讲解LPC语言中的运算符和表达式。

LPC语言的运算符1:和C语言相同的运算符

LPC语言的运算符2:LPC语言特殊运算符

表达式、语句和数据类型转换

LPC语言中运算符的优先级

LPC语言中的运算符语法小结

第四章 LPC语言的流程控制

结构化程序设计有三种基本结构:顺序(sequence)、选择(selection)及循环(repetition),通过不同的结构可以实现代码的流程控制,本章重点介绍LPC语言中和C语言的差异。

分支结构

循环结构

return

第五章 LPC语言的函数、方法和面向对象编程

前面几章内容可知,LPC语言和C语言的基础语法有太多的相同点了,但为什么LPC语言更适合开发MUD游戏?除了面向对象的支持,很大一部分原因是LPC语言提供了C语言没有的函数和方法,本章我们重点讲解这些内容。

LPC语言的函数和方法

LPC语言的变量作用域

LPC语言中的环境与内容物

基本输入输出函数

模拟外部函数(sefun)的使用

LPC语言中的对象及其分类

LPC语言中的面向对象编程

第六章 LPC语言的函数指针、数组、映射、字符串、结构体、buffer和0

本章在大家对LPC基础语法了解后,继续深入讲解LPC的数据类型和相关内容。

函数指针

字符串

数组

映射

结构体

buffer

LPC语言中的0

第七章 预处理

本章为LPC中编译预处理相关知识,这里和C语言基本相同,但又有很大不同。

文件包含

宏定义

条件编译

#echo

#pragma

@和@@

LPC语言进阶教程

基础教程部分是语法知识,而进阶教程则是具体应用,学以致用。

第八章 LPMUD游戏开发进阶准备

本章我们来深入了解游戏启动流程及部分特别功能的具体用途,方便为游戏开发做更多的准备。

游戏启动流程详解

运行时配置文件的参数与相关函数(efun)和方法(apply)

动作(action)指令系统

exec 和 bind

档案的存储与读取

在游戏中开天辟地

指令别名的简单实现

谓词(verb)指令系统

智能的 message 和变态的 snoop

clean_up 和 reset

让你心跳(heart_beat)的战斗

在游戏环境增加NPC和物品

强大的虚拟对象

shadow 的妙用

UID 和 EUID 权限系统

位运算在游戏开发中的重要应用

核心对象预加载处理

LPC开发调试

关于LPC语言你可能不知道的实用冷知识

第九章 重要LPC efun 使用介绍

LPC部分重要函数的介绍,这些函数在基本的游戏开发中可能用不到,但是在关键地方有大用。

文件系统 efun 介绍

数据库操作 efun 介绍

socket 介绍和游戏功能开发实战

对象查找相关efun使用总结

defer函数的使用

event函数的使用

第十章 项目实战:LPC-TEST

掌握了语法,掌握了技能,现在是时候表演真正的技术了。通过分析代码相对简单的LPC-TEST项目来了解具体的项目开发。(本章不以文字讲解,而是在抖音直播,有兴趣的同学请关注抖音:mudren)

LPC-TEST项目源码解析

自己从零实现LPC-TEST项目

实战教程:使用 mudcore 框架从零极速开发游戏

想开发新的项目,但又不想从零开始,那 mudcore 框架是你不二的选择。

项目源码: https://github.com/mudcore/MyMud

教程地址: https://bbs.mud.ren/threads/66

扩展教程

不想折腾新游戏,但想要对现有游戏二次开发却感觉有困难,扩展教程为你提供更多的帮助。

LPC语言和游戏开发小知识手册(包括其它网友发布的精品贴)

以ES2为底层的MUD游戏二次开发指南

用LPC语言学习数据结构与算法

后记

教程会持续更新,也会优化修正已有的内容,如果你感觉本站教程对你有帮助,欢迎赞赏捐助雪风@mudren。