DJMaesen thanks, but I'm still testing things, and it's a lot of work. Each mech like this one will be made out of different parts that can be destroyed, and the weapons have to fit in the slots, and there's a lot of modularity involved.
I also don't want to waste someone else's time if for some reason this project ends up abandoned. I want to finish this game, but you never know if you will hit a wall or if some external problem could come up.

right now I'm starting to struggle with the code, I need to study it to figure out how it works again in order to create the new class ControllableMech, and it needs some cleanup because it currently "just works" but I need to extend its functionality. I need to take things slow for a time.

I don't know how I did it but I made most of the animations for the mech in one sitting, I'm missing some variations but these are the only ones needed to get the mech to work for now. I recorded a very small video and converted it to gif, it's too small to make a youtube video but just at the limit for an image (and sometimes I forget it's 2024).

and again, any feedback is welcome

    Jesusemora robots dont need to sway arms like humans. when you make them sway arms when running it looks like they are human. IMO the top part should be separate from bottom in animations.. like you could walk forward while the top is facing backwards. This way it, imo, would feel more like robot. It dont matter if human sits inside, mech is a robot afterall..

      Jesusemora also from quality of life point of view, i suggest add also ability to quickly set the weapon instead of dragging them in. In the long run it will only frustrate people when you are going to switch setups and want to make it quick. Dragging is very slow and takes precision to execute.

      I suggest some sort of key combo, like hold shift to put it into left side and hold ctrl to put it into right slot or something.. Pls dont make players do chores 😃

        kuligs2 moving the arms is a balance thing and an animation thing. I made it not move the upper part and it looks a bit boring. The one in your video IS moving its arms, so it's not a good example.
        I will have to remake the walk animation anyway because the mech is moving very slowly in game.

        I managed to get ControllableMech to work and it's moving and firing. It's now missing hitboxes. Turns out it was well designed and I got it to work with only small changes.
        The problem I had was with weapon slots but I figured it out, I was using a bitmask and each weapon had a number assigned (1-2-4-8). There's an Array of Dictionary and each Dictionary had a "SLOT" with that number. I added a reference to the Weapon node and it's more clear now. Each Dictionary is a weapon assigned to a slot.
        Next is improving ammo. The ammo is contained in each of these dictionaries, but I plan to have a "ammo" attachment for extra ammo, so I need to rework that.

        kuligs2 also from quality of life point of view, i suggest add also ability to quickly set the weapon instead of dragging them in. In the long run it will only frustrate people when you are going to switch setups and want to make it quick. Dragging is very slow and takes precision to execute.

        that is planned but for the future.

        kuligs2 I suggest some sort of key combo, like hold shift to put it into left side and hold ctrl to put it into right slot or something.. Pls dont make players do chores 😃

        the problem is, this mech has weapons on the left and right, but other mechs will have slots in the chest and head. this mech also has 6 slots, 3 in each arm. I calculate at least 16 slots per mech, using an int bitmask going up to 65536ish.
        I can't think of a way to make your suggestion work since each mech will have different configurations and number of slots, so a "default" key is not possible.

        I don't see this as "chores", it's the admin side of the game, managing resources and personnel in between battles, researching and building mechs. I think building mechs is one of the most fun part of these games, currently there are only 3 weapons, but once there are more options, it will become a fun and important mechanic of the game to assign not just weapons but also modules with effects, ammo and more.
        And soon changing the things in the slots will be updated on the model in the background.

        Hi, I think the animations are pretty good overall. While I love the corny introduction movies of the "Mech-commander" games with real actors, the mechs are too stiffly animated; you can say yours are controled by mind-links and for that reason they have human-like behaviour. Rule of cool should always apply to games, it also makes them look less static and more "alive".

        The only one I don´t like is the death one, it´s too plain; it would be best if you could turn it into a ragdoll at death. But if you won´t, you should add a bit of feedback when it touches the ground. A small rebound of the torso and limbs after hitting ground can go a long way to spice the animation, or making it slower in the earlier part so it gives the impression of tons of metal slowy losing balance and then going hard down when fully unbalanced in the latter half of the animation (great looking if you combine both). It´s fine work but it makes it look better.

        The mech stable is irking me a bit, not quite what I pictured from the future 😉 (I know it´s a placeholder)

          Danimal While I love the corny introduction movies of the "Mech-commander" games with real actors, the mechs are too stiffly animated; you can say yours are controled by mind-links and for that reason they have human-like behaviour.

          Or just AI where moving the joystick forward makes the mech walk and balance itself.

          Danimal Rule of cool should always apply to games, it also makes them look less static and more "alive".

          I'm starting to regret making the mechs more realistic, because they are not very appealing. one element is the legs, I used the megazord as reference for the hips to make sure the weight is held on the legs, while most mechs in media have the legs come out to the sides, which is not very stable in real life, but in ended up looking like a toy robot.

          Danimal The only one I don´t like is the death one, it´s too plain; it would be best if you could turn it into a ragdoll at death. But if you won´t, you should add a bit of feedback when it touches the ground. A small rebound of the torso and limbs after hitting ground can go a long way to spice the animation, or making it slower in the earlier part so it gives the impression of tons of metal slowy losing balance and then going hard down when fully unbalanced in the latter half of the animation (great looking if you combine both). It´s fine work but it makes it look better.

          yeah, I noticed. I'll be reworking the animations and adding more later, these are sort of placeholder to implement new features. It also needs more variations of fall animation and impact reaction.

          Danimal The mech stable is irking me a bit, not quite what I pictured from the future 😉 (I know it´s a placeholder)

          almost everything is placeholder 😆 , but it's working, the project is moving forward and the details can be left for later.

          Some updates: I've been working on adding the mech to the game, I stopped to fix some bugs and clean the code, the weapon system now uses a Dictionary of Dictionary, so each slot is a number forming a bitmask.
          Weapons are now defined by an enum and retrieved from ResourceManager, which holds all the data like fire_rate, number of shots, name, etc for each one. This is a step towards swapping weapons in the mech workshop. I really like the sound of the machinegun at 0.01 fire_rate, so I need to make the minigun for the mech because currently all the weapons are cannons.
          I implemented a new feature, now the mechs use different animations depending on whether they are firing weapons from left, right or both arms. But it's a bit buggy so I might have to rework the animation system to start firing and then repeat an animation multiple times until finished.
          I need to finish the textures and fix the colors, since the mech looks ugly at the moment, and work on the animations, the mech has too few articulations, this makes it easy to animate but some poses are impossible.
          All that's left to do code-wise is add the hitboxes to the mech and create some icons.

          I'm getting close to the next milestone and I will record a video showcasing all the new features soon.

          edit: legs are done, I need to work on the colors but it's looking good:

          I think it looks good enough as a starter medium mech, you want variety and you can tease the player with glimpses of more advanced mechs right from the game start.

          As for the style, I guess you need to decide now if you are going for the battletech or the anime style, I do think you should do a mix, it´s what I have planned for my never to be developed game; start blocky and as you move to more advanced ones go more anime-y with slimmer models; reason being they are developed with better materials and tech. As a side note I totally dislike the mechs with exposed airplane cabins, who the hell put glass windows into something that going to get heavy gun fire?. I guess it´s "Rule of Cool" at work.

          How will you handle the animations? since you are going modular and animating by hand I recommend you to stick to just 2 or 3 legs lenghts "skeletons" and build the legs around it instead of the opposite (shorty, normal, tall for each mech weigth category). Maybe godot can adapt skeletons? I have no idea. Same for arms, you can save yourself lots of work.

          Anyways, our dwarf dude is looking good and ready for a brawl.

            Danimal I think it looks good enough as a starter medium mech, you want variety and you can tease the player with glimpses of more advanced mechs right from the game start.

            As for the style, I guess you need to decide now if you are going for the battletech or the anime style, I do think you should do a mix,

            battletech is based on anime, so it's not that difficult. but I see a tendency of anime to make giant robots that are humanoid mixed with others that are more machine, like the gundam (which I think looks ridiculous) is clearly just a super-robot in disguise, but there's a not-gundam that's a tank with arms. I think more exaggeration of the shapes makes for a more machine-like appearance.

            Danimal start blocky and as you move to more advanced ones go more anime-y with slimmer models; reason being they are developed with better materials and tech.

            I have some designs planned for the next mechs, and I might add tanks too. I'm getting better at this and learned a few lessons from this mech, like what shapes work best and where to add detail. for example, semi-rounded shapes are best, even when it's supposed to be blocky, it allows for the lines to curve slightly and looks better with the shading. I was also thinking of reworking the head, but maybe later. it uses it's own textures and material so it won't be a problem.

            Danimal it´s what I have planned for my never to be developed game

            there's always time

            Danimal As a side note I totally dislike the mechs with exposed airplane cabins, who the hell put glass windows into something that going to get heavy gun fire?. I guess it´s "Rule of Cool" at work.

            it could work for faster, less armored mechs. Again, I might rework the head because I'm still not convinced.

            Danimal How will you handle the animations? since you are going modular and animating by hand I recommend you to stick to just 2 or 3 legs lenghts "skeletons" and build the legs around it instead of the opposite (shorty, normal, tall for each mech weigth category). Maybe godot can adapt skeletons? I have no idea. Same for arms, you can save yourself lots of work.

            Godot has retargeting, but I'm only using it with the first units. Using a custom skeleton allows for different shapes of arms and legs and movements and more precision, but retargeting would allow reusing animations.
            It is possible to swap the arms and legs of a mech and reuse the animations, for now I will make versions A and B of each mech with different configurations, like pokemon, but I could make full replacements to speed things up.
            I will rework the current animations later, and additional animations can be added with more animation libraries.
            there will be 3 or 4 sizes of mechs: small, medium and big. I might add a smaller size too.

            Danimal Anyways, our dwarf dude is looking good and ready for a brawl.

            I'll upload a video as soon as I can.

            Update: I made the hitboxes and also implemented localized damage. Now parts of the mech can be destroyed and the weapons in the arms become disabled. destruction of the head, chest or legs causes the mech to be destroyed, but each has different functions so I can give them different effects. I also fixed a lot of bugs and clean up the code more, but there's more to fix.
            There will be two types of mechs: electric and nuclear.
            Electric mechs will have a battery pack that will run out when using electric weapons like LASERs, but will be able to continue fighting after it's depleted. nuclear mechs will be powered by a nuclear reactor and explode if the chest is destroyed, with catastrophic consequences. nuclear mechs will have infinite energy, but overheat more. they will also be more common in medium and big mechs.
            I improved the shader by replacing round() with a custom softround() which makes soft edges. I'm not using it with the rest of the shading yet because it didn't give good results. I also implemented custom colors using an instance uniform, mechs are now colored by team in the same material.

            That mech model turned out to be rather nice looking in the end.

            I like your mech head, by glass windows I was refering to this Mechwarrior guy for example:

            Which after learning that Battletech is western adapted Macross makes sense; airplanes on legs. I will defend zakus, gundams are utter sh#t, but the zakus looks great (ignoring spiky bits).

            Don´t forget chicken legs and centaurs/spider legs as extra types. Regarding the parts destruction, only chest should provoke death, you should lower gun accuracy for destroyed head (sensors) and speed for legs (move points - inmobile if the two are destroyed).
            I feel that something is very wrong with the electric type, nuclear is fine, but you are overcomplicating something that could be handled by weapon magazine/gun battery size. Or even making the guns drink from a central battery that is replenished from the reactor.

              Danimal I will defend zakus, gundams are utter sh#t, but the zakus looks great (ignoring spiky bits).

              zakus are cool

              Danimal Don´t forget chicken legs and centaurs/spider legs as extra types.

              let me check my notes... the next planed mechs are:
              Ocelot (light) light bipedal mech with two gun slots
              Jira (heavy-medium) heavily armored mech with shoulder slots
              Hyperion (heavy) "ultimate" mech with all the weapons

              then there's a list of mechs that would be made if I finish those:
              Lupus (light)
              Ursa (medium)
              Gilgamesh (heavy) "ultimate" mech

              followed by: Gorilla (medium), Dragon (medium), Mantis (light), Minotaur (medium), Kabuto (light), Pegasus (medium), Tyrant (heavy)

              I think the Lupus, Mantis, Kabuto and Tyrant would have chicken legs. A crustacean themed mech is also planed but I'm still thinking of a good name, and it's too early.
              I also feel like I'm using too many animal themed names, so these could get renamed.

              Danimal Regarding the parts destruction, only chest should provoke death, you should lower gun accuracy for destroyed head (sensors) and speed for legs (move points - inmobile if the two are destroyed).

              I was thinking about making the head just sensors, but the point is to have a difficult to hit weak spot. the head won't always be located on top, sometimes it will just be the location of the internal cockpit in the chest and be heavily armored.
              The legs could reduce balance when hit and the damage could slow the mech down, but are a "safe" part to hit in order to get most of the parts.

              Danimal I feel that something is very wrong with the electric type, nuclear is fine, but you are overcomplicating something that could be handled by weapon magazine/gun battery size. Or even making the guns drink from a central battery that is replenished from the reactor.

              the point of the electric type is to have a fodder mech that can be blown to smithereens without a second thought, hitting the battery would also disable the mech. In the case of this mech, which I've decided to call "the Brimir", the battery is on the back, so you have to go behind the mech and shot it in the back to disable it. destroying the chest also destroys the backpack, so hitting the battery is safer for salvage.
              with a nuclear mech you have to fight them with precision to avoid collateral damage, and in certain missions the explosion could be used to damage other enemy mechs. but this is a double edged sword because you have to think about collateral damage when using them yourself. Electric weapons will be good on nuclear mechs because they get infinite shots, this is an advantage of the nuclear mech. smaller electric mechs will be better with conventional weapons and have drawbacks from using electric weapons, but will still be able to use them.
              on the other hand, small mechs will always be electric, and will be able to move after shooting or shoot multiple times, or jump. They will be weak but mobile.

                Jesusemora I also feel like I'm using too many animal themed names, so these could get renamed.

                there is an old and ancient book full of cool names. it's been used for centuries for inspiration, and it often never fails. its called the holy bible.

                finally new video:

                edit: managed to add a precision shot mechanic, but needs some work.
                using precision shot opens the part select popup, you select a part and then the mech aims to that part. it currently only works with head and chest, I need to add functions for getting arms and legs position.
                I also started to code in pilots. when firing, a dictionary is sent to the weapon. it currently only has what part is being targeted (default chest) and an AIM multiplier for the pilot. the closest to 0, the more accurate, the largest, the least accurate. this is multiplied by weapon precision so an AIM of 1 would be an average shot.
                I need to make some drawings of mech parts and work on UI, but it's not a priority. there's also a ton of bugs and placeholder code that needs fixing.

                so, here's another daily-ish update:
                implemented a heat system and managed to animate it. also fixed the health bar and removed the morale bar. The system is currently running in a single Control node with an overridden draw function, but it's starting to get too complex because of animations, so I might have to replace it with a bunch of Controls and bars instead.

                the bar increases with heat, at max heat it blurs and blinks, it's currently using two styleboxes with blur. I would be interested to hear of a better, equally efficient way of doing this that doesn't involve an AnimationPlayer. Is there a way to change the blur on a Stylebox instance? I have no idea.
                I was thinking of Tweens, but they only perform ONE animation and then stop?
                each weapon now has a "heat" property that is optional.

                I also made more bugfixes and cleanup. The mech Stats is now retrieved from an autoload, the Dictionary is duplicated and assigned to the mech, it also accounts for changes for future mech customization.
                I also added the backpack hitbox, and the targeting system now works with all the parts.

                While I fix bugs and add new features, I'll try to make more assets so there's something to show, and also because I have to start at some point and posting in the forum helps a bit with keeping a steady pace and checking how long things take to make. the "Brimir" is not entirely finished, the chest needs some lines and I need to paint some details, and rework the animations. But it's close enough to completion where I can start to think of the next mech, the "Ocelot".

                Danimal thanks, but I don't think it would fit with the style of my game. I'm making medium quality models with some hand-painting, yours looks like it would fit better in a voxel style game or pixelart. And also the mechs use slots for weapons and must have destructible parts, and these would involve some additional models of destroyed parts, probably with additional textures.
                Thanks anyway.

                another daily-ish update:
                heat system is almost fully implemented. when heat reaches maximum, the mech loses its turn and cools down. I also started work on a second stability bar. I don't want this game to be too much like battletech, but this seems like a good feature. the stability bar currently fills with each hit. the idea is than once it fills the mechs falls to the ground and has to spend its movement getting up.
                made some changes to the weapons, they now deal stability damage, heat damage, heat to the mech firing, and there's a "damage type" that doesn't do anything yet, but with come into play later.
                did some more bug fixes and cleanup in the process too.
                team colors are no longer hardcoded into ControllableMech, they are now obtained from an autoload given the mech's Team.
                Finally, I finished the texture of the Brimir, the back is now finished, I also added some detail to the destroyed arm, but it looks a bit dark.

                TODO: create damaged versions of the parts and gibs to make destruction more fun, rework some animations, add a second and third dead animation, add a get up animation to implement the fall mechanic, add a second idle animation, add two more melee animations, and maybe a third.

                update: I didn't have much time today, but I worked on animations.
                here's the new run animation:

                cool game you have brewing, but i want to make a suggestion:

                where i'm at right now, we have a huge fleet of these guys rolling around delivering food.
                in october, they pick 5 out of the hundreds here and slap these stickers on them.

                in december, they become reindeer.

                i think you should use them as creative inspiration. they don't have to fight or anything, but act as background characters carrying cargo around. there is no particular reason i'm suggesting this besides the fact it would be very funny (to me) to see my favorite robots roll around in the presence of heavy artillery and extreme violence. especially with the little seasonal faces.

                  Where do you live? I´m pretty sure they would be vandalizad in my city... What other faces do they have? I give you they are cute lil bastards.

                  Jesusemora, yes, that arm connector is too dark. But I´m surprised how fast you are going, nice work.