optimizer for bitsy gamedata
Note that optimizations are written in terms of vanilla bitsy; many hacks may use gamedata which would otherwise be seen as "unused" in a vanilla bitsy game (e.g. a room may have no exits pointing to it, but still be used via exit-from-dialog tags), so be wary of this when choosing what to optimize.
- include
./dist/index.iife.jsin HTML
<script src="vendor/@bitsy/optimizer/dist/index.iife.js"></script>- reference global
const optimize = window.bitsyOptimizer;- install
npm install @bitsy/optimizer --save- import
const optimize = require("@bitsy/optimizer");import optimize from '@bitsy/optimizer';const gamedata = `Write your game's title here
# BITSY VERSION 6.0...`;
const optimizedGamedata = optimize(gamedata);
// options can be provided as a second parameter
const partiallyOptimizedGamedata = optimize(gamedata, {
rooms: true || false, // removes unreachable rooms (except room 0)
palettes: true || false, // removes unused palettes that aren't assigned to any rooms
tiles: true || false, // removes tiles that aren't placed in any rooms
sprites: true || false, // removes sprites that aren't placed in any rooms
items: true || false, // removes items that aren't placed in any rooms
dialogue: true || false, // removes dialogue that isn't assigned to any sprites or items
exits: true || false, // removes exits that don't go to valid rooms
endings: true || false, // removes endings that aren't placed in any rooms
});