Log In  

Cart #monochromeninja_trapped-5 | 2021-11-18 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
6

I made a short puzzle game! This is the first time I have finished a PICO-8 game, so I'm very happy about it. :D

Version 1.4 -- fixed bug with diagonal movement leading to clipping (thanks to an IRL friend)
Version 1.3 -- fixed bug with loading on boundaries of room (THANK YOU @dw817)
Version 1.2 -- fixed bug with load when no keys (yet again thanks to @dw817)
Version 1.1 -- fixed bug with load (again thanks to @dw817)
Version 1.0 -- fixed bug with load (I was using 0-based indexing accidentally -- oops!) Thanks for reporting this bug @dw817!

P#100042 2021-11-13 17:17 ( Edited 2021-11-18 21:55)

Save State ? SAVE STATE !? You, my friend, are a hero ! I was going to address LOAD and SAVE state later, the necessity of it in carts - in Pico-8 and here you already have it.

Very well done ! Gold star for you !

P#100043 2021-11-13 17:58

@dw817 Wow thanks! For those of you who don't know, I'm basically saving it into a large table (including all the map data as well), and load simply extracts from that. The "copy to clipboard" and "load from clipboard" basically turn it into a long string that is parse when loaded. :)

P#100044 2021-11-13 18:03

Your first finished game. Your first bug. :)

I get them all time, no worries. I really like what you did here though.

I booted the game. Moved my player a bit. Saved state. Then attempted load state.

@zep, may I suggest you add an option, perhaps key "H" for hardcopy, where when selected a filebox appears giving you a chance to save off the current Pico-8 screen as a PNG, much like you can do with the F1 key in the main system - except open a filebox so you can select the name and type the path.

This would greatly help authors and debuggers. As it is I am currently using Freeware DuckLink Screen Capture to capture the area. Bring it up in Paintshop Pro to manually trim the edges. Save it as a new PNG. Then upload that PNG in a message.

A faster way might be key "o" to copy the 128x128 image to Pico-8 image clipboard format so you can just paste directly in Pico-8 with CTRL+V without having to load/save filename.

If you do this maybe have key "i" do the reverse. Take existing Pico-8 image from the clipboard and paste it directly into a running Pico-8 program starting at coordinates x=0 y=0 so =THAT= Pico-8 program can read the pixels from what was just pasted and act upon it. This would facilitate the ability to load/save data in Pico-8 without programmer intervention of STAT(4).

P#100051 2021-11-13 18:56 ( Edited 2021-11-13 19:17)

@dw817 Fixed it! :) Thanks for the report.

P#100054 2021-11-13 19:06

Still having problems, @monochromeninja. Try this in your online game.

Start. Move forward one step. Save state. Move back to original starting position. Load state. Box appears in impossible location above player.

Debugging in many cases is far more important than programming skill. Gotta get it right.

As LOAD/SAVE state will be your trickiest code, see if you can solve the first puzzle using LOAD/SAVE state multiple times throughout to see if it messes up again.

Also on the LOAD and SAVE state screens, could you please print BOLDLY "LOAD STATE" and "SAVE STATE" below the selections. Save state page for instance doesn't have the word save written anywhere on there.

Best to you !

P#100056 2021-11-13 19:23

Fixed! I was loading the map incorrectly. Oops! @dw817 thank you again!

P#100060 2021-11-13 19:51

Oh no ... okay. I should've checked, @monochromeninja. By load/save state I was expecting your game to save and RECALL even if you reboot later.

No. Your game loses the states if you reboot. To me that is the whole purpose behind them. To save your game. Close the tab. Reload the tab later. Click PLAY. Then load-state your game to continue where you left off.

You can load/save 64-values with DSET and DGET however you will have much more memory to save externally if you use CSTORE and RELOAD - if you'd like to pursue this.

While I have written a PROVE-12288 recently you might be more interested in seeing it in action with PROVE-4096 which loads/save 4096-bytes where you can truly see it.

https://www.lexaloffle.com/bbs/?tid=31950

Be aware when you SAVE in here you can reboot, close the tab, reopen it, what have you, you can still load the picture later, the 4096-bytes you saved earlier.

As there essentially 12288 bytes of memory to comfortably work with in Pico-8, with the size of your game area above, 16x10, you could easily store 76-game states for LOAD and SAVE.

Still ... it's good what you did, to have load/save state in the game. Yet it works best when its a load/save that can be recalled later even if the game restarts or its tab is closed.

P#100062 2021-11-13 20:37

@dw817 Yeah I understand, I ended up using the "save/load with clipboard" to get around that. This way you can copy it to your computer somewhere safe. Sorry for not clarifying that. :/

P#100064 2021-11-13 20:42

That would work ... Can't get the clipboard to save and there are no indicators a save took place, @monochromeninja.

P#100065 2021-11-13 20:47

@dw817 You need to save to a slot then use the "copy to clipboard" in the save/load menu.

P#100067 2021-11-13 20:50

I don’t understand the complicated feature request by dw187.
The screenshot shortcuts work in all contexts, don’t they?

P#100069 2021-11-13 20:54

Got it, @monochromeninja. You might set it to copy to clipboard without having to activate save state first.

Let's see how big your save is:

[email protected]#[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]#1#2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/2/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/16/0/0/0/0/0/0/0/13/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/2/0/0/11/11/11/11/0/0/2/2/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/0/0/0/0/2/2/0/11/0/0/0/11/0/0/2/2/2/2/2/9/9/9/2/2/16/0/0/0/0/0/0/0/13/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/0/0/0/0/2/2/0/11/0/0/11/11/0/0/2/2/2/2/2/9/9/9/2/2/0/2/2/2/2/2/2/2/2/7/17/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/8/5/0/2/2/0/0/0/0/0/0/0/0/2/2/2/2/2/9/9/9/11/16/14/17/7/24/7/2/0/0/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/2/0/2/2/2/0/11/11/11/11/11/0/0/2/2/2/2/2/2/2/5/2/17/2/2/2/2/9/2/0/0/2/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/2/2/2/0/0/2/2/0/0/0/0/0/11/0/0/2/2/0/0/2/2/2/11/2/0/2/2/11/9/12/2/0/0/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/21/0/5/2/2/2/0/2/2/0/0/0/0/0/11/0/0/2/2/0/17/8/18/8/17/2/0/2/2/0/2/2/2/0/0/2/0/14/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/16/0/2/17/8/13/2/0/2/2/0/0/0/0/0/0/0/0/2/2/0/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/2/0/8/8/2/0/2/2/0/11/11/11/0/11/0/0/2/2/2/14/8/17/2/0/2/0/2/2/0/2/0/0/0/0/2/0/17/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/16/2/0/2/15/2/0/2/2/2/2/2/2/2/2/2/2/2/2/2/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/17/2/0/2/0/2/0/0/0/0/0/0/9/0/0/0/0/2/2/2/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/0/14/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/0/2/12/2/2/2/2/2/2/2/2/2/2/2/7/2/2/2/12/2/11/2/0/2/0/2/2/25/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/0/11/9/0/7/2/2/2/2/2/2/2/2/2/0/2/2/9/0/0/0/0/0/29/28/2/2/7/0/0/0/0/0/0/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/2/0/2/2/17/2/16/2/2/2/2/2/2/2/17/2/16/2/2/2/2/2/16/0/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/6/2/2/2/2/2/2/2/2/2/0/2/0/15/0/0/0/0/0/0/0/0/0/15/0/0/0/0/0/16/0/13/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/0/2/14/8/17/2/2/2/2/2/2/2/2/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/14/14/17/0/23/0/0/0/0/0/21/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/0/2/0/2/7/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/23/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/7/2/7/0/2/21/2/0/2/2/2/2/2/2/2/22/2/0/14/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/15/16/13/0/23/0/23/23/22/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/2/2/0/2/0/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/7/2/2/17/0/0/2/2/2/2/2/2/2/24/2/0/14/0/0/0/0/0/0/0/0/0/0/0/15/0/0/0/0/0/0/0/0/2/0/23/0/23/0/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/6/2/2/0/2/2/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/7/2/2/7/0/7/2/2/2/2/2/2/2/26/2/0/14/0/0/0/0/0/0/0/0/0/0/0/16/0/0/0/0/0/0/0/0/2/0/23/0/23/23/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/8/2/2/2/17/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/8/8/12/0/16/15/2/2/2/2/2/2/2/28/2/0/14/0/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/0/0/7/8/0/21/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/0/8/0/8/0/16/2/2/2/2/2/2/2/30/2/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/23/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/10/8/0/8/7/17/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/20/0/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/8/8/0/8/16/0/2/2/2/2/2/2/2/2/2/17/13/0/0/0/13/0/0/0/0/0/0/0/0/0/13/0/0/0/13/0/13/2/0/23/23/23/23/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/8/17/15/2/2/2/2/2/2/2/2/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/20/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/2/0/16/0/0/0/0/0/0/0/0/0/16/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/17/2/15/2/2/2/2/2/2/2/17/2/15/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/23/2/2/0/0/0/0/0/0/0/0/2/2/9/12/0/17/13/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/31/2/2/2/2/2/2/0/2/2/12/11/12/11/12/11/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/30/30/30/30/2/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/25/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/0/0/0/0/0/0/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/2/2/2/2/2/2/2/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/27/2/2/0/2/30/30/30/30/30/30/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/2/2/2/2/2/2/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/0/0/0/0/0/0/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/29/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/30/30/30/30/2/0/2/2/26/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/31/2/2/30/2/0/25/5/23/0/0/2/2/11/12/11/12/11/12/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/7/2/2/29/0/27/2/2/0/0/0/2/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/2/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/2/0/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/2/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0

Wow ! 16718 characters. When I first saw this I thought your load/save state was for one room only and using the PASTE inside your game others could make their own levels. So the save is just for the game, not ability for custom levels ?

Also you can probably scan from the end of your data and find the first non-zero, then clip THAT to clipboard so you would only have this:

[email protected]#[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]/[email protected]#1#2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/2/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/16/0/0/0/0/0/0/0/13/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/2/0/0/11/11/11/11/0/0/2/2/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/0/0/0/0/2/2/0/11/0/0/0/11/0/0/2/2/2/2/2/9/9/9/2/2/16/0/0/0/0/0/0/0/13/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/0/0/0/0/2/2/0/11/0/0/11/11/0/0/2/2/2/2/2/9/9/9/2/2/0/2/2/2/2/2/2/2/2/7/17/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/8/5/0/2/2/0/0/0/0/0/0/0/0/2/2/2/2/2/9/9/9/11/16/14/17/7/24/7/2/0/0/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/2/0/2/2/2/0/11/11/11/11/11/0/0/2/2/2/2/2/2/2/5/2/17/2/2/2/2/9/2/0/0/2/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/2/2/2/0/0/2/2/0/0/0/0/0/11/0/0/2/2/0/0/2/2/2/11/2/0/2/2/11/9/12/2/0/0/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/21/0/5/2/2/2/0/2/2/0/0/0/0/0/11/0/0/2/2/0/17/8/18/8/17/2/0/2/2/0/2/2/2/0/0/2/0/14/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/16/0/2/17/8/13/2/0/2/2/0/0/0/0/0/0/0/0/2/2/0/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/2/0/8/8/2/0/2/2/0/11/11/11/0/11/0/0/2/2/2/14/8/17/2/0/2/0/2/2/0/2/0/0/0/0/2/0/17/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/16/2/0/2/15/2/0/2/2/2/2/2/2/2/2/2/2/2/2/2/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/17/2/0/2/0/2/0/0/0/0/0/0/9/0/0/0/0/2/2/2/0/2/0/2/0/2/0/2/2/0/2/0/0/0/0/2/0/14/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/0/2/12/2/2/2/2/2/2/2/2/2/2/2/7/2/2/2/12/2/11/2/0/2/0/2/2/25/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/0/11/9/0/7/2/2/2/2/2/2/2/2/2/0/2/2/9/0/0/0/0/0/29/28/2/2/7/0/0/0/0/0/0/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/2/0/2/2/17/2/16/2/2/2/2/2/2/2/17/2/16/2/2/2/2/2/16/0/13/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/6/2/2/2/2/2/2/2/2/2/0/2/0/15/0/0/0/0/0/0/0/0/0/15/0/0/0/0/0/16/0/13/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/0/2/14/8/17/2/2/2/2/2/2/2/2/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/14/14/17/0/23/0/0/0/0/0/21/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/0/2/0/2/7/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/23/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/7/2/7/0/2/21/2/0/2/2/2/2/2/2/2/22/2/0/14/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/15/16/13/0/23/0/23/23/22/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/0/2/2/0/2/0/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/7/2/2/17/0/0/2/2/2/2/2/2/2/24/2/0/14/0/0/0/0/0/0/0/0/0/0/0/15/0/0/0/0/0/0/0/0/2/0/23/0/23/0/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/6/2/2/0/2/2/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/7/2/2/7/0/7/2/2/2/2/2/2/2/26/2/0/14/0/0/0/0/0/0/0/0/0/0/0/16/0/0/0/0/0/0/0/0/2/0/23/0/23/23/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/8/2/2/2/17/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/8/8/12/0/16/15/2/2/2/2/2/2/2/28/2/0/14/0/15/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/0/0/7/8/0/21/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/0/8/0/8/0/16/2/2/2/2/2/2/2/30/2/0/14/0/16/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/0/23/23/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/10/8/0/8/7/17/2/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/23/20/0/0/0/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/8/8/8/0/8/16/0/2/2/2/2/2/2/2/2/2/17/13/0/0/0/13/0/0/0/0/0/0/0/0/0/13/0/0/0/13/0/13/2/0/23/23/23/23/23/23/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/8/17/15/2/2/2/2/2/2/2/2/2/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/20/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/2/0/16/0/0/0/0/0/0/0/0/0/16/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/17/2/15/2/2/2/2/2/2/2/17/2/15/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/23/2/2/0/0/0/0/0/0/0/0/2/2/9/12/0/17/13/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/31/2/2/2/2/2/2/0/2/2/12/11/12/11/12/11/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/30/30/30/30/2/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/25/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/0/0/0/0/0/0/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/2/2/2/2/2/2/2/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/27/2/2/0/2/30/30/30/30/30/30/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/2/2/2/2/2/2/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/0/2/2/0/0/0/0/0/0/0/0/2/2/10/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/29/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/0/2/30/30/30/30/2/0/2/2/26/10/10/10/10/10/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/2/2/0/2/0/2/2/31/2/2/2/2/2/2/0/2/2/10/10/10/10/10/10/12/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/31/2/2/30/2/0/25/5/23/0/0/2/2/11/12/11/12/11/12/11/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/2/7/2/2/29/0/27/2/2/0/0/0/2/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/2/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/2/0/7/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/2/2/0/0/2/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/2/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/2/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/0/2/2/2/2/2/2/2/2/2/2
  1. It's not too much smaller but a bit. Are those flags or tiles or ... what does this data comprise ?
P#100070 2021-11-13 20:58 ( Edited 2021-11-13 21:00)

@merwok Not on the web version, unfortunately. :/

P#100071 2021-11-13 20:59

@dw817 The save format is as follows (line breaks added for readability):
<player x>@<player y>#
<crate 1 x>@<crate 1 y>/<crate 2 x>@<crate 2 y>/...#
<lever state>#
<map 0,0>/<map 0,1>/<map 0,2>/...
Yeah this is a terrible way to do this but... it's what I went with.

P#100073 2021-11-13 21:01

Yep, @merwok. While you can press F1 in the actual Pico-8 system, you do it in your browser and it will likely bring up HELP for your internet browser.

And to my knowledge there is no way to just click inside a Pico-8 screen and select a key like I or O to directly copy/paste all those pixels to the clipboard.

Now sometime back I wrote a program to do this. Let me see if I can find it.

P#100074 2021-11-13 21:02 ( Edited 2021-11-13 21:33)

@monochromeninja, you may really like this idea. Instead of recording the positions of crates, turn the whole thing two-dimensional. X+Y coordinates only.

So while you can certainly save the player X+Y coordinates, the rest is just a copy of the map. Here, let me explain.

[0x0]

This a 5x4 room. Instead of recording the door position separately it is part of the map. So the dotted floor would be zero, the walls, one, and the door two. You would save that in the clipboard thus:

11111100021000111111

If you wanted an open door you change that "2" to "3" and the image would change as well.

You could do the same with every object you have on your current game map, pushable blocks included. So the only coordinates you really would need to record would be the player, and that's it.

P#100075 2021-11-13 21:08 ( Edited 2021-11-13 21:08)

@dw817 I definitely could do that, but the problem comes up when you realize that there are tiles in my game that aren't solid. This means that we would lose tiles underneath crates after loading.

P#100079 2021-11-13 21:23

Can't find it online but you can test it here.

Go to your sprites. Put the cursor on one of them. Press CTRL+C.

Now go back to the internet, in your message press CTRL+V.

Click PREVIEW, PREVIEW again, and you will see the sprite you copied.

Here is a sample from a game I haven't finished. Too many projects in the air.

[0x0]

P#100077 2021-11-13 21:25

What tiles aren't solid ? If you mean the state of tiles beneath you could have the following:

10 ... normal pushable block
11 ... block can walk across
12 ... block on grass (I'm not sure what terrain you have)
13 ... block on stone floor
14 ... block on grass floor

15 ... arrow up
16 ... arrow down
17 ... arrow left
18 ... arrow right

etc.

If you only have a few modifications like your arrow thing, just account for all 4. What you want to do is keep the grand total under and including 256, a perfect byte. If you can do that your map space and save/load state data files should be much smaller using hex.

010101 ... 1,1,1
808080 ... 128,128,128
FFFFFF ... 255,255,255

All take 6-string characters.

However if you really do want two states, the floor and the objects atop it, just double your array.

Floor[256] ... walls and floor
Atop[256] ... pushable and movable objects that sit ON TOP of floor

Also if you have 16 or less objects each for floor and atop then you could break it back down to a byte.

FLOOR*16+ATOP.

Where FLOOR is a # from 0-15 and ATOP is a # from 0-15. You will still get a single value from 0-255.

P#100080 2021-11-13 21:29 ( Edited 2021-11-13 21:33)

Finally found it. Had to make some changes. @zep, be aware I had to use ".." for both strings as your messaging system in Lexaloffle interprets my source-code as a pasted picture otherwise.

If you can set your parser to ignore what is between code and /code.

--dw817 sprites to clip
pic="[".."gfx]8080"
for i=0,127 do
  for j=0,127 do
    c=sget(j,i)+1
    pic=pic..sub("0123456789abcdef",c,c)
  end
end
pic=pic.."[".."/gfx]"
printh(pic,"@clip")
P#100081 2021-11-13 21:48

Used your copy and paste from clipboard. Did not copy it from text, just save-state your game.

Message was:

Copied slot 1 to clipboard.

Then immediate load from clipboard.. Message was:

"There was an error in loading."
"Check that you copied it right."

P#100082 2021-11-13 21:53

@dw817 That's rather strange... not sure why that might happen. :( I'll try and figure that out.

P#100083 2021-11-13 22:00

@dw817 Ah! Figured it out. It was not saving a spot for the keys when you didn't have any. Oops! Fixed now :)

P#100085 2021-11-13 22:18

Better. Loading CLIP from 2nd room sometimes returns me to 1st room and I am invisible.

Here:

P#100086 2021-11-13 22:53

@dw817 Where are you saving/loading in these rooms?

P#100087 2021-11-13 23:00

Just exited room 1. Arrived in 2nd room. First thing I do in 2nd room is:
Saved to slot 1!
Copied slot 1 to clipboard!
Loaded from clipboard!
I arrive back in room 1 invisible.

Be aware these bugs may only appear online. It is best to check offline and online versions both to see if you can isolate the problems.

P#100088 2021-11-13 23:09 ( Edited 2021-11-13 23:35)

... You seem to have fixed a lot of the bugs in this last iteration, @monochromeninja. I will say I like the music in the beginning because it's quiet and low-toned, later though it is not and does repeat.

If you can do something with that.

We all have different skills. I'm pretty good at writing databases and am a book author. A friend of mine is an excellent musician, another is an artist, another is a paralegal. My youngest friend has a real talent with the viola.

Well, you get the idea. We all have our niche.

P#100384 2021-11-18 23:54

@dw817 Thanks! This means a lot coming from you. The repeating music is intentional and I couldn't find a good way to make it change over time and repeat at the beginning while still sounding good. :/

P#100388 2021-11-19 00:12

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2022-12-05 20:04:49 | 0.078s | Q:50