6a97f09b59 | ||
---|---|---|
node_modules | ||
.gitattributes | ||
.gitignore | ||
Rubik-Regular.ttf | ||
bitsy-default.txt | ||
croppie.css | ||
croppie.js | ||
dj-hamster.jpg | ||
index.html | ||
index.pug | ||
jquery.min.js | ||
lodash.min.js | ||
package-lock.json | ||
package.json | ||
readme.md | ||
rubik-regular-webfont.woff | ||
rubik-regular-webfont.woff2 | ||
script.js | ||
style.css | ||
style.less |
readme.md
bitsy image to room
about
a tool for Bitsy. upload any image and convert it into a room. the room will be added to the game data automatically and you can paste it back into Bitsy.
thanks
to Adam LeDoux for creating the wonderful and inspiring Bitsy
to J.P. LeBreton for creating Playscii which was a huge inspiration for this tool
to Mark Wonnacott for being relentlessly encouraging and making me want to work even an eighth as hard as them
to Foliotek for the Croppie image plugin
contributing
The stylesheet and html are autogenerated; if you want to alter them please edit the pug template or less stylesheet, e.g. from the command line as follows:
pug index.pug index.html
lessc style.less style.css
pug
and less
can be installed via npm
as follows:
npm install -g pug-cli
npm install -g less
I had to hack the included Croppie plugin to allow the user to upload images from their own computer without falling foul of CORS restrictions. So the version bundled here is non-standard. It's a one-line change:
croppie.js:182 (original)
if (src.match(/^(https)?:\/\/|^\/\//)) {
croppie.js:182 (mine)
if (src.match(/^(file|https)?:\/\/|^\/\//)) {
to do
layout idea: game data | image | palette crop | preview | output
- read Bitsy data
** tiles
**
palettes read Bitsy data from html fileadd palette choice- create bitsy tiles from image ** only add unique new tiles ** find closest existing tiles and use those if desired *** add a slider? (always use existing tiles -> always create new tiles) (representing 0-64 threshold for # of common pixels)
- style the damn thing
- reorganise the page layout for a more logical workflow ** hide page sections the user does not need to know about yet?
could do
add some default data**tiles (e.g. petscii or some 'user-donated' tiles)**palettes- add dithering options
- add camera support so users can take a pic instead of uploading an image
- add a 'smoothing' stage to remove errant pixels
- allow user to add palettes to game data
- allow user to draw to canvas