neospark314 / beepsaber Goto Github PK
View Code? Open in Web Editor NEWA basic implementation of the Beat Saber VR game mechanic in the Godot Game Engine for Oculus Quest (and other VR headsets)
License: MIT License
A basic implementation of the Beat Saber VR game mechanic in the Godot Game Engine for Oculus Quest (and other VR headsets)
License: MIT License
Hey,
Playing with the project in the thought of either forking it to something new, or just learning Godot.
There seems to be a left-right controller issue.
Using Godot on linux with HTC Vive.
Any idea where this is set up in the code so I can see how to fix this?
Hi, while playing BeepSaber I noticed that for my conditions the Sabers, are too short and do not connect properly with the blocks. In addition, the blocks are at the height of my floor, which is why I need to sit on my floor to play BeepSaber.
To fix the problem, please add two sliders to adjust the floor height and the saber length in the settings menu, thanks.
You have a perfectly usuable hide method for the sabers which you're not using. Currently you're setting the sabers' visibility to false when the menu is brought up in show_menu() after the song is finished. Instead do this:
_main_menu.set_mode_game_start();
left_saber.hide();
right_saber.hide();
Otherwise the sabers go away completely and never come back.
UPDATE: All issues resolved look in the comments below to fix both first song (Fat Rat) and downloading. Once I confirm I'll comment that I confirmed both fixes solved the issues.
-----------------(Original post below)-----------------------
No songs showing in either playlist or to download. Left screen is just blank. Do I need to add some permissions?
UPDATE: Looks like beatsaver is down, and I couldn't find the file in the project so I probably just need to wait for beatsaver to come back up.
Built using Godot 3.3.2 stable mono official.
I also get the same issue if I use the apk (godot_beep_saber_0.3.1.apk) from releases.
When I click refresh on the local list it asks for permissions I give it the local file permission.
If I put maps in subfolders in the Songs folder, BeepSaber's scan only picks up the songs in one folder and ignores everything in all the other folders. (If I rename the folder it shows, it shows a different one but it's not always the last alphabetically.)
It used to automatically make a playlist for every subfolder. Perhaps it still does but it's only showing one?
When I Launch BeepSaber on my Quest 2 it is just a black screen.
Hi, I tested this thing out, and it works really well. But I have some suggestions, and some things I quickly changed and it felt much better.
I am guessing you are mostly testing everything while sitting, since if you stand up all the cubes are spawning really low. So I added 0.5 to the y position on the spawn and it works wonders. So maybe some sort of offset slider on the main screen?
Then another thing that was easy fix was the colision with the floor and the light sabers, when standing and in rest position the sabers go into the ground and rumbles. So I just removed the colision on the floor and that fixed that.
I also managed to import some songs from BeatSaver so I could test with some more action, I normally play on hard in beatsaber. And I found when you cut the cubes in really fast sucession, not only did they pile up infront of you before despawning, but the cutting was laggin the game, making it unplayable. When I commented the cutting part out there was no performance issues. I would suggest addeding like a little extra rumble on the cutting, just a tiny bit more for the hebtic feedback that you cut the cube, and just despawn the cube without animation and then just shoot out some particles in the color of the cube.
I tried the newest release (0.3.1, though I haven't treid 0.3.0 yet) on my Quest 2 and the blocks are very tiny, about the width of the sabers.
Getting these errors when I build:
ERROR: get_language_code: Invalid locale 'C'.
At: core/translation.cpp:958.
ERROR: set_locale: Unsupported locale 'C', falling back to 'en'.
At: core/translation.cpp:982.
ERROR: initialize: No library set for this platform
At: modules/gdnative/gdnative.cpp:291.
ERROR: init_library: does not have a library for the current platform.
At: modules/gdnative/nativescript/nativescript.cpp:1456.
WARNING: _parse_class: Exporting bit flags hint requires string constants.
At: modules/gdscript/gdscript_parser.cpp:4232.
ERROR: get_dependencies: Cannot open file 'res://.import/beepcube_cut.ogg-fa9918db4ed7fbd59a26fd9bdbf5e2eb.oggstr'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/lightsaber.ogg-57b596b97854ffb70cf67bb577bf1b20.oggstr'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/ring.obj-b2d39a2e120e29c2a1da2ba07e399a4a.mesh'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/sword.obj-9adf1b7473d088cbd5e0be22e911c68b.mesh'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/sword_clash.8a.ogg-8af31692595a1a180e7f0f71aca8bc47.oggstr'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/sword_clash.10.ogg-591fdf75ba88cf077aeab99c00d48a0e.oggstr'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/OculusQuestHand_Left.gltf-5162d761ce4b20cdff3f64e5593dd105.scn'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/OculusQuestHand_Right.gltf-2bae7afcb09ff56e3adc96d9b9564d9d.scn'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/OculusQuestTouchController_Left.gltf-8c6bcf0c6eb7a4223a94539a3fe95ef1.scn'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: get_dependencies: Cannot open file 'res://.import/OculusQuestTouchController_Right.gltf-07fd49f7972b14e8676c8ad4784d564d.scn'.
At: core/io/resource_format_binary.cpp:1048.
ERROR: _parse_material_library: Couldn't open MTL file 'sword.mtl', it may not exist or not be readable.
At: editor/import/resource_importer_obj.cpp:48.
WARNING: _parse_material_library: OBJ: Ambient light for material 'None' is ignored in PBR
At: editor/import/resource_importer_obj.cpp:66.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.