Hello guys,
First of all I am not 100% sure this is the best category for this post but because I think it can be seen as a feature request I decided to add it here.
I am new to cocos2d-x altough I have experience with other game engines/frameworks. I consider myself an enthusiast of game engines and software that happens to also be a game developer. So in my free time I like to tinker arround with the options out there.
I've been using unity since 3.5 , I have made a PC game on UDK with a team of 5 and played around with UE4. I have also played arround with lua frameworks like Corona and Gideros.
As a new commer to cocos2d-x I like what I see , I like the open source idea behind it , but the first time starting with cocos2d-x can be very, very confusing.
Let me explain. As you go to the products page of cocos2d-x there are 4 different products to download. There is cocos2d-x the framework , then there is the Cocos Creator with Cocos2d-Javascript (I think will support c++ in future), then Cocos and finally SDK Box for 3rd party software and plugins.
So while with others like Unity or UE4 there is only one download option here we have 4 which can confuse new users.
I started trying Cocos. So far it looked promissing , it downloads cocos2d-x for you and it even helps you download other stuff like the Android SDK or plugins from SDKBOX.
As a GUI to create projects seemed super decent as well giving me different options on how I want my project and even integrating plugins for me. Kudos on that. But then it also includes Coco Studio which is deprecated and the version of cocos2d-x is 3.10 instead of the latest 3.14. So I would be working on an outdated cocos2d-x.
Then we have the editors, there is Coco Studio which was working more or less with cocos2d-x but has been discontinued. We have also Cocos Creator that it feels way more mature than Cocos Studio with better integration with coding or scripting in this case but only for javascript. Besides that there is no real editor option for cpp.
With all this what I want to say is that there are a lot of options so many that its very confusing.
What its my proposal?
Lets do a suite that allows us to download only one app and from there download whatever its necessary in a modular way.
Lets do a cocos2d-x that its modular.
I think something very close to what Cocos already is but we could improve some options.
What if we make installing cocos2d-x somewhat very similar as it is for Unity. With Unity you download only one app then there you select in a list things you want to install and add (which require extra downloads handled by the same app). Things like platforms (iOS, Android, Windows Phone , Linux, etc..) and then Example Projects , Standard Assets, etc.
So here are some ideas.
We can do a main app called CocosSuite or whatever. Once you download this app and you install it then you can manage what things you want to download.
It should allow you to download and update the latest version of cocos2d-x available.
Downloading Cocos Creator or the editor for the scenes and UI should be an option appart (some people might not want to use the editor and just need the base cocos2d-x).
When you create a project the way cocos works I think its pretty good where you can select language and plugins . The only thing I would maybe add here is if the project will be meant to be used with editor or raw. Because projects seem to be a bit different from cocos2d-x and cocos editor. Maybe there is another way to solve this but I think this for now would be a good workaround.
Would be cool to add in the list to download examples in case someone wants to check the already pretty extense example projects and having always ther the option to navigate through different examples.
We could even add some UI options to do what cocos command line tool does but from UI like the build , run and deploy but made from a Graphical User Interface. Something like select your project and then another pop up appears with different options like platfrom , debug/release and actions (build,rung,...)
SDKBOX download option in case someone wants to adapt some of the plugins they are using altough I think making it seamles with the creation of the project and have it just ready to go is the best option for beginners.
I think cocos2d-x its doing some things right but there seems to be also a tendency to stop development on certain tools and leaving them half-finished like with Cocos Studio or with Cocos having only v3.10. If we could focus having a one soluton that integrates with all the products I am sure more people would have an easier time adopting this great framework.
So to make it short , unify everything in only one app and make it modular so the user can choose what he wants to use and what not with the possibility of adding it later. Also this should help keeping always the latest update or version of Cocos Editor and cocos2d-x.
Sorry for the long post and please let me know what you guys think about what I posted maybe other more experiences user have another point of view or can add some stuff they wished was there for them when they started.
Cheers and happy coding!