Commit Graph

68 Commits

Author SHA1 Message Date
LoveEevee
5094b0bc70 Add folder dropping, fix rate limits
- Add folder drag and drop support
- Do expodential retrying if rate limited, allowing upload of very large drive folders
- Do not import deleted files
- Move the upload buttons to their own line
- Notify when no TJA files have been found
- Add more translations
2020-11-04 03:12:46 +03:00
LoveEevee
180ec58adb Changed look of song loading, fix custom game assets and song skins, fix auth error
- Change the way a selected song appears while it is loading the metadata
- Fix custom taikowebskin
- Fix importing custom game assets (local only)
- Get the oauth token again on auth error
2020-10-31 14:47:42 +03:00
LoveEevee
3fea149353 ImportSongs: Add Google Drive support
- Adds a new page for importing custom songs, where it is possible to pick a local folder (desktop only) or a Google Drive folder (desktop and Android)
  - This feature is disabled on iOS due to the lack of OGG audio support in the browser
- In order to not get rate limited, a TJA file is parsed for metadata only when the song is clicked in the song selection, rather than all at once at import time
- The instance maintainer will need to provide the API credentials in the config.py file to enable this feature
  - This requires a new project to be created at console.cloud.google.com
  - Drive API will have to be enabled
  - API and OAuth keys should be created
    - API key can be restricted to only have Google Drive and Google Picker APIs
    - OAuth Client ID should have Web Application type and JavaScript origins set
    - Editing the OAuth consent screen to have a name and icon is recommended
      - It is semi-required to submit the consent screen for verification as the permission to download all of the Drive files will be asked.
      - Note that the email of the maintainer is publicly visible on the consent screen
  - The project number can be found in the IAM & Admin settings page
2020-10-29 08:07:56 +03:00
LoveEevee
cd288d4fa4 Add custom Don
- Registered users can customise the colour of their Don and it will appear for other players
- Bug fixes:
  - Add lyrics checkbox to admin page
  - 2P shows above "creative" or "with lyrics" labels
  - Prevent accidental alt and menu keyboard presses from triggering browser menus
  - Fixed mouse hitboxes on difficulty selection
  - Clean cached sounds and lyrics when another song is loading
  - Fixed debug jumping to the top-left of the screen when hidden
  - Fixed server volume not being applied to songs
2020-04-04 16:48:58 +03:00
LoveEevee
de284d204d Add Show Lyrics option to settings 2020-03-31 16:44:54 +03:00
LoveEevee
51bd6cec63 Support importing lyrics
- Use inline "#LYRIC" lines in tja files
- "LYRICS:" in tja metadata can point to a vtt file, this overrides "#LYRIC"
2020-03-31 15:50:27 +03:00
LoveEevee
3679c27986 Add lyrics 2020-03-30 09:50:34 +03:00
LoveEevee
4b37150ee0 Improve the song loading screen error message 2020-03-16 16:42:36 +03:00
LoveEevee
a25e108a4b SongSelect: Session sound effects play in appropriate sound channels 2020-03-16 15:22:16 +03:00
LoveEevee
7f1bb9d357 Multiplayer improvements and reupload score on error
- In multiplayer you will play at the bottom if you joined second
- Add a dialog to song select that score has not been saved
- Uploads the score when logged in again
- Translate error messages from the server
2020-03-14 07:50:04 +03:00
LoveEevee
9248a52194 Lots of bug fixes
- Toggling autoplay checkbox in debug now disallows saving the score
- Fix crown of the song that was previously selected rendering above the genre
- Outline of empty crowns is slightly darker
- Fix rendering when there is a crown on oni and no crown on ura
- Fix crowns overlapping the netplay 2P icon
- Fix gauge in latency calibration
- Fix debug to work on mobile, can be toggled with ctrl+alt+`;` on hacker's keyboard with permanent notification
- Fix being unable to scroll the settings list without toggling something
- Handle KeyboardInterrupt in server.py
- Fix category jumping not working in session mode
- Fix mouse cursor being hidden at results screen in session mode
- Make "Issues" on the about screen and "An error occurred, please refresh" on loading screens translateable
- CanvasCache uses integer increments for comparison instead of Date.now()
- For imported songs, exclude song titles from genre comparisons if they appear in the name of the folder
- Fix tja files with spaces in the notation
- Fix second player's score on the results screen to have upside down appearance
- Add fixed chinese strings
2020-03-09 15:36:57 +03:00
Bui
5a1be53e21
Merge pull request #186 from bui/songselect-add-crowns
SongSelect: Add crowns
2020-03-07 13:54:14 +00:00
LoveEevee
41afc2a905 Game: Improve gauge 2020-03-05 18:58:49 +03:00
LoveEevee
3097dd3736
[PATCH] Add Easier Big Notes setting 2020-03-01 00:05:05 +08:00
purerosefallen
2ab0de9644
improve Dais for Taiko Force Lv5 2020-02-27 23:11:04 +08:00
Bui
b030624ab1 fix combo voice load error 2020-02-22 13:13:04 +00:00
Bui
9f7ce52cb4 only load combo voices as needed 2019-12-24 19:37:10 +00:00
Bui
91e5127613 audio update 2019-12-24 18:10:40 +00:00
LoveEevee
ff09cb83bd Add global offset
Adds new settings for controlling the note offset while playing. It can be either an actual offset (it is called "Audio Latency" in the settings) or just the visual offset ("Video Latency").
With higher audio latency it means you have to press the button sooner than what you hear, similarly with higher video latency it is sooner than what you see. By offsetting these events the game would play better, however, the sound effect of you hitting the drum would still play at the wrong time, the code cannot anticipate you to hit the drum in the future so to work around this issue a new option that disables drum sounds is also included.
These settings could be set through trial and error but it would be better to get the correct values through the automated latency calibration, where you can hit the drum as you hear sounds or see a blinking animation. I tried making one by measuring latency from user input, adding all the latency up, and dividing, but that gives unreliable results. I hope someone suggests to me what I should be doing during the calibration to get better results, as I cannot figure what to do on my own.
2019-11-28 09:04:40 +03:00
LoveEevee
1bb3359784 Use stars on song select for score level 2019-11-04 17:20:44 +03:00
purerosefallen
8574ad2580
add auto score 2019-11-01 00:12:20 +08:00
LoveEevee
f05b2518f3 Split language and tutorial, add gamepad settings 2019-04-16 21:06:41 +03:00
LoveEevee
61a5d6d496 SoundBuffer: Set song volume
- Requires a new column in the database after preview: `volume` REAL
- The value is a volume multiplier, if the value is set to null or 1 there will be no change
- The volume can be set in debugger
- Imported TJA files are now read from disk every time the song is played, freeing some memory and making it easier to create charts
- Correctly parse TJA files with alphabet notes, added "A" and "B" notes, which appear as DON (Big) and KA (Big) respectively
2019-03-16 00:34:48 +03:00
LoveEevee
7ee8773e61 View: Fix donbg scrolling
- All metadata fields in imported TJA files are now optional
- Added new metadata fields: `TITLEEN` and `SUBTITLEEN` (`EN` can be any language id from strings.js)
2019-03-06 00:48:30 +03:00
LoveEevee
29a4d154b3 Game: Fix notelocking
- Will not skip the note if `ka` was pressed right before `don` note or `don` was pressed right before `ka` note
- Will still skip the note if `don` and `ka` is pressed at the same time (within 25ms)
- Fixed `TAIKOWEBSKIN:` in imported songs crashing the game with some values
2019-02-24 15:04:14 +03:00
LoveEevee
adc45cb652 Custom scripting, #song=, translations
- A song can be linked directly by adding "#song=<id>" to the url, replace `<id>` with the id in the database, after loading it jumps immediately jumps to the difficulty selection
- Added tutorial translations
- Fixed song preview not playing
- Use text fallback for the logo when there are no vectors
- Increased combo cache by 1 pixel
- A custom javascript file can be loaded from config.json by defining "custom_js" value
- Added lots of events to help writing custom js files: `version-link, title-screen, language-change, song-select, song-select-move, song-select-difficulty, song-select-back, about, about-link, tutorial, import-songs, import-songs-default, session, session-start, session-end, debug, load-song, load-song-player2, load-song-unfocused, load-song-cancel, load-song-error, game-start, key-events, p2-game-end, p2-disconnected, p2-abandoned, pause, unpause, pause-restart, pause-song-select, game-lag, scoresheet, scoresheet-player2`
- Event syntax example:
```js
addEventListener("game-start", event => {
	console.log("game-start", event.detail)
})
```
2019-02-14 12:32:45 +03:00
Bui
913c0787ef audio overhaul 2019-02-04 09:14:42 +00:00
LoveEevee
da40fd58ff ImportSongs: Custom assets 2019-02-03 15:04:25 +03:00
LoveEevee
05720b27f9 SongSelect: Translatable song titles 2019-01-25 04:42:05 +03:00
LoveEevee
3398791afe Controller: Separate game and view loops 2019-01-16 15:33:42 +03:00
LoveEevee
f535428125 Fix black loading screens 2019-01-01 16:35:12 +03:00
LoveEevee
5f4048315d Miscellaneous bug fixes 2018-12-13 12:18:52 +03:00
LoveEevee
f523700dc4 Wait for backgrounds to render before starting 2018-11-23 22:15:10 +03:00
LoveEevee
87bdf7a407 View: Add song backgrounds 2018-11-23 20:00:45 +03:00
LoveEevee
25d705ffcf P2: Multiplayer improvements 2018-11-13 07:56:38 +03:00
LoveEevee
89e25f237e View: Change pause screen 2018-11-12 13:32:02 +03:00
LoveEevee
82963f7912 Disable scoresheet skipping, change multiplayer string and bg 2018-11-02 13:26:46 +03:00
Bui
2598a5014d add game config 2018-10-27 22:42:28 +01:00
LoveEevee
d7900ca083 SongSelect: Selectable text, assets cleanup, and bug fixes 2018-10-27 21:35:04 +03:00
LoveEevee
f90f6fe6e1 View: Rewrite 2018-10-25 17:18:41 +03:00
LoveEevee
122d3c06c8 Add key shortcut for debug, add starting measure and restart 2018-10-14 23:14:58 +03:00
LoveEevee
04473acb74 Add debugging user interface 2018-10-14 21:08:05 +03:00
LoveEevee
4845ec106b Add ura stars to preview, add ura badge 2018-10-13 01:09:42 +03:00
LoveEevee
f80565f25b SongSelect: Add ura difficulty 2018-10-12 21:04:28 +03:00
LoveEevee
39655fc534 Add .tja file support 2018-10-11 01:13:24 +03:00
LoveEevee
e1b8b45d88 Change drum to match Switch, add fullscreen to songsel, fix tutorial 2018-10-06 16:24:23 +03:00
LoveEevee
c999dca204 Fix song restarting and multiple touches 2018-10-05 21:27:47 +03:00
LoveEevee
c8acfc3188 View: Add touch controls 2018-10-05 20:03:59 +03:00
LoveEevee
d6350a900c Scoresheet: Add counting up animation 2018-10-03 12:48:18 +03:00
LoveEevee
ab1835aa48 Fix results not showing in Firefox 2018-10-01 13:02:28 +03:00