Hey everyone, thanks a lot for the encouraging replies! I really do appreciate this a lot!
Sorry for not being around the last couple of days, I was just so busy at work. Also haven't managed to progress a whole lot, plugin development wise. Will probably start working on the plugin from around Tuesday on, with the intention of releasing everything in about 2 weeks (hopefully, by that time, all will be a lot more stable).
I'm gonna try to answer everybody's questions now, so brace yourself for a wall of text. lol
This is indeed possible. However you will need to do a fair bit of coding, server side.
Having the basics down will help out a lot, from there on its just a matter of phrasing your question the correct way and asking Google or Stackoverflow.
Thanks for the kind words! Yes, you understood correctly. In essence I'll just provide an infrastructure, a framework so to say. I'll probably build in some more functions apart from "call function" and "receive response" that will hopefully make your life a lot easier as I go along. But essentially yeah, it's just a "two action" plugin and you will need to modify the runtime.js file as well as of course your server coding itself.
Glad you like it! Extensive documentation is the plan, so hopefully it'll make the whole experience a lot smoother.
Thats fairly hard to asses tbh. Firstly, node as well as nowjs are non-blocking and can handle events asynchronously. Node by itself is designed to handle maximal server load fairly efficiently. Node for example is a lot faster than Apache (maybe not the best example, but just for the sake of it), can handle a lot more requests and greater server load at the same time. However, node is of course more resource intensive. Nowjs is essentially a socket.io wrapper, so it will achieve more or less the same performance (however, keep in mind that nowjs is written and optimized towards real-time applications/games).
Another huge advantage of node is it's "out of the box" optimization. This matters greatly, because with node one doesn't need to embark on low-level concurrency optimization and can instead just write server code and deploy, most of the functionality will work out of the box.
That being said, a lot will depend on your server as well as your game/server code and nothing can be easily determined without a working demo or a specific test case. Some further reading that might be of interest:
Cavemen checkers is indeed a go. Oh and:
n the words of the surgically enhanced north korean dictator, fencer and ice hotel manager...you can sleep when you're dead.
I think "what he said" has never applied more as it does right now haha.
Actually, the most recent stable release of node as well as npm comes with a native win binary, so no need to hack around with cgywin (at least thats what I used to do). Just download the exe installer from node's homepage, install everything. Open up cmd, type "npm install now" and you are good to go.
In regards to backslash vs. forwardslash, it is always recommended to go the unix way, so always use "/" whenever you can. Firstly, node will always normalize paths and windows itself has had support for "/" since forever (well, at least since winXP that is).
Glad you are as enthusiastic about this as I am! Hopefully, this will allow for a ton of new content to come out of the C2 community.
Also, I just wanted to mention that I'll be including the following projects with the plugin (this includes server code, C2 files as well as modified runtime.js files).
1. "Hello World" (of course haha)
2. A real time game (most probably a clone of pong)
3. A turn based game (probably a simple multiplayer card game)
4. A couple of smaller projects
5. ??? (requests are welcome, as long as its not overly complicated)
Right, thats all for now. I've gotta run out and get some work related coding done (on a Saturday no less... but well, it's crunch season haha). Updates will follow.