Comments

Log in with itch.io to leave a comment.

(1 edit)

Saving doesn't seem to work on Linux

ERROR: Signal 'file_selected' is already connected to given callable 'RefCounted(IOManager.gd)::_save_ceol_song_confirmed' in that object.
   at: connect (core/object/object.cpp:1402)
ERROR: Can't add child '@FileDialog@153' to 'root', already has a parent 'root'.
   at: add_child (scene/main/node.cpp:1562)
ERROR: Failed to send DBus message: Could not activate remote peer 'org.freedesktop.portal.Desktop': activation request failed: unit is masked
   at: file_dialog_show (platform/linuxbsd/freedesktop_portal_desktop.cpp:460)

All file-related errors look like that actually. Loading, saving, importing and exporting

EDIT: Figured it out, on my system I have masked out the XDG portals because it's broken. Now I know I might be asking for a lot, but it would be nice if Godot's FileDialog was used instead (or even better, to fall back to it if the `dialog.open_centered()` errors out).

(1 edit)

Hey! Bosca already uses Godot’s FileDialog, the last log message in your post is a native error in the engine. We use the native version of the file dialog so you have all expected features that your system provides.

I’m not a Linux user, so I don’t understand what you mean by “masked out the XDG portals”. Could you explain it, so I can think of a workaround, if one is possible in Godot?

Edit: I assume you meant using a non-native version of Godot’s FileDialog as a fallback. That could work, though I’m not sure I can detect the failure from scripting to react to it in any way. I think Godot should do it automatically by checking if portals are enabled to begin with (it has infrastructure for such a check too).

Could you explain to me why would someone be in a situation where these portals, which as far as I can appreciate are a security feature to safely work with sandboxing, are disabled? How common would that be?

(3 edits) (+1)

Before I get to any point, I just want to let you know that I've fixed the problem on my end, so you don't have to worry anymore xd

First I will write what I did explaining the FileDialog thing, then under that will be the XDG related stuff. But as I said, no need to worry anymore

---

When I cloned the project from GitHub, running it would give me this error:

E 0:00:18:0957   Controller.gd:237 @ show_file_dialog(): Failed to send DBus message: Could not activate remote peer 'org.freedesktop.portal.Desktop': activation request failed: unit is masked
  <C++ Source>   platform/linuxbsd/freedesktop_portal_desktop.cpp:460 @ file_dialog_show()
  <Stack Trace>  Controller.gd:237 @ show_file_dialog()
                 IOManager.gd:122 @ load_ceol_song()
                 IOManager.gd:136 @ <anonymous lambda>()
                 WindowPopup.gd:161 @ <anonymous lambda>()

What I meant with "Godot's FileDialog" is to use the in-game node. So what I did first was make the node via code (`FileDialog.new()` and so on), and wrote some basic logic. At the moment the function only tries to use the native file picker and does nothing if popup_centered() errors out (now, I haven't read the rest of the code related to file dialog, there might be better place of coding the fallback thing xd)


XDG portals are just this "new" standard that helps applications access resources:
- https://wiki.archlinux.org/title/XDG_Desktop_Portal
- https://flatpak.github.io/xdg-desktop-portal/

"Masking out" is essentially stopping the systemd service from ever starting (either on boot or by an application)

I had problems with XDG portals for a while not on my system and never got around on fixing them — until now! You pretty much don't have to do anything really... but a fallback would still be nice tho

(1 edit) (+1)

I appreciate the details and you sorting it out on your end! I still logged in a report based on your comment to GitHub so it can be referenced and perhaps addressed at some point. I also noticed that some XDG backends don’t support file pickers, so perhaps there are affected users who’ve never even disabled the service explicitly.

As for your investigation in the codebase, yes, as I noted disabling the native flag on the FileDialog node is possible as a fallback, however this particular error is not reported by the engine to the script. popup_*() methods don’t return error codes or anything at all. So the only way to detect any problem would be to do it by some secondary tells.

So far I’m thinking about adding an app setting to disable native dialogs as a solution. But I won’t rush for it for now.

Thanks for your report and efforts, and hope you don’t have any more annoyances like that using Bosca :)

Oh the problem isn't if the backend supports the file picker or not, portals just weren't working for me properly. I had this problem when using Chromium for example, where the file dialog would never open. XDG portals should, if the backend doesn't have a file picker, fall back to the system's default one. 

In my case I have moved `.Xauthority` file to a different place (AGES ago), and the portals backend would just refuse to work because it couldn't find the file (and it woulnd't fall back to the default one). I just had to tell the portals where the file was and it started working XD

Also I didn't notice the edit you made, or the fact that `popup_` methods didn't return anything for an exception. My bad on that xd.

I would also probably close or rewrite the github issue you left to something simple like "backup file dialog if system's file dialog breaks". It's not the issue with Godot or the game, but the OS's.

Sorry for getting this lengthy yet again, just trying to explain what's going on so there's no confusion xd

Hey, just wanted to let you know that your report reached the engine team, and the case with disabled XDG portals should be properly handled by a future version of Godot:

https://github.com/godotengine/godot/pull/101812

For Bosca Ceoil I’d still need to do some work to properly support it, when it’s ready, but that shouldn’t be hard.

Thanks again!

Admin(+3)

Very cool, nice work

Hello, I really like the simplicity of this tool. By the way, how can I use this tool to place notes of less than eighth note length?

(2 edits)

Hey! In terms of musical timings the note length is fixed at quarter notes (1/4th of the beat). There is currently no way to change that (the setting that allows you to adjust the size of a bar is, unfortunately, purely visual), and I cannot change that until the next major release because it would break compatibility.

If you want effectively shorter notes you can use higher BPM for now.

Thank you for reply! I see.

Hello Yuri, I come to report an error.

Yesterday I made some music and today I decided to open it to be able to listen to it again and when I see everything it was disordered, parts deleted and instruments changed

I saved the music as .mid

(+1)

Hey there! MIDI is not a save format, it’s an export format. While Bosca tries its best to convert to and from MIDI, it’s impossible to do this flawlessly as its capabilities are different from Bosca’s. Generally export to MIDI should result in a valid MIDI file. Import from MIDI is available, but it’s far from perfect and not every MIDI file can be reasonably imported into the app because.

You should use Bosca’s own format for saving your work, and use export formats when you want to take your music out of Bosca somewhere else.

(1 edit) (+1)

Oooh ok, i see, thanks

Edit:Sorry, I realized that there is the option to save and load .ceol, I didn't realize that, my apologies😓

No worries!

Yuri could you add in this update that allows having more than 16 instruments? Thanks!😀

Sorry, this is a minor update, so it cannot introduce any breaking changes. Original Bosca Ceoil and current version of Bosca Ceoil Blue do not support more than 16 instruments, so that has to stay for now. I’ll revisit this limitation in the next major update.

Ok thx!

hey when the next update coming I would love to see more, also where did you post all the short cuts, for the Mac version?

Hey! The new update is pretty much ready and the first beta will be out early next year. But for now it’s a holiday break. Do you have some suggestions, though, for what you want to see?

All shortcuts are listed in the app itself, in the help section.

(+1)

hey yuri!! this is amazing! keep the updates coming <3


can i ask what REC at the bottom does? I can't seem to find any recording directories or support page.

Hey! It allows you to record different filter and volume values for the instrument that the pattern uses across the duration of that pattern. It’s explained in more detail in the “Tips and Tricks” guide in the Help section!

thanks for the quick reply! i'm an idiot haha 

Ah, don’t worry about it! It’s a bit of a confusing feature to begin with :)

Hellooooooooooooo!!!! yurisizov how long until they launch the web version and the mobile version??!! I'm already looking forward to finally being able to try my beloved music tool!!!! (=θωθ=)!!!!!

Hey! I’m working on the 3.1 update right now, and as a part of it I plan to release the web version. A version for Android will come at a later date.

Yepiiiiii!!! :D!

Hey there! While Bosca 3.1 is still in development, I’ve now completed the web version support, and you can give it a try here:

Note that this is not the final version of Bosca Ceoil Blue 3.1, and there may be bugs, inconsistencies, etc. But if you can give it a go and let me know how it works for you, that’d be appreciated!

I had someone test it with a Chromebook, and it seems to work fine as a web app.

(2 edits)

Man thx!!! :D.
I'll try it and I'll let you know of any errors ^_^✌️.

Is it normal that when you enter the arrangement section, the music start lagging? since the previous version this was already happening, I say this because I used Bosca Ceoil on a computer and also when entered that section start lagging.

No, that’s not normal. There is nothing unique about the arrangement view that would make the music lag. So it’s likely that the whole app is having performance issues on your device in the arrangement view. Can you tell me more about your hardware? Your CPU, GPU, RAM? Could you also check in the task manager, or your system’s alternative for that, if Bosca is stressing your system too much?

weird problem where I can't launch the program. I downloaded the latest stable 64-bit build for windows and unzipped it, then ran the exe. But it sort of gives up and idk what to do now. I've tried the 32-bit version in case that for some reason works but it doesn't. I do still have the original Bosca on my computer, would that cause a problem?

Hey there! No, old Bosca doesn’t affect the new version in any way. Are you familiar with the command line/terminal for your operating system? Could you open it from the folder where you unzipped to and run Bosca Ceoil Blue this way? This should show some errors if the problem is with the app.

(1 edit)

I will try and report back with my findings.

EDIT: okay so yes this works, but trying to run the program from the .exe unfortunately still doesn't work. It's cumbersome, but I'm honestly just glad it works.

Hmm, there shouldn’t be any difference whatsoever whether you start the .exe from the File Explorer or from a terminal. Can it be that it’s your antivirus/antimalware software blocking it, perhaps? Not sure what else to suggest here, because that’s a pretty unusual circumstance.

If there aren’t any errors when running from the command line, we can only guess about the source of the issue. I guess you can try making a .bat file in the same directory to execute the same command line operation with just a click, so it’s less cumbersome.

Sorry if I can’t be of any more help, but I’m really confused by your findings.

(+2)

I love this program! A great revival of an already great creation, super happy to see you furthering Terry's work. Do you think this will ever be available on mobile devices in the future? Not a necessity, just curious! Making beats on the go would be super cool.

(+3)

Yes, I definitely have plans to release on Android :) It’s all just a matter of adapting the UI and input handling for small touch-sensitive screens. The synth itself works perfectly fine on Android already.

For iOS I just don’t have the hardware to develop on. I can kind of just build for macOS blindly, trusting the engine’s support, as it is just another desktop application, but I don’t think this will work well for iOS/iPadOS releases, unfortunately.

(+1)

Nonetheless, that's super cool to hear! I wish you the best of luck dude

Deleted post

Hey, thanks for the offer! The project is open source, so if you’d like to contribute just drop by the repo anytime and see if there is any bug that you’d like to fix:

https://github.com/YuriSizov/boscaceoil-blue

For features, please open an issue or a discussion first if you have some ideas, so we can arrive to the solution together before committing to anything.

Deleted post
(1 edit)

Exporters and importers are just classes coded in GDScript, which create either a string or a binary buffer according to the format specification, and write them to disk. You can find them in the io folder, and the GUI hooks are in the IOManager class.

Deleted post

That’s why I mentioned the IOManager class. That’s where the GUI is connected to the logic behind the export process. That’s where user interactions are handled, and then an exporter class handles the rest.

(-1)

It wont let me use any of the buttons? Is this an issue for anyone else, or is it my computer?

Hey, can you give me a bit more details? What operating system do you have? And what steps specifically do you attempt to take which don’t work? Would be very helpful if you could record a short clip on it too.

(-1)

I couldn't get the video to work, but when I open bosca coeil on my computer, which is a good computer, it opens; then, no matter what version I use, it doesn't actually display the place to MAKE the music, and just shows a gray box below. Clicking buttons does nothing!.

Are you familiar with the command line/terminal on your system? Could you try running Bosca from it and let me know what the output is?

(+1)

thank you for making bosca ceoil, i learned in this program, and its so simple, so easy to learn yet so effective, thank you

Is there any way to have more than 8 tracks at a time?

No, this is a hard limitation of this app. For the synthesizer that the app uses this handling more tracks in polyphony is not a problem, but this might not be the case for various external formats like MIDI. So for now I don’t have plans to allow for more tracks, 8 seems like a good middle ground for the target audience of Bosca.

You can, however, download audacity (another free audio software) and layer exported wavs from bosca ceoil to achieve the same end.

oh cool! Maybe I'll try that out

Is there any documentation on this software? For example, are there any keyboard shortcuts to do certain actions? I was wondering because it'd be neat to be able to select and copy notes and paste them in a new arrangement piece.

Hey! All documentation is available in the app itself in the “Help” menu, including all the shortcuts available to you. There is, though, no shortcut to copy notes between patterns, because there is no way to select notes in a pattern. Adding such behavior is a bit of a problem, as the click and drag behavior in the pattern editor is already rich with functions for mouse buttons and modifier keys.

(+1)(-1)

When will there be an apk version? I've been waiting for one for a long time... Bosca ceoil is one of my most beloved tools for making music, I love it, thank you very much for reviving it!♡

(+4)

Hey there! Thank you for your support :)

The Android version requires some rethinking of the UI, so it will take some time. I’m working alone on this, plus I have other projects going on, so my plans for the Android version are for some time next year.

Omggg ok! amazing!

Could there also be a version for Chromebook? because I'm using one and it's very limited... practically an apk but with the same PC controls. Thanks! ;D

(+3)

I’ll be working on the web version soon, which should be fully compatible with Chromebooks! Unfortunately, I don’t have a way to develop and test a native Chromebook app, so I can’t make any promises about that. But I guess we’ll see if maybe the Android version just works :)

(+1)

Oooooh ok thanks a lot! I trust you and good luck! (>‿◠)✌.

Is there any way to add custom instruments without digging through the Sauce Code?

And if not, I, Bucket sir Bucketon the 3rd hereby request this as an included feature in this exquisite musical production software.


-Bucket

Custom instruments can come in a lot of different shapes and sizes, and Bosca aims to be simple and beginner friendly. So it’s a conscious choice to not have a way for importing new instruments, because that can get complicated very quickly.

Instead, I’d rather we fill in the gaps in the presets that the tool provides, if there are some instrument types that are missing. Do you have any particular suggestions?

Probably 1 customizable synth instrument that more advanced users could use to make their own sounds.


-Bucket

If there's eventually an android version that's similar to Caustic, then I'm sold.

Feature-wise, a release on any platform will be the same! So I wouldn’t expect a pocket DAW like Caustic out of Bosca :)

That's cool. I'm just looking for something affordable to play with, so I'll take what I can get.

(+1)

Would u ever consider adding the ability to add effects to individual tracks, I would say it's one of the only major issues with the software cos a lot of the time i wanna add delay to my lead but I have to add it to my drums as well and it messes up the sound.

(+1)

I like the idea of more advanced effect/filter setups. I think that they were added as they are for simplicity, to test it out. There are code comments in the original Bosca that suggest some unresolved issues, which leads me to believe there was a plan to do more with them.

That said, I can’t promise this any time soon. This kind of change would require modifications to the file format, which makes it a breaking change. So I’ll have to revisit it later when I consider the next major release (4.0).

(1 edit) (+2)

a godsend for linux users!!! finally i don't need a 1gb wine folder 
AND it uses godot for the port, amazing!!! the DEFINITIVE bosca ceoil experience

(+1)

this is revolutionary!!

(+1)

I might be mistaken, but it looks like clicking the notes on the left doesn't play the note as a preview? Would that be able to be implemented in the future? I usually prefer that over placing a note to see how it sounds. Thank you for keep this updated!!

(+2)

Yeah, I didn’t know about that feature in the original (or perhaps I had forgotten about it). But kind folks at Bosca’s subreddit reminded me about it, and I’ve already implemented it for beta 2 which should be out some time next week!

(1 edit)

Thanks for adding this feature. However, there appears to be a bug where the notes will not play if the playback line is at the start of the song. Speaking of which, it would be handy if there was a keyboard shortcut to move the playback line back to the start.

Are there plans for adding undo/redo and simple shortcuts anytime soon? It'd definitely make this worth using for me. Other than that this is a great project!

(1 edit)

Yes, I will work on undo/redo soon! But what shortcuts are missing? There are plenty of them, at least for things which don’t need to be mouse-driven :) Or do you mean you want to reassign them? For that I don’t have any specific plans at this time.

That's great :D
There aren't many I'm thinking of, mainly ctrl+shift+s for save as
A few combos to edit the arrangement, like alt+click to place a section rather than dragging it. Not many off the top of my head though.

(+1)

“Save as” is bound to Ctrl+Alt+S right now. You can find all of the shortcuts in the Help section (make sure to check all tabs in there!) :)

(-1)

This is a great tool with huge potential I guess, tutorial is great.
I bet it would make it more awesome as it is now by adding also some known music tutorials (not entire tune but a few seconds, split by instruments/channels, explaining how to do each instrument and how to put them together to create the final song.)

For instance Mercury (J. Murphy, Sunshine), Old souls/Time (H. Zimmer, Inception) or maybe some easier musics. Inspiration could also comes from the 80s games like on Amstrad CPC which brings us great chip tunes.

I'm no musician by far (always hate the few lessons I've got in school :P) but still as pretty much everyone, I like music, even creating some in my head, but I would like to learn also how to give them some life with your tool.

Thanks for your work.

(+2)

Hey there, and thank you!

I would be ill-equipped to give anyone music lessons :) Besides, with Bosca you cannot create just about any kind of music. Bosca Ceoil is a step sequencer, your music will have a distinct rhythm to it, which you cannot escape. Orchestral music that you reference, from Sunshine and Inception, is simply impossible here. You’d need a much more powerful DAW to have that level of control over the melody and composition.

Bosca fits a particular niche. When getting to know it, I think it’s better to approach Bosca not from the perspective of “I want to realize some very specific idea from my head” but rather as a box full of classic LEGOs. Akin to a step sequencer, you are working on a grid with LEGOs, yet you can create some impressively complex structures after gaining some experience. You need to learn the limitations and what the tool can achieve, which will shape your ideas for what you can make with it.

It’s not a limitless tool (as if anything is, right?), but it’s also not overwhelming. You have few simple rules which you have to follow, but that can be good for creativity in certain ways. Once you learn what this tool can do, you can be efficient at solving particular problems with it and getting the result in the niche that this tool excels at.

Cheers!

(+2)

This is awesome! I've played with Beepbox and am using 1BitDragon right now, I love these music editors that work with my smooth brain. Great work giving this software new life!!!

Is there by any chance a plan to add pitch bending or bridging between notes like Beepbox?

(+2)

Hey, thanks!

I don’t have any specific plans for extending its musical capabilities, but this particular feature has been requested elsewhere. My current concern is how to expose pitch bending without losing the simplicity of the app. Like, there are many things which can be done on the technical level, but can also detract from the experience that Bosca aims to provide, y’know?

I’ll look into how Beepbox does it, maybe that’ll give me some inspirations!

(1 edit) (+1)

I totally understand, it needs to stay simple or else it will become enough like the DAW's that have such a steep learning curve that it becomes a major barrier for entry. It would lose something that makes it really special.

That being said, Beepbox does it pretty simply, it itself being an app that's intuitive and simple to use. Iirc, you simply hold the button that places a note and drag it to another note to bridge it.

**Edit, I actually just checked it out, you hold alt, then drag the note to bridge.

Also! It could be done like in FL Studio using Pitch Bend Notes, which work pretty intuitively in my opinion.

(+1)

this got me thinking how cute it would be if godot got its own built in music editor like pico8... i wonder how much work it would be to port the format from this program to work with godot's sound and music functionality

(+2)

Don't threaten me with a good time!

(+4)

What you need is a synthesizer. Godot has support for generated audio streams, but how it is generated is up to users to implement. This is what Bosca uses. It has a custom software synthesizer and it produces data for the Godot’s audio stream to play back.

You can totally make an editor plugin similar in functionality to Bosca Ceoil. You can probably even adapt the app itself into a plugin relatively easily. The app is just a bunch of fancy UI on top of the synthesizer, but you can make whatever you want with the synthesizer. It’s also open source and free to use :)

This creates a very strong argument for not having a music editor as built-in functionality.

(+3)

ah yeah, you know, in retrospect that makes a lot of sense, it's probably better if fans and devs can make their own stand alone synths rather than pre-boxing one in with the program itself, in pico8 it works because everything is supposed to be self contained, but not everyone will want to use the bosca synthesizer in their godot project, so it would just be extra bloat to the engine for people who want to make their own

(+5)

Thank you for porting Bosca Ceoil to Godot!

(+7)

You got featured on Games From Scratch!

(+2)

Yeah, I quite noticed :) Thanks, Mike!

(+2)

yeeeaaaah!!! :D

(+4)(-1)

i love what you're doing here! however in linux i start off having a good experience until the music starts to get crunchy and my whole pc slows down to a near hault, and this is with only one pattern and no other programs running, thankyou for devoting time to this project btw:)

(+5)

Oh, that’s unfortunate. Sounds like a problem with the synthesizer. I don’t have a Linux system, but I’ll try to investigate. Thanks for the report!

(+1)

Hey again! I’ve got myself a Pop OS install on an old laptop, and after playing around for a bit I couldn’t reproduce any problem like you describe.

Would you mind giving me a bit more details? Namely, what’s your operating system and hardware spec? Were you doing anything specific in the moment it started to get crunchy? Any particular instrument, effect, filter and volume setting? Can you reproduce the issue or was it a one-time thing? Does it happen with different patterns after some time or is there anything that they have in common?

Details like that will give me a better starting point to keep looking, and maybe other users would then be able to confirm. If you have a GitHub account, I’d appreciate this info to be provided as a report there: https://github.com/YuriSizov/boscaceoil-blue/issues

This helps keeping track of every issue in one place. But also don’t feel like you have to do all this work. I’ll be testing it on Linux more now, and may end up repeating your experience at some point with my tools at the ready.

Thanks in advance, whatever you decide!