I really like what I see here. The basis is there for a lot of fun construction-based mechanics. I feel you'll definitely be able to do a lot with this kind of system, especially after taking more time to work on it and iron out the kinks. Thanks for making this, and for sharing it!
I very much dig the idea of being able to set the inputs directly for each wheel as this allows for a lot more control and "special functionality" in a vehicle's control scheme like activation of rockets or other future-added components, four-wheel drive, etc.
I'm definitely lookin' forward to seeing this get more fleshed out as I've already found myself tinkering with it for a decent while just getting the hang of what works and doesn't work. I've taken some time to jot down a few things I've noticed, though I assume you've either run into these issues yourself or they're perhaps a windows thing since that's what I'm running on:
- Default controls for vehicle parts do not seem to be initialized right away. I have to click each object while in the "input" mode at least once to get it to properly listen for designated keys.
- Wheels slide a LOT, so when I accelerate my wheels instantly start spinning out unless I do very very slight taps to inch myself toward a viable movement speed.
- Braking also seems to be affected by this, I have to tap it multiple times to get the wheels to finally stop and after that the vehicle keeps sliding regardless of braking or not.
- Clicking the reset button immediately enters the "play" mode, causing the vehicle hull to fall to the ground
And just some side notes:
- Though you do state it in the description, an indicator or button display for entering/exiting build mode would be nice
- I'm sure you already know but icons for the components would be FANTASTIC
- Utilizing a copy of your "input" mode selection system for edit mode, allowing the player to select an object and delete it instead of having to drag it off to the object pallette would be pretty lovely. (even a hover-over and delete-button detection would be nice for this, though i note this is more of a me issue, i just found dragging things back to the pallette to be a bit cumbersome)
- (I'm sure you know this) An Undo/Redo system would be amazing