Jump to content

IMP (Imp's mech project) Dev Blog

Recommended Posts

This is a poorly translated version of this topic

Since I can speak a lot about it, let's try to get only important info.

Where I can download it?

You can get latest (06-oct-2015) version here

Can I see screenshot?



And wallpaper


Do you have a video?

Thx to Starch1ld

And less detailed...

Maybe we can see even 3d in browser on this site?

What's the name of this game?

Right now game doesn't have an official name. Unofficial is narcissistic recursive acronym IMP Mech Project.

What about genre?

It is a simulator (if it's correct to call simulator a game about something nonexistent) of giant robotic vehicle (mech) combat.

Unlike developers of most other mech games I try to make focus on controlling your machine. This means moving away from twitch-shooter game mechanics (like strafes and controlling movement direction with mouse), and borrowing some elements from serious sim-games, like DCS. For instance, here we have interactive cockpit with clickable buttons. Right now I'm focused on creating single-player experience and it can be considered as "feature", 'cause as far as I know it's about 2 single-player more or les "sim" games with mechs were released on PC over the past decade, including raw-alphas counts as releases.

How to play?

You can see all control buttons in readme file (in same archive with game). Also game contains quick-start tutorial.

What parts you already did?

Right now I can't call any part of game finished. Game build is just tech demo of few game systems. But some of them good enough to show. In particular:

  • Mech controls
  • Ability to move on your own feet and get into the mech
  • Active cockpit
  • Big part of HUD
  • Some sound (steps, engine, cockpit and menu buttons)
  • Two weapons
  • Animation with adaptive warping (leg IK)
  • First signs of AI

When it will be ready?

Who knows? As I say, right now most parts of game are not finished. I need to polish almost every feature which already in game. And a lot of features not even in game yet.

How work is going?

Not bad. In rus version of readme I try to store every part of my progress but it takes a lot of time to write/translate it in eng too. But I try to tell you about each important feature implemented.

Some updates soon?

Sure! 'Cause I'm actively developing this game and 'cause I'm free from marketing, publishers and other sort of directors I can let you see any change even minor ones in real time. I don't think it's big deal if you see some ugly graphics of glitches. So I try to release new build every Sunday (GMT+3) and you can see all work done over week.

I think it's interesting to look how game grow up from scratch, so I try to stay open as posible. And open development right now become not only my whimsy, but trend

What engine is being used? What language is the code being written in? How were the models created? -- thEClaw

I use Unity engine 4.3.somedigit, it can be scripted with C#, Unity Script (some kind of wrapper for same internal classes with syntax of JS) and Boo (Python like language for .net and mono environments). I'm prefer C# without any specific reason. Maybe because it well documented.

Models created with Wings3D and animated in Blender. I never make models for games, so it's just all what I still remember since NBT-HC times. They still have this cool guide. But personally I want to move away from Wings3d and do all modeling stuff (except drawing textures) in Blender.

I think the biggest task now is the implemention of a damage system... -- Chezzar

Damage system is not really big deal. If you not mean something like WoT of WT with armor-shell angle calculations, penetrations and hitboxes for every internal component. Anyway I'm not planing something like WoT. It may sound sexy for mech game, but I'm not sure if it fits in exsitant game-design. Mechs already have parts which can be damaged separately and have different functions. So another layer of details may be a little excessive.

...And multiplayer. -- Chezzar

Multiplayer is BIG deal. And it all I can say about right now.

Is it possible to include quadrupedal, hexapedal, and or octapedal mechs? Or would that just be a total headache? -- Warlord Kentax

Technically, yes. It's a lot of work, especially with turret-like parts, and of course it's almost new logic system (controls, stats, a lot of new movement cases etc). But animation warping system can handle any reasonable number of legs, and I can solve other issues pretty fast with experience which I got now.

So it's a moderate amount of headache.

Do you have a basic idea of what you want to incorporate into your single player experience? ie story, game style (horde waves, story missions etc) -- SquareSphere

I want something like MW1/MW2:mercs. Plus I have concept of short campaings, three of four missions, when between combat situations you can't just go to mech-market to buy new toys, and have restricted by your tech-team skills ability to repair and rearm mechs. So instead of driving onward your brand new shiny custom, you will try to get as much salvage as possible and put it in your vehicles to keep it working somehow no matter how far it from your vision of perfect custom.

But I have a lot of thing to do, before it starts to be not only concept.

Will you just go with the Battletech 'Mech-sections we all know or will you think about a mechanic that's a littler more detailed? -- thEClaw

It's standart TT parts plus additional specials like madcat ears in MW4. But ofcourse there will be additional layer of internal components more detailed than ever. I'm not planing additional hitboxes for each actuator or ammo storage, it may cause good players to kill each other with one or two shots ("worst case" in programers language). But for example: after destroying leg armor main power circuit can be damaged, and player should use cocpit tumbler to activate reserve one. Something like this implemented in ground combat part of WT, but nah... "press one button to repair all and wait" is not fun scheme.

So it will be almost like in MWLL, with additional mechanisms to reduce functionality by damage and overcome this type of restrictions by player's actions.

This is how it designed now. For further detalisation I need to test it and see how other player behave in game (this is why videos so cewl).

Anyway, first implemenation of combat will be based on pure HP bar, so don't be bad-surprised.

Can I give you money?

Nope. I don't want take such responsibility right now. I'm not even sure if I can finish the game.

Okay, I don't give you money, but I can draw/write music/do programing stuff. Can I help with my skills?

Right now it's hard for me to direct other people. I don't have time and skills for this. And I don't have pipeline for content. So this type of work only assures you that I'm complete jerk. Did I mention I'm not native English speaker, so there even more barriers?

At which point will you give more thought to accepting help? -- thEClaw

Right now I'm planing:

  1. Finish AI. Finish like other parts. Make it acceptable, and continue polishing in later updates.
  2. Add some damage model.
  3. Rework internal systems and cockpit controls for something more usefull and less unintuitive (more intuitive)
  4. Maybe piece of internal weapons framework, 'cause now weapons is just hardcoded placeholders, and this code makes my heart suffer every time when I accidentaly see it.
  5. HUD-part of two previous tasks.
  6. Then I will add some bad but textured models for mech and cockpit.
  7. Call this mess pre-alpha
  8. Make new plan

Somewhere (when?) between 6. and 7. I will start to realize how to properly make models for my game. So it's point you searching for. But I can't promise anything. Modelers usual wants concepts, and artists ask for design decisions. And I'm not leader, more autistic guy who randomly press buttons and sometimes get working pieces of code.

I have question not listed above, what do I do?

Feel free to ask it in any comfortable way. I'm open for contacts and love to talk. You can ask me anything here on forum or via jabber, Vk.com, skype (all contacts lited in my forum profile). Plus, be sure I will add any important questions and answers in this FAQ.

Where I can find other topics about this game? -- Zif-Stone

English FAQ (here)

MWLL-forums discussion

Heavy Gear: Assault forums


MWO-forums Italian

Russian FAQ

Russian VK feed

OFF-unit forum topic (rus)

Edited by ImP
  • Upvote 2
Link to comment
Share on other sites

Minor updates here. Direct link to download.

Most important part - some additions to pathfinding algorithm, wich helps calculate path and continue movement even if target point is not appropriate position for bot. Next week it will help me to start building ability of AI to make movement decisions and fight with other bots and player. Hope I can make all stuff necessary for combat on primitive level, and then advance each part separately.

Link to comment
Share on other sites

New build, boys and girls. Direct link

No primitive combat, as I wanted to. But some parts of it done. Bots separated into teams. Radar, AI, game logic improved to support teams. Bunch of bugfixes and internal code improvements.

Unexpected bugs, just like I was expecting. But I still need only two features, and there will be pew-pew.

Link to comment
Share on other sites

As always Direct Link.

Okay, what to say? It's not easy to be stupid, so this week was hard for me. Wrong priorities cause bugs apear at last moment, so this build is raw and rough even in comparison of my other drafts. And key systems I made look very clumsy. But, combat is ready if it's correct to call such mess "ready".

Anyway, you can shoot and be shooted, bots moving to the target sometimes, and not killing allies, just hurting a little bit.

If you know "80/20" rule, it's still a lot of work, with less visible result. So next few weeks I going to try clean and fix all I did, without loads of essential and funny changes. And for now please enjoy glitchy mech arcade. I hope, gents, you will get some fun.

Link to comment
Share on other sites

Get bug which make bots deactivate their mechs. It was crappy part in F1 code. I don't have proper mission progression system, so tutorial is just placeholder of it in wrong place with wrong logic. Every press of "F1" button switch state to last tutorial stage, and at same stage bots get "switch mech" command. So, they just turn of their mechs every second usage of this button.

Already fixed, but stay cautioned, this fix will be deployed at weekend with other improvements and features.

Link to comment
Share on other sites

One more question added to FAQ:

Is it possible to include quadrupedal, hexapedal, and or octapedal mechs? Or would that just be a total headache? -- Warlord Kentax

Technically, yes. It's a lot of work, especially with turret-like parts, and of course it's almost new logic system (controls, stats, a lot of new movement cases etc). But animation warping system can handle any reasonable number of legs, and I can solve other issues pretty fast with experience which I got now.

So it's a moderate amount of headache.

Link to comment
Share on other sites

Direct Link

Quick summary of patch log:

1. Bot movement improvements. Still have a lot of work to do. For now bots can equalize speed if commander speed not maxed, and they stops near commander instead of running around.

2. Deep revision of radar and targeting code. Now you able to target friendly mechs, full button list in readme file, or just press "N" button. Selected target info widget added to HUD. A lot of small optimisations in targeting methods. Whole system now ready to further development of team separation, detection, AI and damage-model.

3. Old bugs fixed, new bugs added and probably fixed too.

And fun fact: current mech model able to shoot itself in leg while moving, if you move crosshair to the bottom and slight right/left. I even don't know is it bug or feature. Your thoughts before I will decide to fix it?

Link to comment
Share on other sites

Download link

It's 7am here, and I really wanna sleep. But, there things more important than sleep. Such as giant robots. So whats new?

New Features:

Mostly code stuff to support next bunch of updates. But something already works.

Commander (both bot and player) give priority target to other bots. If bot commander doesn't have target himself, he asks other bots drop a hint. It helps whole bot team not run away, leaving one or two teammates to be killed by overwhelming forces. Also movement system now attemping (badly, but I'm working on it) to to guide bot right to face prime target. So now you can guide your allies to combat by selecting target. One keypress and they will kill for you. Cool right?

Next thing. Now bots have roles, more symbolic, than actual. This system will gain meaning, when it will be updated next week. Right now most of the hostile team turn their radars to passive mode. Only scouts runs active, so don't be surprised. And, yeah, it's next big goal to teach this noobs how to use radar properly, and react on this little dots. Same with gun fire, it's helpful to look who is shooting right in your back.

I think thats all about visible features. Other work - just pile of code, important crap, but without effect on gameplay. But, trust me, it's pretty good news. All this groundwork makes possible to add a lot of new features relatively fast.

New bugs:

Sometimes after end of combat bots don't want to follow player. If he select new target, bots move to target position, but then strugle again.

Have fun. Next week I will bring more.

Link to comment
Share on other sites

Download link

Almost every part of AI updated and improved and a lot of bugs fixed. Only one thing - command interaction lost in process. Next time I will return it, but right now it's time to stop and show you what I've got. So, here new build as is...

Link to comment
Share on other sites

  • 2 weeks later...

Download link

Kkay, here last build. Bots still can't "talk" to each other. But everything ready for this addition, I just need little more time and little less RL.

Bots now can use radar and they can check places where they see hostile target last time. Plus there brand new danger direction indicator for player, and bot also will react if you shoot at his back. So, every single bot is pretty clever right now, I just need to add bunch of little code pieces to restore their command tactics.

Wish me good luck to not die before next weekend, and I will bring you more.

Link to comment
Share on other sites

No build today. Sorry guys. ETA: tomorrow.

But even with only two days I make great progress. Now instead of checking a lot of state variables each frame AI compose individual program when it get new order. It is fast, it is beautiful... and you never see the difference if I not tell you.

I need just a little more time to adapt logic for this reaction-based system.

Link to comment
Share on other sites

Download link

Finally build is here. A lot of programer stuff inside, like reactive procedures instead of state checks every frame etc. But at least you can see few simple combat scenarios, and team interaction returned to stay.

I think I've done with AI system, now it need only correction, not full frontal refactoring. And it's time to move for next goals: graphics, internal mech systems, damage system and weapons.

Link to comment
Share on other sites

Download link

Well, in current build I fixed one AI bug and added result of completion 3d tutorial. This is why new build weight twice as much as previous. 4k textures require some megs, you know.

And no, it's not new mech. Just start 4v4 scenario to see. Mechs is next step. After all I've learned it's time to bring some beauty. And test few things in addition. So next mech definitely will have reverse knees and side cockpit. Maybe I will add turret and/or diverse agility-type arms.

So SY next week. Have a good time.

Link to comment
Share on other sites

First of all, no build today. Yep, it's sad, but I can't add mech's legs separately in game and expect you enjoy it.

So, impin ain't easy. I'm do my best learning how to model, and secret blender knowledge almost mine. In addition I get how to animate single mesh mechs (and other mechanical stuff) without painful weight paint. Making models as pile of objects isn't good for performance... and thinking about it, I just realise I need info about visual damage stuff. Yeah, time to get it.

Keep it locked and loaded. SY next week.

Link to comment
Share on other sites

  • 3 months later...

Finally new mech model on Sketchfab

And if you have issues with WebGL here Imgur album

So, no animation, no textures, etc. But hardest part is over. Now I know how to model in blender, and this design is ready. Next steps are technical. Add bones, bake normals, unwrap and texture polys. So... dunno. Do you have any questions?
















Link to comment
Share on other sites

  • 2 weeks later...

Here some pics of texturing process:

Test texture, to detect seams and warps. Leg's UVs ready.

Camo seams test. Looks kinda okay with this pattern. And it's important, cause I don't really want to addapt each camo pattern for each mech in game.

Second texture test. Overriding camo, to add details: metal parts, oil, ash, dirt, etc. And I know hips looks more like wet newspaper rather than steel.

Map of surface types. It's nice I can export any part of mech in form of vector graphix. Easy to create and edit masks. But, there is no magic way to fix things :(

(specular maps in action)

Tec-tests passed, but I completely can't into texturing. So, yeah, it looks like I'm developing myself, not a game.

Link to comment
Share on other sites

Okay. Today most important note: there will be PBS. If you want to know what it is click here or just believe me, it's cool, beautiful and time saving feature.

But I make it chronological.

I was stupid enough to think I can draw normal-map manually. So, instead of moving forward firstly I fix this gap by reducing detail level on my model, and adding some high poly details to bake it in normal map. Next time it would be better, but right now I need to be forgiven.

I've started to cut textures, but one question is bothering me: how I can put all this stuff in engine? I don't even know if there physical based shader in Unity.

And answer is no, but asset store have nice, free, and most important open-source alternative. Looks like it working. But I can use only one diffuse texture by default. Camo without details is not an option. Only details too, I don't want to see all mechs with same colour scheme. Do you think write my own shader in one night? But I can. Now I have details, camo, and specularity. And still working on texture itself.

It's important, cause right now I don't need to set up materials for each lighting environment like I need to with "conventional" shaders. I just change lighting a bit, and golden mech become green. Let's look at this situation at different angle. Still bad, even worse. But new shader properly react at almost every light type, and most cool part, it react at dynamic lights in same way. Firstly I think about another video, but please wait for demo, it's worth to see in live.

Also, by manipulating with shader I can not only provide camo-textures, but add patterns which can be coloured by player in game. Usually it's bad feature for MP games, 'cause pro players choose combinations which provide most ugly and unreadable for other players eyes result. But why not add something like this in single mode? It not take much work after all.

Let this armor protect your virginity, SY next week.


Link to comment
Share on other sites

It's a little bit too late, but time for update. No good pics today, sorry, but I want to show my work live when time is come.

Without experience of using physically based shading, I've started with creation of metallic surfaces. And bad surprise: metal is more reflective material rather than diffuse. And for correct reflections you need to use cubemaps. Cubemaps is cpecial pictures, something like this.


And yeah, it's bad. Because you need to use proper cubemap for every lighting type and environment. So, what about my promises about shader working with every lighting type? Well, there must be ways I decide. But first I've got tired of setting up lighting parameters manually.

I haven't write a string of code about a half-year, so I've lost control a bit. No modeling, no texturing, just programming. And I get dynamic lighting system based on gradient. This is how I can set up whole 24 hours lighting now.


Same for sky tint and fog. Yeah, it's take additional efforts to make sun properly trail at right elevation angle. And a little bit to make whole this system not only change lighting during game, but work proper in editor, and make it easy to use. So, now I can choose time just moving mouse back and forth.


Yep, by moving this I can make "completly new map" © PGI.

So, texturing, metal and cubemaps, right? I've looked at this gradient's "anchors" and decide it will be easy to bake cubemaps for each of them, and then just switch it at right time. But, it's to obvious for players eye, so is there other methods? Real time reflections is heavy for computing, so nope. Real time cubemaps baking is heavy too. But, do I really need to transform my level into cubemap? Metals isn't mirrors, so I don't need real reflections, and I get better result if use more smoothed cubemap. And aesthetics in this case beats realism. (Sorry, guys, but looks like you will react on enemy by looking at his reflection in some rivet's hat in other game.)

And then I start really thinking. Shader, which I use as a base for mine have nice manager to set up cubemaps for each material, without manual clicking. And another param - exposure. You know what it mean if you learning some about photography. Basically it's brightness... of cubemaps. So can it be used? I'm already have code which change brightness of all lights on level, so yeah. Piece of cake. And metals looks just like I imagine it with any lighting and environment.

Other part of work is boring. I've made masks for all materials (steel, armor, painted metal, etc.), to draw it easily. Decide which materials go where. And start actual drawing. Without experience it's hard, 'cause you never know how your texture will look in game, so it's take a lot of time to put some in texture, then import it and look at result. Also my UVs take some fixes. But good news - with experience and basic textures library it's pretty easy to draw something that gonna look good enough.

Thats all for today.

Link to comment
Share on other sites

Okay. Time to admit 24th is over. I'we lost 3 days on testing ways to make mech look better, 'cause 4k is (surprise) not enough, especialy for something with such anount of surfaces (this is why you never can have good armor on mech IRL, and why you don't have mech IRL... but lets I think I need to finish).

So most time consuming part of texture now is ready, but there some work left. At least I'm not dissapointed anymore with how it look. And I really need to sleep a few hours. So, wait for good news, I will release nice stuff for you in next few days.

Link to comment
Share on other sites

Direct link

Okay. Last test detect two problems with my model.

1. To many faces. It's fixable.

2. I don't like how it looks. And can't fix this quickly.

In sum there better way to make a new one instead.

So... Whats new? Day/night system, fixes, DX11 and other small stuff. Enjoy, and wait a little bit more. Sorry. Happy new year.

Link to comment
Share on other sites

It's not a tuesday already and week passed, so I can write up update.

And I was slacking around whole week. No 3d mech, no work, I'm happy. And thats can be whole update, but I let's add more info for fun.

First part. Guys, I'm disappointed. Yep, I've said no new mech, but why nobody even looking for it? At last build size a little bit too big for "no new mech". So, I have idea how to use ejection system to make air recon...

Second. 'Cause you already can see unfinished mech, here albums with work process: part 1, part 2.

And now thats all. Time to start work again.

Link to comment
Share on other sites

Okay. If I started to explain few things in russian topic, let's have update. (Yep, at saturday, I know).

My suffering with mech design is continue, and I really need to make new one. My current workaround let me make pretty realistic picture, and it would be sin don't use such stuff, and have cartoon looking gundams or even some cubism art instead. But if analyse Vlaad and Defender advices, and guides from internets, I still need a lot of experience, but base knowledge already with me. This means, I don't have to spent same amount of time making model. Pure time don't give me new ideas. Only if some of you want me to stare at blender window whole day long, I'll be glad to. So, yea, I will spend a lot of time modeling anyway, but...

While I'm still working on model, I could do a lot of other tasks. Big part of my plan connected with, and must follow new model. Such stuff, as cockpit, damage model, visual customisation and so on, just doesn't make sense without appropriate mech. But a lot of things from little particle improvements, to almost global rework of few parts of code could be done now, without special preparations. Also I have new UI framework in new engine version, so leaving visual part I need to rewrite whole code from scratch. So, first, all this could be done without new mech. Second, it could be done in hours when I'm just don't work with mech anyway. This means, new build at the end of the week, minimum. I've just have finished a little nice idea I have a long time ago (and PBS was pretty useful for). Maximum - I will return to weekly builds schedule. And new mech... soon or late it will be here. In worst case, if I just can't make mechs as I want them to look, I always could put together models like I've already did, and think it will be enough to complete game.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Tell a friend

    Love Эриданская лёгкая кавалерия? Tell a friend!
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...