内容简介:PICO-8 使用 Lua 作为编程语言,但并不是标准 Lua,而是一个精简过同时添加了一些新内置函数的 Lua。基本语法与标准 Lua 一致,可用的方法基本上看下面总结出的 Cheat sheet 就可以:完整的文档见:
PICO-8 是一个虚构游戏平台(Fantasy Console),可用于开发、运行一些复古的像素风格的小游戏。它有很多限制,比如输出只有固定的 128*128 的分辨率,只能使用 16 种颜色等等,这些限制让 PICO-8 保持足够简单,迫使开发者将精力集中在游戏的创意本身,从而快速开发出一些小游戏或者游戏原型,快速验证一些想法是否可行。
PICO-8 使用 Lua 作为编程语言,但并不是标准 Lua,而是一个精简过同时添加了一些新内置函数的 Lua。基本语法与标准 Lua 一致,可用的方法基本上看下面总结出的 Cheat sheet 就可以:
完整的文档见: https://www.lexaloffle.com/pico8_manual.txt 。
看过文档介绍之后,我决定试用一下,便尝试着将以前用 JavaScript 开发的迷宫游戏移植到 PICO-8 平台。
关于迷宫的生成算法就不多介绍了,大致原理可见这篇文章以及这篇文章。下面记录一下主要开发过程。
首先启动 PICO-8,可以看到类似下面的画面:
看起来很像一个命令行终端,在这儿也的确可以输入一些命令,比如 ls
列出当前目录下的所有文件等。
但与普通终端不同的是,按 ESC
键可以在终端以及编辑器之间切换。编辑器界面类似下图:
在这个界面可以输入代码,进行游戏编辑。不过这个分辨率实在太低,字母看起来实在费眼,还好 PICO-8 也支持使用外部编辑器。
再按 ESC
键退出编辑器,在命令行界面输入 save [filename]
命令可将文件保存到硬盘,比如输入 save maze
,刚才编辑的文件就会被保存为 maze.p8 文件,输入 ls
命令可查看当前工作目录下的所有文件。然后,一个很重要的命令来了,输入 folder
命令,即可使用系统的资源管理器打开 PICO-8 的当前工作目录。
PICO-8 生成的文件后缀名是 .p8
,其实就是纯文本文件,其中一部分是 Lua 源码,一部分是精灵、地图等文件。你可以用你习惯的编辑器打开刚才生成的 maze.p8 文件进行编辑。如果你使用 Visual Studio Code,可以在插件市场找到 PICO-8 对应的插件。
然后就可以愉快地编写 Lua 代码了。注意 PICO-8 的代码有几个特殊方法,分别是:
-
_init()
会在初始化时调用一次。 -
_update()
每秒调用 30 次,可以将各种状态更新的方法放在这里。对应的还有一个_update60()
方法,每秒调用 60 次。 -
_draw()
绘制每一帧时调用,可以在这个方法中调用各种绘制方法。
完整代码可见: https://gist.github.com/oldj/5a0a302a42a251bfb930e692bbd7376a 。
最终,迷宫游戏的运行效果如下:
PICO-8 的作品可以非常方便地导出多种格式,比如本地原生可执行文件(支持 Windows/macOS/Linux),也可以导出为 HTML。所有的导出都只需在 PICO-8 命令行中使用 export
命令即可完成。
这个迷宫游戏的 HTML 版本在线地址为: https://oldj.net/static/pico-8/maze/index.html 。
小结
PICO-8 是一个很容易上手的小游戏开发平台,可以用于快速试验一些想法。同时,由于上手简单,或许也可以作为儿童编程教育的一个选择。
简单是 PICO-8 的优点,同时也是它的缺点,经过一两天的折腾,我觉得主要有两个缺点:
printh() table.xxx
总体而言,如果你喜欢复古的像素风格的游戏,PICO-8 还是值得玩一下的。
Advertisements
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- canvas实例 --- 制作简易迷宫
- 如何走出混网管理迷宫
- 数据结构与算法(七):迷宫回溯和八皇后问题
- 利用UPnP协议在物联网设备的迷宫中隐藏自己
- 用Q-learning算法实现自动走迷宫机器人
- 锐捷RG-DDP动态防御系统问世 为网络病毒建一所“迷宫”
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Twenty Lectures on Algorithmic Game Theory
Tim Roughgarden / Cambridge University Press / 2016-8-31 / USD 34.99
Computer science and economics have engaged in a lively interaction over the past fifteen years, resulting in the new field of algorithmic game theory. Many problems that are central to modern compute......一起来看看 《Twenty Lectures on Algorithmic Game Theory》 这本书的介绍吧!