Commit Graph

49 Commits (master)

Author SHA1 Message Date
Noah 8595ad0eba Prepare v1.14.0 for release 2024-05-04 18:26:32 -07:00
Noah 21847f5e57 Code cleanup for TouchScreenMode 2024-04-19 23:13:32 -07:00
Noah f2a20808ea Fix bootstrap.py script 2024-04-18 23:07:25 -07:00
Noah 6def8f7625 Walk up slopes smoothly, texture freeing improvement
* Fix collision detection to allow actors to walk up slopes smoothly, without
  losing any horizontal velocity.
* Fix scrolling a level canvas so that chunks near the right or bottom edge
  of the viewpoint were getting culled prematurely.
* Centralize JavaScript exception catching logic to attach Go and JS stack
  traces where possible to be more useful for debugging.
* Performance: flush all SDL2 textures from memory between scene transitions
  in the app. Also add a `flush-textures` dev console command to flush the
  textures at any time - they all should regenerate if still needed based on
  underlying go.Images which can be garbage collected.
2024-02-07 22:14:48 -08:00
Noah 85523d8311 Coyote time 2024-02-06 20:56:07 -08:00
Noah 282229ba80 Prepare v1.13.2 for release 2023-12-02 12:46:17 -08:00
Noah d397584323 Update changelog 2023-02-18 17:50:08 -08:00
Noah 856de848c9 Add cheat code to send power to all actors 2023-02-18 14:21:07 -08:00
Noah 1e37509421 Update README and fix perfect run icon display 2023-02-17 21:49:19 -08:00
Noah a10a09a818 Cheats Menu UI
* Added a Cheats Menu UI accessible from the Settings window's "Experimental"
  tab and from there you can enable the Cheats Menu from the "Help" screen of
  the gameplay mode.
* Commonly used cheats all have corresponding buttons to click on, especially
  helpful for touchscreen devices like the Pinephone where keyboard input
  doesn't always work reliably.
* The buttons in the Cheats Menu just automate entry of the cheat commands.
* `boolProp` command has a new `flip` option to toggle their value (e.g.
  `boolProp show-hidden-doodads flip`)
2023-01-02 12:36:12 -08:00
Noah 8b5dab6d6f Slippery Pixels + Update Changelog for 0.13.1 2022-10-10 10:52:28 -07:00
Noah 0a18cd4227 Prepare v0.13.0 for release 2022-05-07 20:23:25 -07:00
Noah ffc2c6f69b Performance?: Don't unload chunks so eagerly
Previously: the Chunker tracks with chunks were gotten during the
current game tick and the N-1 and N-2 ticks, and chunks not accessed in
two ticks were freed immediately.

Now: they go into a "garbage collection" pool with a minimum number of
game ticks to free. So if they're needed again, they're saved from the
gc pool. F3 overlay data shows the count of the gc pool.
2022-05-07 17:16:03 -07:00
Noah 315c8a81a0 Update Changelog 2022-05-05 22:34:03 -07:00
Noah 9cdc7260bb Prepare v0.12.1 for release 2022-04-16 17:50:40 -07:00
Noah ba373553cb Prepare v0.12.0 for release 2022-03-27 14:23:25 -07:00
Noah 38a23f00b2 Reset Timer Doodad + Various Fixes
* Bird is not solid when colliding with other birds.
* If the dev shell is used to run JavaScript during Play Mode, consider
  it cheating (so player can't `$ d.Scene.ResetTimer()` for example)
* On Survival Mode levels, DieByFire immediately opens the End Level
  (silver score) modal rather than respawn from checkpoint, so levels
  don't need checkpoint contraptions to end the level.
* During level loading screens, wait and call doodads' main() function
  until the very end.
2022-03-27 11:51:14 -07:00
Noah bf706efdc6 Update Changes.md 2022-03-19 12:24:01 -07:00
Noah 0b2e04b336 Update changelog for v0.11.0 2022-02-21 13:26:25 -08:00
Noah 962098d4e7 v0.11.0 last minute tweaks
* When playing as the Bird, the dive attack is able to destroy other
  mobile doodads such as Azulians and Thieves.
* The Box has been made invulnerable so it can't be destroyed by Anvils
  or player-controlled Birds.
* Bugfixes with pop-up modals:
  * The quit game confirm modal doesn't appear if another modal is
    already active on screen.
  * The Escape key can dismiss Alert and Confirm modals.
* Add "Level" menu items to Play Mode to restart the level or retry from
  the last checkpoint (in case of softlocks, etc.)
2022-02-21 13:09:51 -08:00
Noah 40cb9f15cb Prepare v0.11.0 for release (+ fixes)
* The title screen now loads the default maps from a LevelPack. The game
  no longer ships with the Tutorial levels in the "levels" folder as
  default; they are in the LevelPack so the "Edit Drawing" screen begins
  as a blank slate for only user levels.
* Add the Zoo level to the Tutorial levelpack
* Bugfixes around changing the player character to work around clipping
  issues if the character has changed height drastically.
2022-02-20 17:48:07 -08:00
Noah 1205dc2cd3 Invulnerable Anvil and other fixes
* Add methods `Invulnerable() bool` and `SetInvulnerable(bool)` to the
  Actor API accessible in JavaScript (e.g. `Self.SetInvulnerable(true)`)
* The Anvil is invulnerable - when played as, it can crush other mobs by
  jumping on them but is not defeated by those mobs at the same time.
* Anvils don't destroy invulnerable mobs, such as other Anvils.
* Bugfix: the Electric Door is considered to be opened from the first
  frame of animation when the door begins opening, and remains opened
  until the final frame of animation when it is closing.
* New cheat code: `megaton weight` to play as the Anvil by default.
2022-02-20 11:48:36 -08:00
Noah 3f7e384633 Invincibility Cheat
Add cheat `god mode` that toggles invincibility. Fire pixels and hostile
mobs can't fail the level for you.
2022-01-17 22:02:27 -08:00
Noah 05b97df846 Prepare v0.10.1 for release 2022-01-09 15:03:02 -08:00
Noah 9e4f34864d Remove MsgPack, Fix doodad display on top/left edges
* Clean up unused msgpack code for levels and doodads
* Fix the cosmetic bug where actors in your level would display wrongly
  when scrolling off the top/left edges of the screen: they used to
  anchor at their own 0,0 coordinate and crop their width/height leading
  to a 'scrolling' effect that didn't happen on the right/bottom edges.
2022-01-09 13:16:29 -08:00
Noah 48e18da511 Centralize cheats, detect cheated player character
* If the player runs the PlayAsBird cheat they shouldn't be able to win
  a high score on a level, so at level startup it detects whether the
  DefaultPlayerCharacterDoodad has changed from default on a level that
  doesn't use the Start Flag to set a specific doodad - and immediately
  marks the session as cheated
2022-01-08 18:27:37 -08:00
Noah 9a51ac39f9 Spit and polish
* New doodad: Invisible Warp Door
* All warp doors require the player to be grounded (if affected by
  gravity) to open them. No jumping or falling thru and opening
  a warp door mid-air!
* Title Screen now randomly selects from a couple of levels.
* Title Screen: if it fails to load a level it sets up a basic
  blank level with a wallpaper instead.
* New developer shell command: titlescreen <level>
  Opens the MainScene with a custom user level as the background.
* Add Auto-save to the Editor to save your drawing every 5 minutes
* Add a MenuBar to the Play Scene for easier navigation to other
  features of the game.
* Doodad JS API: time.Since() now available.
2022-01-02 22:36:32 -08:00
Noah 3881457300 Prepare v0.10.0 for release 2021-12-30 17:57:13 -08:00
Noah 37377cdcc1 Update Changelog 2021-12-26 21:07:52 -08:00
Noah 8ca411a0ae Prepare for release v0.9.0 2021-10-09 21:29:14 -07:00
Noah feea703d0c Update changelog for upcoming 0.9.0 2021-10-07 21:26:39 -07:00
Noah 528e7b4807 Prepare release v0.8.1 2021-09-12 16:55:36 -07:00
Noah 4d3e336ca1 Update release date for v0.8.0 2021-09-04 12:44:10 -07:00
Noah f446ed9130 Prepare v0.8.0 for release 2021-09-03 21:35:12 -07:00
Noah 0bf5045a53 Death Barrier and Player Character Cheat Codes
* Added the Death Barrier to Play Mode to catch players from falling off
  the map and then falling indefinitely, especially on Unbounded maps.
* The Death Barrier is set 1,000 pixels below the lowest point on your
  map. If the player falls here they get a death message: "Watch out for
  falling off the map!"
* Added cheat codes to change the default Player Character doodad, as a
  way to force play as a different character (for levels which don't
  specify a custom character):
  * Play as Bird: fly like a bird
  * Play as Blue Azulian: the cell
  * Play as Thief: play as thief
  * Reset to default (Boy): pinocchio
2021-08-15 17:01:18 -07:00
Noah 3949934bc1 Prepare v0.7.2 for release 2021-07-19 21:20:22 -07:00
Noah d1ef9d2932 Prepare v0.7.1 for release 2021-07-11 14:09:18 -07:00
Noah 53123dff1d Prepare v0.7.0 for release 2021-06-20 13:10:23 -07:00
Noah 386e0b2b0c Brighten Patterns + Update Default Palettes
* The pattern textures for level palettes have been brightened and work
  better with bright colors.
* The three default palettes for new levels now have patterns applied to
  each of their colors.
* Bugfix around resetting keybind states for Zoom In/Out, Scroll to
  Origin and Reset Zoom Level bindings.
2021-06-20 10:42:51 -07:00
Noah d0cfa50625 Hook up keybinds like Ctrl-N, Ctrl-S
* Menu keybinds that weren't working before, like Ctrl-N, Ctrl-S, Ctrl-O
  to create and open levels are now working.
2021-06-17 19:43:30 -07:00
Noah bd90393cc3 Prepare v0.6.0 for release 2021-06-06 22:08:56 -07:00
Noah 0fedcf4fcb Adjust ScrollboxVert and Prepare v0.5.0 for Release 2021-03-31 19:27:40 -07:00
Noah 1f274e0ca6 Changelog and Prepare v0.5.0 for Release 2021-03-31 19:16:33 -07:00
Noah 9529980ee4 Update changelog for v0.4.0-alpha 2020-11-20 23:35:37 -08:00
Noah 6241bfe415 Prepare v0.3.0 for release 2020-09-18 22:52:05 -07:00
Noah dabf88dff8 Prepare v0.2.0-alpha for release 2020-06-06 20:52:29 -07:00
Noah 44788e8032 Prepare v0.1.0-alpha for release 2020-04-12 17:23:04 -07:00
Noah 3634577f19 Prepare v0.0.10-alpha for release 2019-07-17 18:22:59 -07:00
Noah 407ef7f455 Milestone: Screenshot to PNG Test Feature 2018-06-17 07:56:51 -07:00