hi! i'm really new to making an ukagaka but i was wondering if there is any tutorial to refer to when setting up a custom talk option in the main sakura's menu (something like aster having an option to ask about who they are)? i have been wanting to make something similar in function but i have been having troubles understanding how and where to create code to do that
Hi! Creating a custom menu response is generally simple, although the specific syntax depends on what SHIORI you're using. Unfortunately, you haven't specified what you're using, so I can't point you to something specific to your situation. I'll give you a general rundown, and if you need more specific help, please send another ask specifying which SHIORI you're working with!
This was a really hard concept for me to grasp at first too, because it's so open ended. As a newbie it really feels like there should be some special setup or rules that make it work, but there's really nothing of the sort!
A couple of key things to know here:
1) The different files that you write your code in (such as bootend.dic in YAYA, ghost-bootend.kis in Kawari, bootend.as in Aosora, etc.) are completely arbitrary. They are only separated for organization purposes, and you can organize them how you want to! None of the files have any special attributes to them.
For example, in YAYA ghosts it is common to write word groups (sometimes called "envelopes") into a file called word.dic. However, there's no reason that you have to do this. You could write word groups into your menu file, or your boot file, or any other dic file that you like! YAYA doesn't care where the word groups are written. However, it is generally considered useful to put them all in one file because then you can easily find them later.
Don't stress over what file to put what code in! It generally does not matter unless you are instructed otherwise, so you should just organize it in a way that makes sense to you.
(Some complex coding concepts, like YAYA's preprocessor and Aosora's units, do actually require you to set up your files in a certain way. These are very advanced features that most ghost devs will never use, and if you do use them, you'll know.)
2) Everything can be handled as an event. Everything! SHIORI Events are the backbone of ghosts. When you write a menu choice tag (\q or \__q, or even \_a if you want), you can specify an event name that starts with On. This makes it call the specified name directly as a SHIORI event.
For example, if you write this menu tag: \q[About me,OnAboutMe] when the user clicks it, the event OnAboutMe will run. What to do then? Just write an event definition with the text that you want to display!
Here's an example in YAYA:
OnAboutMe
{
"\0\s[0]I'm a ghost! Does that answer your question?"
}
Here's the same example in Aosora:
talk OnAboutMe
{
\s[0]I'm a ghost! Does that answer your question?
}
This is pretty much the most basic response to a SHIORI Event you can get. But you can get more detailed with this! For example, add a few tags and you can create a submenu:
OnAboutMe
{
"\0\s[0]About me? What do you want to know?\n\n\![*]\q[Are you a ghost?,OnAbout.Ghost]\n\![*]\q[How do you have such fabulous hair?,OnAbout.Hair]\n\![*]\q[What's your favorite food?,OnAbout.FavoriteFood]"
}
(Of course, this is a bit hard to read, and each SHIORI generally has a way you can break this up to be more easily readable. But this isn't a guide on menu design!)
Learning how to work SHIORI Events is one of the most important things for ghost development. If you can get a solid grasp on them, then the rest of ghost development is much easier to understand!
And of course, once you've established a custom SHIORI event like this, you can do anything you want with it! Change variables, add a back button that leads back to your main menu, open an input box, whatever you want. It's all SHIORI events!
Further reading about SHIORI events on Ukadoc
Hopefully that helps! If you have further questions, feel free to send in another ask, or ask on our forum where other ghost devs may be willing to offer advice!
welcome to oc-dev! here i will post a lot of “tag your oc” posts, where you reblog and put in the tags which oc it applies to. i’ll also ask various questions that you can reblog to answer about your oc. feel free to answer in character if you wish, or simply describe the original character of your choice. i’ll occasionally drop some of my followers some random questions in their ask box, list some development prompts, and soon i’ll host an oc spotlight for an oc i thought stood out for the month. let me know if you have any other questions or suggestions!
In theory, it is possible! Albeit in a limited form.
There is indeed an android baseware for ukagaka, called Ukagaka for Android. However, please note that this baseware is not fully compatible with many many ghosts. There are a lot of features in SSP that do not exist in Ukagaka for Android, and as of this writing the app was last updated in 2019. So, it may or may not be developed further.
However, you may have more luck if you're developing a ghost specifically for it, with all of its quirks in mind! If you can draw on your phone and write text files on your phone, then theoretically you can develop a ghost for this baseware entirely on your phone. The baseware is compatible with YAYA, so you should have no trouble using that as the coding language for your ghost.
I have personally used this app a few times, but I don't know that much about it. I know that I've had trouble with it not saving my progress in various ghosts, so unless you can figure out how to get that working, you may want to try making a style of ghost that isn't reliant on any sort of progression system (like a relationship system, etc.).
If you or anyone else learns more about this baseware and how to develop ghosts effectively for it, please do share! Although it may be more limited than SSP, having some simple ghosts available on android would be great, especially for folks that don't have a computer.
Good luck with it! If you need any help with the basics of developing a ghost, we can still help with that, so do get in touch!
idk what to do i’ve tried to thing you guys put back in 2019 but it’s still silent
—
@dollbirb Pardon if the formatting is awkward here, I’m not used to working with submissions.
There are a number of reasons the audio might not be working! I’ll give a rundown of common problems, but it’s hard to know what your specific issue is without more detail.
For anyone having trouble with sounds not playing: please read the debugging tips under the cut. If you are unable to fix your issue, then feel free to send us an ask with more details about your specific situation. The following details would be helpful:
What version of SSP are you running?
Can no ghosts play sound, or are some of them able to?
What ghost are you trying to play sounds with?
If it’s a ghost you’re developing, are you using the sound tags or a SAORI to play sounds?
What sound file are you trying to play?
What file type is it?
Do you have LAV Filters installed?
Are you getting any error messages? If so, what do they say?
The more information you can provide, the better!
(Sidenote: sorry for the lack of alt text on these images! For some reason Tumblr is forcing me to use the old editor, which, while nostalgic, doesn’t seem to be letting me add alt text.)
1. The “Don’t Play Sound” option is set
You may have already checked this, but hear me out. SSP has two different preferences menus. One of them is default settings which apply to all ghosts by default, and one is individual settings which are set per-ghost.
To get to the default settings, you’ll want to right click a ghost, hover over Options, then click Preferences…
Once you’re in the preferences menu, click on Ghost(2). These are the same options you’ll find in the individual preferences, but here you are setting the defaults for every ghost.
You will want to make sure “Don’t Play Sound” is unticked on this window (it’s the top option).
But that’s not the only place you have to check!
To get to the individual settings, right click on the ghost whose settings you want to change, hover over Options, and click Ghost Preferences…
This will pull up a slimmer preferences menu with no sidebar. You can see that it has the same options as the Ghost(2) page of the SSP preferences, but this time, you’re changing settings for this ghost specifically!
Any settings that you set in this menu will override the default settings, but only for this ghost. Before we get into that, though, one thing to take note of.
Do you see the tick box at the bottom which says “This Checkbox Means Default Settings are Applied”? I believe the look of this tick box will change depending on your OS. On mine, it is filled in with a square.
If you see that tick in a box on this menu, that means that the setting is currently set to its default value (the value you set in the Ghost(2) page of the SSP preferences).
So in this case, the “Don’t Play Sound” option is set to my default value, and my default value has this option unset. So, that’s good! In my case, this ghost will be able to play sound, because my default settings allow it to, and my individual settings don’t specify otherwise.
If I wanted to specify that this ghost should not be able to play sound, but I still want my other ghosts to be able to play sound, then I would click this tick box twice to make it appear like so:
This tick means that the setting is applied, regardless of the default settings.
If I wanted to do it the other way around, I could instead go to the default settings and tick the “Don’t Play Sound” option”, and untick this option in the individual preferences.
If the default settings are to not play sound, then this setup means that only this particular ghost would be able to play sound.
So, make sure that you check both the SSP preferences, and the ghost’s individual preferences! If you don’t have a need to adjust a ghost’s settings individually, then just make sure that it matches the defaults, and set your defaults properly.
2. SSP is muted in your computer’s settings
Keep in mind that the issue may not be due to SSP at all! If your settings are correct and it still won’t produce any sounds, then it’s worth checking your computer’s settings. Note that if only some ghosts will play sound and others won’t, you can skip checking this.
How you do this will vary by system. The following description will be for Windows 10.
Next to the system clock, there should be a little sound icon (it’s to the left of the ENG text here):
Right click that sound icon, and you should get this little context menu:
Click on Open Volume Mixer and you should get this little window. Note: SSP will only appear here if there is a sound currently playing! You may want to use a ghost that plays longer sounds like music to test this.
You’ll want to look for SSP’s bow and bell icon. The name of the ghost that is listed here will be determined by which ghost you last interacted with, so in my case it says FLUX, because I’m using FLUX to play music and it’s the last ghost I interacted with.
If this slider is set all the way at the bottom, or if the icon below the slider shows that it is muted, then you won’t hear anything! Unmute it, or adjust the slider accordingly.
3. If you’re using a ghost that uses a SAORI to play music/sounds…
This issue in particular affects FLELE, as well as a few other English ghosts that have music players. These ghosts use a SAORI to play music.
If you’re using an English ghost and you’re unsure how it plays music, you might be able to find out by checking if the ghost has a page on our wiki, and seeing what it says about the ghost’s music player. If it describes the ghost as using a SAORI to play music, then this may be your issue.
The SAORI typically used to play music is called “mciaudior”, and it has some limitations. It only supports a few types of audio files, and even with supported file types, some of them will not play for reasons that we’re not quite sure of. I suspect it has something to do with settings such as bit rate, but I haven’t been able to confirm this.
If you run into this problem, you can always try a ghost that uses a music player based on SSP’s sound commands instead of a SAORI. FLUX is a notable example of this. If a ghost with a non-SAORI based music player also will not play music for you, then this isn’t your issue.
If, however, you find that these other ghosts are able to play music, but the SAORI-based music player cannot, and you really want to use the ghost with the SAORI-based music player, there is one thing you can do. If you run your music file through a conversion tool to change it to another compatible format (such as converting an mp3 to a wav, or vice versa), or you import it into an audio editing tool such as audacity and then re-export it again, this will usually resolve the issue. (I would recommend doing this on a copy of your music file, so that you keep your original intact with all of its original quality/metadata.)
4. If you’re using a ghost that uses SSP’s built in sound commands to play music/sounds…
This would affect ghosts such as FLUX. As described above, if you’re unsure whether the ghost in question uses a SAORI to play music or not, you might want to check our wiki if it’s an English speaking ghost and see if you can find info on it.
There are a couple possible causes for this issue.
4A - You’re on an out of date version of SSP.
At the time of writing, the current version of SSP is 2.6.61. If you are using a version lower than this, update before you try anything else. SSP has had multiple fixes to its sound commands, and there’s no point trying to debug if you’re on an older version.
Note that a while ago, SSP’s automatic updater got broken, which means that very old versions of SSP will not be able to download updates automatically. If you right click a ghost and go to Utilities, then click on Check SSP Updates, it will tell you if it is unable to check for updates. If this is the case for you, then you’ll need to install a manual update package from SSP’s website. How to do that is a bit off topic for this question, so if anyone needs help with it, please send in an ask!
4B - You are using a file type that can only be used when LAV Filters is installed
If you play a sound and you see an error that also includes this message:
You can try to install LAV Filters ( https://github.com/Nevcairiel/LAVFilters/releases ) and restart SSP to solve this problem.
Then you need to install LAV Filters from the provided URL in order to get that sound to work. LAV Filters is an open source program that helps with playing sounds. All you need to do is install it, and then you may need to restart SSP for it to take effect. You don’t need to do anything with LAV Filters after installing; there is no setup required.
LAV Filters will allow ghosts to play many types of audio files, and will resolve most problems with sound files not playing in ghosts that are using SSP’s built in sound commands. It will NOT help with ghosts that use the mciaudior SAORI to play sounds.
4C - There is something wrong with the file, the file path is incorrect, or you’ve found a bug in SSP
If any of these is the case, you will usually get an error message from SSP stating that there is something wrong. If so, then take a close look at that error to try and figure out what’s up. If you share the error with us, we may be able to help.
If there is something wrong with the file itself, then you’ll need a different audio file. If some audio files are working for you, but not all of them, then it’s likely a problem with some of your files rather than SSP. As mentioned above, you can try converting them to another compatible type or re-exporting them in an audio editor to fix it.
If you’re developing a ghost, then you might not be pointing to the correct file names for your sounds. Make sure you double check that your file names/paths are correct.
If nothing else seems to fit, it’s possible that you’ve found a bug in SSP. Bugs can be reported on SSP’s BTS, just make sure you follow the instructions there (and keep an eye out after submitting a bug - sometimes follow-up questions are asked).
—————
Those are all of the common issues that I can think of at this time! If you’re still having trouble, please send us an ask with more details, as mentioned at the top. The more information you can provide us, the better we’ll be able to help you!
so i tried to make my own ghost with Zarla's walkthrough page, i don't want to have a sidekick in my ghost, can i just delete the sidekick? it's hard to make the Surface10.png invisible :(
It is recommended to keep surface10.png, or else SSP will give you an error!
There are a couple of ways around including surface10.png, but you would still have to deal with the kero being visible. So if you can't make it transparent, the best thing you can do is make surface10.png very small, and then change all of the kero's surface tags in the ghost to be \s[-1] .
\s[-1] hides the surface of the character in focus, so you can take surface calls for the kero like \1\s[10] and change them to \1\s[-1] . All ghosts that don't want a kero should do this, even if surface10 is transparent!
In most scripts you will not need to include tags for the kero at all, but you will need \1\s[-1] in OnBoot, OnFirstBoot, OnWindowStateRestore, and preferably also OnSurfaceRestore to avoid buggy behavior. This should ensure that the kero doesn't appear when booting or unminimizing, and that if it does appear for some reason, it'll disappear again soon afterwards.
If this gives you any trouble, send us another ask with details and we can try to help!
I want to write a native american character; however, im caucasian. You can call me blunt, but i dont want to mess this up and would honestly like to capture the character in the right light considering that im serious about what im writing and would like the depiction of the lifestyle and culture to be accurate rather than some bullshit i think might be right.
I could always go on the internet but seriously the internet is full of nonsense and plus thats the most boring, and not to mention the most disrespectful thing, ive heard of.
If i have any native followers id really appreciate the help and i cant wait to hear what you have to say. Just fucking bombard me with asks. Fill the fucking box with old stories and traditions, or what its like to be native from your perspective, hell give me native sports and clothing style and music. Thank you so much for whatever help i get.