Hi All,
I have been using C2 for almost around 3 days now.
I have gathered a few thoughts over this time, thought it would probably help make c2 better. Apologies if I mention something that is fixed / featured but I simply have been unable to find it.
The positives:
The best part about C2 is the pace at which you can kick start your game. I had a basic prototype running within half a day. I have a programming background so it simply was a very natural way to work. The architecture is solid, the event system is fantastic, it is very similar to a custom engine I had worked with in a RTS game (and they are very complicated! so this speaks volumes of C2's architecture). The forums are very active as well so any issues I faced were quickly overcome by a little browsing here and there. Thanks to everyone! Plugins are a great help! I could generally find many solutions in plugins, maybe they are few in number at the moment, but that's fine considering its early.
The interface is great, the comments, the scopes, the indentation on nests, etc, make your project clean \ readable, and full marks for this.
Things that can be improved:
Power. C2 gives you the most basic things you need, but lacks when you want to do some really polished stuff. I understand it is hard to find the balance between power and generality. But I felt the lack of power as I had and am currently having some trouble with a few things. One is improving the accuracy of my physics (I require an approximate point of collision, finding mid point between objects is not accurate enough). So I thought I could find mid point between closest image points of both objects, but then they are instances of the same object type! and the only way I could get around filtering based on instances is comparing between families. Now when I try to do that, I lose the additional data I require from my original data type, for e.g playing a fx based on velocity (which I cannot retrieve from just families). I do not wish to have different object types because this would lead to a lot of loss in flexibility and generally is very poor design.
Phew. But yeah, the customization provided by plugins (which btw is the feature that makes C2 exponentially that much more attractive) help people overcome these shortcomings, but it just takes a little bit more time. I guess if we can expose some of the core stuff within the engine, we would able to overcome these, but of course I do not know how far this is possible, but anyway.
On a final note, I really enjoyed the short period I have worked on C2, and really hope this keeps expanding, and we can make some awesome games. :D