I like using Cocos Creator. After creating a game with it to test this powerful editor, I have some feedback regarding to Cocos Creator. I hope this can be a good help for the editor and other users.
Master volume & stop all sound regardless of the trigger
I think it’s great to have a master volume for all audio played through cc.audioEngine (including AudioSource, if it’s related). The problem I had was when I need to do “mute all sounds”, I need to mute AudioSource one by one. I also got to immediately mute any audio to play from cc.audioEngine because stop/pause all only stops the one that is currently playing, not the one that is about to be played. My solution was to wrap it in some sort of audio player class, but it doesn’t seem necessary because it’s more of a patch more than specific features for a specific game.
An internal master volume feature can be helpful to turn down and up all the sounds currently played and about to be played automatically. And if there is any, say required for a specific game, each of the audio already has its own volume that should respect the master volume. The stop all sound, while not replacing the old one, it might be better if there is an API that could disable sound entirely and not playing anything until it is enabled again.
In practice, this is mute button and master volume button. It’s useful, such as the situation where many web game publishers demand these as their requirement.
Project-based build template
In web only build, it has splash screen enabled for loading display. In my case, I need to customize these based on each project, especially when there are many third parties asking to put their logo in it where I am expecting to cram them inside a single screen and not waste more of Player’s time by adding another in-game splash screen, or when I simply want to put the game title or loading illustration. Sometimes this involves different styling format that requires changes in HTML and CSS itself per project (custom loading bar, for example), which also depends on the screen orientation.
I just realized this issue extremely important after I finished a game with the editor and moving into the next one, where I am expected to patch the first one occasionally. This forces me to copy-paste each build templates one by one to CocosCreator’s build folder every time I switch between projects, and editing them can be a hassle. This is quite a problem especially when the development time is short, say roughly 2 - 3 months per project.
It would be nice to at least have project-based build template, where by default located in the project’s folder right after a new project is created.
It will be nice if there is an API that can “bend” the render speed for slow motion effects down to 0 (similar to Unity Time.timeScale). This may be game specific though which seems to be okay to be done manually, so it’s optional.
If any of these have been actually implemented, please let me know, as I’ve searched all these and they end up required to be done manually as answers.
Thanks for reading.