I've only played around with the tool for about a half hour tonight, to see if I could fit any random ideas into something that would work in that format. (I've never worked with Bitsy or anything like it, so it's all new to me). A couple of things I ran into:
It'd be helpful to have a "Hud" available, i.e. a place to draw text and tiles that stays on-screen without the dialog box popup. Examples would be Infocom-style room name, or a current score.
Even after reading the warning about losing progress and taking it to heart, I still lost everything (only 30 minutes, but still...) when I was in the middle of checking something and switched from the "Room" to the "Game" tab. It'd be nice to have a warning/confirmation when trying to switch tabs, especially if it can be turned off after we've gotten familiar enough with the system to remember to save.
In case it's not already in the works (or I haven't found it yet): it'd be super-useful to have a tool that would let you import a PNG, etc and convert it to tiles for you.
Sorry about the data loss! While it won't help now, I was going to mention that Cmd/Ctrl-S saves, so if you've got an instinct to hit that combo every 3 seconds like I do, it might help (though, as Shaun says, work shouldn't be lost…)
I'm going to share my ridiculous method of doing this… Please don't laugh.
I drew letter-pairs in my World tiles, and labeled them with what letters they include. (You don't have to do it in pairs like this; it's just the size that worked for my game.)
on enter do
call "firstRoomLabelSetup"
end
on firstRoomLabelSetup do
tell 20,0 to
swap "y"
end
tell 21,0 to
swap "ou"
end
tell 22,0 to
swap "r"
end
tell 23,0 to
swap "ro"
end
tell 24,0 to
swap "om"
end
end
Which results in this…
In the global game script, I do something similar for the always-present HUD showing your score etc.
// draw HUD icons and values in applicable rooms
on hudSetup do
if startCountingGifts==1 then
// Gifts
tell 0,0 to
swap "gift hud"
end
tell 1,0 to
swap "counter"
log "About to update HUD with gift count: {gifts}"
frame gifts
end
tell 2,0 to
swap "gift total 1"
end
end
if startCountingTrophies==1 then
// Trophies
tell 4,0 to
swap "trophy hud"
end
tell 5,0 to
swap "counter"
frame trophies
end
tell 6,0 to
swap "gift total 1"
end
end
// Equipped item
if equipped!=0 then
tell 8,0 to
swap "hud {equipped}"
end
end
end
Ah, it might be a bug report instead of a feature request, then. I'd drawn about 2 dozen tiles, swapping between world/sprite/item/player a few times and placing them in the room. I switched back to the "Game" tab and when I returned to "Room," everything had reset to the default pick-up-floppy-disks mode. It's likely that I did something else in the interim, but I admit I wasn't paying close attention at that point. I almost certainly switched between tabs, because I had the Pulp documentation up at the same time.
As Neven said, having a keyboard shortcut to save will get you in the habit to save often, but I was still getting used to the UI. (And although it did wipe out everything, it's definitely not a big deal as I was just experimenting to see how much I could do with it. I can't devote more time to this until I've finished my main game).
You completely overestimate my patience
Seriously, though, a lot can be done with swapping tiles, and having an explicit demonstration like your code would be great for example projects and/or the documentation. After seeing more of the Bitsy projects, I've got a better feel for how these games are usually structured and how they manage text displays.
I'm having difficulty editing that post for some reason, but for clarity's sake: I do mean editor modes when switching between Room mode and Game mode. I also switched browser tabs to look up the documentation.
Even after reading the warning about losing progress and taking it to heart...
Was this warning in the docs or did you get a confirmation dialog at some point mentioning this? The latter can happen if you have the same game open in the editor in two different browser tabs and save in the older of the two tabs.
I was trying to figure out what I'd done, and mis-remembered the warning that scripts aren't saved until they compile with no errors:
In other words, this is useless as a bug report because I wouldn't even be able to guess how to reproduce it exactly. But every change I'd made to "Room" mode had reverted to the default project. I do know that I didn't have the project open in multiple tabs, but did have three tabs open: editor, pulp documentation, and pulp script documentation. (And non-playdate related tabs open as well). Also I was using Safari on a Mac.
I wonder if while it was in the background Safari decided the editor tab was too expensive (energy or RAM-wise) and dumped it from memory and then just reloaded it when you switched back. What version of macOS and Safari? Also do you happen to know how much RAM you have?