Open Source Development Tool Like Construct2

Project now on SF:

Would anyone be interested in developing an open source game builder environment along the lines of Scirra Ltd.'s Construct2 based on Panda3D, Twisted (I’m shooting for a transparent client/server event abstraction layer using Perspective Broker in Twisted), Python and Tkinter? I like C2’s modular design and think being able to build Panda3D projects in a similar environment would be great.

Unless a project like this is already underway? If so, please post a link. :slight_smile:

Otherwise out comes the whiteboard markers to build up an initial design for this thing…

I’ll probably implement something like C2’s ACEs (Actions, Conditions, Expressions) and event sheet layout since it’s far less unwieldy than screen-real-estate-heavy Blender style logic bricks. Thus something like C2’s plugins (objects) would be PandaNode-based, to which one would then add instance vars and Behaviors like in C2.

Probably switching from Tkinter to wxPython if it cooperates with Panda and Twisted. Tkinter is too limited (Panda3D’s DirectGUI even has more features).

I applaud the switch from Tk to wx anyday because wx is generally a nice toolkit with a good platform look and feel.

On the other hand I’m considering it an insult if you think DirectGUI has more features than Tk ! This shall not stand ! No sir !

If directgui had as many features as Tk had I wouldn’t be looking at libRocket and other gui toolkits for panda :slight_smile:

I’m interested to see what kind of logic building blocks you will be having but are you not going to get into trouble by replicating the ACE method ? It would be a hard case to claim ownership over such a general concept but you’d be surprised about some of the idiotic patents some projects have been shutdown.

If one were to worry about patents one would never write any code. Not to mention there is prior art in Unity3D. If they try to claim ACE then I’ll use POTs instead (provocations, operations, tests). I’m sure could give me many possible alternatives if they claim ownership of ACEs.

Also mine’s going to be more real-time and obviously, pythonic (quack, quack!) rather than Javascripted.


Thought I’d share what I have so far for progress…
It’s been slow going as a lone wolf…

Comments/suggestions/HELLLLLLLP! welcome :slight_smile:

People who seriously want to help may be added to my private dropbox group for this project. Please let me know.

Right now I’m working out the plugin architecture to dynamically load at edit/run time.

There will be an event based game logic (like C2) but also a semantic network that may be queried by and updated through the game logic. The concept nodes will be draggable by the user to organize the display.

Having some wxPython issues getting it to properly show scrollbars (it’s a wx.ScrolledWindow and should have scrollbars when the window is smaller then the semantic net layout). I also haven’t made the edge display widget yet to show the directed relation edges.

The learning stuff is in far future as I’m going to be rather swamped just to get it to the level of C2’s tool. It would be SVM/SVR based and possibly MDP as well if I can get some help with MDP utiliziing a mutable (ie: SVR) reward function.

Refactored the project to an Extreme Programming model to better cope with emergent design. It’s also more developer-friendly now.

Scrapped the former spike solution implementation.

Unit-test-prior-to-coding makes it possible to observe project progress without the need for the complexity of GUI code until a much later iteration. Beautiful KISS.

Won’t even need Twisted or Panda3D right away.
YAGNI? Heh, wishful thinking. :wink:

Right now I’m doing the build system which will be
designed to perform feature-wise builds of the code allowing features to be worked on independently of one another without the need for full CVS/Subversion which DropBox doesn’t support.

I should have used XP much sooner as a soloist ADHD programmer as it breaks the design cycle into bite-size features and counters unwieldy feature snowballs by design (user stories, CRC cards, iteration by feature, order features by importance, Etc.). Can’t pair program (no partner) but life is never perfect…

EDIT: The ZIP is now updated.

Why not put the source code on a repository-hosting site like SourceForge, GitHub, or Google Code? They’re all free and they might save you a lot of trouble.

With the repository now active I don’t think I’m going to maintain the ZIP past this point until further notice.