Timothy Stiles
dece34f365
implement x5 Bonus
...
also make it so bonuses of 1mil+ are rendered reasonably in-game
(100bil+ starts breaking the results screen but I think that's lower priority)
2021-02-14 16:43:59 +11:00
Timothy Stiles
c27af789cb
Implement Hole and Cracked Floor
...
Hole: A bottomless pit. Destroys everything (except ghosts).
Cracked Floor: Turns into a hole when something steps off of it (except ghosts).
2021-02-14 15:12:21 +11:00
Timothy Stiles
1f6c86c146
Implement Electrified Floor
...
Conducts power (like a blue teleporter). While powered, destroys anything not wearing lightning boots (except dirt blocks).
2021-02-14 14:22:28 +11:00
Timothy Stiles
5cc5370817
Global Cyclers can cycle actors now too
2021-02-07 23:19:33 +11:00
Timothy Stiles
0100f1e12c
spaceify
2021-02-06 16:07:40 +11:00
Timothy Stiles
ba5d6c966c
Halo revive sound effect
2021-02-06 12:15:12 +11:00
Eevee (Evelyn Woods)
bf51cc2e0b
Only "mmf" once per attempted move
2021-01-25 17:22:12 -07:00
Eevee (Evelyn Woods)
b87ce730f2
Don't blow up players that start on mines by default; fixes CCLP4 #38
2021-01-25 16:54:09 -07:00
Eevee (Evelyn Woods)
69a344595c
Fix hints lingering forever
2021-01-22 08:46:23 -07:00
Eevee (Evelyn Woods)
54823f62bf
Add some more actor inspection to debug mode
2021-01-22 08:37:14 -07:00
Eevee (Evelyn Woods)
134270e3e3
Add a couple CC1 compat flags
2021-01-20 14:45:30 -07:00
Eevee (Evelyn Woods)
75d7691925
Add some more sound effects
2021-01-20 13:42:27 -07:00
Eevee (Evelyn Woods)
652e7e8108
Show time improvement on the level tally
2021-01-20 12:36:02 -07:00
Eevee (Evelyn Woods)
5653fc9c12
Change the "more" link text to bypass Vivaldi's fast forward feature
2021-01-16 02:58:11 -07:00
Eevee (Evelyn Woods)
b9037c1ce1
Remember last opened level in editor; prevent deleting the current level
2021-01-16 02:50:52 -07:00
Eevee (Evelyn Woods)
ac9b702eaa
Add controls for rearranging, duplicating, and deleting levels
2021-01-16 01:45:57 -07:00
Eevee (Evelyn Woods)
f89cccedb2
Pin the fflate version; 0.5.3 is unusable
2021-01-14 04:35:08 -07:00
Eevee (Evelyn Woods)
570fad84ab
Fix the player not being all the way on the exit when winning
2021-01-13 23:48:24 -07:00
Eevee (Evelyn Woods)
788e4ec3bc
Fix spacebar at the end of a level skipping the title screen for the next level
2021-01-13 23:43:54 -07:00
Eevee (Evelyn Woods)
fcab03f1d1
Fix some nits with the level browser header
2021-01-13 22:52:57 -07:00
Eevee (Evelyn Woods)
a91e1a831e
Track best score/clock/time separately; add a summary row to the level browser
2021-01-13 22:49:34 -07:00
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