Source engine clone / Node scripting system

For over a year now I’ve been sort of “cloning” the Source Engine in roblox and I’ve gotten pretty far. Obviously things such as the source physics engine, facial animation etc. wont be implemented for obvious reasons, but much of it can be cloned/imported.

In the Source engine everything is basically an entity - a class. The world you play in, the bullets you fire, everything.
I currently have 50+ entities implemented in their own respective modules, and the main “compiler” which gives each entity their declared behaviour in-game.

One fun thing I happened to clone as well was the Input/Output system, which is basically a bunch of methods/events per class that can be interacted with and connected via a user interface in the map editor.
Such as seen here in the second screenshot:


That basically means level event coding without actually having to write code, which makes a lot of things faster and easier, especially for level designers.
You can do all sorts of things, and if there’s something you can’t accomplish with this I/O system you can quickly write yourself new inputs/outputs or even a new entity.

What do you guys think :stuck_out_tongue:

6 Likes

Really cool! The only way you could improve is making the UI more friendly.

4 Likes

whats done is done

I think the UI looks okay, although the exit button seems a bit too square, but i think that’s just because I am used to the windows 10 window exit button

When you finish you can do a plugin