Eevee (Evelyn Woods)
22f78f171c
Fix counting of aidless levels; remove total_time
2021-01-13 22:12:53 -07:00
Eevee (Evelyn Woods)
5df34712b6
Plurals
2021-01-13 21:56:34 -07:00
Eevee (Evelyn Woods)
db9ef8e51d
Show something useful for old save files
2021-01-13 21:51:25 -07:00
Eevee (Evelyn Woods)
3aec2b1fe6
Spruce up stock pack list with previews, progress bar
2021-01-13 21:49:01 -07:00
Eevee (Evelyn Woods)
ed814cbf60
Add a compat flag for the MSCC ice patch behavior
2021-01-13 01:55:04 -07:00
Eevee (Evelyn Woods)
1650a3fc94
Add new, smoother pulling behavior as the Lexy default
2021-01-13 01:46:47 -07:00
Eevee (Evelyn Woods)
b6ed3b6502
Change the Lexy loop to be more Lynx-like
...
This simplifies the renderer by having movement cooldowns only work one
way, and thus removes the jank from Steam rendering.
This commit also applies cooldowns for animations at decision time, as
Lynx does, which eliminates a weird special case from their spawning.
Also, Lexy mode now explicitly does not allow an actor to get cooled
twice in one tic. However, this change does make clone machines no
longer be aligned with the thing that pressed the button to clone them,
which is unfortunate.
2021-01-13 01:34:08 -07:00
Eevee (Evelyn Woods)
0f6f912055
Fix spacebar being eaten by Vivaldi, and repeated arrow keys causing scrolling
2021-01-11 18:10:34 -07:00
Eevee (Evelyn Woods)
602f16be8c
Update auto-scaling to match new DOM; introduce a landscape layout with more vertical space
2021-01-11 18:06:09 -07:00
Eevee (Evelyn Woods)
83f0ac9813
Always update the total levels in a pack when saving scores
2021-01-11 01:34:14 -07:00
Eevee (Evelyn Woods)
73fff50a00
Reduce the amount of mmfing allowed in a row
2021-01-11 01:34:04 -07:00
Eevee (Evelyn Woods)
2f9b0c1154
Add obituaries for CC2 monsters, and give existing causes a few more
2021-01-11 01:33:52 -07:00
Eevee (Evelyn Woods)
fbf3cb5ae2
Add a WIP version of Lexy's Lessons as a canon pack
2021-01-11 00:57:50 -07:00
Eevee (Evelyn Woods)
6a6a3a212e
Show time and level count in the splash's list of editor packs
2021-01-11 00:17:40 -07:00
Eevee (Evelyn Woods)
69296dff67
Make ending more readable, less CPU-heavy
2021-01-09 12:46:43 -07:00
Eevee (Evelyn Woods)
723af175cb
Add ending artwork
2021-01-09 03:05:50 -07:00
Eevee (Evelyn Woods)
bfacde7525
Do something vaguely interesting when the game ends
2021-01-08 22:38:48 -07:00
Eevee (Evelyn Woods)
fc6b7472b6
Fix some subtle issues with changing tilesets twice in one session
2021-01-08 15:31:25 -07:00
Eevee (Evelyn Woods)
67c53f97dd
Show the level title and author (if available) on start
2021-01-07 18:18:51 -07:00
Eevee (Evelyn Woods)
f389f4d027
Fix disabling the next-level button
2021-01-07 14:01:24 -07:00
Eevee (Evelyn Woods)
f788f7a892
Apply a quick hack to fix ?level URLs being blank
2021-01-06 19:09:57 -07:00
Eevee (Evelyn Woods)
f35da9cc2b
Finally populate the options dialog, with volume controls and tileset selection
2021-01-06 19:04:28 -07:00
Eevee (Evelyn Woods)
04940ff42c
Finally fix display of long hints
2021-01-05 23:46:00 -07:00
Eevee (Evelyn Woods)
999467bb1f
Ignore spurious kinds of keydown events
2021-01-05 22:07:04 -07:00
Eevee (Evelyn Woods)
0ba112aec5
Don't gripe about VFX erasing each other; that's a feature
2021-01-05 21:04:09 -07:00
Eevee (Evelyn Woods)
5c1b2dbd9d
Update hint when switching players; parse the keybind placeholders
2021-01-05 20:44:11 -07:00
Eevee (Evelyn Woods)
aed96c8e41
Add a bunch of minor rendering stuff
...
- Added the active player background
- Added bomb fuses (though LL doesn't use them)
- Added CC2-style double-size blob and walker (though LL doesn't use them)
- Added the rover's directional overlay
- Added custom push animations
- Added custom bouncing heart animations
- Added a puff when opening a door or socket, or revealing a fake floor
- Fixed the rover's animations being a bit mixed up
- Fixed player walk animations occasionally being glitchy
- Touched up the fake floor x-ray tile
- Touched up the canopy x-ray tile
- Touched up the purple ball's shadows
- Touched up the transmogrifier and transmogrify flash
2021-01-05 17:10:21 -07:00
Eevee (Evelyn Woods)
fda1c6c66e
Fix drag and drop with directories; improve drop zone
2021-01-04 12:56:30 -07:00
Eevee (Evelyn Woods)
323ed3ee18
Refactor to using cells with fixed slots
...
This better matches CC2 behavior and also makes some very common
operations, like grabbing a cell's actor or terrain, way faster.
It also allows me to efficiently implement CC2's layer order when
checking for collisions; thin walls are checked before terrain, and
actors only afterwards. The upshot is that bowling balls no longer
destroy stuff on the other side of a thin wall!
I also did some minor optimizing, mostly by turning loops over an entire
cell's contents into checks for a single layer; Chromium now performs a
bulk test about 30% faster.
Downsides of this change:
- All kinds of stuff may have broken!
- It'll be a little difficult to ever emulate MSCC's curious behavior
when stacking terrain on top of items or other terrain. But not
impossible.
- It'll be far more difficult to emulate buggy Lynx (or maybe it's just
Tile World?) behavior where some combination of cloners and teleports
allow a ton of monsters to accumulate in a few cells. I guess I
wasn't planning on doing that anyway.
2021-01-03 17:19:27 -07:00
Eevee (Evelyn Woods)
9cf2b82c8e
Change the bulk test results into a (slightly more compact) table
2021-01-03 13:48:11 -07:00
Eevee (Evelyn Woods)
0e1bd91075
Add a bunch more sound effects
2021-01-03 13:07:15 -07:00
Eevee (Evelyn Woods)
29df283f80
Add support for zlib-compressed levels in URLs
2021-01-01 22:09:49 -07:00
Eevee (Evelyn Woods)
c55a415099
Support drag and drop with a single CCL or ZIP
2021-01-01 18:25:20 -07:00
Eevee (Evelyn Woods)
1b55e82061
Add CC2LP1; streamline the splash page, moving most of the text to the GitHub wiki
2021-01-01 18:18:50 -07:00
Eevee (Evelyn Woods)
aac1e09c72
Add support for pgchip's magic number and ice block encoding
2021-01-01 17:11:11 -07:00
Eevee (Evelyn Woods)
0d35274d6a
Add support for loading CC2 ZIPs, and parse out C2G game titles
2021-01-01 15:26:33 -07:00
Eevee (Evelyn Woods)
83793603d3
Improve interactions between turn-based mode and tic navigation
2021-01-01 13:10:48 -07:00
Eevee (Evelyn Woods)
c8686f9d66
Copy a level's title to the right places in the editor so it shows in the level browser
2021-01-01 12:44:20 -07:00
Eevee (Evelyn Woods)
4454970564
Split up the Steam loop into begin/finish parts to match what turn-based mode expects
2020-12-31 18:01:40 -07:00
Eevee
f0cd4d3c5a
Merge pull request #22 from Patashu/master
...
fix turn-based mode
2020-12-31 17:23:24 -07:00
Eevee (Evelyn Woods)
130b917c81
Lazily load the level in the player and editor, so an unplayable level doesn't break the editor too
2020-12-30 18:21:21 -07:00
Eevee (Evelyn Woods)
de53582d47
Fix perception and use it to implement the xray eye
2020-12-29 20:42:53 -07:00
Timothy Stiles
f6a79456e9
fix turn-based mode
2020-12-30 13:01:01 +11:00
Eevee (Evelyn Woods)
63f09283ea
Make actors explode when starting the level on a bomb
2020-12-29 07:21:18 -07:00
Eevee (Evelyn Woods)
fa47c28136
Fix some omissions with saving stats for custom level packs
2020-12-28 10:20:08 -07:00
Eevee (Evelyn Woods)
d4fab4fba2
Restart a "waiting" level when changing compat mode; adjust player state when navigating with debug panel
2020-12-27 07:07:55 -07:00
Eevee (Evelyn Woods)
09c1976608
Make the bulk tester more aggressive (any more shows no further time gain)
2020-12-26 02:02:24 -07:00
Eevee (Evelyn Woods)
1a7dc3e737
Implement a couple more compat flags and fix some typos with the dialog
2020-12-24 06:30:22 -07:00
Eevee (Evelyn Woods)
1968420027
Improve the pack handling experience somewhat
...
- Include links for the stock packs
- Show completion amount and total time for played packs
- Expose a list of all other packs the player has played
- Allow forgetting a pack
- Jump to the current level when reopening a pack
- Highlight the current level in the level browser, and scroll to it
2020-12-24 05:36:57 -07:00
Eevee (Evelyn Woods)
a8800838d4
Add a loading and error screen; also include compat CSS oops
2020-12-24 03:38:13 -07:00
Eevee (Evelyn Woods)
756a563135
Add a (working!) compatibility dialog, and a ruleset dropdown to the bulk tester
2020-12-24 01:51:27 -07:00
Eevee (Evelyn Woods)
2381bd38b9
Add compat switches for using the CC2 timing and update order
...
Other gameplay changes/fixes that crept in:
- Ghosts no longer pick up red keys
- Doppelgangers now read their movement directly from players, so no
intermediate variables are necessary
- Spring mining is no longer possible
- Push recursion is detected and prevented
- Bowling balls will also blow up anything that runs into them
2020-12-23 04:30:10 -07:00
Eevee (Evelyn Woods)
077a809168
Possibly fix update rate to be more consistent
2020-12-20 20:23:59 -07:00
Andrew Ekstedt
8986a497fd
Disable undo during bulk testing
...
Undo generates a lot of garbage. Faster not to.
CC1 bulk test on my laptop:
Firefox 77 speeds up from 61s to 41s
Chrome barely moves, from 34s to 28s
2020-12-19 19:12:28 -08:00
Eevee (Evelyn Woods)
148beb7d74
Implement all-players-exit behavior; touch up locks, buttons, logic gates; fix demo saving
2020-12-19 17:16:50 -07:00
Eevee (Evelyn Woods)
48f085d0df
Remove Level.cells in favor of linear_cells
2020-12-17 15:51:57 -07:00
Eevee (Evelyn Woods)
2fa35336cb
Allow running in debug mode automatically when run from localhost
2020-12-17 14:47:30 -07:00
Andrew Ekstedt
cf90c7ac67
Minor quality of life improvements for the bulk tester
...
- Jump to result by clicking on the progress bar
- Include level titles in the progress bar hover text
Makes it a little easier to navigate lengthy test results.
2020-12-16 21:51:14 -08:00
Eevee (Evelyn Woods)
af7d2c741b
Give the bulk tester a category for early exit
2020-12-16 01:38:45 -07:00
Eevee (Evelyn Woods)
f0e702e397
Fix display of errored levels in bulk tester
2020-12-16 00:12:43 -07:00
Andrew Ekstedt
55bf250c63
Add grade report to the bulk tester
2020-12-15 20:08:35 -08:00
Eevee (Evelyn Woods)
7c82a4cdf9
Only do CC2 actions per press, not per held tic
2020-12-15 01:07:02 -07:00
Eevee (Evelyn Woods)
0f02e270f2
Catch level parse errors in the bulk test dialog
2020-12-15 00:55:40 -07:00
Eevee (Evelyn Woods)
2d7df413ee
Allow ghosts to pass through thin walls
2020-12-14 23:59:38 -07:00
Eevee (Evelyn Woods)
beb5a5c743
Change the debug mode trigger to a regular click
2020-12-14 17:02:14 -07:00
Eevee (Evelyn Woods)
f3f73a5e41
Move input handling into Level and clean it up a ton; add a bulk test gizmo
2020-12-14 17:02:14 -07:00
Eevee (Evelyn Woods)
c8ed4b9fba
Fix the spelling of Chuck Sommerville's name lol whoops
2020-12-13 20:43:01 -07:00
Eevee (Evelyn Woods)
1c9dee1213
Add support for recording replays, with a bunch of refactoring along the way
2020-12-13 20:36:12 -07:00
Eevee (Evelyn Woods)
077ac65650
Restore turn-based mode
2020-12-12 18:16:52 -07:00
Eevee (Evelyn Woods)
299b1578a7
Mostly revert actor loop reorg
...
I was right the first time, and I've proven it to myself now. I
originally made the change because I couldn't see any other way to fix
the ICEBERG replay from Steam CC1, but now, I do!
2020-12-12 17:57:47 -07:00
Eevee (Evelyn Woods)
413fdce590
Rejigger input parsing to be stateless and better match CC2; syncs SCAVENGER HUNT!
2020-12-12 01:08:08 -07:00
Eevee (Evelyn Woods)
c17169f49d
Rearranged debug panel a bit; added progress bar for replay playback
2020-12-11 22:15:39 -07:00
Eevee (Evelyn Woods)
fde7d9a11c
Remove some old stuff; stub out replay progress bar
2020-12-11 21:40:40 -07:00
Eevee (Evelyn Woods)
fec09c03ba
Support running the game at ludicrous speed
2020-12-11 21:31:07 -07:00
Eevee (Evelyn Woods)
0f0c7437a6
Allow rewinding a replay without desyncing it
2020-12-11 21:14:19 -07:00
Eevee (Evelyn Woods)
a96c089d7f
Move the debug panel to a sidebar
2020-12-11 19:43:22 -07:00
Eevee (Evelyn Woods)
b8dd0ae41e
Add a delay before restarting a failed level by tapping the viewport
2020-12-11 14:39:14 -07:00
Eevee (Evelyn Woods)
75e981335f
Restore the input viewer
2020-12-11 14:25:02 -07:00
Eevee (Evelyn Woods)
5572b3e692
Implement viewport size override debug setting
2020-12-10 18:53:23 -07:00
Eevee (Evelyn Woods)
b75253a249
Rearrange actor loop to put movement advancement at the end
...
I don't know why I ever thought this was a separate pass; I think it was
just the easiest way to make smooth scrolling work when I first
implemented it on like day 2. Turns out it wasn't ever correct and has
all manner of subtle implications I'll be sorting out for ages.
This does make the turn-based stuff //way// simpler, though.
2020-12-10 18:51:40 -07:00
Eevee (Evelyn Woods)
831a9392e3
Fix debug icon URL in prod
2020-12-10 13:54:59 -07:00
Eevee (Evelyn Woods)
db2a24319d
Fix lightning bolt; implement speed boots
2020-12-09 20:52:58 -07:00
Eevee (Evelyn Woods)
b01d50c7e8
Move replay support into the debug panel
2020-12-09 20:36:13 -07:00
Eevee (Evelyn Woods)
829184056e
Fix activating debug mode before loading a level
2020-12-08 17:54:21 -07:00
Eevee (Evelyn Woods)
35bbac9c99
Change the debug trigger to something more accessible
2020-12-08 17:46:48 -07:00
Eevee (Evelyn Woods)
f521bd6d2d
New debug options: disable interpolation, show actor bboxes
2020-12-08 16:40:35 -07:00
Eevee (Evelyn Woods)
9735ef93e9
Fix being unable to click the CC2 action buttons more than once
2020-12-08 11:24:59 -07:00
Eevee (Evelyn Woods)
c4bb1f3df1
Editor: Add a dedicated level browser with previews, and a button to add a new level
2020-12-06 20:57:02 -07:00
Eevee (Evelyn Woods)
e754e483ec
Update the pack name when changing it in the editor
2020-12-06 19:23:19 -07:00
Eevee (Evelyn Woods)
aeac5c285b
Finally add and wire up most of the debug panel
2020-12-06 18:51:12 -07:00
Eevee (Evelyn Woods)
4838bb189b
Fix keys accumulating while paused
2020-12-06 16:23:43 -07:00
Eevee (Evelyn Woods)
076aa9133a
Improve splash page slightly; add pack saving in editor
2020-12-06 14:03:36 -07:00
Eevee (Evelyn Woods)
87ac6f94a3
Editor: More tiles; more metadata; save hints, more or less
2020-12-03 21:19:47 -07:00
Eevee (Evelyn Woods)
8505b132bb
Fix some minor bugs introduced into turn-based mode
2020-12-03 21:17:50 -07:00
Eevee (Evelyn Woods)
3c43b8d7cd
Respect a level's intended viewport size
2020-12-03 17:49:02 -07:00
Eevee (Evelyn Woods)
411005eaa6
Editor: Stub out support for actually saving levels
2020-12-03 15:40:44 -07:00
Eevee (Evelyn Woods)
c1452e005f
Disable action buttons when appropriate; add inv overflow; partial CC1 support
2020-12-02 17:23:55 -07:00
Eevee (Evelyn Woods)
e51665b612
Add basic support for drop/cycle/swap
2020-12-02 17:18:54 -07:00
Eevee (Evelyn Woods)
349af15e05
Fix being stuck in rewind mode forever when using the button
2020-11-25 03:59:57 -07:00
Eevee (Evelyn Woods)
fb301b3b3e
Initialize direction when placing actor tiles in the editor
2020-11-23 22:18:40 -07:00