【Js13kGames】基于JavaScript 创造仅有13kb大小的游戏世界

2023-11-04 01:10

本文主要是介绍【Js13kGames】基于JavaScript 创造仅有13kb大小的游戏世界,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

13kb大小的游戏,尽管以前就有所耳闻,但一直也没太当回事,今天逛阿b偶然刷到了相关视频,实际去体验了下,并拜读了部分源码:大受震撼!希望日后我也有能力编码并制作。
今年的比赛刚好结束,新鲜出炉,先直接放几个我觉得好玩的,多说无益直接体验就好:

  • 战斗指挥官 - 中世纪(策略):https://js13kgames.com/entries/battle-commander-middle-ages
  • 是梅林(肉鸽游戏):https://js13kgames.com/games/its-merlin/index.html
  • 荣耀之路(肉鸽游戏):https://js13kgames.com/entries/path-to-glory
  • 大炮波尔夫(解谜过关):https://js13kgames.com/entries/cannonbolf
  • 城堡逃生(解谜过关):https://js13kgames.com/entries/castle-escapea-2023
  • 十三岁的罗宾(平面闯关,画风很爱):https://js13kgames.com/entries/robin-of-thirteensley
  • 骑士(音游):https://js13kgames.com/entries/knight
  • 侏罗纪苗圃(休闲养成):https://js13kgames.com/entries/jurassic-nursery

Js13kGames 是什么

在这里插入图片描述

HTML5 and JavaScript Game Development Competition in just 13 kB
https://js13kgames.com/

介绍: js13kgames是一项年度游戏开发比赛,要求参赛者在 30 天内,源代码在13KB 的限制内创建完整的HTML5游戏。这项极限挑战鼓励开发者精简代码和资源以满足比赛规则。

规则:

  • 游戏必须在13KB的限制内,包括所有代码和资源。
  • 你需要提供两个版本的游戏源代码:一个压缩版本,一个可读版本。可读版本需包含描述性变量名称和注释,托管在GitHub上。
  • 不允许使用外部库、图像或数据文件。所有资源都必须符合文件大小限制。

主题: 每年比赛有不同的主题,但你可以自由解释主题并在游戏中实现。

  • 2012年 - Evil or not
  • 2013年 - Space
  • 2014年 - The Elements
  • 2015年 - Reversed
  • 2016年 - Glitch
  • 2017年 - Lost
  • 2018年 - Offline
  • 2019年 - Back
  • 2020年 - 404
  • 2021年 - Stuck in a Loop
  • 2022年 - The Future
  • 2023年 - 13th Century

相关技术栈

  • HTML5和Canvas API: 使用HTML5和Canvas API创建2D游戏界面。HTML5和Canvas API
  • JavaScript压缩工具: 使用UglifyJS或Terser等工具来最小化JavaScript代码。
  • 图形工具: 创建像素艺术使用Aseprite或GraphicsGale。
  • 音效工具: 添加音效使用Howler.js。
  • 版本控制系统: 使用Git进行版本控制。

Ga(游戏引擎)

在这里插入图片描述

一个轻量级、极小(6.5kB)、容易上手的 JavaScript 游戏引擎,可用于制作 HTML5 游戏或任何 2D 动作游戏。
https://github.com/kittykatattack/ga

Kontra(游戏引擎)

在这里插入图片描述

专注于小体积的 JavaScript 微型游戏引擎,它虽然小但是提供了游戏常用的操控、事件、循环等核心功能。
https://github.com/straker/kontra

压缩代码

压缩代码通常是减少空格和换行之类的无用内容,从而达到减少代码所占体积的目的。
Google Closure Compiler:https://github.com/google/closure-compiler
MiniMinifier:https://github.com/xem/miniMinifier

Piskel(图像)

在这里插入图片描述

简单易用的在线像素图像制作工具。
https://github.com/piskelapp/piskel

miniMusic(声音)

在这里插入图片描述

可以把音效转化成 JavaScript 的项目,通过这种方式能够有效地减小声音的“体积”,还支持在线可视化的操作方式编辑和生成音效。
https://github.com/xem/miniMusic

这篇关于【Js13kGames】基于JavaScript 创造仅有13kb大小的游戏世界的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/342174

相关文章

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

java中long的一些常见用法

《java中long的一些常见用法》在Java中,long是一种基本数据类型,用于表示长整型数值,接下来通过本文给大家介绍java中long的一些常见用法,感兴趣的朋友一起看看吧... 在Java中,long是一种基本数据类型,用于表示长整型数值。它的取值范围比int更大,从-922337203685477

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte