Share this project

Done

Share this project

Done
Coconut2D Game Editor (Canceled) project video thumbnail
Replay with sound
Play with
sound
£740 pledged of £50,000 goal
backers
By mobileFX
£740 pledged of £50,000 goal
backers

About this project

What is Coconut2D ?

Coconut2D Studio is a game creator software for developing casual and social games. The software is an Integrated Development Environment (IDE) for Windows that unifies a vast array of cutting-edge 2D Game Design, Compilation and Debugging technologies, under a simple and easy to follow development process.

Coconut2D key design feature is a Flash-like Animation Scene Designer that helps you layout your game only once, and it automatically adapts it to every screen size, aspect ratio and pixel size. You can even preview your game live on various screen resolutions and dpi; this way you don't have to worry if your game will "fit" on every device. The designer can animate both Timeline-based animations as well as Sprite Animation Sequences. In fact, importing, editing, optimizing and testing Sprites has never been simpler! You can even export Box2D fixtures and bodies from any image contour and create games with complex 2D Physics.

Another key feature of Coconut2D is that it can compile both HTML5 and Native games from the same source code. Coconut2D primary programming language is Object Oriented JavaScript which is trans-compiled to ECMA JavaScript for running your games on HTML5 Browsers, and to C++11 code for post-compiling your games to native iOS, Android and PC apps. (We explain a lot about the technology below).

With this Kickstarter we want to complete Coconut2D, and extend it into producing games for HTML5 Browsers that run at Faster-than-JavaScript-Speeds, without binary plugins! This is possible thanks to the Emscripten compliler that produces about x10 times faster that "hand-written" JavaScript, from C++11 code. The same technology is expected to be used by Unity5!

Now if you connect the dots: 

Coconut2D is a game designer software unlike any other tool you tried before, especially in terms of compiler technology! It has many innovative design-time features for 2D games and it compiles native games for iOS, Android and PC, as well as HTML5 Browsers! All that by designing your game once, and coding in one programming language!

Meet Coconut2D Game Designer!

The IDE is full of modern features such as Project Explorer, Assets Explorer, Code Editor with IntelliSence and Debug tools, Debug Panels, Breakpoints Editor, Expression Evaluator, Immediate Window (you just type ? followed by an expression and it evaluates it on the fly), GitHub Integration, JSON Viewer, Image Browser, Properties Explorer, Texture and SpriteSheet Editor, Advanced Tiled Layer Packager, and the OpenGL Scene Animation Editor with Timeline editor.  

With Flash-like Scene Animation Editor you can create complex Stages and Animations for your games.Complex animations can be converted to Symbols for reusability. When editing a Symbol all instances are automatically updated.

The Timeline allows you to arrange Layers, enter KeyFrames, set Time Labels and preview your animations.

For a better view of your Animations in time and space, Timeline can be used in conjunction with Scene Explorer, that reveals the nesting of your animation clips.

From the Designer, you can bind animation clips with Classes, and set design-time, and run-time properties.

In Designer, Complex animations can be converted to Symbols for reusability. By editing a Symbol the designer automatically updates all Instances.

All assets are organized in Assets Palette, from which you can drag-and-drop them on the designer. Once an asset is placed on the designer it is assigned an InstanceName that can be used to control the asset by code.

Coconut2D Studio Scene Animation Editor implements a Cross-Screen-and-Resolution Design and Preview Feature that spawns across design-time, compile-time and run-time in order to optimize graphics usage. At design-time the Art Directors sets a fixed viewport in which Animators must place their assets. At compile-time animations are analyzed in order to derive optimal image sizes from keyframe transformations, with respect to the fixed viewport. At runtime the viewport is proportionally scaled to fit the device's screen size, and image textures are loaded depending on their calculated optimal size. This method avoids loading images by dpi designation (ldpi, mdpi, tvdpi, hdpi, xhdpi) and ensures that optimal sized image variants are always loaded. The Cross-Screen-and-Resolution design feature also eliminates black edges in the breed area around the game viewport.

All assets placed in that viewport are guaranteed to be visible across every device regardless of screen resolution, size, ratio and dpi.

Thanks to this fixed viewport, you also get a fixed coordinate system across every device; A mouse or touch event produces the exact same coordinates on every device.

The IDE has several iOS and Android device presets for previewing how the fixed viewport will adapt on various devices at desing-time.

Assets supported are PNG images, OGG Audio Files, True Type Fonts and of course Animations. PNG files can be either Sprite Atlas, Packed Tiled Layers, or 3x3 Button Skins. Animations are defined by using Animation Sequences (eg. Idle, Walk, Jump, Fire, Die) and all Metadata are stored within the PNG Files in a custom Coconut2D Header. Especially for optimizing graphics memory on iOS and Android devices we have devised a Tiled Layer texture compression algorithm that further compresses huge background images on the fly, thus saving more precious memory.

What games can you make with Coconut2D ?

We wanted to make sure that famous Game Engines can be implemented with Coconut2D, so we designed and implemented most of them for you! In Coconut2D Studio you will find simplified straight-to-the-point Game Engines for Puzzle Games such as Candy Crush, Tower Defense Games such as Plants vs Zombies, Scrolling Platform Games such as Flappy Bird, Physics Games such as Angry Birds, and several Casino-specific Game Engines for ScratchSlotBingo and other Instant Win Games.

What are Coconut2D Innovations?

Coconut2D virtualizes the HTML5 Canvas and uses Object Oriented JavaScript as the single code-base language. Developers can write and debug their games in Object Oriented JavaScript against the virtual HTML5 Canvas using Coconut2D Studio IDE.

Once a games is ready for release, it can be compiled to HTML5 and ECMA JavaScript code, as well as Native C++11 code for iOS, Android and x86 apps. We developed a state of the art open source compiler, that generates cross-browser ECMA JavaScript and portable C++11 code from Object Oriented JavaScript source code. Coconut2D Compiler is available on: https://github.com/mobileFX/Coconut2D

Especially for HTML5, a game can also be compiled to C++ and post-compiled with Emscripten to JavaScript byte code. Compiled JavaScript can be up to x10 times faster than "regular" handwritten JavaScript and runs on all browsers.

Emscripten is a C++ to JavaScript compiler developed by Alon Zakai (Kripken). Coconut2D uses Emscripten both for binding 3rd party C++ libraries (such as Box2D Physics) with generated ECMA JavaScript code, and also for post-compiling and optimizing a game for HTML5 Browsers.

Coconut2D Studio IDE is capable of compiling C++11 code directly into a native iOS, Android and x86 applications. Especially for iOS apps, they are trully compiled on Windows, using a special port of the LLVM compiler; that is the same compiler Apple uses in XCode. iOS compilation process of Coconut2D Studio also code signs your apps with your official developer certificate.

For developers that wish to compile iOS apps on their own or on a Mac with XCode, Coconut2D Studio has an "Export XCode Project Feature".

Coconut2D Studio can also transfer your application on a USB connected iOS or Android device for testing and debugging, while debug messages from the devices appear in Coconut2D Studio Console. On latest Android devices, Coconut2D Studio can even record a video of the game while running, for producing demos of your games. We hope to expand this feature to iOS and CocoPlayer as well.

We encapsulated all Core Frameworks, such as Animations, 2D Game Engine, User Interface, Networking, etc. inside a Common Runtime Layer (CRL) also written in Object Oriented JavaScript.

Coconut2D Game Engine is a Finite State Machine Automaton controlled by a new programming entity called State. States define a singularity in the execution context of Game Loop, they have explicit enter and exit points and they offer distinction between tick and paint.

To unify Native and HTML5 worlds under a single API while getting the best performance every time, we designed a set of Native Device Wrappers that virtualize the HTML5 Canvas across desktop, tablet, mobile and other devices.

  • Real Classes as first-class citizens
  • Constructor with constructor arguments and inline base class initialization
  • Destructor (invoked on delete)
  • Public, Private, Protected Access Modifiers
  • Published Access Modififer for Design-Time binding
  • Abstract Functions 
  • Static Functions and Fields
  • Virtual Functions and base class access with super keyword
  • Function Overloads
  • Constants and Enums
  • Properties (setter, getter)
  • Events Registration and Notification System
  • Interfaces and implements keyword
  • Structs (with super fast instantiation)
  • States (for Game Loop FSM)
  • Class and Interface Inheritance Model
  • Class Delegation Model
  • Strong Type System
  • Explicit Integer, Float, Time, String, Boolean and Date datatypes
  • Stream and DataStream datatype
  • Typed Arrays and Arrays of Objects
  • Conditional Compilation and Compiler Directives (eg. #ifdef BOX_2D )
  • Export of Debug Symbol Tables for real Debugging
  • Export of Code Symbols for IntelliSyntax Editing
  • Export of State Machine and Class Diagrams
  • Compiles to ECMA JavaScript cross-browser code
  • Compiles to C++11 Portable Code

We also developed CocoPlayer, a Simulator powered by Google V8 JavaScript VM Engine where developers can test, debug and profile their games and apps. CocoPlayer is capable of simulating various screen resolutions taking into account the different dpi of numerous iOS and Android devices. The full-fledged Object Oriented JavaScript Debugger is one of Coconut2D Studio's unique features!

What will we do with your money?

This is an absolutely vital amount for our small development team that will help us sustain the company for the next months in order to complete the product and get it out to the market. Your support reaching this target is a critical factor for us, and we carefully set this goal because we strongly believe it can be achieved.

Rewards are organized in 3 groups:

  • 5 - 99 GBP: Recognition, as described in relevant pledges.
  • 100 - 1999 GBP: 1-year License of Coconut2D Studio IDE, as described in relevant pledges.
  • 2000 - 5000 GBP: Non-expiring License(s) and updates of Coconut2D Studio IDE, as described in relevant pledges.
Please read rewards in pledges for terms and conditions.
Even though currently there is an Application Framework that defines Forms, Controls and some basic application logic like clicking buttons, form animations, etc., you cannot drag-and-drop UI controls on the designer; you do it by code. We would like to implement a Live UI Edit and Rendering feature that would bind any Control's "paint code" with the designer and offer WYSIWYG application design and live rendering of custom controls.

While we were busy developing a stable compiler and doing other hackity coding shenanigans, we left the designer on it’s own which uses pretty much obsolete code at this point. It still does it’s job quite well, but in order to add more features we’ll need to revamp it a bit. We would also like to add a more sophisticated Sprite Editor with Skeletal Animations and Sprite Deformations.

An immediate target is to add more ports on Coconut2D: Android-ware (glasses / watches), BlackBerry, Linux, SteamOS, Mac OSX and Windows Mobile. The later is a challenge because of DirectX since Coconut2D is OpenGL based but YiamiYo says it can be done!  Backers with "iOS Backer" rank or higher will be getting a free annual license every time we release a new port for Coconut2D SDK. ETA 2017.

We want to take a huge leap and integrate Node.js with Coconut2D IDE like never done by any IDE before. The idea is to be able to develop A-Z Client Server Applications with one tool, debug both the client and the server code with a simple step-in from the client code to server code. 

Also we want to implement Data Binding; Data binding is the process that establishes a connection between the application User Interface and business logic in a declarative and often visual manner. If the settings and notifications are correctly set, the data reflects changes when made. It also means that when the User Interface is changed (eg. user types a value to a data-bound TextBox), the underlying data on the Database will reflect that change.

Do you remember about the revamp we said earlier? Now we’re talking about Complete Rewrite the IDE in Qt, in order to have the IDE available for Mac / Linux as well. Currently the IDE runs only on Windows but by porting it to Qt we hope to port the entire IDE to Linux, Mac and even HTML5 Browsers with Emscripten! This is a dream we would really hope to achieve!

We are not greedy… Reaching this goal means you really believe in us, just like we believe in Coconut2D. To thank you, every single one of you (yes, you!!), you will be getting a free license no matter how much you contributed! Now, go and create some fun games we can play!

mobileFX runs its everyday business with six employees, two for business development and managerial tasks (back: Lina, Irida), two graphics artists (right: Sakis, Despina) and two programmers (left: YiamiYo, Elias). We collaborate on a part-time basis with three freelancers (Vasos, Lefteris and George).

We operate under a variant of the XP model (Extreme Professionals) designed by Lina, that reflects our skills and it is appropriate for small teams like ours. All of us have academic education and we receive dedicated training seminars at least once per year. 

                                                       

Risks and challenges

We truly believe that we have a rigid plan for the months following a successful campaign. Most of the software is already implemented and the core compiler and frameworks are already available as open source on GitHub as a proof of concept.

As you can see from the 4 month plan we presented, the work that needs to be done is partitioned in three major deliverables:

a) wrap-up the IDE
b) produce the game samples and documentation and
c) implement the web site services that will support the product.

The major challenge with the IDE is integrating Box2D body attributes with the game designer; so far we have implemented the world attributes and we created a tool that extracts a rigid body from an image. We need to export this information in code and bind it with the physics engine.

The major challenge with the sample games and game design documents is finishing them all on time for the release. We have been working on the graphics and animations and we will be updating our facebook account with the rendered animations as we progress with this campaign.

Frankly we believe there is no challenge when it comes to implementing the web services. It is plain commodity work that we have scheduled to do.

Learn about accountability on Kickstarter

Support this project

  1. Select this reward

    Pledge £5 or more About $8

    [ Rank: Contributor ] Your name will be added in the contributors list on our website.

    Less
    Estimated delivery
    4 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  2. Select this reward

    Pledge £10 or more About $16

    [ Rank: Contributor (Gold Badge) ] Your name will be added in the contributors list on our website with a Coconut2D badge!

    Less
    Estimated delivery
    1 backer
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  3. Select this reward

    Pledge £20 or more About $32

    [ Rank: Fellow ] All the above and your name will be added in the "Credits and Special Thanks List" of Coconut2D IDE that will be available from the Help > Credits menu.

    Less
    Estimated delivery
    1 backer
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  4. Select this reward

    Pledge £100 or more About $160

    [ Rank: HTML5 Backer ] All the above; you will receive a Single Developer Annual License of Coconut2D IDE for HTML5 Game Development, along with sample games with original art and training material for developing your own games. Have a look in Coconut2D Sample Games for more information.

    Less
    Estimated delivery
    3 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  5. Select this reward

    Pledge £200 or more About $319

    [ Rank: Windows Backer ] All the above; you will receive a Single Developer Annual License of Coconut2D IDE for HTML5 and Windows Game Development.

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  6. Select this reward

    Pledge £300 or more About $479

    [ Rank: Android Backer ] All the above; you will receive a Single Developer Annual License of Coconut2D IDE for HTML5, Windows and Android Game Development.

    Less
    Estimated delivery
    1 backer
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  7. Select this reward

    Pledge £500 or more About $799

    [ Rank: iOS Backer ] All the above; you will receive a Single Developer Annual License of Coconut2D IDE for HTML5, Windows, Android and iOS Game Development. This is the jewel edition of Coconut2D IDE because it can compile and officially sign iOS Apps built entirely on Windows using your official Apple Certificate and Provisioning Profile.

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  8. Select this reward

    Pledge £1,000 or more About $1,597

    [ Rank: Beta Tester ] All the above and you will also receive early bird access to Coconut2D IDE and become an official Beta Tester giving you the chance to work with our team and influence the release of our product with your creative input. With beta tester access you also get privileged access to Coconut2D Forum and you can count on our help while developing your first game with Coconut2D. Reward date regards the software availability. For assistance with your game there will be a backers first-come-first-served order list on our web site.

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  9. Select this reward

    Pledge £2,000 or more About $3,194

    [ Rank: Sponsor ] You get 2 non-expiring developer licenses of Coconut2D IDE, including unlimited updates and early Beta access for 2 years!!

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  10. Select this reward

    Pledge £3,000 or more About $4,791

    [ Rank: Believer ] You get 3 non-expiring developer licenses of Coconut2D IDE, including unlimited updates and early Beta access for 3 years!!

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  11. Select this reward

    Pledge £4,000 or more About $6,388

    [ Rank: Team Mate ] You get 4 non-expiring developer licenses of Coconut2D IDE, including unlimited updates and early Beta access for 4 years!!

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  12. Select this reward

    Pledge £5,000 or more About $7,985

    [ Rank: Coconuter ] You get 5 non-expiring developer licenses of Coconut2D IDE, including unlimited updates and early Beta access for 5 years!!

    Less
    Estimated delivery
    0 backers
    £
    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.

Funding period

- (30 days)