Cocos2d-JS v3.0 Final released ! Thank you all!

Hi all,

Finally, Cocos2d-JS v3.0 is getting released on September 12 ! Since we announced Cocos2d-JS v3.0 alpha on Cocoa China Developers Conference on March 15 2014, it have been almost six months. During these unforgettable six months, we have been working really hard with all our communities to bring more and more cool features to Cocos2d-JS ! We’d like to thank all the help from our communities, you guys are the reason that Cocos2d-JS is so great today ! We believe Cocos2d-JS is the simplest even the unique cross-platform/cross-browsers game engine with incredibly easy to use APIs, equipped with complete toolchain and minimalist workflows.

Brief introduction

For those who didn’t know what Cocos2d-JS is, it’s Cocos2d-x engine’s JavaScript version that includes Cocos2d-html5 and Cocos2d-x JavaScript Bindings.

Cocos2d-JS reinvented workflows for all platforms in v3.0, it provides a consistent development experience for whichever platform you want to distribute to, no matter web and native. “Code once, run everywhere” is incredibly easy and natural in Cocos2d-JS. With one single JavaScript code base, you can run your game on all web browsers and native platforms including Mac OS, Windows, iOS and Android. This will bring your game great opportunities in almost all channels of distribution. On the other hand, if you are only interested in casual games on the web, you can embed directly in your web page the Cocos2d-JS Lite Version which is extremely easy to use and light as a feather.

Furthermore, JavaScript friendly APIs make your game development experience a breeze - easy to code, test and distribute. In the meantime, Cocos2d-JS v3.0 is super powerful along with all these cool new features: Editors Support, Assets Manager, Object Pool, JS to Objective-C/JAVA reflection, etc.

Workflows

  • Cross platforms developers can use Cocos Console to create projects, boost their development with web version engine and deploy games onto all native platforms and all browsers with Cocos Console.

  • Casual web game developers can download the Lite Version and start to develop just like using other web frameworks (e.g. jQuery).

Highlights of Cocos2d-JS v3.0

  • One code base, run everywhere with unified Cocos2d-JS API.
  • JavaScript style API refactorations: new construction, property APIs, simplified action APIs.
  • Assets manager for assets and scripts hot update.
  • Added new event manager to allow all kinds of objects to observe all event types.
  • Added JavaScript to JAVA/Objective-C reflection support.
  • Added Spine animations support.

Download

More information

Read more about all the features and bug fixes

If you want to upgrade your game based on v3.0 Alpha to RC3 version, you should follow these steps:

  1. Download the v3.0 Final package.
  2. Upgrade cocos command with setup.py.
  3. Create a new project with cocos new.
  4. Replace the “src”, “res”, “index.html”, “project.json”, “main.js” etc with your old project

Then you may need to refer to the upgrade guide to solve some API change issues.

Notice

For JSB build, there are some restrictions :

  • [Android build] NDK version must be r9d
  • [iOS build] Xcode version must be 5.1.1 +

About Cocos2d family

  • Cocos2d-JS v3.0 uses Cocos2d-x 3.2 final as base of JSB solution
  • Cocos2d-JS v3.0 is compatible with Cocos Code IDE v1.0.0 RC2+
  • Cocos2d-JS v3.0 is compatible with Cocos Studio v1.2 - v1.5.0.1

With any problems you might have, our communities are happy to help:

Roadmap

Cocos2d-JS have greatly simplified cross platform development. For the next step, we will focus on improving performance on mobile web, toolchain enhancement and completing documentation. Here is a list of main tasks we consider to accomplish in v3.1 :

  • The research for performance improvement on Web engine have already made great progress, the new renderer for canvas render mode is ready and will be merged in v3.1. The performance is upto 50% better than v3.0 based on various tests.
  • Facebook SDK for Cocos2d-JS will be released with v3.1, developers can use all Facebook features on iOS/Android/Web with the same JavaScript code.
  • Continue the research of memory model in JSB, improve the stability and simplify the usage.
  • Complete the Cocos2d-JS Programming Guide document to cover all important aspects about Cocos2d-JS development.

Again, thank you all ! Hope you enjoy the development with Cocos2d-JS !

1 Like

I will share the Cocos2d-JS Programming Guide’s table of content soon in the forum, hope you guys can give us more feed backs

Please give our github repo a like if you like Cocos2d-JS !

2 Likes

Congratulations on the release!

It looks very impressive!
Unfortunately I can not try it right now, because I do not feel confident in the JavaScript and did not have time to study JS better.

I just wanted to say thank you for your efforts through which switch to cocos2d-JS looks really enticing :smiley: .

Thank you for your support ! And please try it out when you feel ready, I hope you will enjoy it

@pandamicro I will definitely try it. Thank you :blush:

First, I want to thanks all the team because it is very impressive to be able to write once and deploy everywhere :slight_smile:

I can’t access to http://discuss.cocos2d-x.org/category/javascript because it raises an error : ‘The page you requested doesn’t exist or is private.’

Sometime, I found docs useless compared to sourcecode since each constructor are better explained in comments.

Regards,
Michael

It have been changed to http://discuss.cocos2d-x.org/category/cocos2d-x/javascript. Thanks for noticing this.

Our docs are not complete yet, but as you can see on the roadmap, we are trying our best to have a complete programming guide

i have created a game using cocos2d-js final and and i have used key board event in it. key board event are working in browser but when i try to run it on mac using js binding key board events are not working, they are showing their effect on terminal but not in my game canvas

I’m not sure I understand your meaning, if it’s showing in terminal, that means the key have been triggered, but what do you mean it’s not taking effect on canvas ?

whenever i press a key my player should move and it is moving in browser but when i run my game in mac it is not moving. why it is happening i dont have any idea

That may related to your game logic, can you please open another topic and post the process to reproduce the bug ?

Congratulations!
Thanks for your hard woking, panda and other developers.
Cocos2d-js is totally cool and nice.

1 Like

Thanks hb!

congratulation! and waiting for sprite3d addition in cocos2d-js

Hello

We have a Cocos2d-JS video series which is on going and is free. We are at tutorial number 37 now, it will have over 60 tutorials in total. It is updated with 2 new tutorials on a daily basis including weekends.

2 Likes

Great tutorials guys ! Many thanks for your effort !

1 Like

Your welcome :smiley:

Plenty more are on the way

@pandamicro
I tried the 3.0 final and wanted to deploy it to iOS, but the error occurred:

85:TypeError: cc.SpriteBatchNode.extend is not a function

I remembered that ever happened on 2.x versions, and maybe there are more such extendable issues.
Do you know some about that?
Thanks, i’ll wait for your kindly reply.