Compare commits

..
337 Commits
Author SHA1 Message Date
Cameron Taylor 3bef48d16c mod guide in progress 2021-01-20 06:53:20 -05:00
Cameron Taylor aec9518f75 menu fix maybe oops 2021-01-20 06:14:38 -05:00
Cameron Taylor a8bea88494 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2021-01-20 05:31:46 -05:00
Cameron Taylor 50a7d25304 CHRISTMAS UPDATE 2021-01-20 05:31:43 -05:00
Cameron Taylor 11414df109 scripted type beat 2021-01-20 04:11:55 -05:00
Cameron Taylor 4342b9bcce scripted thingie 2021-01-20 04:03:49 -05:00
Cameron Taylor 671dced392 monster christmas 2021-01-20 01:38:39 -05:00
Cameron Taylor 69434ab7e5 santa lol 2021-01-19 23:29:18 -05:00
Cameron Taylor 5f119e092b fix eggnog normal woops! 2021-01-19 22:58:07 -05:00
Cameron Taylor 95caf7ee63 more christmas stuff 2021-01-19 21:44:09 -05:00
Cameron Taylor d2509f0a22 charts and a bunch of christmas stuff 2021-01-19 21:09:47 -05:00
Cameron Taylor 88d4b5fd3d tweaking??? 2021-01-17 21:36:23 -05:00
Cameron Taylor 03db78d975 double notes??? 2021-01-17 21:23:40 -05:00
Cameron Taylor 2d940b73b8 jump holds 2021-01-17 19:06:36 -05:00
Cameron Taylor 4192fe2beb LOTS OF SHIT 2021-01-17 04:16:02 -05:00
Cameron Taylor 0b3bf9df84 cool heads 2021-01-16 23:15:29 -05:00
Cameron Taylor 990745b5a1 dope shit in progress 2021-01-16 17:21:06 -05:00
Cameron Taylor fa787181fb fix placement of bf 2021-01-16 15:20:57 -05:00
Cameron Taylor da68144984 CHARTS LOL 2021-01-16 15:14:56 -05:00
Cameron TaylorandGitHub 21c8dc3f13 Merge pull request #195 from regulad/patch-1
Small README change
2021-01-15 17:55:48 -05:00
reguladandGitHub 324a8f72b8 Small README change
I had some troubles compiling and it seems some other people did too (#181, maybe more issues), so hopefully this will help just a little bit
2021-01-15 09:49:25 -05:00
Cameron Taylor 73fc03f948 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2021-01-14 23:39:49 -05:00
Cameron Taylor 3fffb94661 cool changelog lol! 2021-01-14 23:39:43 -05:00
Cameron TaylorandGitHub 88a8918143 Merge pull request #155 from gedehari/version-check-fix
Move version check screen to TitleState
2021-01-14 23:38:05 -05:00
Cameron TaylorandGitHub b92c4ea413 Merge pull request #161 from WaviestBalloon/master
Updated README.md with better punctuation/grammar
2021-01-14 23:37:02 -05:00
Cameron Taylor b85855d8ef HAIR AND MOD SUPPORT SHIT IN PROGRESS 2021-01-14 23:33:12 -05:00
Cameron Taylor 447f638001 swappable characters debug 2021-01-13 22:38:31 -05:00
Cameron TaylorandGitHub 63ac06bc9c Merge pull request #176 from lotusotho/deletetransitions
Delete FlxTransitionableState
2021-01-12 23:10:18 -05:00
69ac784e95 Update README.md
Co-authored-by: M&M <goldtextwitch@outlook.com>
2021-01-11 16:28:34 +00:00
LotusothoandGitHub 5aaa4b8aa5 Delete FlxTransitionableState 2021-01-10 17:03:46 +01:00
Cameron TaylorandGitHub d96e28e64e Merge pull request #169 from Geokureli/pico_fixes
fix pico asset paths
2021-01-08 23:09:46 -05:00
George FunBook 6358720119 fix pico asset paths 2021-01-08 14:01:59 -06:00
Cameron Taylor ae38ebc18a more keybind shit 2021-01-07 20:38:32 -05:00
Cameron Taylor 7400d200ca charting editor improvements 2021-01-06 23:02:23 -05:00
Cameron Taylor 1674ba6b46 chart editor type beat 2021-01-06 22:38:17 -05:00
WaviestandGitHub 7709c57c4f Update README.md 2021-01-07 01:16:57 +00:00
WaviestandGitHub 73c7e1d99a Update README.md 2021-01-07 00:57:59 +00:00
Cameron TaylorandGitHub b432b39ff5 Merge pull request #138 from pahaze/master
Add enemies' dying faces
2021-01-05 21:08:14 -08:00
pahaze 6bd7f36e03 Update to latest master commit 2021-01-05 07:53:42 -05:00
Gede Hari 44e9882a38 Move version check screen to TitleState 2021-01-05 16:29:32 +08:00
Cameron Taylor c2332b5d42 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2021-01-04 19:12:38 -05:00
Cameron Taylor 8bcad21ab8 MOD SHIT IN PROGRESS 2021-01-04 18:56:30 -05:00
Cameron TaylorandGitHub e1af25b35e Create LICENSE 2021-01-02 10:54:07 -08:00
Cameron Taylor fb19babf86 changelog 2021-01-02 13:39:37 -05:00
Cameron Taylor bc4465da16 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2021-01-02 13:38:17 -05:00
Cameron Taylor ecb8e06b2c funkin intro 2021-01-02 13:38:15 -05:00
Cameron TaylorandGitHub a7871389fb Merge pull request #132 from Injourn/master
Added a fix to music restarting when the song ends.
2021-01-02 10:37:38 -08:00
Cameron TaylorandGitHub 88ccbe5b81 Merge pull request #134 from enter-a-nickname16/patch-1
Update README.md
2021-01-02 10:27:42 -08:00
pahaze 987bcd7eae Add enemies' dying faces 2021-01-01 00:39:58 -05:00
Xxmu8lxXandGitHub faebc47afe Update README.md
Fixed grammar stuff, and added instructions on how to compile on windows/linux/mac.
2020-12-30 13:11:23 -05:00
Scott-GH 9c268ab15b Added a fix to music restarting when the song ends. 2020-12-29 23:22:02 -08:00
Cameron Taylor 1cc08a2241 updated changelog 2020-12-27 13:19:06 -05:00
Cameron Taylor 054ae8a216 week unlockin shit 2020-12-27 05:57:45 -05:00
Cameron Taylor 3e3197711e oops no options lolol 2020-12-27 05:42:06 -05:00
Cameron Taylor 57d4e1fda2 maybe ready to go??? 2020-12-27 05:37:04 -05:00
Cameron Taylor 5fa5f2bac5 bg dancers coded 2020-12-27 03:13:51 -05:00
Cameron Taylor 2ba49b1e64 CHARTS 2020-12-26 21:46:22 -05:00
Cameron Taylor 3fa66ee1d1 charts and shit fixied 2020-12-25 18:24:20 -05:00
Cameron Taylor c6a904483e changelog 2020-12-25 04:10:28 -05:00
Cameron Taylor 141c1dd414 AUTOSAVE FOR NOTE EDITOR! 2020-12-25 04:09:14 -05:00
Cameron Taylor 471ba66b71 dumb lol! 2020-12-25 03:40:01 -05:00
Cameron Taylor e1df3e98f6 outdated check 2020-12-25 00:17:21 -05:00
Cameron Taylor 087d735aa3 charted HIGH 2020-12-24 23:47:43 -05:00
Cameron Taylor b17e9be7d0 moved flash files 2020-12-24 18:24:11 -05:00
Cameron Taylor 822e0b57b2 cool shit mommy gf 2020-12-22 20:55:03 -05:00
Cameron Taylor 4347b74e13 mom chart 2020-12-22 19:57:55 -05:00
Cameron Taylor d61bc175b7 newgrounds build script 2020-12-21 18:06:39 -05:00
Cameron Taylor b20620c075 songs 2020-12-21 17:20:57 -05:00
Cameron Taylor 341bc7ca29 poop 2020-12-21 16:23:22 -05:00
Cameron TaylorandGitHub 2230e44fa6 Merge pull request #92 from dinkstr/patch-1
Fix broken Twitter links in readme :)
2020-12-20 13:05:05 -08:00
Cameron Taylor cfeaf5cbc6 fix crash 2020-12-17 15:03:33 -05:00
dinkstrandGitHub f92b82a886 Fix broken Twitter links in readme :) 2020-12-17 14:21:09 +00:00
Cameron Taylor cd16f98021 creds in readme 2020-12-15 22:29:00 -05:00
Cameron Taylor 7d2be498d6 added quick and dirty build instructions 2020-12-15 22:23:58 -05:00
Cameron Taylor 8b3d2a2047 NGio bootleg API bullshit 2020-12-15 22:00:22 -05:00
Cameron Taylor be5d76966f new shit babyu 2020-12-13 02:45:36 -05:00
Cameron Taylor 69e9be5f8f colol workflow?? 2020-12-13 01:42:48 -05:00
Cameron Taylor 62446d47c4 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2020-12-13 01:10:22 -05:00
Cameron TaylorandGitHub 6756c830fe Merge pull request #48 from gedehari/master
Music issues throughout the game
2020-12-12 22:10:06 -08:00
Cameron Taylor 6c6df2f5d3 lol idk lol 2020-12-13 01:08:21 -05:00
Cameron TaylorandGitHub ee001da0e9 Merge pull request #35 from lotusotho/boopeebohalting-fix
Fixed loop problem at the end of Boopeebo because of the vocals
2020-12-11 14:43:48 -08:00
Cameron Taylor 7d55a0df8b changelog shit 2020-12-11 17:22:22 -05:00
Cameron Taylor 334f279ec2 tutorial patch 2020-12-11 08:49:06 -05:00
Cameron Taylor 8d8f5864fd changelog and update shit 2020-12-11 08:08:41 -05:00
Cameron Taylor b110f8bbdb philly charts and hair 2020-12-11 07:55:39 -05:00
Cameron Taylor eb017da89e gf assets and offsets update 2020-12-11 06:45:00 -05:00
Cameron Taylor 487a1f1faa blammed easy 2020-12-11 06:10:34 -05:00
Cameron Taylor f805077372 easy pico 2020-12-11 04:32:31 -05:00
Cameron Taylor 6d5b26a40d week setup? 2020-12-11 04:15:24 -05:00
Cameron Taylor 6db82462f0 charts and fixins 2020-12-11 00:57:42 -05:00
Cameron Taylor 8780f93c21 better duet 2020-12-10 21:44:30 -05:00
Cameron Taylor 19ed82aa0d train in progress 2020-12-10 18:23:53 -05:00
Gede Hari 2f763df9a8 Fixed song still playing when paused right when song starts
This should be it.
2020-12-10 13:41:31 +08:00
Gede Hari 03b8daea35 Fixed song starting early when paused during countdown
also tweaked something in main menu
2020-12-10 13:04:36 +08:00
Gede Hari 5175f48eba oopsie daisy this shouldn't be tracked
my bad
2020-12-10 13:02:23 +08:00
Gede Hari a1d01f64b4 Freeplay song not continuing fade in when exiting freeplay menu 2020-12-10 08:58:46 +08:00
Gede Hari f9536c9419 Fixes MainMenu not playing music after playing/exiting level 2020-12-10 08:47:28 +08:00
Cameron Taylor 60f53dccca fixes #37 2020-12-09 18:16:16 -05:00
Cameron Taylor 53553bc1ca fixed pausing desync issue 2020-12-09 18:14:36 -05:00
Cameron Taylor 70ec82a022 animation fixins 2020-12-09 17:46:47 -05:00
Cameron Taylor ed36f30d2a offsets and animations 2020-12-09 17:36:31 -05:00
Cameron Taylor e7f2f9176d pico charted 2020-12-09 13:53:46 -05:00
Cameron Taylor 0b087540c1 removed bullshit from brandy!!! 2020-12-06 16:52:26 -05:00
LotusothoandGitHub d415a6e8a3 Fixed loop problem at the end of Boopeebo 2020-12-06 14:58:32 +01:00
LotusothoandGitHub e085b1c595 Merge pull request #1 from ninjamuffin99/master
merge changes
2020-12-06 14:34:47 +01:00
Cameron Taylor b5653dcdd1 ng login bullshit 2020-12-04 12:57:09 -05:00
Cameron Taylor bac57b2a4c updated version 2020-12-04 12:46:32 -05:00
Cameron Taylor cb4d36cc34 more intro texts 2020-12-04 12:46:03 -05:00
Cameron Taylor da15d51b10 lol fix semi colon 2020-12-04 12:38:12 -05:00
Cameron Taylor 301c6cddc6 exploit fixin 2020-12-04 12:36:28 -05:00
Cameron Taylor f393070e5c high score manipulation 2020-12-04 12:32:35 -05:00
Cameron Taylor 96aac47c27 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2020-12-04 02:33:38 -05:00
Cameron Taylor d78e822fb3 update changelog 2020-12-04 02:33:34 -05:00
Cameron TaylorandGitHub 1d0dcb2ff4 Merge pull request #24 from lotusotho/notesoffsetpressed-fix
Fixed issue related with arrows and note trails
2020-12-03 23:32:32 -08:00
LotusothoandGitHub 9bc022b6da Fixed issue related with arrows and note trails 2020-12-03 19:03:50 +01:00
Cameron Taylor c0d67f1539 updated changelog 2020-12-02 12:31:09 -05:00
Cameron Taylor 3d7e2d2c39 closes #13 and closes #10 2020-12-02 12:28:28 -05:00
Cameron Taylor 87aee63157 bullshit 2020-12-02 12:09:15 -05:00
Cameron Taylor d0677d86bc fixed itch link lol 2020-12-02 11:28:26 -05:00
Cameron Taylor f3fcf68e21 updated changelog 2020-12-01 19:58:02 -05:00
Cameron Taylor d9c1fb33ae Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2020-12-01 19:56:07 -05:00
Cameron Taylor b01b7febcf whatev lol 2020-12-01 19:55:01 -05:00
Cameron TaylorandGitHub 34e9c8c739 Update CHANGELOG.md 2020-12-01 16:51:45 -08:00
Cameron TaylorandGitHub 7d9f1b11ad Merge pull request #19 from lotusotho/menubuttonspam-fix
fixed spamming issue with the buttons on the story menu
2020-12-01 16:49:37 -08:00
LotusothoandGitHub 4fca049f2e Update StoryMenuState.hx 2020-12-01 12:53:30 +01:00
lotusothoandGitHub 698701a501 Update StoryMenuState.hx 2020-11-26 20:14:35 +01:00
BuildTools 0fd59f5e27 fixed spamming issue with the buttons on the story menu 2020-11-26 19:43:45 +01:00
Cameron TaylorandGitHub 85d36694f4 Merge pull request #11 from BrandyBuizel/master
Switch works Pre-Faxe
YOLO COMMIT LETS GOOOO
2020-11-25 00:22:41 -08:00
Cameron TaylorandGitHub 48b2a77472 Merge branch 'master' into master 2020-11-25 00:22:22 -08:00
Brandon 89134e1243 11/24/2020 2020-11-24 22:53:48 -05:00
Cameron Taylor f4cbd67af8 fixed quotation mark lol 2020-11-22 12:52:09 -08:00
Cameron Taylor afb21793dc fixed URL thing for linux 2020-11-22 12:39:32 -08:00
Cameron Taylor 826e8b7f0a MAYBE DOIN CHART SHIT? 2020-11-21 02:43:04 -08:00
Cameron Taylor 60dfebcd0c changelog shoutsouts 2020-11-20 04:33:07 -08:00
Cameron Taylor 05a96184e4 Updated Changelog 2020-11-20 04:21:54 -08:00
Cameron Taylor 5b46515e5b cool pause music 2020-11-20 04:21:04 -08:00
Cameron Taylor f40b4df571 icon, and credits 2020-11-18 15:51:43 -08:00
Cameron Taylor 85a5f7d9df padding fix 2020-11-18 15:36:44 -08:00
Cameron Taylor 274455885d fluid video 2020-11-18 15:35:28 -08:00
Cameron Taylor c4bbf48e0f better image? 2020-11-18 02:58:19 -08:00
Cameron Taylor 638eac7ebe cool website colors 2020-11-17 23:31:37 -08:00
Cameron Taylor fb6434b8ad good website 2020-11-17 22:27:04 -08:00
Cameron Taylor ff649ae863 fix for #12 2020-11-17 18:31:59 -08:00
Cameron Taylor c48f957920 restart on pause menu 2020-11-17 18:20:27 -08:00
Cameron Taylor 050f4000fb pause menu in progress 2020-11-17 17:50:09 -08:00
Cameron Taylor d306ee9ec3 score on song 2020-11-17 17:32:38 -08:00
Cameron Taylor 1ed64e3fda freeplay sounds 2020-11-17 16:22:29 -08:00
Brandon bfaccf0dc9 caught up 11/16/20 2020-11-16 15:29:18 -05:00
Cameron Taylor 433923bdbd oop fix eheh 2020-11-13 18:51:03 -08:00
Cameron Taylor 87ec99dd1e WIP shit for nicer charting hehe 2020-11-13 18:49:20 -08:00
Cameron Taylor 9b91dc1b80 changelog update 2020-11-13 14:39:28 -08:00
Cameron Taylor a9fdf2510a moved the intro texts to a txt file 2020-11-13 14:37:58 -08:00
Brandon c742c89601 update to master 11/11/20 2020-11-11 05:00:13 -05:00
Cameron Taylor 79ccb61cfb some animation touchups 2020-11-10 19:09:48 -08:00
Cameron Taylor 0a4273bd1a south chart, and maybe note flicker? 2020-11-10 18:07:56 -08:00
Brandon 926f7dd6ff did the meme on switch 2020-11-10 15:07:34 -05:00
Brandon 74f313feec caught up 11/10/20 2020-11-10 13:08:18 -05:00
Brandon 127d4f4cb4 added lucky, highscore fix?? 2020-11-10 12:52:49 -05:00
Brandon 40f0edf18e LUCKYBOY 2020-11-10 12:16:49 -05:00
Brandon d1afc09577 before i \**** up 2020-11-09 21:59:55 -05:00
Cameron Taylor 4e04e5071b fixed freeplay score offset shit 2020-11-09 15:26:10 -08:00
Cameron Taylor 48a9b8ce84 funny music :) 2020-11-07 22:26:05 -08:00
Brandon 338da5ced8 custom icon, multiple game directories 2020-11-07 19:56:29 -05:00
Brandon c9bff7098c Update Preloader.hx 2020-11-07 17:59:36 -05:00
Brandon 603351d92b moved preloaderArt out 2020-11-07 17:18:13 -05:00
Brandon 2e492032b5 caught up to hard mode 2020-11-07 16:59:25 -05:00
Brandon 606c0d0da1 Update Project.xml 2020-11-07 16:51:55 -05:00
Brandon f9ee6bdddb game works again, twin-stick is fun 2020-11-07 16:13:41 -05:00
Brandon 3ce478d1fd fixing case-sensitive 2020-11-07 15:52:49 -05:00
Brandon 4787234621 haha , also highscore.hx breaks switch 2020-11-07 15:52:21 -05:00
Brandon 473429d3ce new preloader
-added preloader aniamtion
-modified export bat,
-added right stick controls
-switch preorders tagline
2020-11-07 02:29:20 -05:00
Brandon 602cf4c574 crash on story menu 2020-11-07 00:05:58 -05:00
Cameron Taylor a71abb5772 hard mode lol 2020-11-06 19:39:21 -08:00
Brandon 673ed0d7fd Update Highscore.hx 2020-11-06 21:59:51 -05:00
Brandon d53b4a70ed boo george 2020-11-06 21:34:04 -05:00
Brandon 0bdd66039c uhhh 2020-11-06 21:24:03 -05:00
Brandon 675f251ddd caught up to cam again 2020-11-06 21:18:55 -05:00
Brandon f8fe10bebf caught up to cam 2020-11-06 21:17:27 -05:00
Cameron Taylor 9feb12a5a1 dont need markdown shitlolol 2020-11-06 18:14:13 -08:00
Cameron Taylor ca3ce1a659 changelog 2020-11-06 13:51:28 -08:00
Cameron Taylor 065b775e08 score shit 2020-11-06 13:51:11 -08:00
Cameron Taylor e76d11a5e6 hotfix for da week 2 unlock 2020-11-06 11:56:41 -08:00
Cameron Taylor eed73b744b clarified changelog 2020-11-06 03:17:40 -08:00
Cameron Taylor cf7b871c56 WEEK SCORE SHIT 2020-11-06 02:56:45 -08:00
Cameron Taylor 054e9f4bf9 difficulty selecting 2020-11-06 02:31:33 -08:00
Cameron Taylor a3b99638af Seperated tutorials 2020-11-06 02:21:29 -08:00
Cameron Taylor 6cf7267078 balanced normal, and usin newgrounds haxelib 2020-11-06 01:57:00 -08:00
Brandon 86e526d553 added debugs and cheats and we usin fmod 2020-11-05 05:08:40 -05:00
Brandon 8f5788109e tracing the sound.time issue 2020-11-05 01:51:31 -05:00
Brandon a9dddbc4a5 i'll debug tomorrow 2020-11-03 04:12:13 -05:00
Cameron TaylorandGitHub e6a219c8cc Merge pull request #1 from BrandyBuizel/master
switch build works
2020-11-02 15:38:08 -08:00
Cameron TaylorandGitHub 9ccf971e58 Merge branch 'master' into master 2020-11-02 15:37:55 -08:00
Brandon 2fcc73e387 waiting for cam to pull 2020-11-02 17:47:40 -05:00
Cameron Taylor 589db1f26b we out here 2020-11-02 14:40:12 -08:00
Brandon f3f91a1d8e swap A and B for switch 2020-11-02 16:56:28 -05:00
Brandon d93ed6c7db cleansed of NG 2020-11-02 15:31:28 -05:00
Brandon 65de93f679 controls fixed for 3.4.7 2020-11-02 15:04:25 -05:00
Brandon b8701fa703 george the janitor 2020-11-02 14:37:23 -05:00
Brandon 62a59a74d7 ng release 2020-11-02 01:46:37 -05:00
Brandon 92157c03e9 me sad cause haxe 4.0.0 2020-11-02 01:38:01 -05:00
Brandon 7fefeb61e7 shot in the dark 4.0 stuff 2020-11-02 00:39:28 -05:00
Brandon b425be302a Update build-lime-SWITCH.bat 2020-11-01 23:38:14 -05:00
Cameron Taylor f30f6e646c update readme 2020-11-01 15:34:52 -08:00
Cameron Taylor 0af3ab700d lightning shit 2020-11-01 15:20:13 -08:00
Brandon 8248843722 Create build-lime-SWITCH.bat 2020-11-01 15:28:54 -05:00
Brandon 5fa4bc458e ng release and blank controls 2020-11-01 14:16:22 -05:00
Cameron Taylor 40cce24b78 scores in progress 2020-11-01 01:55:02 -08:00
Cameron Taylor 475dd9c49d RELEASE SHIIIT 2020-11-01 00:58:20 -07:00
Cameron Taylor c7f7a7dff0 release 2020-11-01 00:01:00 -07:00
Cameron Taylor cd24092161 more poliiiish 2020-10-31 22:29:49 -07:00
Cameron Taylor 98a5401f4b almost releaaaase 2020-10-31 21:55:00 -07:00
Cameron Taylor ff354d2b69 POLIIIISH SHIIIIT 2020-10-31 21:34:17 -07:00
Cameron Taylor 321a7d22f9 newgrounds io shit incoming 2020-10-31 20:42:14 -07:00
Cameron Taylor b16b463dad hard songs and unlockables 2020-10-31 20:31:31 -07:00
Cameron Taylor 0035f9a506 easy charts 2020-10-31 20:22:49 -07:00
Brandon 968a001a36 old school syntax 2020-10-31 21:44:10 -04:00
Brandon 180f6b2cfa latest halloween 2020-10-31 21:11:14 -04:00
Brandon 46fe5a5645 enum syntax 2020-10-31 21:05:59 -04:00
Cameron Taylor 11872c3fce difficulty UI 2020-10-31 16:53:26 -07:00
Cameron Taylor a9638e1c42 difficulty shit in progress 2020-10-31 16:23:19 -07:00
Cameron Taylor 8273af5a43 sounds and polish shit 2020-10-31 12:53:58 -07:00
Cameron Taylor fcdfbd8f73 polish polish polish polish 2020-10-31 03:07:22 -07:00
Cameron Taylor 11b1017753 text shit cookin 2020-10-31 00:32:51 -07:00
Cameron Taylor a9ada001f7 ALMOST DIALOGUE 2020-10-30 23:30:35 -07:00
Cameron Taylor cc66469d30 intro messages 2020-10-30 21:25:23 -07:00
Cameron Taylor 12913b4f31 lil bullshit 2020-10-30 19:33:28 -07:00
Brandon ad51619b4d Update Project.xml 2020-10-30 22:06:21 -04:00
Cameron Taylor f9b6c1461c story mode type shit 2020-10-30 18:55:09 -07:00
Brandon 90270b4a3d bmp files cant have transparency :( 2020-10-30 21:05:10 -04:00
Cameron Taylor 15c0d4fbf6 abstract shit for brandy 2020-10-30 17:09:33 -07:00
Brandon e98212b1cd caught up 10/30/ 2020-10-30 19:47:19 -04:00
Brandon bf78c62384 transparent 2020-10-30 19:39:13 -04:00
Cameron Taylor e45f1d8005 menu shit in progress 2020-10-30 15:21:34 -07:00
Cameron Taylor 578603c584 cool menu movement 2020-10-30 14:55:20 -07:00
Cameron Taylor f5c865fbe5 UI and menu bullshit 2020-10-30 14:18:26 -07:00
Cameron Taylor 057e40baa6 spookeez charted 2020-10-30 11:54:53 -07:00
Cameron Taylor 6e1274d849 polish bits here and there 2020-10-29 23:52:26 -07:00
Cameron Taylor 2ba056bfc5 BPM BULLSHIT 2020-10-29 20:06:52 -07:00
Cameron Taylor 1e58720c32 south charted 2020-10-28 19:47:10 -07:00
Cameron Taylor bb8cb6e428 lil bullshit in progress hehe 2020-10-28 02:26:33 -07:00
Cameron Taylor c8e3a27044 fix note miss bullshit 2020-10-28 01:24:56 -07:00
Cameron Taylor c2d1b86c98 idk bullshit 2020-10-28 00:32:34 -07:00
Cameron Taylor b68fb4f5de cute animations in progress teehee 2020-10-28 00:03:32 -07:00
Cameron Taylor 0c31cc29ee LOSS SCREEN WIP 2020-10-27 03:35:23 -07:00
Cameron Taylor bd6e2129b8 COOLER INTRO SHIT 2020-10-27 01:31:21 -07:00
Brandon ddd42ca004 switch setup start [REAL] 2020-10-26 19:06:42 -04:00
Cameron Taylor 9a6ca041e7 new line support for text also camera shit 2020-10-26 02:16:05 -07:00
Cameron Taylor 6b48a04cb8 Create CNAME 2020-10-25 15:20:59 -07:00
Cameron Taylor 60a2e4ca58 lil thingie 2020-10-25 15:17:35 -07:00
Cameron Taylor f0b0ad5e9d Delete CNAME 2020-10-25 15:16:28 -07:00
Cameron Taylor 2f1d609b9d Create CNAME 2020-10-25 14:45:35 -07:00
Cameron Taylor ddc9b3d314 Delete CNAME 2020-10-25 14:43:36 -07:00
Cameron Taylor 3d3841b165 Create CNAME 2020-10-25 14:40:47 -07:00
Cameron Taylor 16d99812d0 blep 2020-10-25 14:39:49 -07:00
Cameron Taylor 7562357798 website bullshit 2020-10-25 14:38:48 -07:00
Cameron Taylor 8f28b62494 Merge branch 'master' of https://github.com/ninjamuffin99/ld47 2020-10-25 13:51:11 -07:00
Cameron Taylor a55b831c2e adding in cool text shit 2020-10-25 13:51:06 -07:00
Cameron TaylorandGitHub 5a77f590c4 Create README.md 2020-10-25 13:50:52 -07:00
Cameron Taylor 87286b68c0 fix miss animations 2020-10-24 02:36:50 -07:00
Cameron Taylor 6c7d5b3f1b less note stutter 2020-10-24 02:19:13 -07:00
Cameron Taylor fa46570337 psooky! 2020-10-23 16:12:38 -07:00
Cameron Taylor b595d62486 FIXED up bullshit 2020-10-21 17:22:12 -07:00
Cameron Taylor bea3ca7fd8 BULLSHIT CONTROLS 2020-10-21 16:33:43 -07:00
Cameron Taylor 539a5f8550 made sustain notes slightly nicer 2020-10-21 13:12:32 -07:00
Cameron Taylor 7bbb09aa43 recharted bopeebo 2020-10-21 12:01:55 -07:00
Cameron Taylor aaaf633f58 recharted Fresh 2020-10-21 11:05:27 -07:00
Cameron Taylor 8ec6f229aa stinky mocked up intro 2020-10-20 23:23:39 -07:00
Cameron Taylor 354025211a re added sustain notes lol 2020-10-19 18:59:00 -07:00
Cameron Taylor 414060eeb3 controllable sustain 2020-10-18 21:01:09 -07:00
Cameron Taylor 81612e2167 almost got sustains working 2020-10-18 19:51:01 -07:00
Cameron Taylor 29496d7ab9 ported sustain data into game 2020-10-18 19:34:21 -07:00
Cameron Taylor e443b1916d fixed bullshit 2020-10-18 19:18:06 -07:00
Cameron Taylor 32c27dfb30 cool new stuff lol 2020-10-18 17:59:53 -07:00
Cameron Taylor 51b39de6d9 fixed camera shit 2020-10-18 00:27:39 -07:00
Cameron Taylor 0542088c6e ass kicking song 2020-10-17 18:47:59 -07:00
Cameron Taylor 188674b64c CHARTING SYSTEM IN PROGRESS 2020-10-17 14:33:35 -07:00
Cameron Taylor 33385ddd15 fixed issue with desync 2020-10-16 04:15:17 -07:00
Cameron Taylor 78ec82d953 rippin my hair out at programming right now 2020-10-16 04:03:10 -07:00
Cameron Taylor f3fb40dc5e getting section meta data all fixed up 2020-10-15 21:22:13 -07:00
Cameron Taylor cc94633395 vocal shit fixed and bpm fixed 2020-10-14 01:30:54 -07:00
Cameron Taylor b3acc17685 cleaning up shit 2020-10-14 01:18:19 -07:00
Cameron Taylor f31813c9db CLEANED JSON LOL 2020-10-13 22:02:36 -07:00
Cameron Taylor 38bb4848a5 more controls for charting 2020-10-13 21:05:55 -07:00
Cameron Taylor 7e1ccefeb5 better prototyping bullshit 2020-10-13 19:12:31 -07:00
Cameron Taylor 7cf19cd186 got prototyping shit workin to an extent 2020-10-13 18:51:53 -07:00
Cameron Taylor fc5e73a87a almost got good prototyping shit in 2020-10-13 18:44:07 -07:00
Cameron Taylor 96e618327f NOTE DELETING 2020-10-13 18:23:22 -07:00
Cameron Taylor 6eab783c23 smash chart lol 2020-10-13 03:15:21 -07:00
Cameron Taylor 3697177a41 fixed that bullshit 2020-10-13 03:02:03 -07:00
Cameron Taylor dc11504c25 so close to proper note reading... 2020-10-13 02:55:00 -07:00
Cameron Taylor 2673a04d27 fixed certain notes not appearing 2020-10-13 02:36:45 -07:00
Cameron Taylor 50ab1605a6 fixed strumline issue 2020-10-13 01:44:12 -07:00
Cameron Taylor f0d4ab3ffd almost making progress on note shit 2020-10-13 01:37:19 -07:00
Cameron Taylor 5ecd641b13 CHARTING SHIT IN PROGRESS 2020-10-13 01:07:04 -07:00
Cameron Taylor 405f362a73 WIP note placing shit 2020-10-12 22:18:50 -07:00
Cameron Taylor 8fc2d4de71 BOO REDO SHIT 2020-10-12 20:08:08 -07:00
Cameron Taylor 330aa69741 UI BULLSHIT WIP 2020-10-11 20:52:21 -07:00
Cameron Taylor 705f43c50a some more section type beat 2020-10-11 19:05:26 -07:00
Cameron Taylor aeb77a3c25 sections in progress 2020-10-11 17:24:34 -07:00
Cameron Taylor f417661668 charting tool WIP shit 2020-10-10 02:28:44 -07:00
Cameron Taylor eb47d38047 sequencer in progress 2020-10-09 21:22:26 -07:00
Cameron Taylor d528967efc level shit lol 2020-10-09 20:25:52 -07:00
Cameron Taylor 427ca3cb03 save data bullshit 2020-10-09 20:22:07 -07:00
Cameron Taylor 4d4a724d72 redoing and replacing some of the music logic 2020-10-09 19:39:52 -07:00
Cameron Taylor f168200b45 renamed Charting.hx file 2020-10-09 16:26:11 -07:00
Cameron Taylor 7288a1fdae changelog lol 2020-10-09 14:24:41 -07:00
Cameron Taylor 8bcdb7a8e8 simple pause screen 2020-10-09 14:24:20 -07:00
Cameron Taylor 65036334d2 baby shit controller support 2020-10-09 00:29:00 -07:00
Cameron Taylor 7d925ae0ec build script fixin 2020-10-08 17:54:47 -07:00
Cameron Taylor 0062631472 fixed build scripts and shit 2020-10-06 20:59:48 -07:00
Cameron Taylor 9c44e56b19 we out here windows build 2020-10-06 18:56:33 -07:00
Cameron Taylor 320a760d82 fixed bullshit 2020-10-06 18:56:14 -07:00
Cameron Taylor 567a7af392 RELEAAASE 2020-10-05 15:29:59 -07:00
Cameron Taylor 082abad735 BACKGROUNDS 2020-10-05 13:55:48 -07:00
Cameron Taylor b40f7c94b8 HEALTH IN PROGRESS 2020-10-05 13:32:41 -07:00
Cameron Taylor 4ab27ca8a6 ready set go bullshit 2020-10-05 11:33:56 -07:00
Cameron Taylor 9dfe5cfe42 bunch of polish bullshit 2020-10-05 11:24:51 -07:00
Cameron Taylor a380fa16e5 grafiti scores 2020-10-05 07:03:38 -07:00
Cameron Taylor 6568703a7d grafiti assets 2020-10-05 06:02:02 -07:00
Cameron Taylor d8513fc4a0 assets and gf and shit 2020-10-05 05:55:39 -07:00
Cameron Taylor 95415f5890 gf base shit 2020-10-05 04:46:57 -07:00
Cameron Taylor ce0fd00fba more performance shit 2020-10-05 03:53:10 -07:00
Cameron Taylor aa7cef2c25 RIP WEED LMAO 2020-10-05 03:25:14 -07:00
Cameron Taylor 3855c5ea9f perfornance and optimization 2020-10-05 02:48:30 -07:00
Cameron Taylor a75e543fb8 note missing 2020-10-05 00:49:53 -07:00
Cameron Taylor d5121a6e8e hold notes and temp bg 2020-10-04 22:13:12 -07:00
Cameron Taylor de57ab82f6 MISS NOTES 2020-10-04 20:29:35 -07:00
Cameron Taylor 851d5c241c fresh Song charted 2020-10-04 19:31:38 -07:00
Cameron Taylor 9e1ccaf083 dynamic camer, reformat chart, lvl2 2020-10-04 17:53:49 -07:00
Cameron Taylor de17188ae4 fixed the dad bullshit 2020-10-04 15:27:49 -07:00
Cameron Taylor dbbd0c2851 a boy and his offsets... 2020-10-04 14:44:52 -07:00
Cameron Taylor 89fa9a3121 offsets "generally" 2020-10-04 11:50:12 -07:00
Cameron Taylor 86aba3f004 notes in da house 2020-10-04 01:38:21 -07:00
Cameron Taylor 0839f21e71 DOPE SHIT ALL DAY LETS GOOOOO 2020-10-03 23:42:58 -07:00
Cameron Taylor 75a02413de scores and dope shit 2020-10-03 12:32:15 -07:00
Cameron Taylor 32001dad2e fixed holding notes 2020-10-03 10:36:39 -07:00
Cameron Taylor 303c9d14aa INIT COMMIT 2020-10-02 23:50:15 -07:00
896 changed files with 30713 additions and 89023 deletions
-7
View File
@@ -1,7 +0,0 @@
# top-most EditorConfig file
root = true
# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
-1
View File
@@ -1 +0,0 @@
* text=auto eol=lf
-44
View File
@@ -1,44 +0,0 @@
---
name: Bug Report
about: Report a bug or critical performance issue
title: 'Bug Report: [DESCRIBE YOUR BUG IN DETAIL HERE]'
labels: bug
---
[weed]: <> (FILL THIS ISSUE THING OUT AS MUCH AS POSSIBLE)
[weed]: <> (OR ELSE YOUR ISSUE WILL BE LESS LIKELY TO BE SOLVED!)
[weed]: <> (DO NOT POST ABOUT ISSUES FROM OTHER FNF MOD ENGINES! I CANNOT AND PROBABLY WON'T SOLVE THOSE!)
[weed]: <> (GO TO THEIR RESPECTIVE GITHUB ISSUES AND REPORT THEM THERE LOL!)
[weed]: <> (ALSO MAKE SURE THAT YOU USE PROPER LABELS, IF YOU'RE RUNNING INTO COMPILER ISSUES, USE THE compiler issue LABEL!!!)
#### Please check for duplicates or similar issues, as well performing simple troubleshooting steps (such as clearing cookies, clearing AppData, trying another browser) before submitting an issue.
### If you are playing the game in a browser, what site are you playing it from?
[weed]: <> (Put an X in the [ ] thingies to fill out checkbox!)
[weed]: <> (something like [x] pretty much, don't screw up or you will look stupid)
- [ ] [Newgrounds](https://www.newgrounds.com/portal/view/770371)
- [ ] [Itch.io](https://ninja-muffin24.itch.io/funkin)? Specify below
- - [ ] Windows
- - [ ] Mac
- - [ ] Linux
### If you are playing the game in a browser, what browser are you using?
[weed]: <> (Again, put an x in the [ ] box!)
- [ ] Google Chrome (or chomium based like Brave, vivaldi, MS Edge)
- [ ] Firefox
- [ ] Safari
## What version of the game are you using? Look in the bottom left corner of the main menu. (ex: 0.2.7, 0.2.1, shit like that)
## Have you identified any steps to reproduce the bug? If so, please describe them below in as much detail as possible. Use images if possible.
## Please describe your issue. Provide extensive detail and images if possible.
## If you're game is FROZEN and you're playing a web version, press F12 to open up browser dev window, and go to console, and copy-paste whatever red error you're getting
-25
View File
@@ -1,25 +0,0 @@
---
name: Compiling help
about: If you need help compiling the game, and you're running into issues. (Look through the 'compiling help' label in case it's been solved!)
title: 'Compiling help: [BRIEF DESCRIPTION / ERROR MESSAGE OUTPUT]'
labels: compiling help
---
[weed]: <> (FILL THIS ISSUE THING OUT AS MUCH AS POSSIBLE)
[weed]: <> (OR ELSE YOUR ISSUE WILL BE LESS LIKELY TO BE SOLVED!)
[weed]: <> (DO NOT POST ABOUT ISSUES FROM OTHER FNF MOD ENGINES! I CANNOT AND PROBABLY WON'T SOLVE THOSE!)
[weed]: <> (GO TO THEIR RESPECTIVE GITHUB ISSUES AND REPORT THEM THERE LOL!)
#### Please check for duplicates or similar compiler issues by filtering for 'compiler help'
[weed]: <> (Put an X in the [ ] thingies to fill out checkbox!)
[weed]: <> (something like [x] pretty much, don't screw up or you will look stupid)
- [ ] Windows
- [ ] Mac
- [ ] Linux
- [ ] HTML5
## Please describe your issue. Provide extensive detail and images if possible.
-8
View File
@@ -1,8 +0,0 @@
---
name: Enhancement
about: Suggest a new feature
title: 'Enhancement: '
labels: enhancement
---
#### Please check for duplicates or similar issues before creating this issue.
## What is your suggestion, and why should it be implemented?
-12
View File
@@ -1,12 +0,0 @@
---
name: Question
about: Ask a general question
title: 'Question: '
labels: question
---
[weed]: <> (This isn't a place for AMA type questions, if you want to ask any of the devs something, reach out to them on twitter prob )
[weed]: <> (any biz bullshit can go to cameron.taylor.ninja@gmail.com)
#### Please check for duplicates or similar issues before asking your question.
## What is your question?
-10
View File
@@ -1,10 +0,0 @@
---
name: Bug Fix
about: Fix a bug or critical performance issue
title: 'Bug Fix: '
labels: bug
---
#### Please check for duplicates or similar PRs before creating this issue.
## Does this PR close any issue(s)? If so, link them below.
## Briefly describe the issue(s) fixed.
@@ -1,10 +0,0 @@
---
name: Enhancement
about: Add a new feature
title: 'Enhancement: '
labels: enhancement
---
#### Please check for duplicates or similar PRs before creating this issue.
## Does this PR close any issue(s)? If so, link them below.
## What do your change(s) add, and why should they be implemented?
-144
View File
@@ -1,144 +0,0 @@
name: setup-haxeshit
description: "sets up haxe shit, using HMM!"
inputs:
haxe:
description: 'Version of haxe to install'
required: true
default: '4.3.4'
hxcpp-cache:
description: 'Whether to use a shared hxcpp compile cache'
required: true
default: 'true'
hxcpp-cache-path:
description: 'Path to create hxcpp cache in'
required: true
default: ${{ runner.temp }}/hxcpp_cache
targets:
description: 'Targets we plan to compile to. Installs native dependencies needed.'
required: true
gh-token:
description: 'GitHub secret for private repos as dependencies'
runs:
using: "composite"
steps:
- name: Setup timers
shell: bash
run: |
echo "TIMER_HAXE=$(date +%s)" >> "$GITHUB_ENV"
- name: Install Haxe
uses: funkincrew/ci-haxe@v3.1.0
with:
haxe-version: ${{ inputs.haxe }}
- name: Install native dependencies
if: ${{ runner.os == 'Linux' }}
shell: bash
run: |
ls -lah /usr/lib/x86_64-linux-gnu/
apt-get update
apt-get install -y \
g++ \
libx11-dev libxi-dev libxext-dev libxinerama-dev libxrandr-dev \
libgl-dev libgl1-mesa-dev \
libasound2-dev
ln -s /usr/lib/x86_64-linux-gnu/libffi.so.8 /usr/lib/x86_64-linux-gnu/libffi.so.6 || true
- name: Install linux-specific dependencies
if: ${{ runner.os == 'Linux' && contains(inputs.targets, 'linux') }}
shell: bash
run: |
apt-get install -y libvlc-dev libvlccore-dev
- name: Config haxelib
shell: bash
run: |
echo "TIMER_HAXELIB=$(date +%s)" >> "$GITHUB_ENV"
haxelib --debug --never install haxelib 4.1.0 --global
haxelib --debug --never deleterepo || true
haxelib --debug --never newrepo
echo "HAXEPATH=$(haxelib config)" >> "$GITHUB_ENV"
haxelib --debug --never git haxelib https://github.com/HaxeFoundation/haxelib.git master
haxelib --debug --global install hmm
echo "TIMER_DEPS=$(date +%s)" >> "$GITHUB_ENV"
- name: Restore cached dependencies
id: cache-hmm
uses: actions/cache@v4
with:
path: .haxelib
key: haxe-hmm-${{ runner.os }}-${{ hashFiles('**/hmm.json') }}
- if: ${{ steps.cache-hmm.outputs.cache-hit != 'true' }}
name: Prep git for dependency install
uses: gacts/run-and-post-run@v1
with:
run: git config --global 'url.https://x-access-token:${{ inputs.gh-token }}@github.com/.insteadOf' https://github.com/
post: git config --global --unset 'url.https://x-access-token:${{ inputs.gh-token }}@github.com/.insteadOf'
- if: ${{ steps.cache-hmm.outputs.cache-hit != 'true' }}
name: Install dependencies
shell: bash
run: |
haxelib --global run hmm install -q
echo "TIMER_DONE=$(date +%s)" >> "$GITHUB_ENV"
# by default use a shared hxcpp cache
- if: ${{ inputs.hxcpp-cache == 'true' }}
name: Restore hxcpp cache
uses: actions/cache@v4
with:
path: ${{ inputs.hxcpp-cache-path }}
key: haxe-hxcpp-${{ runner.os }}-${{ github.ref_name }}-${{ github.sha }}
restore-keys: haxe-hxcpp-${{ runner.os }}-${{ github.ref_name }}
# export env for it to reuse in builds
- if: ${{ inputs.hxcpp-cache == 'true' }}
name: Persist env for hxcpp cache
shell: bash
run: |
echo "HXCPP_COMPILE_CACHE=${{ inputs.hxcpp-cache-path }}" >> "$GITHUB_ENV"
echo 'HXCPP_CACHE_MB="4096"' >> "$GITHUB_ENV"
# if it's explicitly disabled, still cache export/ since that then contains the builds
- if: ${{ inputs.hxcpp-cache != 'true' }}
name: Restore export cache
uses: actions/cache@v4
with:
path: ${{ inputs.hxcpp-cache-path }}
key: haxe-export-${{ runner.os }}-${{ github.ref_name }}-${{ github.sha }}
restore-keys: haxe-export-${{ runner.os }}-${{ github.ref_name }}
- name: Print debug info
shell: bash
run: |
cat << EOF
runner:
kernel: $(uname -a)
haxe:
version: $(haxe -version)
which: $(which haxe)
haxepath: $HAXEPATH
took: $((TIMER_HAXELIB - TIMER_HAXE))s
haxelib:
version: $(haxelib version)
which: $(which haxelib)
local:
config: $(haxelib config)
path: $(haxelib path haxelib || true)
global
config: $(haxelib config --global)
path: $(haxelib path haxelib --global || true)
system
version: $(haxelib --system version)
local:
config: $(haxelib --system config)
global:
config: $(haxelib --system config --global)
took: $((TIMER_DEPS - TIMER_HAXELIB))s
deps:
took: $((TIMER_DONE - TIMER_DEPS))s
hxcpp_cache: |
$(haxelib run hxcpp cache list || true)
EOF
-124
View File
@@ -1,124 +0,0 @@
name: upload-itch
description: "installs Butler, and uploads to itch.io!"
inputs:
butler-key:
description: "Butler API secret key"
required: true
itch-repo:
description: "Where to upload the game to"
required: true
default: "ninja-muffin24/funkin-secret"
build-dir:
description: "Directory of the game build"
required: false
target:
description: "Target (html5, windows, linux, macos)"
required: true
runs:
using: "composite"
steps:
# RUNNER_OS = Windows | macOS | Linux
# TARGET_BUILD = windows | macos | linux
# TARGET_ITCH = win | macos | linux
# TARGET_BUTLER_DOWNLOAD = windows-amd64 | darwin-amd64 | linux-amd64
- name: Setup variables
shell: bash
run: |
TARGET_OS=${{ inputs.target }}
RUNNER=${RUNNER_OS@L}
TARGET=${TARGET_OS@L}
case "$TARGET" in
"windows")
TARGET_ITCH=win
;;
*)
TARGET_ITCH=$TARGET
;;
esac
case "$RUNNER" in
"macos")
OS_NODE=darwin
;;
*)
OS_NODE=$RUNNER
;;
esac
BUTLER_PATH=$RUNNER_TEMP/butler
echo BUILD_DIR="export/release/$TARGET/bin" >> "$GITHUB_ENV"
echo ITCH_TAG=${{ inputs.itch-repo }}:$TARGET_ITCH-$GITHUB_REF_NAME >> "$GITHUB_ENV"
echo OS_AND_ARCH=$OS_NODE-amd64 >> "$GITHUB_ENV"
echo BUTLER_API_KEY=${{ inputs.butler-key }} >> "$GITHUB_ENV"
echo BUTLER_INSTALL_PATH=$BUTLER_PATH >> "$GITHUB_ENV"
echo TIMER_BUTLER=$(date +%s) >> "$GITHUB_ENV"
echo TARGET_ITCH=$TARGET_ITCH >> "$GITHUB_ENV"
echo "$BUTLER_PATH" >> "$GITHUB_PATH"
- name: Get latest butler version
shell: bash
run: |
LATEST=$(curl -sfL https://broth.itch.ovh/butler/$OS_AND_ARCH/LATEST)
echo BUTLER_LATEST=$LATEST >> "$GITHUB_ENV"
command -v butler \
&& echo BUTLER_CURRENT=$(butler -V 2>&1 | cut -d ',' -f 1) >> "$GITHUB_ENV" \
|| echo BUTLER_CURRENT=none >> "$GITHUB_ENV"
- name: Try to get butler from cache
id: cache-butler
uses: actions/cache@v4
with:
path: ${{ env.BUTLER_INSTALL_PATH }}
key: butler-${{ runner.os }}-${{ env.BUTLER_LATEST }}
- if: steps.cache-butler.outputs.cache-hit == 'true'
name: Make sure butler is executable
shell: bash
run: |
chmod +x $BUTLER_INSTALL_PATH/butler
- if: steps.cache-butler.outputs.cache-hit != 'true'
name: Install butler
shell: bash
run: |
mkdir -p $BUTLER_INSTALL_PATH
cd $BUTLER_INSTALL_PATH
curl -L -o butler.zip https://broth.itch.ovh/butler/$OS_AND_ARCH/LATEST/archive/default
unzip butler.zip
chmod +x butler
- name: Upload game to itch.io
shell: bash
run: |
echo "TIMER_UPLOAD=$(date +%s)" >> "$GITHUB_ENV"
butler login
butler push $BUILD_DIR $ITCH_TAG
echo "TIMER_DONE=$(date +%s)" >> "$GITHUB_ENV"
- name: Print debug info
shell: bash
run: |
cat << EOF
butler:
version: $(
if [[ "$BUTLER_CURRENT" == "$BUTLER_LATEST" ]]
then
echo $BUTLER_CURRENT
else
echo $BUTLER_CURRENT -> $BUTLER_LATEST
fi
)
install:
took: $(($TIMER_UPLOAD-$TIMER_BUTLER))s
upload:
tag: $TARGET_ITCH/$GITHUB_REF_NAME
took: $(($TIMER_DONE-$TIMER_UPLOAD))s
EOF
cat << EOF >> "$GITHUB_STEP_SUMMARY"
### open in launcher: [$TARGET_ITCH/$GITHUB_REF_NAME](https://run.funkin.me/$TARGET_ITCH/$GITHUB_REF_NAME)
EOF
-5
View File
@@ -1,5 +0,0 @@
# Git Hooks
These work even on Windows because of Git Bash.
## Setup
`git config core.hooksPath .github/hooks`
-2
View File
@@ -1,2 +0,0 @@
#!/bin/sh
git submodule update --init --recursive
-2
View File
@@ -1,2 +0,0 @@
#!/bin/sh
git submodule update --init --recursive
-5
View File
@@ -1,5 +0,0 @@
#!/bin/sh
if git diff --cached --submodule | grep -q "^+"; then
echo "WARNING: You have unpushed changes in submodules."
exit 1
fi
-12
View File
@@ -1,12 +0,0 @@
# Add Documentation tag to PR's changing markdown files, or anyhting in the docs folder
Documentation:
- changed-files:
- any-glob-to-any-file:
- any-glob-to-any-file:
- docs/*
- '**/*.md'
# Adds Haxe tag to PR's changing haxe code files
Haxe:
- changed-files:
- any-glob-to-any-file: '**/*.hx'
-53
View File
@@ -1,53 +0,0 @@
name: Create and publish Docker image
on:
workflow_dispatch:
push:
paths:
- '**/Dockerfile'
- '.github/workflows/build-docker-image.yml'
jobs:
build-and-push-image:
runs-on: build-set
permissions:
contents: read
packages: write
steps:
- name: Get checkout token
uses: actions/create-github-app-token@v1
id: app_token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.APP_PEM }}
owner: ${{ github.repository_owner }}
- name: Checkout repo
uses: funkincrew/ci-checkout@v6
with:
submodules: false
token: ${{ steps.app_token.outputs.token }}
- name: Log into GitHub Container Registry
uses: docker/login-action@v3.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v5.3.0
with:
context: ./build
push: true
tags: |
ghcr.io/funkincrew/build-dependencies:latest
ghcr.io/funkincrew/build-dependencies:${{ github.sha }}
labels: |
org.opencontainers.image.description=precooked haxe build-dependencies
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.source=https://github.com/${{ github.repository }}
org.opencontainers.image.title=${{ github.repository_owner }}/build-dependencies
org.opencontainers.image.url=https://github.com/${{ github.repository }}
org.opencontainers.image.version=${{ github.sha }}
-129
View File
@@ -1,129 +0,0 @@
name: Build and Upload nightly game builds
on:
workflow_dispatch:
push:
paths-ignore:
- '**/Dockerfile'
- '.github/workflows/build-docker-image.yml'
jobs:
build-game-on-host:
strategy:
matrix:
include:
- target: windows
- target: macos
runs-on:
- ${{ matrix.target }}
defaults:
run:
shell: bash
steps:
- name: Make git happy
run: |
git config --global --replace-all safe.directory $GITHUB_WORKSPACE
- name: Get checkout token
uses: actions/create-github-app-token@v1
id: app_token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.APP_PEM }}
owner: ${{ github.repository_owner }}
- name: Checkout repo
uses: funkincrew/ci-checkout@v6
with:
submodules: 'recursive'
token: ${{ steps.app_token.outputs.token }}
persist-credentials: false
- name: Setup build environment
uses: ./.github/actions/setup-haxe
with:
gh-token: ${{ steps.app_token.outputs.token }}
- name: Build game
if: ${{ matrix.target == 'windows' }}
run: |
haxelib run lime build windows -v -release -DGITHUB_BUILD
timeout-minutes: 120
- name: Build game
if: ${{ matrix.target != 'windows' }}
run: |
haxelib run lime build ${{ matrix.target }} -v -release --times -DGITHUB_BUILD
timeout-minutes: 120
- name: Upload build artifacts
uses: ./.github/actions/upload-itch
with:
butler-key: ${{ secrets.BUTLER_API_KEY}}
target: ${{ matrix.target }}
build-game-in-container:
runs-on: build-set
container: ghcr.io/funkincrew/build-dependencies:latest
strategy:
matrix:
include:
- target: linux
- target: html5
defaults:
run:
shell: bash
steps:
- name: Get checkout token
uses: actions/create-github-app-token@v1
id: app_token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.APP_PEM }}
owner: ${{ github.repository_owner }}
- name: Checkout repo
uses: funkincrew/ci-checkout@v6
with:
submodules: 'recursive'
token: ${{ steps.app_token.outputs.token }}
persist-credentials: false
- name: Config haxelib
run: |
haxelib --never newrepo
echo "HAXEPATH=$(haxelib config)" >> "$GITHUB_ENV"
- name: Restore cached dependencies
id: cache-hmm
uses: actions/cache@v4
with:
path: .haxelib
key: haxe-hmm-${{ runner.os }}-${{ hashFiles('**/hmm.json') }}
- if: ${{ steps.cache-hmm.outputs.cache-hit != 'true' }}
name: Install dependencies
run: |
git config --global 'url.https://x-access-token:${{ steps.app_token.outputs.token }}@github.com/.insteadOf' https://github.com/
haxelib --global run hmm install -q
- if: ${{ matrix.target != 'html5' }}
name: Restore hxcpp cache
uses: actions/cache@v4
with:
path: /usr/share/hxcpp
key: haxe-hxcpp-${{ runner.os }}-${{ github.ref_name }}-${{ github.sha }}
restore-keys: haxe-hxcpp-${{ runner.os }}-${{ github.ref_name }}
- name: Build game
run: |
haxelib run lime build ${{ matrix.target }} -v -release --times -DGITHUB_BUILD
timeout-minutes: 120
- name: Upload build artifacts
uses: ./.github/actions/upload-itch
with:
butler-key: ${{ secrets.BUTLER_API_KEY}}
target: ${{ matrix.target }}
@@ -1,38 +0,0 @@
name: Cancel queued workflows on PR merge
on:
pull_request:
types:
- closed
jobs:
cancel_stuff:
if: github.event.pull_request.merged == true
runs-on: build-set
permissions:
actions: write
steps:
- name: Cancel queued workflows for ${{ github.event.pull_request.head.ref }}
uses: actions/github-script@v7
with:
result-encoding: string
retries: 3
script: |
let branch_workflows = await github.rest.actions.listWorkflowRuns({
owner: context.repo.owner,
repo: context.repo.repo,
workflow_id: "build-shit.yml",
status: "queued",
branch: "${{ github.event.pull_request.head.ref }}"
});
let runs = branch_workflows.data.workflow_runs;
runs.forEach((run) => {
github.rest.actions.cancelWorkflowRun({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: run.id
});
});
console.log(runs);
-14
View File
@@ -1,14 +0,0 @@
name: "Pull Request Labeler"
on:
- pull_request_target
jobs:
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5
with:
sync-labels: true
+10
View File
@@ -0,0 +1,10 @@
jobs:
build:
runs-on: [ubuntu-latest, macos-latest]
steps:
- uses: krdlab/setup-haxe@v1
with:
haxe-version: 4.0.5
- run: |
haxe -version
haxelib install hxnodejs
+2 -14
View File
@@ -1,15 +1,3 @@
.DS_STORE
.haxelib/
.vs/
APIStuff.hx
dump/
export/
RECOVER_*.fla
shitAudio/
.build_time
.swp
# Exclude JS stuff
node_modules/
package.json
package-lock.json
.vscode/
APIStuff.hx
-6
View File
@@ -1,6 +0,0 @@
[submodule "assets"]
path = assets
url = https://github.com/FunkinCrew/funkin.assets
[submodule "art"]
path = art
url = https://github.com/FunkinCrew/funkin.art
-13
View File
@@ -1,13 +0,0 @@
# Ignore artifacts
export
# Ignore all JSONS in the images folder (including FlxAnimate JSONs)
assets/preload/images
assets/shared/images
assets/weekend1/images
# Don't ignore data files
# TODO: These don't work.
!assets/preload/data/
assets/exclude/data/credits.json
-21
View File
@@ -1,21 +0,0 @@
/**
* Configuration for JSON file formatting.
*/
module.exports = {
// Line width before Prettier tries to add new lines.
printWidth: 80,
// Indent with 2 spaces.
tabs: false,
useTabs: false,
tabWidth: 2,
// Use double quotes.
singleQuote: false,
quoteProps: "preserve",
parser: "json",
bracketSpacing: true, // Spacing between brackets in object literals.
trailingComma: "none", // No trailing commas.
semi: false, // No semicolons at ends of statements.
};
-12
View File
@@ -1,12 +0,0 @@
{
"recommendations": [
"nadako.vshaxe", // Basic Haxe integration
"wiggin77.codedox", // Haxe documentation
"vshaxe.haxe-checkstyle", // Haxe code style and conventions
"vshaxe.hxcpp-debugger", // CPP debugging
"openfl.lime-vscode-extension", // Lime integration
"esbenp.prettier-vscode", // JSON formatting
"redhat.vscode-xml", // XML formatting
"ryanluker.vscode-coverage-gutters" // Highlight code coverage
]
}
-41
View File
@@ -1,41 +0,0 @@
{
"version": "0.2.0",
"configurations": [
{
// Launch in native/CPP on Windows/OSX/Linux
"name": "Lime Build+Debug",
"type": "lime",
"request": "launch"
},
{
// Launch in native/CPP on Windows/OSX/Linux
"name": "Lime Debug (No Build)",
"type": "lime",
"request": "launch",
"preLaunchTask": null
},
{
// Launch in browser
"name": "HTML5 Debug",
"type": "chrome",
"request": "launch",
"url": "http://127.0.0.1:3001",
"sourceMaps": true,
"webRoot": "${workspaceFolder}",
"preLaunchTask": "debug: html"
},
{
// Performs a build for debugging macros
// Debugging is attached on the compilation rather than the game itself
"name": "Haxe Eval",
"type": "haxe-eval",
"request": "launch"
},
{
// Attaches the debugger to an already running game
"name": "HXCPP - Attach",
"type": "hxcpp",
"request": "attach"
}
]
}
-252
View File
@@ -1,252 +0,0 @@
{
"[haxe]": {
// Automatically keep Haxe files formatted.
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "never"
},
"editor.defaultFormatter": "nadako.vshaxe",
"editor.tabSize": 2
},
"[json]": {
// Automatically keep JSON files formatted.
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
// Automatically keep JSONC files formatted.
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"prettier.tabWidth": 2,
// XML formatting style configuration
"xml.format.enabled": true,
"xml.format.legacy": false,
"xml.format.emptyElements": "collapse",
"xml.preferences.quoteStyle": "double",
"xml.format.enforceQuoteStyle": "preferred",
"xml.format.preserveAttributeLineBreaks": false,
"xml.format.preservedNewlines": 0,
"xml.format.splitAttributes": false,
"xml.format.joinCDATALines": true,
"xml.format.preserveEmptyContent": false,
"xml.format.joinCommentLines": false,
"xml.format.joinContentLines": false,
"xml.format.spaceBeforeEmptyCloseTag": true,
"xml.format.xsiSchemaLocationSplit": "onPair",
"xml.format.splitAttributesIndentSize": 2,
"xml.format.closingBracketNewLine": false,
"xml.format.preserveSpace": [
"xsl:text",
"xsl:comment",
"xsl:processing-instruction",
"literallayout",
"programlisting",
"screen",
"synopsis",
"pre",
"xd:pre"
],
"xml.format.maxLineWidth": 0,
"xml.format.grammarAwareFormatting": true,
// Generic file formatting style configuration
"files.insertFinalNewline": true,
"files.trimFinalNewlines": false,
"files.trimTrailingWhitespace": true,
// Automatically detect indentation.
"editor.detectIndentation": true,
"editor.insertSpaces": true,
"editor.tabSize": 2,
// Automatically enforce Linux style line endings.
"files.eol": "\n",
"haxe.displayPort": "auto",
"haxe.enableCompilationServer": false,
"haxe.enableServerView": true,
"haxe.displayServer": {
"arguments": ["-v"]
},
// Fix file associations for HScript.
"files.associations": {
"*.hxp": "haxe",
"*.hscript": "haxe",
"*.haxe": "haxe",
"*.hxs": "haxe",
"*.hxc": "haxe"
},
"projectManager.git.baseFolders": ["./"],
"haxecheckstyle.sourceFolders": ["src", "source"],
"haxecheckstyle.externalSourceRoots": [],
"haxecheckstyle.configurationFile": "checkstyle.json",
"haxecheckstyle.codeSimilarityBufferSize": 100,
"lime.targetConfigurations": [
{
"label": "Windows / Debug",
"target": "windows",
"args": ["-debug", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "Linux / Debug",
"target": "linux",
"args": ["-debug", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug",
"target": "hl",
"args": ["-debug"]
},
{
"label": "Windows / Debug (FlxAnimate Test)",
"target": "windows",
"args": ["-debug", "-DANIMATE", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (FlxAnimate Test)",
"target": "hl",
"args": ["-debug", "-DANIMATE"]
},
{
"label": "Windows / Debug (Straight to Freeplay)",
"target": "windows",
"args": ["-debug", "-DFREEPLAY", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Straight to Freeplay)",
"target": "hl",
"args": ["-debug", "-DFREEPLAY"]
},
{
"label": "Windows / Debug (Straight to Play - Bopeebo Normal)",
"target": "windows",
"args": [
"-debug",
"-DSONG=bopeebo -DDIFFICULTY=normal",
"-DFORCE_DEBUG_VERSION"
]
},
{
"label": "Windows / Debug (Straight to Play - 2hot)",
"target": "windows",
"args": ["-debug", "-DSONG=2hot", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Straight to Play - Bopeebo Normal)",
"target": "hl",
"args": ["-debug", "-DSONG=bopeebo -DDIFFICULTY=normal"]
},
{
"label": "Windows / Debug (Conversation Test)",
"target": "windows",
"args": ["-debug", "-DDIALOGUE", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Conversation Test)",
"target": "hl",
"args": ["-debug", "-DDIALOGUE"]
},
{
"label": "Windows / Debug (Results Screen Test)",
"target": "windows",
"args": ["-debug", "-DRESULTS"]
},
{
"label": "Windows / Debug (Straight to Chart Editor)",
"target": "windows",
"args": ["-debug", "-DCHARTING", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Straight to Chart Editor)",
"target": "hl",
"args": ["-debug", "-DCHARTING"]
},
{
"label": "Windows / Debug (Straight to Animation Editor)",
"target": "windows",
"args": ["-debug", "-DANIMDEBUG", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "Windows / Debug (Debug hxCodec)",
"target": "windows",
"args": ["-debug", "-DHXC_LIBVLC_LOGGING", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Straight to Animation Editor)",
"target": "hl",
"args": ["-debug", "-DANIMDEBUG"]
},
{
"label": "Windows / Debug (Latency Test)",
"target": "windows",
"args": ["-debug", "-DLATENCY", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HashLink / Debug (Latency Test)",
"target": "hl",
"args": ["-debug", "-DLATENCY"]
},
{
"label": "Windows / Debug (Waveform Test)",
"target": "windows",
"args": ["-debug", "-DWAVEFORM", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "Windows / Release",
"target": "windows",
"args": ["-release"]
},
{
"label": "Windows / Release (GitHub Actions)",
"target": "windows",
"args": ["-release", "-DGITHUB_BUILD"]
},
{
"label": "HashLink / Debug (Waveform Test)",
"target": "hl",
"args": ["-debug", "-DWAVEFORM"]
},
{
"label": "HTML5 / Debug",
"target": "html5",
"args": ["-debug", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "HTML5 / Debug (Watch)",
"target": "html5",
"args": ["-debug", "-watch", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "macOS / Debug",
"target": "mac",
"args": ["-debug", "-DFORCE_DEBUG_VERSION"]
},
{
"label": "macOS / Release",
"target": "mac",
"args": ["-release"]
},
{
"label": "macOS / Release (GitHub Actions)",
"target": "mac",
"args": ["-release", "-DGITHUB_BUILD"]
}
],
"cmake.configureOnOpen": false,
"coverage-gutters.coverageFileNames": [
"lcov.info",
"cov.xml",
"coverage.xml",
"jacoco.xml",
"coverage.cobertura.xml"
]
}
-13
View File
@@ -1,13 +0,0 @@
{
"version": "2.0.0",
"tasks": [
{
"type": "lime",
"command": "test",
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
+1 -191
View File
@@ -4,196 +4,6 @@ All notable changes will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.4.0] - 2024-06-06
### Added
- 2 new Erect remixes, Eggnog and Satin Panties. Check them out from the Freeplay menu!
- Major visual improvements to the Results screen, with additional animations and audio based on your performance.
- Major visual improvements to the Freeplay screen, with song difficulty ratings and player rank displays.
- Freeplay now plays a preview of songs when you hover over them.
- Added a Charter field to the chart format, to allow for crediting the creator of a level's chart.
- You can see who charted a song from the Pause menu.
- Added a new Scroll Speed chart event to change the note speed mid-song (thanks burgerballs!)
### Changed
- Tweaked the charts for several songs:
- Tutorial (increased the note speed slightly)
- Spookeez
- Monster
- Winter Horrorland
- M.I.L.F.
- Senpai (increased the note speed)
- Roses
- Thorns (increased the note speed slightly)
- Ugh
- Stress
- Lit Up
- Favorite songs marked in Freeplay are now stored between sessions.
- The Freeplay easter eggs are now easier to see.
- In the event that the game cannot load your save data, it will now perform a backup before clearing it, so that we can try to repair it in the future.
- Custom note styles are now properly supported for songs; add new notestyles via JSON, then select it for use from the Chart Editor Metadata toolbox. (thanks Keoiki!)
- Health icons now support a Winning frame without requiring a spritesheet, simply include a third frame in the icon file. (thanks gamerbross!)
- Remember that for more complex behaviors such as animations or transitions, you should use an XML file to define each frame.
### Fixed
- Fixed an issue where Nene's visualizer would not play on Desktop builds
- Fixed a bug where the game would silently fail to load saves on HTML5
- Fixed some bugs with the props on the Story Menu not bopping properly
- Improved offsets for Pico and Tankman opponents so they don't slide around as much.
- Fixed a crash on Linux caused by an old version of hxCodec (thanks Noobz4Life!)
- Optimized animation handling for characters (thanks richTrash21!)
- Made improvements to compiling documentation (thanks gedehari!)
- Fixed a bug where pressing the volume keys would stop the Toy commercial (thanks gamerbross!)
- Fixed a bug where the Chart Editor Playtest would crash when losing (thanks gamerbross!)
- Removed a large number of unused imports to optimize builds (thanks Ethan-makes-music!)
- Fixed a bug where hold notes would be positioned wrong on downscroll (thanks MaybeMaru!)
- Additional fixes to the Loading bar on HTML5 (thanks lemz1!)
- Fixed a crash in Freeplay caused by a level referencing an invalid song (thanks gamerbross!)
- Improved debug logging for unscripted stages (thanks gamerbross!)
- Fixed a bug where changing difficulties in Story mode wouldn't update the score (thanks sectorA!)
- Fixed an issue where the Chart Editor would use an incorrect instrumental on imported Legacy songs (thanks gamerbross!)
- Fixed a camera bug in the Main Menu (thanks richTrash21!)
- Fixed several bugs with the TitleState, including missing music when returning from the Main Menu (thanks gamerbross!)
- Fixed a bug where opening the game from the command line would crash the preloader (thanks NotHyper474!)
- Fixed a bug where hold notes would display improperly in the Chart Editor when downscroll was enabled for gameplay (thanks gamerbross!)
- Fixed a bug where characters would sometimes use the wrong scale value (thanks PurSnake!)
- Additional bug fixes and optimizations.
## [0.3.3] - 2024-05-14
### Changed
- Cleaned up some code in `PlayAnimationSongEvent.hx` (thanks BurgerBalls!)
### Fixed
- Fixes to the Loading bar on HTML5 (thanks lemz1!)
- Don't allow any more inputs when exiting freeplay (thanks gamerbros!)
- Fixed using mouse wheel to scroll on freeplay (thanks JugieNoob!)
- Fixed the reset's of the health icons, score, and notes when re-entering gameplay from gameover (thanks ImCodist!)
- Fixed the chart editor character selector's hitbox width (thanks MadBear422!)
- Fixed camera stutter once a wipe transition to the Main Menu completes (thanks ImCodist!)
- Fixed an issue where hold note would be invisible for a single frame (thanks ImCodist!)
- Fix tween accumulation on title screen when pressing Y multiple times (thanks TheGaloXx!)
- Fix a crash when querying FlxG.state in the crash handler
- Fix for a game over easter egg so you don't accidentally exit it when viewing
- Fix an issue where the Freeplay menu never displays 100% clear
- Fix an issue where Weekend 1 Pico attempted to retrieve a missing asset.
- Fix an issue where duplicate keybinds would be stoed, potentially causing a crash
- Chart debug key now properly returns you to the previous chart editor session if you were playtesting a chart (thanks nebulazorua!)
- Fix a crash on Freeplay found on AMD graphics cards
## [0.3.2] - 2024-05-03
### Added
- Added `,` and `.` keybinds to the Chart Editor. These place Focus Camera events at the playhead, for the opponent and player respectively.
- Implemented a blacklist to prevent mods from calling system functions.
- Added a couple utility functions to call useful stuff that got blacklisted.
- Added an `onSongLoad` script event which allows for mutation of notes and events.
- Added the current loaded modlist to crash logs.
- Added the `visible` attribute to Level JSON data.
- Enabled ZIP file system support for Polymod (make sure the metadata is in the root of the ZIP).
### Changed
- Songs in the mod folders will display in Freeplay without any extra scripting.
- Story levels in the mod folders will display in Story without any extra scripting.
- All audio should sound better in HTML5, less muddy
### Fixed
- Fixed a typo in the credits folder (`Custcene` -> `Cutscene`)
- Fixed an issue where health icon transition animations would loop and never finish properly.
- Fixed an issue where video cutscenes flagged as mid-song would crash the game when they finish.
- Fixed an issue where some substate lifecycle events were not being dispatched.
- Fixed a crash when trying to load into the Animation Offsets menu with an invalid character.
- Fixed an issue where the preloader would spam the logs when it was complete and waiting for user input.
- Should definitely have the fix for freeplay where it stops taking control of the main menu below it
- Changed the code for the story menu difficulties so that "normal" doesn't overlap the arrows after leaving Weekend 1
### Removed
- Removed some unused `.txt` files in the `assets/data` folder.
## [0.3.1] - 2024-05-01
### Changed
- Ensure the Git commit hash always displays in the log files.
- Added whether the local Git repo was modified to the log files.
- Removed "PROTOTYPE" text on release builds only (it still shows on debug builds).
- Added additional credits and special thanks.
- Updated peepo in creds to peepo173
### Fixed
- Fix a crash when retrieving system specs while handing a crash.
- Fix a crash triggered when pausing before the song started.
- Fix a crash triggered when dying before the song started.
- Fix a crash triggered when unloading certain graphics.
- Pico game over confirm plays correctly
- When exiting from a song into freeplay, main menu no longer takes inputs unintentionally (aka issues with merch links opening up when selecting songs)
- Fix for arrow keys causing web browser page scroll
## [0.3.0] - 2024-04-30
### Added
- New Story Level: Weekend 1, starting Pico, Darnell, and Nene.
- Beat the level in Story Mode to unlock the songs for Freeplay!
- 12 new Erect remixes, featuring Kawai Sprite, Saruky, Kohta Takahashi, and Saster
- Unlocked instantly in Freeplay
- New visually enhanced Freeplay menu.
- Sorting, favorites, and more.
- New Results screen upon completing any song or story level.
- New refactored Chart Editor prototype (accessible via `~` in the main menu or `7` in the Play State, rebindable). (VERY EARLY PROTOTYPE. EXPECT BUGS AND CRASHES)
- Implemented a new scripting system using HScript (an interpreted language with Haxe-like syntax) for incredible flexibility.
- All character-specific, stage-specific, or song-specific behaviors have been moved to HScript.
- New song events system allows for simple customization of camera behavior.
- Mods can implement custom song events via HScript, and new built-in song events will come in the future.
- New credits menu to list all the dozens of people who contributed.
### Changed
- Completely refactored the game's input system for higher reliability and accuracy.
- Reworked note rendering to massively reduce lag on larger charts.
- Reworks to scoring and health gain.
- Dedicated gamepad support with the ability to rebind buttons.
- Improvements to video cutscenes and dialogue, allowing them to be easily skipped or restarted.
- Updated Polymod by several major versions, allowing for fully dynamic asset replacement and support for scripted classes.
- Completely refactored almost every part of the game's code for performance, stability, and extensibility.
- This is not the Ludem Dare game held together with sticks and glue you played three years ago.
- Characters, stages, songs, story levels, and dialogue are now built from JSON data registries rather than being hardcoded.
- All of these also support attaching scripts for custom behavior, more documentation on this soon.
- You can forcibly reload the game's JSON data and scripts by pressing F5.
- Fully refactored the game's chart file format for extensibility and readability.
- You can migrate old charts using the Import FNF Legacy option in the chart editor.
- Various visual tweaks and improvements.
### Fixed
- 17 quadrillion bugs across hundreds of PRs.
## [0.2.8] - 2021-04-18 (note, this one is iffy cuz we slacked wit it lol!)
### Added
- TANKMAN! 3 NEW SONGS BY KAWAISPRITE (UGH, GUNS, STRESS)! Charting help by MtH!
- Monster added into week 2, FINALLY (Charting help by MtH and ChaoticGamer!)
- Can now change song difficulty mid-game.
- Shows some song info on pause screen.
- Cute little icons onto freeplay menu
- Offset files for easier modification of characters
### Changed
- ASSET LOADING OVERHAUL, WAY FASTER LOAD TIMES ON WEB!!! (THANKS TO GEOKURELI WOKE KING)
- Made difficulty selector on freeplay menu more apparent
### Fixed
- That one random note on Bopeebo
## [0.2.7.1] - 2021-02-14
### Added
- Easter eggs
- readme's in desktop versions of the game
### Changed
- New icons, old one was placeholder since October woops!
- Made the transitions between the story mode levels more seamless.
- Offset of the Newgrounds logo on boot screen.
- Made the changelog txt so it can be opened easier by normal people who don't have a markdown reader (most normal people);
### Fixed
- Fixed crashes on Week 6 story mode dialogue if spam too fast ([Thanks to Lotusotho for the Pull Request!](https://github.com/ninjamuffin99/Funkin/pull/357))
- Should show intro credits on desktop versions of the game more consistently
- Layering on Week 4 songs with GF and the LIMO LOL HOW TF I MISS THIS
- Chart's and chart editor now support changeBPM, GOD BLESS MTH FOR THIS ONE I BEEN STRUGGLIN WIT THAT SINCE OCTOBER LMAO ([GOD BLESS MTH](https://github.com/ninjamuffin99/Funkin/pull/382))
- Fixed sustain note trails ALSO THANKS TO MTH U A REAL ONE ([MTH VERY POWERFUL](https://github.com/ninjamuffin99/Funkin/pull/415))
- Antialiasing on the skyscraper lights
## [0.2.7] - 2021-02-02
### Added
- PIXEL DAY UPDATE LOL 1 WEEK LATER
- 3 New songs by Kawaisprite!
- COOL CUTSCENES
- WEEK 6 YOYOYOYOY
- Swaggy pixel art by Moawling!
### Changed
- Made it so you lose sliiiightly more health when you miss a note.
- Removed the default HaxeFlixel pause screen when the game window loses focus, can get screenshots of the game easier hehehe
### Fixed
- Idle animation bug with BF christmas and BF hair blow sprites ([Thanks to Injourn for the Pull Request!](https://github.com/ninjamuffin99/Funkin/pull/237))
## [0.2.6] - 2021-01-20
### Added
- 3 NEW CHRISTMAS SONGS. 2 BY KAWAISPRITE, 1 BY BASSETFILMS!!!!! BF WITH DRIP! SANTA HANGIN OUT!
@@ -222,7 +32,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Clear section button to note editor
- Swap button in note editor
- a new boot text or two
- automatic check for when you're on an old version of the game!
- automatic check for when you're on an old version of the game!
### Changed
- Made Spookeez on Normal easier.
- Mouse is now visible in note editor
-32
View File
@@ -1,32 +0,0 @@
# Code Style Guide
Code style is enforced using Visual Studio Code extensions.
## .hx
Formatting is handled by the `nadako.vshaxe` extension, which includes Haxe Formatter.
Haxe Formatter automatically resolves issues such as intentation style and line breaks, and can be configured in `hxformat.json`.
Code Quality is handled by the `vshaxe.haxe-checkstyle` extension, which includes Haxe Checkstyle.
### Haxe Checkstyle Notes
* Checks can be escalated to display as different serverities in the Problems window.
* Checks can be disabled by setting the severity to `IGNORE`.
* `IndentationCharacter` checks what is used to indent, `Indentation` checks how deep the intentation is.
* `CommentedOutCode` check is in place because old code should be retrieved via Git history.
* TODO items: Enable these one-by-one and fix them to improve the overall code quality.
- Reconfigure `MethodLength`
- Reconfigure `CyclomaticComplexity`
- Re-enable `MagicNumber`
- Re-configure `NestedControlFlow`
- Re-configure `NestedIfDepth`
- Figure out something for `Trace`
- Fix bug and enable `DocCommentStyle`
## .json
Formatting is handled by the `esbenp.prettier-vscode` extension, which includes Prettier.
Prettier automatically handles formatting of JSON files, and can be configured in `.prettierrc.js`.
### Prettier Notes
* Prettier will automatically attempt to place expressions on a single line if they fit, but will keep them multi-line if they are manually made multi-line.
* This means that long singleline objects are automatically expanded, and short multiline objects aren't automatically collapsed.
* You may want to use regex replacement to manually remove the first newline in short multi-line objects to convince Prettier to collapse them.
+1 -12
View File
@@ -1,14 +1,3 @@
# Friday Night Funkin'
The Friday Night Funkin' source code is licensed under the Apache 2.0 license: (https://www.apache.org/licenses/LICENSE-2.0)
Friday Night Funkin' Copyright 2020-2024 The Funkin' Crew Inc.
All Rights Reserved. "Friday Night Funkin'" and the "Friday Night Funkin'" logo are trademarks of The Funkin' Crew Inc.
You can view the `funkin-assets` license here: (https://github.com/FunkinCrew/funkin.assets/blob/main/LICENSE.md)
## Apache 2.0 License
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
@@ -197,7 +186,7 @@ You can view the `funkin-assets` license here: (https://github.com/FunkinCrew/fu
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2020-2024 The Funkin' Crew Inc.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
-3
View File
@@ -1,6 +1,3 @@
# RIGHT NOW THE MODS FOLDER DOES NOT WORK ENTIRELY JUST YET!!!
## THIS IS WORK IN PROGRESS!!!
# QUICK AND DIRTY MOD GUIDE
With the 0.2.6 update, I added a bit of a slightly nicer mod support backend.
+57
View File
@@ -0,0 +1,57 @@
package ;
import flixel.system.FlxBasePreloader;
import openfl.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.BlendMode;
import flash.display.Sprite;
import flash.Lib;
import flixel.FlxG;
@:bitmap("art/preloaderArt.png") class LogoImage extends BitmapData { }
class Preloader extends FlxBasePreloader
{
public function new(MinDisplayTime:Float=3, ?AllowedURLs:Array<String>)
{
super(MinDisplayTime, AllowedURLs);
}
var logo:Sprite;
override function create():Void
{
this._width = Lib.current.stage.stageWidth;
this._height = Lib.current.stage.stageHeight;
var ratio:Float = this._width / 2560; //This allows us to scale assets depending on the size of the screen.
logo = new Sprite();
logo.addChild(new Bitmap(new LogoImage(0,0))); //Sets the graphic of the sprite to a Bitmap object, which uses our embedded BitmapData class.
logo.scaleX = logo.scaleY = ratio;
logo.x = ((this._width) / 2) - ((logo.width) / 2);
logo.y = (this._height / 2) - ((logo.height) / 2);
addChild(logo); //Adds the graphic to the NMEPreloader's buffer.
super.create();
}
override function update(Percent:Float):Void
{
if(Percent < 69)
{
logo.scaleX += Percent / 1920;
logo.scaleY += Percent / 1920;
logo.x -= Percent * 0.6;
logo.y -= Percent / 2;
}else{
logo.scaleX = this._width / 1280;
logo.scaleY = this._width / 1280;
logo.x = ((this._width) / 2) - ((logo.width) / 2);
logo.y = (this._height / 2) - ((logo.height) / 2);
}
super.update(Percent);
}
}
+82 -230
View File
@@ -1,269 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://lime.openfl.org/project/1.0.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://lime.openfl.org/project/1.0.4 http://lime.openfl.org/xsd/project-1.0.4.xsd">
<project>
<!-- _________________________ Application Settings _________________________ -->
<app title="Friday Night Funkin'" file="Funkin" packageName="com.funkin.fnf" package="com.funkin.fnf" main="Main" version="0.4.0" company="ninjamuffin99" />
<app title="Friday Night Funkin'" file="Funkin" packageName="com.ninjamuffin99.funkin" main="Main" version="0.2.6" company="ninjamuffin99" />
<!--Switch Export with Unique ApplicationID and Icon-->
<set name="APP_ID" value="0x0100f6c013bbc000" />
<!--
Define the OpenFL sprite which displays the preloader.
You can't replace the preloader's logic here, sadly, but you can extend it.
Basic preloading logic is done by `openfl.display.Preloader`.
-->
<app preloader="funkin.ui.transition.preload.FunkinPreloader" />
<!--The flixel preloader is not accurate in Chrome. You can use it regularly if you embed the swf into a html file
or you can set the actual size of your file manually at "FlxPreloaderBase-onUpdate-bytesTotal"-->
<!-- <app preloader="Preloader" resizable="true" /> -->
<app preloader="flixel.system.FlxPreloader" />
<!--Minimum without FLX_NO_GAMEPAD: 11.8, without FLX_NO_NATIVE_CURSOR: 11.2-->
<set name="SWF_VERSION" value="11.8" />
<!-- ____________________________ Window Settings ___________________________ -->
<!--These window settings apply to all targets-->
<window width="1280" height="720" fps="60" background="#000000" hardware="true" vsync="false" />
<!--HTML5-specific-->
<window if="html5" resizable="true" />
<!--Desktop-specific-->
<window if="desktop" orientation="landscape" fullscreen="false" resizable="true" vsync="false" />
<window if="desktop" orientation="landscape" fullscreen="false" resizable="true" vsync="false"/>
<!--Mobile-specific-->
<window if="mobile" orientation="landscape" fullscreen="true" width="0" height="0" resizable="false" />
<window if="mobile" orientation="landscape" fullscreen="true" width="0" height="0" />
<!--Switch-specific-->
<window if="switch" orientation="landscape" fullscreen="true" width="0" height="0" resizable="true" />
<!-- _____________________________ Path Settings ____________________________ -->
<set name="BUILD_DIR" value="export/debug" if="debug" />
<set name="BUILD_DIR" value="export/release" unless="debug" />
<set name="BUILD_DIR" value="export/32bit" if="32bit" />
<source path="source" />
<assets path="assets/preload" rename="assets" exclude="*.ogg|*.wav" if="web" />
<assets path="assets/preload" rename="assets" exclude="*.mp3|*.wav" unless="web" />
<define name="PRELOAD_ALL" unless="web" />
<define name="NO_PRELOAD_ALL" unless="PRELOAD_ALL" />
<section if="PRELOAD_ALL">
<library name="songs" preload="true" />
<library name="shared" preload="true" />
<library name="tutorial" preload="true" />
<library name="week1" preload="true" />
<library name="week2" preload="true" />
<library name="week3" preload="true" />
<library name="week4" preload="true" />
<library name="week5" preload="true" />
<library name="week6" preload="true" />
<library name="week7" preload="true" />
<library name="weekend1" preload="true" />
<library name="videos" preload="true" />
</section>
<section if="NO_PRELOAD_ALL">
<library name="songs" preload="false" />
<library name="shared" preload="false" />
<library name="tutorial" preload="false" />
<library name="week1" preload="false" />
<library name="week2" preload="false" />
<library name="week3" preload="false" />
<library name="week4" preload="false" />
<library name="week5" preload="false" />
<library name="week6" preload="false" />
<library name="week7" preload="false" />
<library name="weekend1" preload="false" />
<library name="videos" preload="false" />
</section>
<library name="art" preload="false" />
<assets path="assets/songs" library="songs" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/songs" library="songs" exclude="*.fla|*.mp3|*.wav" unless="web" />
<!-- Videos go in their own library because web never needs to preload them, they can just be streamed. -->
<assets path="assets/videos" library="videos" />
<assets path="assets/shared" library="shared" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/shared" library="shared" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/tutorial" library="tutorial" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/tutorial" library="tutorial" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week1" library="week1" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week1" library="week1" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week2" library="week2" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week2" library="week2" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week3" library="week3" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week3" library="week3" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week4" library="week4" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week4" library="week4" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week5" library="week5" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week5" library="week5" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week6" library="week6" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week6" library="week6" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/week7" library="week7" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/week7" library="week7" exclude="*.fla|*.mp3|*.wav" unless="web" />
<assets path="assets/weekend1" library="weekend1" exclude="*.fla|*.ogg|*.wav" if="web" />
<assets path="assets/weekend1" library="weekend1" exclude="*.fla|*.mp3|*.wav" unless="web" />
<!-- <assets path='example_mods' rename='mods' embed='false'/> -->
<!--
AUTOMATICALLY MOVING EXAMPLE MODS INTO THE BUILD CAUSES ISSUES
Currently, this line will add the mod files to the library manifest,
which causes issues if the mod is not enabled.
If we can exclude the `mods` folder from the manifest, we can re-enable this line.
<assets path='example_mods' rename='mods' embed='false' exclude="*.md" />
-->
<assets path="art/readme.txt" rename="do NOT readme.txt" library="art"/>
<assets path="CHANGELOG.md" rename="changelog.txt" library="art"/>
<!-- NOTE FOR FUTURE SELF SINCE FONTS ARE ALWAYS FUCKY
TO FIX ONE OF THEM, I CONVERTED IT TO OTF. DUNNO IF YOU NEED TO
THEN UHHH I USED THE NAME OF THE FONT WITH SETFORMAT() ON THE TEXT!!!
NOT USING A DIRECT THING TO THE ASSET!!!
-->
<assets path="assets/fonts" embed="true" />
<!-- If compiled via github actions, show debug version number. -->
<define name="FORCE_DEBUG_VERSION" if="GITHUB_BUILD" />
<define name="NO_REDIRECT_ASSETS_FOLDER" if="GITHUB_BUILD" />
<define name="TOUCH_HERE_TO_PLAY" if="web" />
<classpath name="source" />
<assets path="assets/images" />
<assets path="assets/data" />
<assets path='assets/mods' />
<!-- <library name="noPreload" preload='false'/> -->
<!-- <library name="noPreload"/> -->
<assets path="assets/music" include="*.mp3" if="web"/>
<assets path="assets/music" include="*.ogg" unless="web"/>
<assets path="assets/sounds" include="*.mp3" if="web" />
<assets path="assets/sounds" include="*.ogg" unless="web" />
<assets path="CHANGELOG.md"/>
<assets path="assets/fonts/vcr.ttf" embed="true" />
<!-- _______________________________ Libraries ______________________________ -->
<haxelib name="lime" /> <!-- Game engine backend -->
<haxelib name="openfl" /> <!-- Game engine backend -->
<haxelib name="flixel" /> <!-- Game engine -->
<haxedev set="webgl" />
<haxelib name="flixel" />
<haxedev set='webgl' />
<haxelib name="flixel-addons" /> <!-- Additional utilities for Flixel -->
<haxelib name="hscript" /> <!-- Scripting -->
<haxelib name="flixel-ui" /> <!-- UI framework (DEPRECATED) -->
<haxelib name="haxeui-core" /> <!-- UI framework -->
<haxelib name="haxeui-flixel" /> <!-- Integrate HaxeUI with Flixel -->
<haxelib name="flixel-text-input" /> <!-- Improved text field rendering for HaxeUI -->
<haxelib name="polymod" /> <!-- Modding framework -->
<haxelib name="flxanimate" /> <!-- Texture atlas rendering -->
<haxelib name="hxCodec" if="desktop" unless="hl" /> <!-- Video playback -->
<haxelib name="funkin.vis"/>
<haxelib name="grig.audio" />
<!--In case you want to use the addons package-->
<haxelib name="flixel-addons" />
<haxelib name="hscript" />
<haxelib name="FlxPartialSound" /> <!-- Loading partial sound data -->
<!--In case you want to use the ui package-->
<haxelib name="flixel-ui" />
<haxelib name="newgrounds"/>
<haxelib name="faxe" if='switch'/>
<haxelib name="polymod"/>
<haxelib name="json2object" /> <!-- JSON parsing -->
<haxelib name="thx.core" /> <!-- General utility library, "the lodash of Haxe" -->
<haxelib name="thx.semver" /> <!-- Version string handling -->
<!-- <haxelib name="markdown" /> -->
<!-- <haxelib name="HtmlParser" /> -->
<haxelib name="hxcpp-debug-server" if="desktop debug" /> <!-- VSCode debug support -->
<!--In case you want to use nape with flixel-->
<!--<haxelib name="nape-haxe4" />-->
<!-- ______________________________ Haxedefines _____________________________ -->
<!--Enable the Flixel core recording system-->
<!--<haxedef name="FLX_RECORD" />-->
<!--Disable the right and middle mouse buttons-->
<!-- <haxedef name="FLX_NO_MOUSE_ADVANCED" /> -->
<!--Disable the native cursor API on Flash-->
<!--<haxedef name="FLX_NO_NATIVE_CURSOR" />-->
<!--Optimise inputs, be careful you will get null errors if you don't use conditionals in your game-->
<haxedef name="FLX_NO_MOUSE" if="mobile" />
<haxedef name="FLX_NO_KEYBOARD" if="mobile" />
<haxedef name="FLX_NO_TOUCH" if="desktop" />
<!--<haxedef name="FLX_NO_GAMEPAD" />-->
<!--Disable the Flixel core sound tray-->
<!--<haxedef name="FLX_NO_SOUND_TRAY" />-->
<!--Disable the Flixel sound management code-->
<!--<haxedef name="FLX_NO_SOUND_SYSTEM" />-->
<!--Disable the Flixel core focus lost screen-->
<haxedef name="FLX_NO_FOCUS_LOST_SCREEN" />
<!--<haxedef name="FLX_NO_FOCUS_LOST_SCREEN" />-->
<!--Disable the Flixel core debugger. Automatically gets set whenever you compile in release mode!-->
<haxedef name="FLX_NO_DEBUG" unless="debug || FORCE_DEBUG_VERSION" />
<haxedef name="FLX_NO_DEBUG" unless="debug" />
<!--Enable this for Nape release builds for a serious peformance improvement-->
<haxedef name="NAPE_RELEASE_BUILD" unless="debug" />
<!--
Hide deprecation warnings until they're fixed.
TODO: REMOVE THIS!!!!
<haxeflag name="-w" value="-WDeprecated" />
-->
<!-- Haxe 4.3.0+: Enable pretty syntax errors and stuff. -->
<haxedef name="message.reporting" value="pretty" />
<!-- _________________________________ Custom _______________________________ -->
<!-- Disable trace() calls in release builds to bump up performance.
<haxeflag name="- -no-traces" unless="debug" />-->
<!-- HScript relies heavily on Reflection, which means we can't use DCE. -->
<haxeflag name="-dce no" />
<!-- Ensure all Funkin' classes are available at runtime. -->
<haxeflag name="--macro" value="include('funkin')" />
<!-- Ensure all UI components are available at runtime. -->
<haxeflag name="--macro" value="include('haxe.ui.backend.flixel.components')" />
<haxeflag name="--macro" value="include('haxe.ui.containers.dialogs')" />
<haxeflag name="--macro" value="include('haxe.ui.containers.menus')" />
<haxeflag name="--macro" value="include('haxe.ui.containers.properties')" />
<haxeflag name="--macro" value="include('haxe.ui.core')" />
<haxeflag name="--macro" value="include('haxe.ui.components')" />
<haxeflag name="--macro" value="include('haxe.ui.containers')" />
<!--
Ensure additional class packages are available at runtime (some only really used by scripts).
Ignore packages we can't include.
-->
<haxeflag name="--macro" value="include('flixel', true, [ 'flixel.addons.editors.spine.*', 'flixel.addons.nape.*', 'flixel.system.macros.*' ])" />
<!-- Necessary to provide stack traces for HScript. -->
<haxedef name="hscriptPos" />
<haxedef name="safeMode"/>
<haxedef name="HXCPP_CHECK_POINTER" />
<haxedef name="HXCPP_STACK_LINE" />
<haxedef name="HXCPP_STACK_TRACE" />
<!-- This macro allows addition of new functionality to existing Flixel. -->
<haxeflag name="--macro" value="addMetadata('@:build(funkin.util.macro.FlxMacro.buildFlxBasic())', 'flixel.FlxBasic')" />
<!--Place custom nodes like icons here (higher priority to override the HaxeFlixel icon)-->
<icon path="art/icon16.png" size="16" />
<icon path="art/icon32.png" size="32" />
<icon path="art/icon64.png" size="64" />
<icon path="art/iconOG.png" />
<haxedef name="CAN_OPEN_LINKS" unless="switch" />
<haxedef name="CAN_CHEAT" if="switch debug" />
<!-- I don't remember what this is for. -->
<haxedef name="haxeui_no_mouse_reset" />
<!-- Clicking outside a dialog should deselect the current focused component. -->
<haxedef name="haxeui_focus_out_on_click" />
<!-- Required to use haxe.ui.backend.flixel.UIState with build macros. -->
<haxedef name="haxeui_dont_impose_base_class" />
<haxedef name="HARDCODED_CREDITS" />
<!-- Skip the Intro -->
<section if="debug">
<!-- Starts the game at the specified week, at the first song -->
<!-- <haxedef name="week" value="1" if="debug"/> -->
<!-- Starts the game at the specified song -->
<!-- <haxedef name="song" value="bopeebo" if="debug"/> -->
<!-- Difficulty, only used for week or song, defaults to 1 -->
<!-- <haxedef name="dif" value="2" if="debug"/> -->
</section>
<section if="newgrounds">
<!-- Enables Ng.core.verbose -->
<!-- <haxedef name="NG_VERBOSE" /> -->
<!-- Enables a NG debug session, so medals don't permently unlock -->
<!-- <haxedef name="NG_DEBUG" /> -->
<!-- pretends that the saved session Id was expired, forcing the reconnect prompt -->
<!-- <haxedef name="NG_FORCE_EXPIRED_SESSION" if="debug" /> -->
</section>
<!-- Uncomment this to wipe your input settings. -->
<!-- <haxedef name="CLEAR_INPUT_SAVE"/> -->
<section if="debug" unless="NO_REDIRECT_ASSETS_FOLDER || html5 || GITHUB_BUILD">
<!--
Use the parent assets folder rather than the exported one
No more will we accidentally undo our changes!
-->
<haxedef name="REDIRECT_ASSETS_FOLDER" />
</section>
<icon path="art/icon.png" />
<section>
<!--
This flag enables the popup/crashlog error handler.
However, it also messes with breakpoints on some platforms.
-->
<haxedef name="openfl-enable-handle-error" />
</section>
<!-- Run a script before and after building. -->
<prebuild haxe="source/Prebuild.hx"/> -->
<postbuild haxe="source/Postbuild.hx"/> -->
<!-- Enable this on platforms which do not support dropping files onto the window. -->
<haxedef name="FILE_DROP_UNSUPPORTED" if="mac" />
<section unless="FILE_DROP_UNSUPPORTED">
<haxedef name="FILE_DROP_SUPPORTED" />
</section>
<!-- Enable this on platforms which do not support the edsior views. -->
<haxedef name="CHART_EDITOR_UNSUPPORTED" if="web" />
<haxedef name="CHART_EDITOR_SUPPORTED" unless="web"/>
<!-- Options for Polymod -->
<section if="polymod">
<!-- Turns on additional debug logging. -->
<haxedef name="POLYMOD_DEBUG" value="true" if="debug" />
<!-- The file extension to use for script files. -->
<haxedef name="POLYMOD_SCRIPT_EXT" value=".hscript" />
<!-- Which asset library to use for scripts. -->
<haxedef name="POLYMOD_SCRIPT_LIBRARY" value="scripts" />
<!-- The base path from which scripts should be accessed. -->
<haxedef name="POLYMOD_ROOT_PATH" value="scripts/" />
<!-- Determines the subdirectory of the mod folder used for file appending. -->
<haxedef name="POLYMOD_APPEND_FOLDER" value="_append" />
<!-- Determines the subdirectory of the mod folder used for file merges. -->
<haxedef name="POLYMOD_MERGE_FOLDER" value="_merge" />
<!-- Determines the file in the mod folder used for metadata. -->
<haxedef name="POLYMOD_MOD_METADATA_FILE" value="_polymod_meta.json" />
<!-- Determines the file in the mod folder used for the icon. -->
<haxedef name="POLYMOD_MOD_ICON_FILE" value="_polymod_icon.png" />
</section>
<!-- <haxedef name="SKIP_TO_PLAYSTATE" if="debug" /> -->
<haxedef name="NG_LOGIN" if="newgrounds" />
</project>
+86 -44
View File
@@ -1,44 +1,86 @@
# Friday Night Funkin'
Friday Night Funkin' is a rhythm game. Built using HaxeFlixel for Ludum Dare 47.
This game was made with love to Newgrounds and it's community. Extra love to Tom Fulp.
- [Playable web demo on Newgrounds!](https://www.newgrounds.com/portal/view/770371)
- [Demo download builds for Windows, Mac, and Linux from Itch.io!](https://ninja-muffin24.itch.io/funkin)
# Getting Started
**PLEASE USE THE LINKS ABOVE IF YOU JUST WANT TO PLAY THE GAME**
To learn how to install the necessary dependencies and compile the game from source, please check out our [building the game](/docs/COMPILING.md) guide.
# Contributing
Please check out our [Contributor's guide](./CONTRIBUTORS.md) on how you can actively participate in the development of Friday Night Funkin'.
# Credits and Special Thanks
Full credits can be found in-game, or wherever the credits.json file is.
## Programming
- [ninjamuffin99](https://twitter.com/ninja_muffin99) - Lead Programmer
- [EliteMasterEric](https://twitter.com/EliteMasterEric) - Programmer
- [MtH](https://twitter.com/emmnyaa) - Charting and Additional Programming
- [GeoKureli](https://twitter.com/Geokureli/) - Additional Programming
- Our contributors on GitHub
## Art / Animation / UI
- [PhantomArcade3K](https://twitter.com/phantomarcade3k) - Artist and Animator
- [Evilsk8r](https://twitter.com/evilsk8r) - Art
- [Moawling](https://twitter.com/moawko) - Week 6 Pixel Art
- [IvanAlmighty](https://twitter.com/IvanA1mighty) - Misc UI Design
## Music
- [Kawaisprite](https://twitter.com/kawaisprite) - Musician
- [BassetFilms](https://twitter.com/Bassetfilms) - Music for "Monster", Additional Character Design
## Special Thanks
- [Tom Fulp](https://twitter.com/tomfulp) - For being a great guy and for Newgrounds
- [JohnnyUtah](https://twitter.com/JohnnyUtahNG/) - Voice of Tankman
- [L0Litsmonica](https://twitter.com/L0Litsmonica) - Voice of Mommy Mearest
# Friday Night Funkin
This is the repository for Friday Night Funkin, a game originally made for Ludum Dare 47 "Stuck In a Loop".
Play the Ludum Dare prototype here: https://ninja-muffin24.itch.io/friday-night-funkin
Play the Newgrounds one here: https://www.newgrounds.com/portal/view/770371
Support the project on the itch.io page: https://ninja-muffin24.itch.io/funkin
## Credits / shoutouts
- [ninjamuffin99 (me!)](https://twitter.com/ninja_muffin99) - Programmer
- [PhantomArcade3K](https://twitter.com/phantomarcade3k) and [Evilsk8r](https://twitter.com/evilsk8r) - Art
- [Kawaisprite](https://twitter.com/kawaisprite) - Musician
This game was made with love to Newgrounds and it's community. Extra love to Tom Fulp.
## Build instructions
### Installing shit
First you need to install Haxe and HaxeFlixel. I'm too lazy to write and keep updated with that setup (which is pretty simple).
The link to that is on the [HaxeFlixel website](https://haxeflixel.com/documentation/getting-started/)
That should give you HaxeFlixel and all of it's setup and shit. If you run into issues, ask them in the #flixel channel in the Haxe Discord server: https://discord.gg/5ybrNNWx9S
Other installations you'd need is the additional libraries, a fully updated list will be in `Project.xml` in the project root, but here are the one's I'm using as of writing.
```
hscript
flixel-ui
newgrounds
```
So for each of those type `haxelib install [library]` so shit like `haxelib install newgrounds`
You'll also need to install polymod. Do this with
```
haxelib git polymod https://github.com/larsiusprime/polymod.git
```
### Ignored files
I gitignore the API keys for the game, so that no one can nab them and post fake highscores on the leaderboards. But because of that the game
doesn't compile without it.
Just make a file in `/source` and call it `APIStuff.hx`, and copy paste this into it
```haxe
package;
class APIStuff
{
public static var API:String = "";
public static var EncKey:String = "";
}
```
and you should be good to go there.
### Compiling game
Once you have all those installed, it's pretty easy to compile the game. You just need to run 'lime test html5 -debug' in the root of the project to build and run the HTML5 version. (command prompt navigation guide can be found here: [https://ninjamuffin99.newgrounds.com/news/post/1090480](https://ninjamuffin99.newgrounds.com/news/post/1090480))
To run it from your desktop (Windows, Mac, Linux) it can be a bit more involved. For Linux, you only need to open a terminal in the project directory and run 'lime test linux -debug' and then run the executible file in export/release/linux/bin. For Windows, you need to install Visual Studio Community 2019. While installing VSC, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:
* MSVC v142 - VS 2019 C++ x64/x86 build tools
* Windows SDK (10.0.17763.0)
* C++ Profiling tools
* C++ CMake tools for windows
* C++ ATL for v142 build tools (x86 & x64)
* C++ MFC for v142 build tools (x86 & x64)
* C++/CLI support for v142 build tools (14.21)
* C++ Modules for v142 build tools (x64/x86)
* Clang Compiler for Windows
* Windows 10 SDK (10.0.17134.0)
* Windows 10 SDK (10.0.16299.0)
* MSVC v141 - VS 2017 C++ x64/x86 build tools
* MSVC v140 - VS 2015 C++ build tools (v14.00)
This will install about 22GB of crap, but once that is done you can open up a command line in the project's directory and run `lime test windows -debug`. Once that command finishes (it takes forever even on a higher end PC), you can run FNF from the .exe file under export\release\windows\bin
As for Mac, 'lime test mac -debug' should work, if not the internet surely has a guide on how to compile Haxe stuff for Mac.
### Additional guides
- [Command line basics](https://ninjamuffin99.newgrounds.com/news/post/1090480)
Submodule art deleted from 66572f85d8
Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

+11
View File
@@ -0,0 +1,11 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build html5 -final
echo UPLOADING TO ITCH
butler push ./export/release/html5/bin ninja-muffin24/funkin:html5
butler status ninja-muffin24/funkin:html5
echo ITCH SHIT UPDATED LMAOOOOO
pause
+11
View File
@@ -0,0 +1,11 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build html5 -debug
echo UPLOADING TO ITCH
butler push ./export/debug/html5/bin ninja-muffin24/funkin:html5
butler status ninja-muffin24/funkin:html5
echo ITCH SHIT UPDATED LMAOOOOO
pause
+15
View File
@@ -0,0 +1,15 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build windows -final -clean
echo UPLOADING 64 BIT VERSION TO ITCH
butler push ./export/release/windows/bin ninja-muffin24/funkin:windows-64bit
lime build windows -final -32
echo UPLOADING 32 BIT VERSION TO ITCH
butler push ./export/release/windows/bin ninja-muffin24/funkin:windows-32bit
butler status ninja-muffin24/funkin:windows-32bit
butler status ninja-muffin24/funkin:windows-64bit
echo ITCH SHIT UPDATED LMAOOOOO
pause
+11
View File
@@ -0,0 +1,11 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build windows -debug
echo UPLOADING 64 BIT VERSION TO ITCH
butler push ./export/debug/windows/bin ninja-muffin24/funkin:windows-secretBeta
butler status ninja-muffin24/funkin:windows-secretBeta
echo ITCH SHIT UPDATED LMAOOOOO
pause
+15
View File
@@ -0,0 +1,15 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build windows -release
echo UPLOADING 64 BIT VERSION TO ITCH
butler push ./export/release/windows/bin ninja-muffin24/funkin:windows-64bit
lime build windows -release -32
echo UPLOADING 32 BIT VERSION TO ITCH
butler push ./export/release/windows/bin ninja-muffin24/funkin:windows-32bit
butler status ninja-muffin24/funkin:windows-32bit
butler status ninja-muffin24/funkin:windows-64bit
echo ITCH SHIT UPDATED LMAOOOOO
pause
+12
View File
@@ -0,0 +1,12 @@
@echo off
color 0a
cd ..
@echo on
echo BUILDING GAME
lime build html5 -final -Dng
echo ZIPPING
cd export
7z a -tzip -r swag release\html5\bin
start .
start https://www.newgrounds.com/projects/games/1528775
pause
+27
View File
@@ -0,0 +1,27 @@
@echo off
cd ..
@echo on
echo REBUILDING LIME FOR EXPORT (VERBOSE)
@echo off
color 0b
@echo on
lime rebuild windows -clean -v
@echo off
color 0a
@echo on
lime rebuild switch -clean -v
@echo off
color 0e
@echo on
lime rebuild tools -clean -v
echo HOPE AND PRAY...
@echo off
color 0a
@echo on
echo BUILDING GAME
lime build switch -final -clean -v
@echo off
color 0b
@echo on
echo NSP FILE CREATED
pause
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Submodule assets deleted from 3b8235e953
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+12
View File
@@ -0,0 +1,12 @@
bf
dad
gf
spooky
pico
mom
mom-car
bf-car
parents-christmas
monster-christmas
bf-christmas
gf-christmas
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+4
View File
@@ -0,0 +1,4 @@
Tutorial
Bopeebo
Fresh
Dadbattle
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More