Home General Discussion

Workslime

interpolator
Offline / Send Message
SimonT interpolator
workslime.jpg

Do you know situations like this? I do and i asked myself: is this just a human characteristic do not have long sight. I guess the answer is YES. :D

Do you know "workflows" which feels like walking through slime where you have to click 20 buttons or press 10 keys to reach a hidden debug menu to test something - over and over again, because you finished an asset and have to test it ingame? You want to see if the "laydown to bed" animation but the NPC isn't laying down for some reason? Or you want to see bounding boxes but if you activate the debug option you can only see lines and lines because every object has its bbox showing nox?

I asked myself: i this just common? Why doesn't people see that investing time into good tools and avoid hacks helps to save time in the long run? If you have no idea what i'm talking about: be happy :D

I guess the most given answer would be: there was no time and no money. We had to do this fast!

Being in such a situation can make depressive. But it helps to stay around in the kitchen and flame with colleagues about the bad tools :D But what i really don't like: you go to a co-worker which shared your opinion that it would better to improve the current worklfow, ask him to do these or that to save some clicks and get an answer like in the "cartoon" above.
The same people which are swearing about stuff, sometimes aren't willing to invest some time to make it better. Hm...maybe also an human characteristic :D I saw that stuff sometimes: all are complaining about that there is no documentation. But when someone created one, nobody used it.

I'm an artist and i like doing art more than documents, but when i see a chance to improve my or others workflow, i do something. I write Maxscripts to make the 3Ds Max work more fast or create overviews over all art assets to make sure we are walking about the same "stone with this little green thingie above". Or i create testing areas where features can be tested separately to check if something is broken. I see a big speed boost mostly for the whole team when i'm doing things like that just by avoding missunderstandings.

But sometimes i think i'm alone. But one thing i believe: it's not the management, missing money or time - it's just you. If not every single person takes responsibility to convert workslime into workflow nothing will happen. But if they do, it will create a speed and motivation boost.

Thanks for reading - now tell me. What do you think about? How do you solve problems like this in your companies?

Replies

  • EVIL
    Offline / Send Message
    EVIL polycounter lvl 18
    Oh my god, its like you are working at the studio I am working at. But I guess its like this in allot of places. Especially the smaller studio's who are working with self developed tech.

    I do try to speed up my own workflow and have tons of shortcuts or actions recorded in Photoshop that turn costly time consuming 1hour+ tasks into minutes.
    But sometimes its just out of your reach. I am an artist with 0.002% programming experience (printed hello world :poly128:) so its unrealistic to expect me to write my own (for example) Nintendo 3DS emulator to test builds.

    so to an extend, yeah you are responsible to improve your workflow. I don't see any reason why you wouldn't, it saves you headaches!
  • Snefer
    Offline / Send Message
    Snefer polycounter lvl 16
    EVIL wrote: »
    Especially the smaller studio's who are working with self developed tech.

    Even more so at huge studios, at smaller studios you can just ask someone to fix it, at a bigger studio you need to talk to your lead, so he can go and talk to the toolprogramming lead, so he can put someone on the task (if you are lucky) and then they fix the wrong thing, or just dont understand what you asked for. Then for the next project you try to sort out the pipeline in preproduction but somehow it never gets fixed but more features are added so the pipeline gets even more convoluted. Oooooh yeah, pissing away million of dollars in wasted time! :D
  • EVIL
    Offline / Send Message
    EVIL polycounter lvl 18
    We don't have the freedom to request changes, we also don't have tool programmers, so any tool that has to be built takes off time from the programmers doing game logic work or engine fixes.

    in the end, management doesn't schedule in any time for tools. It sucks! It would save a ton of time, but alas! if it works it works, why make our lives easier. guess they forget making games is a team effort and if they make our lives easier, they will make their lives easier as well.
  • Mark Dygert
    I feel your pain.

    I took maters into my own hands and started teaching myself Maxscript. It has helped TONS and I'm not a programer at all. If you find yourself doing something over and over again, script it. Even then you need to be efficient with your time and just like in the cartoon if it takes more time to write the script than to do the task (especially if that task is done only once) then just do the task.

    Programers like doing their job more than they like helping you do yours. They're efficient which means they aren't going to spend their time writing something that doesn't benefit them. They are also weighing the true cost of writing the tool. There is a good chance that the functionality you're asking for doesn't exist and the way the objects interact isn't specified so in order for one object to be turned to bounding box while the others in the same group are not, they have to be separated. carving up groups can get messy and it might cause other bugs later. So you're "quick" little script could turn into a time bomb that blows up later or blows up now causing a special round of bug fixing... wee... a whole lot of pain for next to gain... You would probably roll your eyes too and make them go away as fast as possible.
  • flaagan
    Offline / Send Message
    flaagan polycounter lvl 18
    There were a number of cases back at Cryptic where someone would get tired of an issue and make a work-around for it, but not tell anyone else. I'd make a point of broadcasting these work-arounds and putting them up on the internal wiki when I could. Also, when a coder would say "but that'll take x time for a simple fix", I'd point out that I would just keep asking them every time I needed that 'simple fix'... usually got the point across. XD
  • Two Listen
    Offline / Send Message
    Two Listen polycount sponsor
    I honestly think it's in the job description of most anyone with power or decision making capability to make shit difficult for everybody else in the long run - for the sake of saving a little bit of time in the immediacy of the moment. "Fix what we already have? Hell no! Release more products! More I say!"

    Of course, I'm not even talking just helping make things more efficient. I don't think the company I work for now (I'm not in development, mind you) has had a relatively non-broken product/release...for as long as I can remember. Missing files, a faulty store release, a primary feature crashing or not triggering, new game breaks all old games, etc.

    You would think that after people do something over and over again for years that they'd attempt to streamline things, or make the development process easier and more effective. But no, because there's always something else - more important, that their time must be spent on. Usually, helping to accelerate or fix something means spending time not in development of the next project. And that you just can't have. :poly142:
  • The Flying Monk
    Offline / Send Message
    The Flying Monk polycounter lvl 18
    I feel your pain.

    I took maters into my own hands and started teaching myself Maxscript. It has helped TONS and I'm not a programer at all. If you find yourself doing something over and over again, script it. Even then you need to be efficient with your time and just like in the cartoon if it takes more time to write the script than to do the task (especially if that task is done only once) then just do the task.

    This is where I'm am at the moment. I started learning it during some down time between projects so that the next time there would be less manual repetitive drudge work.
    And soon after I started one of the animators in the studio ask me if I could make a simple maxscript to help him. The script itself is pretty simple, it just runs through all the biped objects in a hierarchy and add a scale XYZ controller to it.
    It was simple to code and helped me understand more about scripting.
    So I guess you just need to find some one wanting an excuse to learn to help out. If they hesitate, tell them that learning to code tools will help their career. That's how I got suckered in to building tools :)
  • Ahrkey
    Offline / Send Message
    Ahrkey polycounter lvl 18
    Snefer wrote: »
    Even more so at huge studios, at smaller studios you can just ask someone to fix it...

    Different sides of the same coin I guess. My experience from a small company is that if you go directly to the coder he'll have more "important"(read fun) stuff todo and your lead/boss will probably say there is no budget for it.

    e.g. at my work we had this problem with mipmaps and filtering since we work with slightly greater drawing distances than most games our textures eventually washed out to 1 solid color. The coders could not produce a good enough guestimate on how much work was needed to fix it and the lead had little to no knowledge which made the lead uncertain and took the safest bet. Which was to not fix this. After a year and a half one of the coders looked into this one day and fixed it. Time spent fixing the problem: 5 minutes.

    What I'm trying to say is that leads tend to not go through with things if they don't understand or feel uncertain. Even if it's stuff they want/need.
    Gather some data, bounce idea's directly with the coder on lunch breaks, compile it all into a easy to read/understand document and present it to the lead. Might increase your chances on getting a bug fixed.
  • SimonT
    Offline / Send Message
    SimonT interpolator
    I guess it's like in all other parts of life. First you have walk through a ocean of sh*t before you earn something - means: work and fight hard for what you want. That inspires other people and slowly you drag them into your direction.

    Maxscript, MEL, PHP and simple BAT files makes a great advantage. But to convince other people it takes a long time and much words - you know what? During my time in the games industry i learned that being a politican should be a really hard job: all goes slowly, you have to fight hard for what you want and in the end there is EVERYTIE an opposition talking against you :D
  • SimonT
    Offline / Send Message
    SimonT interpolator
    Ahrkey wrote: »
    Gather some data, bounce idea's directly with the coder on lunch breaks, compile it all into a easy to read/understand document and present it to the lead. Might increase your chances on getting a bug fixed.

    Good point :) That's exactly what i ment: YOU have to do something - and hopefully you can inspire others also to fight for more efficiency which brings forward the WHOLE team.
  • Maph
    Offline / Send Message
    Maph polycounter lvl 8
    Definitely, I come across this every single day.
    I can code and script/automate my way through life, but most workflow things over here are engine fixes that I can not fix myself. And when I try to talk some sense into the coder/management here, there's always a huge explanation why I wouldn't want said feature and why they shouldn't invest time because there's this idea that artists don't know what they're talking about. It's not like we're the ones using the tools every day or something.

    It's frustrating to say the least imho.
  • ambershee
    Offline / Send Message
    ambershee polycounter lvl 17
    A harsh other reality is that skilled programmer hours are often more costly than unskilled artist (ok, skilled technical artists can cost a lot more) hours. Over the extended course of a project, 1000 saved programmer hours can be worth more than the equivalent lost artist hours from not improving the tool chain. It's often a case of economics rather than production efficiency.
  • SimonT
    Offline / Send Message
    SimonT interpolator
    ambershee
    Might be but at the end the artists would be WAY more productive. Means better and more graphic. And what gives you the first impression of the game? The graphic. And what sales a game the most? The graphic.
    Yes, when the logic and gameplay sucks after buying that won't help the game that much. But that's another issue.

    And while an coder is investing a day or two for example you save hours and hours (and depression) of every artist in the team!
  • ambershee
    Offline / Send Message
    ambershee polycounter lvl 17
    @SimonT: for you, an argument:
    A game without artists will recieve no decent visuals, however a game without programmers will not be made at all ;) - You can't sell something with decent graphics that lacks any actual game, it's been demonstrated (laserdisc, anyone?).

    Anyway, it's not that I don't understand where you're coming from, it's just that there is a flipside to the coin. In an ideal situation tools would improve, but there are reasons other than 'oversight' and 'unwillingness' as to why this happens.

    Cost is cost. A game has a deadline and needs to ship on time. If investing programming time into tools and improving artist workflow is going to detract from actually shipping the game then it's a pretty good reason to not do it - and believe me, that programming time is already pretty tight and has been scheduled quite heavily by production. Investing in additional programming staff to handle the increased workload from developing tools is also very expensive, since you're adding extra salaries on to the budget as well as the cost of actually locating and making the new hire and the human costs involved.

    This is also of course why more and more studios invest in middleware and 3rd party tools rather than building their own. In many cases, having a lot of internal tools simnply isn't necessary any more, unless you're working within something that has unique technical requirements.
  • SimonT
    Offline / Send Message
    SimonT interpolator
    ambershee
    I would like to hold it more general. I don't talk about just artists and coders. I more think about that all people should always think about to improve workflows. A good documentation about assets costs time but helps designers, programmers, artists and management. That's good invested time.

    Or image you never write down what you are doing and then you leave the company. Maybe your code or setup or whatever is that complex, nobody gets it. Then they decide to rebuild the system - just wasted time and money. That's what i mean: in the short run it costs only money to improve tools or documents, but in the long run (we're walkting about 2-3 years of development) i'm sure it will ever be paid back in a good way.
  • Yozora
    Offline / Send Message
    Yozora polycounter lvl 11
    I find its more annoying when fellow artists aren't willing to learn new techniques to speed up their workflow, even if you demonstrate to them just how easy it is.

    Some people are just too comfortable with the way they are.
  • SimonT
    Offline / Send Message
    SimonT interpolator
    Yozora

    Intereting :) Never had that situation :)

    But it describes what i'm comlaining about: the attidue to improve has to come from everyone.
Sign In or Register to comment.