Commit Graph

5687 Commits

Author SHA1 Message Date
Dustin Carlino
af9f9080a2 Some experiments to chop Seattle into some smaller pieces. Not used yet. 2020-12-06 21:25:22 -08:00
Dustin Carlino
4d56786289 Don't move faster diagonally 2020-12-06 19:49:59 -08:00
Dustin Carlino
4c947f05f6 Attempt more precise collision response, but it doesn't feel good, so
disable it
2020-12-06 19:24:19 -08:00
Dustin Carlino
b1811c21ab Add a progress bar for the initial .wasm loading. #377
It's now easier to understand the possibly slow downloading of the 80MB
.wasm.
2020-12-05 20:55:07 -08:00
Dustin Carlino
8e0a2ea8d5 Work on snow again 2020-12-05 18:42:22 -08:00
Dustin Carlino
139f442ba7 Flatten transforms in the Santa SVGs from Illustrator. The pitiful SVG
processing code in widgetry doesn't handle paths nested under groups
with transforms. To workaround, preprocess the SVGs:

1) Open in Inkscape
2) Click the problematic group
3) Menu "Path > Object to path"
4) Menu "Extensions > Modify path > Apply transform"

And scale down the two bike sprites
2020-12-05 17:57:46 -08:00
Dustin Carlino
9fb26eed0a Earn permanent upgrades by completing levels, show them on the title screen, add a flag to unlock everything for dev 2020-12-04 16:40:27 -08:00
Dustin Carlino
3b5aac7d7e Unlock levels in sequence 2020-12-04 16:19:31 -08:00
Dustin Carlino
df04fd7e18 Give SimpleApp a way to stash session-wide state. First use case is high scores for the experiment. 2020-12-04 15:08:15 -08:00
Dustin Carlino
c9809c805b Prepare to track high scores 2020-12-04 14:53:11 -08:00
Dustin Carlino
2ece6d0c05 Create a more interesting animation for delivery and refilling 2020-12-04 14:19:42 -08:00
Dustin Carlino
7381bd6b8d Add a time limit and a results screen. Make the upzone screen always
happen, use it as a place to prep the player before the level
2020-12-04 13:55:46 -08:00
Dustin Carlino
766fea1441 Prevent warping near bridges, and ban travel along light rail entirely 2020-12-03 21:04:38 -08:00
Dustin Carlino
97c5c45ca4 Add a basic boost mechanic 2020-12-03 20:36:35 -08:00
Dustin Carlino
12d0294692 Minimap tracker and new meters 2020-12-03 15:09:54 -08:00
Dustin Carlino
8531c8c773 Pick different vehicles, animate the player a bit 2020-12-03 14:23:30 -08:00
Dustin Carlino
2aaa7e4dee Split into multiple panels, add a pause screen, fix switching maps 2020-12-03 12:38:28 -08:00
Dustin Carlino
866d56ebcf Have a separate upzone phase before starting the level 2020-12-03 12:07:48 -08:00
Dustin Carlino
23222bd846 For the experiment, extract the code to color buildings based on type.
Also start to dismantle the old in-game upzone logic.
2020-12-03 11:32:37 -08:00
Dustin Carlino
544dda9c5c When looking for turn conflicts, treat reserved turns (created before
starting an uber-turn) the same as accepted turns, updating the
blocked-by graph and allowing a movement to start if a cycle is
detected.

No effect in montlake or lakeslice, and very slight progress at the
Krakow roundabout for #382 -- increasing a tiny 26 trips by 7:20 am.
2020-12-03 10:56:42 -08:00
Dustin Carlino
5dba8f5896 Make the blocked-by graph used for debugging and the API detect problems
from somebody about to start an uber-turn.
2020-12-03 10:21:43 -08:00
Dustin Carlino
ad37d612b4 Just attempt to reorganize code a little bit before a barrage of
changes.
2020-12-02 19:18:49 -08:00
Dustin Carlino
08d6f6987f Figure out when we pass a building along a road 2020-12-02 18:00:51 -08:00
Dustin Carlino
6a947ba3e9 Snap movement to roads. The collisions are funky, but it mostly works?
Temporarily breaks gameplay, because now we can't touch buildings.
2020-12-02 17:09:32 -08:00
Dustin Carlino
f57fb8f2f6 Run the experiment on the web 2020-12-02 13:44:10 -08:00
Dustin Carlino
0727619e18 Disable caching on Mac builds; something keeps breaking. [rebuild] 2020-12-02 13:20:43 -08:00
Dustin Carlino
a11646a6fc Overhaul building colors [rebuild] 2020-12-02 13:01:01 -08:00
Dustin Carlino
49459463b6 Add all the meters for the experiment. 2020-12-02 12:37:59 -08:00
Dustin Carlino
d37e86db6f Alter gameplay mechanics for the experiment after some playtesting sessions:
- no more last recharge station or cost to different houses
- energy based on presents carried
- instant recharge
2020-12-02 12:02:15 -08:00
Michael Kirk
727fe32fdd little typo in summaries table 2020-12-02 10:51:46 -08:00
Dustin Carlino
60117a64e8 Handle starting/ending in a zone when pathfinding, regardless of Dijkstra/CH implementation. #411
The import bug in Münster is still happening though! Still digging in.
(But regardless, this change fixes some old technical debt)
2020-12-02 10:42:01 -08:00
Dustin Carlino
17e850908c Reorganizing pathfinder code to prepare for sharing the start/stop-in-a-zone logic between the CH and Dijkstra implementation. #411 2020-12-02 09:22:16 -08:00
Dustin Carlino
69b14e444f Simpler abstutil APIs: return string errors immediately, don't make callers transform. We don't need to distinguish different error types anywhere. 2020-12-02 08:44:07 -08:00
Dustin Carlino
01737ea0c5 Update prebaked data after #412 2020-12-01 19:22:32 -08:00
Michael Kirk
09e484b2a3 change default log level 2020-12-01 19:20:53 -08:00
Michael Kirk
ddfaf73eae Improve lane changing vis-a-vis uber turns.
1. Allow lane changing in an uber turn. Because of the way uber turns
   work, we lock in and commit to all the lane changes just before
   entering the uber turn.
2. Avoid overzealous lane changing by combining number-of-lanes-crossed
   and numer-of-vehicles-in-lane into a single cost, rather than always
   preferring the least  number-of-vehicles-in-lane.
3. Don't lane-change unless the candidate lane's cost is strictly better
   than the current lane cost.
2020-12-01 19:20:53 -08:00
Michael Kirk
dab38e36ac fixup! map_err -> or_else 2020-12-01 17:49:41 -08:00
Michael Kirk
9ebd939b3f map_err -> or_else 2020-12-01 17:49:41 -08:00
Michael Kirk
4a9cfab935 fallback for shader versions 2020-12-01 17:49:41 -08:00
Michael Kirk
4f2cf1a714 context builder fallbacks 2020-12-01 17:49:41 -08:00
Dustin Carlino
30ce82bd3c Collapse get_pathfinding_request from TripSpec into start_trip. Avoids double-calculating paths (for driving trips, because of capping) and consolidates logic a bit more. #258 2020-12-01 16:42:36 -08:00
Dustin Carlino
14fd697282 Collapse/consolidate some logic involving DrivingGoal and TripEndpoint. #258 2020-12-01 16:04:48 -08:00
Dustin Carlino
d0b25d3530 Slightly refactor spawning cars during trip transitions #258 2020-12-01 15:30:17 -08:00
Dustin Carlino
4f764d6b87 Plumb options for delaying capped trips, instead of cancelling. Don't actually handle it yet. #325 2020-12-01 14:37:55 -08:00
Dustin Carlino
675427f940 Track the direction the player is facing when moving around. And...
hello, Santa.
2020-12-01 13:06:27 -08:00
Dustin Carlino
57963126fa Fold number of housing units into Building; ditch the extra file approach. 2020-12-01 12:43:19 -08:00
Dustin Carlino
2ebaf99e0d A fresh attempt at finding the root causes of gridlock map-wide 2020-12-01 10:50:05 -08:00
Dustin Carlino
b5ea263fc1 Expose the blocked-by graph through the API, and add root-cause analysis
to the UI debugger. #392
2020-11-30 17:01:15 -08:00
Dustin Carlino
8501ec70f9 Make the blocked-by graph more exploreable. Remove older debug code that
did something similar. #392
2020-11-30 15:15:13 -08:00
Dustin Carlino
6dd14c8bed Don't crash when jumping to nonexistent trip or when clicking
follow/unfollow for a trip without an agent.
2020-11-30 14:20:37 -08:00