Compare commits

...

170 Commits

Author SHA1 Message Date
2efa7a4df5 feat: manually download tailwindcss cli, only check for emsdkDir if not activated 2025-08-08 11:04:31 -05:00
1d018db5e9 ci: handle pre-activated emsdk 2025-08-08 10:15:43 -05:00
023697dcd7 fix: use bun and web.build.ts in build workflow, use minify & cwd args for tailwindcss cli 2025-08-08 10:10:57 -05:00
87ee12543e tests: revamp tests, remove more useless tests 2025-08-08 09:07:10 -05:00
b308bc0ef7 refactor: move all tests out of src/ into tests/, remove unnecessary tests 2025-08-08 08:50:52 -05:00
9d5ca54234 fix: improved frontend web interface, use tailwind cli 2025-08-08 00:20:38 -05:00
2ae73c3c58 fix: disable app quit on browser build 2025-08-07 23:44:26 -05:00
adfa2cc737 feat: edge traversal permissions system 2025-08-07 23:39:39 -05:00
7c937df002 docs: add build notes to README 2025-08-07 23:26:48 -05:00
9fb9c959a3 refactor: ensure emsdk dir exists before issuing commands 2025-08-07 23:20:12 -05:00
61ebc8f317 chore: fixup .gitignore 2025-08-07 23:00:03 -05:00
b7f668c58a feat: revamp web build script in bun + typescript, delete old scripts 2025-08-07 22:59:51 -05:00
b1021c28b5 chore: remove unused door/map.png/build.css 2025-08-07 22:58:38 -05:00
7d6f92283a docs: update README with badges, remove unnecessary install details, change workflow names 2025-07-28 21:09:42 -05:00
2a295b1daf test: small test lint fixes 2025-07-28 20:55:45 -05:00
4398ec2936 chore: fix clippy errors, add allow dead_code modifiers 2025-07-28 20:53:01 -05:00
324c358672 refactor: remove StartingPosition MapTile, track pacman start explicitly in parser 2025-07-28 20:49:17 -05:00
cda8c40195 test: allow mute state updates while audio subsystem is disabled 2025-07-28 20:48:13 -05:00
89b4ba125f feat: begin tracking nodes of entity starting positions 2025-07-28 20:41:26 -05:00
fcdbe62f99 feat: allow graceful disabling of audio subsystem in background 2025-07-28 20:38:16 -05:00
57c7afcdb4 ci: emit warnings on retry attempts in emscripten build 2025-07-28 20:25:13 -05:00
2e16c2d170 ci: add retry mechanism for emscripten builds due to dependency hash errors in sdk 2025-07-28 20:18:28 -05:00
f86c106593 test: switch to llvm-cov for coverage, switch to cargo-nextest as test runner 2025-07-28 19:59:40 -05:00
04cf8f217f test: add generic tests for coverage 2025-07-28 19:48:31 -05:00
7e0ca4ff3d test: disable fail-fast by default 2025-07-28 19:43:16 -05:00
fcc36c8a46 test: add tons of tests for all easy submodules 2025-07-28 19:26:36 -05:00
41affcd7ad test: add tests for centered_with_size 2025-07-28 18:52:34 -05:00
4ecfded4ac refactor: center Rect with centered_with_size helper 2025-07-28 18:47:24 -05:00
25d5121a28 ci: correct toolchain matrix args 2025-07-28 18:32:13 -05:00
91095ed2cc ci: switch tarpaulin output to lcov format 2025-07-28 18:28:43 -05:00
cbf52bb994 ci: add 'rustfmt' component for test workflow 2025-07-28 18:13:23 -05:00
d763b9646f chore: 'node' runner on emscripten target 2025-07-28 18:08:47 -05:00
d7a9e0a304 ci: update most toolchains to 1.88, keep emscripten on 1.86.0 2025-07-28 18:08:29 -05:00
db720edeef ci: move comment breaking up 'rustflags' for coverage linking 2025-07-28 18:05:54 -05:00
f241e85d8f ci: set rustflags for cargo-tarpaulin build linking 2025-07-28 17:32:53 -05:00
d18b414536 ci: add 'clippy' component to test workflow 2025-07-28 17:28:47 -05:00
c9bcf32381 chore: fix various clippy warnings, disable trivial warnings in some spot 2025-07-28 17:25:18 -05:00
b45980c172 ci: only deploy to pages on master pushes 2025-07-28 17:09:21 -05:00
b4e3f383ec ci: add audit, test & coverage workflows 2025-07-28 17:09:06 -05:00
532abd1e45 chore: remove unused params for debug_render_nodes func 2025-07-28 16:22:48 -05:00
70528b0dcc refactor: separate map struct into multiple files for building, rendering & parsing 2025-07-28 16:20:24 -05:00
c5ca7302c2 refactor: separate map parsing into MapTileParser, get tests working 2025-07-28 16:10:50 -05:00
a27f85279e feat: working perfect tunnels with offset house positioning nodes 2025-07-28 14:34:24 -05:00
bea915b5c7 docs: post-creation neighbor edges, no ignore result err 2025-07-28 13:25:51 -05:00
d743aee393 refactor: better graph connection functions & creation method, debug render connections 2025-07-28 13:23:12 -05:00
59aba9f691 fix: remove emscripten main_loop_callback targeted code 2025-07-28 12:48:10 -05:00
199b4dc939 refactor: static intersection struct for calculating edges instead of smallvec 2025-07-28 12:44:54 -05:00
2edd23cfbb docs: add all latest developments to STORY.md 2025-07-28 12:25:56 -05:00
464d6f9ca6 refactor: huge refactor into node/graph-based movement system 2025-07-28 12:23:57 -05:00
413f9f156f refactor: continue working on ghost house implementation, other stuff 2025-07-27 12:15:11 -05:00
4f87a116d5 chore: remove unused code, resolve simple stuff 2025-07-26 15:35:50 -05:00
86ffc931e8 fix: re-provide specific blue color to maze texture 2025-07-26 15:31:15 -05:00
d72f47d66c fix: fix tunneling logic 2025-07-26 15:27:17 -05:00
7a6182cb85 feat: re-add board offset logic, fixup text rendering 2025-07-26 15:26:37 -05:00
a1d37a1a0b feat: atlas tile color modulation 2025-07-26 15:06:27 -05:00
9066b2cdbc chore: allow deadcode in asset.rs due to emscripten builds 2025-07-26 14:43:43 -05:00
238b5aac6a feat: non-ttf text rendering using original sprite text, remove black bg from assets 2025-07-26 14:43:25 -05:00
8e5ec9fef0 refactor: huge refactor into atlas-based resources 2025-07-26 14:42:12 -05:00
6ca2e01fba feat: atlas decoding & frame acquisition 2025-07-25 12:27:19 -05:00
8cf30cd78d refactor: begin moving towards packed atlas configuration 2025-07-25 12:24:40 -05:00
9b441fa35c feat: shared blinking textures for power pellets 2025-07-24 16:23:09 -05:00
61ca537909 fix: continue removing lifetime annotations 2025-07-24 16:09:25 -05:00
0a82aea922 refactor: intentionally unsafe leak to drop annoying lifetimes, use IVec2 in all remaining spots 2025-07-24 16:04:47 -05:00
f41c550bb8 feat: enable basic binary size reduction options 2025-07-24 15:39:16 -05:00
829462d3b6 refactor: move direction & edible into entity submodule 2025-07-24 12:48:39 -05:00
002da46045 refactor: split up and move texture-related code into src/texture submodule 2025-07-24 12:48:39 -05:00
cfa73c58a8 refactor: move entity-related code into src/entity submodule 2025-07-24 12:36:48 -05:00
5728effcc6 chore: bump to v0.2.0 2025-07-24 12:14:26 -05:00
fa1a0175b0 ci: remove save-always, remove old vcpkg cache key, flush vcpkg caches 2025-07-24 03:29:22 -05:00
85edb18380 ci: drop linux dependencies: build-essential gettext zlib1g-dev 2025-07-24 03:26:05 -05:00
3a535ee04f fix: linux build linking arg, working build 2025-07-24 02:59:58 -05:00
9b31b392d2 fix(wasm): increase asyncify stack size, working wasm build 2025-07-24 02:39:57 -05:00
999fa14059 chore: remove unused config.toml comments 2025-07-24 02:37:49 -05:00
e925376b7a feat: setup emscripten module for api layer 2025-07-24 02:37:41 -05:00
2596034365 feat: use smallrng for emscripten compat 2025-07-24 02:37:27 -05:00
163855b6e7 fix(wasm): increase audio chunksize to 256 minimum for emscripten audio ctx 2025-07-24 01:14:03 -05:00
645d48aeae ci: use updated setup-emsdk from 'pyodide' v15, fixes emsdk caching, always save vcpkg cache 2025-07-24 01:12:45 -05:00
ec800a88fc fix: use sdl2 internal methods for loading resources for emscripten asset handling 2025-07-24 01:07:22 -05:00
abc37dee4e ci: fix vcpkg cache keys to use target for platforms with multiple targets, allow restore oldkey 2025-07-24 01:04:21 -05:00
1ae7839275 ci: install zlib for linux builds, correct deps/.data filepath 2025-07-24 01:04:21 -05:00
d976d1bc59 ci: specify vcpkg triplets for macos targets 2025-07-24 00:49:22 -05:00
531a5b5d05 ci: inline build script contents, shorten assembly process, separate build/assemble steps 2025-07-24 00:48:49 -05:00
67713fab06 ci: add aarch64-apple-drawin target 2025-07-24 00:46:06 -05:00
b572729e9d feat: reorganize assets/ folder into web/ and game/ 2025-07-24 00:46:06 -05:00
cdc6979458 ci: add cache vcpkg step, remove ineffective apt pkgs 2025-07-24 00:09:43 -05:00
564f88fee5 ci: use proper vcpkg triplet for linux, macos 2025-07-24 00:09:43 -05:00
00c99dc05f ci: remove 'stable' from vcpkg target triplet key 2025-07-23 23:55:15 -05:00
1e12940445 docs: remove unused markdown files in root 2025-07-23 23:24:30 -05:00
dc3c4a7580 ci: VCPKG_SYSTEM_LIBRARIES off, cache emsdk, raw jq output 2025-07-23 23:23:41 -05:00
434b62b036 ci: use cargo metadata with jq for acquiring workspace package version, drop binstall 2025-07-23 23:12:58 -05:00
2bd523e58a ci: add build-essential dependency, apt-get update before 2025-07-23 23:05:06 -05:00
7cd6e8005e ci: add names to workflow jobs, configure binstall to have lower timeout 2025-07-23 22:58:09 -05:00
a8a3745ca1 ci: disable fail-fast, ensure linux vcpkg dependencies are installed 2025-07-23 22:46:57 -05:00
cfa26bf146 ci: use build matrix for desktop builds 2025-07-23 22:45:56 -05:00
bfbbb71752 ci: verbose vcpkg builds on linux 2025-07-23 22:30:11 -05:00
979f736f54 ci: drop rust toolchain to 1.86.0 2025-07-23 22:26:08 -05:00
5a7f6a4c10 ci: remove archive assembly steps for statically linked builds 2025-07-23 22:22:55 -05:00
b66c9ce135 fix: emscripten assets 2025-07-23 22:18:54 -05:00
f5363516c3 chore: remove unused sdl2-image vcpkg features 2025-07-23 21:53:55 -05:00
320da36b83 feat: use cargo-vcpkg in build workflow 2025-07-23 21:53:03 -05:00
b68813cf5b ci: explicit toolchain version, fix build script path for wasm 2025-07-23 21:53:03 -05:00
0806fc744c chore: remove unused animation pausing methods 2025-07-23 21:34:27 -05:00
eead31d7fc refactor: add 'glam' for better positioning types, drop position types 2025-07-23 21:24:47 -05:00
eaa4ab37f9 feat: add audio muting button, mute by default in debug builds 2025-07-23 21:00:52 -05:00
076275158e chore: lower audio tracing to trace level 2025-07-23 20:36:56 -05:00
9f9ace0b16 chore: configure rustfmt, switch to LF line endings 2025-07-23 20:15:54 -05:00
2cc47d5904 feat: add pre-comit configuration 2025-07-23 20:12:11 -05:00
11e89a63d0 refactor: add thiserror/anyhow for asset error handling 2025-07-23 19:47:44 -05:00
50afd8c09f feat: improved emscripten-compatible asset loading api 2025-07-23 18:02:19 -05:00
06841fd0d7 refactor: resolve clippy warnings, resolve shared reference with once_cell 2025-07-23 17:38:27 -05:00
4365639a1d chore: lifetimes 2025-07-23 17:31:16 -05:00
7744c06046 chore: cargo fix 2025-07-23 17:27:22 -05:00
978752f0f3 chore: add index for FruitType sprite 2025-07-23 17:25:39 -05:00
f024ce7a54 refactor: fix unnecessary qualified imports 2025-07-23 17:25:28 -05:00
0196282a78 fix: reset code borrows 2025-07-23 17:20:12 -05:00
785a760343 feat: new edible type for pellet/powerpellet, fruits, separate static/moving entities 2025-07-23 17:16:15 -05:00
de1a89b9b0 refactor: move debug related code into debug.rs 2025-07-23 16:31:09 -05:00
66b6cdf01b feat: split animated texture away from atlas texture details 2025-07-23 16:25:40 -05:00
5a48e83b1a feat: flood-filled based playable position with cache, debug mode 2025-07-23 15:06:38 -05:00
df8f858651 refactor: continue improving MovableEntity shared implementation 2025-07-23 15:06:09 -05:00
1fa7a0807f refactor: abstract entity details into MovableEntity 2025-07-23 14:08:28 -05:00
6d3d3bf49c feat: tunnel implementation, pathfinding debug mode 2025-07-22 14:37:26 -05:00
0a46f64866 feat: pathfinding, ghost and blinky state, update dependencies 2025-07-22 13:18:09 -05:00
fd7eecf53e feat: allow instant direction reversal, improve cell position state tracking 2025-07-22 12:12:41 -05:00
f540dc5373 docs: minor documentation commentsa cross project 2025-07-22 12:12:41 -05:00
f51a3ddeb0 chore: web frontend files 2025-07-22 10:06:30 -05:00
9f7c460369 chore: ignore ephemeral submodules, build.css 2025-07-22 10:06:13 -05:00
2c0df99dea fix: emscripten libc, dynamic feature targets for emscripten, vcpkg triplets for linux 2025-07-22 10:05:07 -05:00
cf12a04c69 chore: use emscripten linker args direct from demo project 2025-07-22 09:19:46 -05:00
fa7e985c0d feat: embedded data files, audio effects processing 2025-07-21 22:30:40 -05:00
f5ff90cb11 feat: smarter winapi-based console window handling 2025-07-21 21:54:22 -05:00
a0f65b551c feat: board reset, store original map matrix 2025-07-18 20:21:16 -05:00
8808a1aa3b feat: pellet consumption, score & map mutation 2025-07-18 20:15:50 -05:00
62b2c607a9 feat: ttf score rendering, konami font 2025-07-18 20:07:50 -05:00
14b34db6de feat: enable sdl2 gfx feature, update sdl2, use vcpkg for library builds 2025-07-18 19:30:57 -05:00
9238b53c40 refactor: simplify/improve is_adjacent, add tests & docs 2025-07-18 19:28:39 -05:00
3e498ee5c3 feat: pull latest rust-sdl2-emscripten build workflow 2025-06-17 12:00:59 -05:00
715eeb6296 docs(story): sdl2 mixer + gfx extensions, cross platform 2025-06-17 11:54:13 -05:00
682ce059fa docs(story): SDL2-TTF 2025-06-17 11:54:13 -05:00
c8314b23dd docs(story): long break, emscripten callback main loop, asyncify, vsync 2025-06-17 11:54:13 -05:00
40acffafd1 fix: rebuild, try removing zero ms sleeps 2025-06-17 11:54:13 -05:00
2187212b7c chore: increase speed, no modulation, increase animation speed 2025-06-17 11:54:13 -05:00
229d2242ef fix: minor comments, disable accelerated, use std sleep on web builds 2025-06-17 11:54:13 -05:00
00c4c76299 chore: add ogg/vorbis comment for emscripten 2025-06-17 11:54:13 -05:00
8b30a602bf fix: remove idbfs.js inclusion linker arg 2025-06-17 11:54:13 -05:00
83a5ccdb8e chore: delete emscripten.rs 2025-06-17 11:54:13 -05:00
44d8184d8b feat: downloading in Windows build process, cleaning script 2025-06-17 11:54:13 -05:00
0630fc56ec fix: key stealing, disable Emscripten module, disable colored ANSI for emscripten builds 2025-06-17 11:54:13 -05:00
98d8960c57 docs(story): begin documenting project story/history 2025-06-17 11:54:13 -05:00
394344c11f docs: experimental scoreboard concept 2025-06-17 11:54:13 -05:00
93ba470ce9 fix: progress on reproducible Windows builds, disable script tracing 2025-06-17 11:54:13 -05:00
129aed0ffb docs: add more TODOs 2025-06-17 11:54:13 -05:00
e062ada301 chore: remove old windows build/serve scripts 2025-06-17 11:54:13 -05:00
af57199915 fix: center canvas, make background black 2025-06-17 11:54:13 -05:00
538cf1efb5 chore: copy .data file directly, remove locateFile step 2025-06-17 11:54:13 -05:00
03b2c5a659 ci: cleanup build script 2025-06-17 11:54:13 -05:00
64e226be70 ci: properly create deps folder for pacman.data during build 2025-06-17 11:54:13 -05:00
f998ddd344 docs: add build details 2025-06-17 11:54:13 -05:00
b2ad8e7afe ci: add permisions for deployment job 2025-06-17 11:54:13 -05:00
799d5d85e8 ci: add action-based deploy with artifacts 2025-06-17 11:54:13 -05:00
9730d02da5 ci: fix build-wasm execution permissions 2025-06-17 11:54:13 -05:00
f634beffee fix(wasm): remove unnecessary emscripten looping 2025-06-17 11:54:13 -05:00
d15dbe3982 ci: prepare proper build script, move script into /scripts, move index.html into /assets 2025-06-17 11:54:13 -05:00
de5cddd9b6 fix(wasm): wasm32-unknown-emscripten compiler flags 2025-06-17 11:54:13 -05:00
e3f37ab48e ci: target proper version of Emscripten (1.39.20) 2025-06-17 11:54:13 -05:00
3dd8d5aff7 chore: increase stat reporting period to 60 seconds 2025-06-17 11:54:13 -05:00
ad084d1cd8 feat: add pausing functionality, clean up statistic calculations 2025-06-17 11:54:13 -05:00
852e54f1bf chore: rust-fmt entire project 2025-06-17 11:54:13 -05:00
a62ddab9af fix: prevent changing direction into walls 2025-06-17 11:54:13 -05:00
50d0bc7d5f refactor: simplify keyboard event direction change logic in Game 2025-06-17 11:54:13 -05:00

Diff Content Not Available