566
I'm a Game Programmer with no physics experience and I custom built a physics engine with destructible levels and fully interactive fluids! AMA.
Here's the catch – it took me 5 years! Our game Organic Panic is live on Kickstarter with just a few hours to go, here's the proof - http://www.kickstarter.com/projects/1168870049/organic-panic-a-physics-puzzler-where-you-build-th – wonder why it took half a decade? Ask Me Anything!
damonbranch34 karma
That's a good question, we're not sure if enough people are into all the details but we were thinking of doing either a book or mini - documentary where we talk about the whole dev process and all the trick behind the tech like destructible land and water physics. The truth is I knew nothing about fluid dynamics when I started - i failed physics :) I'd love to share my journey and everything we learnt.
Cam-I-Am15 karma
Just want to second the idea for publishing some info on the fluid simulation. I'd be fascinated to read it, and I bet lots of other devs would be as well!
damonbranch13 karma
I wrote the first version using the CPU but it became apparent that it would never work with so many particles so I flipped it over to the GPU! Most people probably dont thing of using the GFX processor to do physics but I rigged it so that everything ran parallel on the GPU (Graphics Processing Unit) - and voila - it started coming together once i'd spent a long time battling with all the shader language idiosyncrasies. It's hard to give more details than that in this post but that's really the coolest part of it.
valleyman8617 karma
Grpahics programming isn't terribly easy. You should feel pretty good about yourself for going from nothing to what you did. Good luck on the rest of the kickstarter!
damonbranch6 karma
thanks - yeah it's certainly been a struggle for me, I appreciate your support
damonbranch2 karma
Got it - a few times now - I have no documentation on it but we could put together a video where I talk through it. If you look at the code, you'd think it was written by a blind dyslexic alien after a night out at Hooters! The real truth here is I don't really know what I'm doing - I just got it to work - and that's the funniest thing going on - but I'll gladly share my knowledge!
OatLids12 karma
I'm also curious how programmers decide to "simulate" fluid. As a person who deals with fluids regularly, it's difficult to truly appreciate how hard it is to simulate 2D fluidic flow. It takes almost weeks on 100-core machines to run true CFD simulations even with large eddy simulations. Clearly you guys don't solve Navier-Stokes, but you make it look fun and believable enough. Do you even use wave equations; do you make assumptions; do you just draw it out so it looks real?
damonbranch3 karma
Wow - I dont know what any of that is. I just work out stuff like how much each water particle is passing through the others and how much it's bouncing off and stuff. A ten year old could under my logic, I don't think I've progressed much since then - ha, honestly! I test the system in a bunch of different test cases and make sure it's stable, fills, flow naturally etc - all just from imagining what the water would be doing given it's situation. I'd love to work with you to make the fluids better and show you all the crazy (and stupid probably) ways my system works!
Ameisen14 karma
I'm a game developer (generally specializing in the low level systems and graphics -- not at a AAA studio though I've worked with AAA studios through my current employer) -- I will say that 2D physics and even fluid simulations are fairly trivial, even if you don't really know either. The problems themselves are dramatically simplified, and even non-optimal solutions are "fast enough" when implemented with only two dimensions.
Remember, it's somewhat easy to make a simulation accurate, but it's difficult to make it accurate and fast. Once restricted to only two dimensions, the number of operations required to perform a single task is reduced, and the number of resolve operations to handle the result of it is also reduced, which drastically reduces the working set.
Think about dropping a ball in a 3d world onto a bunch of other balls. This ball hits another ball and can move in three dimensions to strike other balls, where these collisions also must be resolved to both prevent interpenetration and to make sure that the energy of the system is roughly conserved (by applying impulses to other objects). This can and does get very expensive.
Now, imagine it in 2D. The number of potential outcomes from a single task is reduced, and the number of resolutions after the fact is reduced as well, so overall it's drastically faster.
Another convenience of 2D is that approximations are more accepted by the end user than they are in 3D. Real-world physics are three-dimensional (well, four, but that's neither here nor there), and the brain is quite good at detecting inaccuracy in 3D simulations. 2D simulations, however, do not reflect nature, and therefore it is far easier to trick the brain into thinking that something's correct when it's not. This allows you to even further simplify the simulation or even do it completely wrong and still have it seem correct (remember, it's better to have something seem correct than be correct).
I don't mean to reiterate that point, but a lot of people who are reading are likely laypeople, though I really don't know how to simplify it further than that so late in the evening :).
damonbranch2 karma
Thanks - yes I think a lot of my frustration with the water was really not knowing anything about the fluids or an equation to just plug in. If I knew it would take so long I would have either read up on it carefully or worked with someone with experience. As for the fast part - yes that's what I spent a lot of time doing to - we have 130,000 fluid particles running at once and it runs on an 8 year old machine (360) so we know it's fast - but accurate - not so much - I'd be interested to know how to make it more accurate and work with someone with fluid dynamic knowledge!
aepeng17 karma
I don't have a programming background, so I have difficulty understanding the limitations of pre-made physics engines. What were some of the things/effects you wanted to achieve but couldn't?
damonbranch15 karma
If there was a physics engine out there that did what we wanted to do, trust me we would have used it! But there wasn't so everything had to be made from scratch - still today i dont think there's an engine out there which supports liquids and destructible levels - let me know if i'm wrong.
damonbranch12 karma
yes - we put it on greenlight and we have 95% or more great feedback but also they want to see a demo so we will likely have to do the PC port before we get accepted there. That shouldn't take long though as everything is written in Direct X (PC) anyway
valleyman863 karma
You say you need to "port" it to PC. Isn't the game written for PC already?
damonbranch5 karma
Well it's Direct X - but it's running on an Xbox (XDK) so there's a small high level library we need to remove and put in the PC base - ike enumerating what kind of PC you have and adjusting settings based on it's performance etc.
Daily_concern9 karma
Please put in proper settings like borderless fullscreen windowed mode.
damonbranch2 karma
Why - do people make stuff in a window without full-screen option? I've written lots of PC stuff, mainly 3D and the full-screen mode has always been faster and better use of memory - plus you get the full experience - so don't worry - it'll be FS - thanks for reminding me how much more work I have to do :)
damonbranch6 karma
Hmm ok - I don't the answer to that, but I'll keep it in mind when we come to port - thanks for the heads up
kamui8 karma
Do you have any plans to open source or license the physics engine you wrote? If there really is no off the shelf engine that does liquid particles and destructible environments, I'm sure there must be a market for people interested in licensing/using or contributing to such a project.
damonbranch14 karma
We hadn't thought about that seriously until we threw our game play party last week when about 5 different people asked us that same question. We were really focused on building the game and honestly didn't think the tech would get all that much buzz. So basically yes, why not. We'll need to get out of our houses and build a company to do that but if people see it as a cool middleware tool to build their ideas then that would be an awesome thing for us to do
kouteiheika12 karma
If you're going to try to sell it consider dual licencing it under a commercial licence and GPL; that way all of the free software projects can benefit from it while you'll still get paid.
damonbranch2 karma
Thanks that's very useful - I checked out the link and it's news to me - multi-licensing seems like the perfect angle for us.
adroitboss7 karma
How did you both keep your excitement and motivation for the game over the years? Did you ever find yourself doubting the games success or finding it hard to stay focused when working?
damonbranch5 karma
we still do - a day to go and 10K short of a 40K Kickstarter! Ultimately I'm a bit of a hermit and I can program games in a small room for fun and giggles forever - I'd be happy in the cabin in the Himalayas with my pet mountain goat - my family wouldn't! Anatole needs more interaction so it's been really tough for him to believe in continually plug away - so praise to him for backing me up!
Cam-I-Am6 karma
Will there ever be a PC version if the kickstarter doesn't get there? Really want this game to come to PC! (I already backed :) )
damonbranch6 karma
Yes, the PC version is 95% the same code exactly so we estimate a 1 month port. In the meantime we have a Unity port which has been in the works for a while so when that's done we'll start moving onto all the other platforms - but it's a ton of work so we really need another coder soon.
gaj71 karma
It seems like the game will be available on a wide variety of platforms. In the Kickstarter video, you talk about how you can create and share your creations with others. So, what I'm wondering is, will it be one large community, or will it be divided among platforms? For example, would someone on PC be able to play a level that was created on an Ipad?
damonbranch3 karma
We have work it out with the publisher but that is our concept and the thing that we are driving toward. If Nintendo or Playstation say NO we want our users to make levels for our consoles only we don't have the power to enforce our idea but we will do everything we can to make it as cross-pollinating as possible - then they'll be more levels to play and that's the point
robostegosaurus6 karma
Already backed. I don't usually give platformers a second look, but this looks simply awesome. I hope it comes to fruition (sorry for the pun).
liquidxtension5 karma
This is really cool. What inspired you guys to build a game based on fruits vs. meats?
damonbranch5 karma
Organic Olympics was the original idea - basically fruit and veggies racing for gold! but that got thrown in the cupboard and we came up with the idea of pitching the fruit and veggies against meat and cheese - pretty much a middle of the night - that would be cool kind of decision - when we started talking about it people really liked it so we just kept going with it
greenpatch5 karma
What do/did you study?
What would you recommend for an artist that wants to work with games someday?
And, well, why did it take half a decade?
damonbranch11 karma
I studied Computer science and philosophy - i'm the coder - Anatole, my brother studied art. Half a decade? well because i didn't think it would take so long and I massively underestimated the time - the water alone took me a year. Plus I'm a stay-at-home dad so it's been hard finding time to get in front of the computer
awakeneddragon4 karma
Have you considered recasting the characters to the game? Instead of a food, using elementals (The rock digs through rock, the fireball shoots fire, etc) versus polluting bots or something. Might catch the imagination a bit better.
damonbranch1 karma
Fruit and veg is certainly cheesy for a lot of people - it just happened naturally for us and we weren't pursuing a marketing angle - maybe we should have, maybe it's okay. - here's a cut and paste of an answer to what kamui asked earlier -
We hadn't thought about that seriously until we threw our game play party last week when about 5 different people asked us that same question. We were really focused on building the game and honestly didn't think the tech would get all that much buzz. So basically yes, why not. We'll need to get out of our houses and build a company to do that but if people see it as a cool middleware tool to build their ideas then that would be an awesome thing for us to do
So basically if people are into taking the tech and making it into something that really love then we will be totally behind it. I've always not liked how secretive companies get about their technology - I personally would love to see creative variations using it - but it takes a real team to support that so once we are off the ground let us know and we'll give you the tools when they're ready
damonbranch1 karma
We'd like to license the tech at some stage soon so that devs can plug in their own graphics and Ai into the physics world. It would be a big venture for us to make such a big change now although we're aware that organic panic isn't for everybody - but we love it and we think it'll make you laugh - and that's the point - not to make you think - that's cool - which maybe it isn't is some people's eyes
damonbranch3 karma
Hey guys, it's 4am here in NY - i've officially been up for 24 hours now, and my wife has instructed me to sleep! Please keep asking questions and we'll get chatting again tomorrow. I'll try to get on earlier like 8PM EST
UNTIL TOMORROW!!! Thanks - Damon
damonbranch2 karma
OKAY - I"M BACK - DIDN'T THINK WE'D GET SO MANY MESSAGES SO I'M GOING TO START ANSWERING YOUR QUESTIONS NOW!!!!!!
xplicitone3 karma
I love the look and feel of this game, a lot! This is my first backed Kickstarter. What programming language(s) are you using and how did you go about learning what you needed to, to build this engine? It looks fantastic!
damonbranch3 karma
thanks for backing it! it's written in C++, with Direct X, and I also do a lot o shader programming in HLSL, which talks more directly with the hardware
riff13 karma
What jobs have you held that helped out the most with independant game development?
damonbranch6 karma
I wrote a game when i was 12 - based on tron - lightcycles - i added jumps and shields and my friends and i would play it our our ZX Spectrum back in the early 80s. Really nothing helps more than hands on experience. It's easy to get a degree - well not that easy - but it's really difficult to motivate yourself and travel into the unknown and do things for yourself. You might go in a lot of wrong directions but you will keep learning as long as you are doing something that inspires you. That said - I'd get a degree and get industry experience because you'll need to temper your passion with how the real world works. Ultimately the best job that helped me most was running two indie studios where you have to learn how to manage people and ideas and continue to be be passionate and cooperative.
damonbranch5 karma
that came up during our Kickstarter - it might be too much too ask for this first version but it would be pretty cool - maybe a mode where you get the real feel good buzz of just blasting those little organics and you gotta make the boss a nice smoothie!
iamvidyagamer3 karma
I think your game would be great for the iPad - do you have plans for that?
damonbranch3 karma
Yeah the IOS versions will come the Unity port. The biggest question is how will it control - a lot of people we talk to don't like faux controllers at the side so barring that it will mean a decent amount of redesign so it's easy to just hold and knock about with the levels
damonbranch4 karma
usually bigger teams tackle a game with this much physics and interactions. I'd say a 5 man team could have done it in two years = 10 man years - we just did a 2 man team over 5 years so still 10 year worth of work
aepeng3 karma
Due to the long dev process, has the change in technology affected anything? Is there anything that exists now that you wish you had 5 years ago?
damonbranch4 karma
Well i thought that tons of devs would have done what we are trying to do by now. As far as I know there's still not much out there in the way of 2D destructible physics and liquids. It's technically difficult to do on stuff like Xbox 360 so it makes sense I'd expect to see a lot more of this technology appear next year - especially when they read this and get all our secrets!!!
damonbranch6 karma
Hmm - er Portal for creativity - last big 3D game I completed was Gears and that had good physics. 2D wise it has to be LBP!
shadowdorothy2 karma
Where did you study and what programming major where you? Cs or cit?
I want to be a video game programmer and translator, however many programming majors require a lot of math it seems. Was that true in your case? I am not good at math, so seeing so many places force students to take advanced level calculus just to make video games is rather off putting. I'm in a course now that requires very little, but it's a community college, and to get my degree I have to transfer to a university.
damonbranch1 karma
Hmmm not sure that's a tough question. First off I went to the University Of Liverpool in the UK, and my major was comp sci with a minor in Philosophy. My math was actually okay, I did badly in most other things though. There's a lot of work in programming/gaming that doesn't require mad math skills. Also a lot of courses let you choose you classes - just avoid Discrete Mathematics and all that stuff and you'll be fine. Not sure about being a translator and a programmer - usually you'd have to go down one are of expertise as that's kinda how the biz world tends to work IMO. But, that said you could learn a language and programming at the same time - plenty of courses offer that, then see what you like most. I have a friend John who's a translator and also my cousin Samira was a translator too - they say it's pretty tough work but other than that I wouldn't know how to mix the two. Either ways learning a language is useful in life whatever you do. I'm learning Spanish - very slowly because my wife is Dominican and my son is already talking more Spanish than me. It makes sense, programming is just another language if slightly more strict and syntactical than what you'll be doing as a translator. Does that help?
superriku112 karma
Did you go about trying to learn actual physics as it's defined by science during programming your engine? Or did you do more of "It makes sense for it to work like this, so I'll try that." and sort of continually tweak it along the way until the result looked realistic?
damonbranch5 karma
You got it. In England I got an E for physics, which is not very good - A, B, C, D, E etc. I've never been great at listening and learning. I do like to try things out and experiment so that's how I did the water. I do think that it would have been done much quicker if I read more but fluid dynamics seemed pretty complicated when i looked at online papers so i thought it might be quicker to do it by trial and error and imagination. Kind of re-inventing the wheel. It's a sort of animalistic approach but i think it's natural for some people to want to dive into something and go through the journey rather than just get the end result by reading what others have discovered. The bottom line - it took way too long, but I really enjoyed doing it and I learned tons..... er which I've probably forgotten by now :)
damonbranch1 karma
I hope not. When I ran my first company with my brother back in 2001 I kinda did a Phil Fish then. I was burnt out - working all hours - and was fighting with my brother so much I wasn't enjoying it - so in the midst of some success I said screw this, I'm gonna do something different and I left the planet. It didn't take too long to realize I wasn't much good at anything else! A lot of people burn out in video games - it's so much imagination driven that it can utterly consume you and you become just a vessel for you ideas, then one day you wake up and realize you're totally knackered and have lost track of being human. I'm always looking for a balance between my family - my beautiful wife and kid - and my game - my other family!
Irrelevant_User2 karma
My question is how did you have no experience with physics when you clearly understand gravity!?
damonbranch1 karma
I think we all have a natural understanding of physics in terms induction - that what we saw yesterday a million times like the sun rising or apples falling from trees. Technically I don't know any actual equations or really truly understand the equations. I just do it by feel. For example I have a variable called 'gravity' - it's set to 52 right now :) I just adjust it to feel right with the game but I don't really have all the equations other that in that case you pretty much keep adding velocity each frame - to be more accurate I could throw in some wind resistance but I don't go into that much technical details.
FrozenCow2 karma
On the Greenlight page it says the game will be "Cross-Platform Multiplayer", does that mean we can play online on PC with people on Xbox? That would be pretty awesome!
damonbranch2 karma
The multiplayer is coop and versus locally - one one machine. because there are hundreds and thousands of particles it's near impossible to send that much data across a network and manage it all. Our cross-platform solution is based on cloud gaming - so the game runs on a server provided by a cloud gaming service and then you can play multiplayer as the game is running on one machine and the video images are streamed. This or 2014 is probably it's first big commercial year in the US but is already prevalent in Korea and France and areas where network bandwidth are not an issue. We have mad fun blasting each other away and that's coop mode when we should be working together!
damonbranch1 karma
How did I manage to make it without an education in physics or how did it take so long?
damonbranch3 karma
I don't think we've ever had a fight - we are kind loving brothers that get along and agree and respect everything each other thinks -- oops my nose just got so long it exploded - anyone got a spare nose? Actually it's okay it's just one nostril.... anyone got a spare nostril?
Syntriphics1 karma
where on earth did you start? I really want to get into development myself, but I'm having trouble finding good places to teach myself the ropes.
damonbranch4 karma
I started with programming. I would say game development is similar to learning a language - once you get the basics you keep trying to talk until you are able to express yourself in that language. I think that goes for both programming and art. With code, you literally need to learn the language and with art you need to learn how to turn your imagination into tangible perceptible representations and that can mean 3D, animation or sketch work. I never really knew what I wanted to do - I studied programming, but philosophy too - then I worked as a game designer and an artist in the industry before settling into coding roles which came more naturally to me. Being interested in everything helps but the tough reality is that the industry really wants you to be super-proficient in one thing so your hand might eventually get forced if you want to try and do it all. Luckily, with a lot of platforms and avenues to make smaller games now there's lots of developers doing a bit of everything and doing cool stuff. Anatole and I have have been forced to be specialized but our natural instinct is to bit of everything. A good place to start is a small project and work with a friend if you can because half the battle is staying motivated. Once you get some grounding, being motivated becomes less of an issue and you'll start to really be able to explore your dreams.
brastche1 karma
Did you ever play Liero?
I doubled my pledge today in the hopes you get funded. Good luck!
damonbranch3 karma
Wow - no - i just watched the video - in 1998 we were busy setting up our first company and I was writing my first 3D engine. A couple years before my friends and I were complete Worms addicts - I was actually working in Sheffield, UK at the time which is only a few miles from where Team 17, the Worms devs were based. Liero, although I've never played it looks cools as it's actually happening in real-time - kind of like what we're doing. I find it pretty crazy that the 2D genre hasn't advanced at anything like the pace the 3D world has. Perhaps the perception is that it's old school now but I totally see a different picture - with technology where it is right now I think that 2D games will have a serious revival - especially given tablets and phones being able to process all this stuff now. Thanks for link! Someone in another 15 years will send someone a link and say - did you ever play Organic Panic :)
damonbranch3 karma
I like your name - you're half way there with that! I would suggest learning a programming language as part of a course while doing your own stuff at the same time. Then you can bounce ideas of people and help solve your problems. If that's not an option I think an HTML 5 game would be a good start to understand the mechanics of building something from scratch. The game industry (PC, console) still largely revolves around C++ and C# so if you plan to work in the industry then they are the most sought after skills - but it will take you longer to build games in those languages, and it's easy to give up when you get stuck, so that's why I suggest learning as part of a course or with a friend.
damonbranch1 karma
wish i could leave a pic - look it up online - very funny - english attempt at humor, I remember it from the 90s i think!
Wakabone1 karma
OH. MY. GOSH! How did you know? You already found him on match.com didn't you
damonbranch1 karma
Alright - I got my first giggle of the night there :) Yes I found him on Match.com - i typed in male leather clad puppet with attitude!
agentearplugs1 karma
How much wood can a woodchuck chuck, if a woodchuck could chuck wood?
WilliamShadowruby1 karma
A Woodchuck actually could chuck about 361 cubic centimeters per day as described here.
damonbranch1 karma
just kidding! someone who knows something about math come help us out here!
Idoiocracy1 karma
Hi Anatole, as an advocate of self learning, I was hoping you could go into more detail about your journey in learning physics, since you failed it in school. Did you start from the ground up and relearn basic mechanic physics on your own? What was your starting point with the fluid dynamics? You mentioned that the papers you found online seemed dry and complicated, and went about it your own way. So what was that process like? Did it start from just thinking about the problem fundamentally and the properties of fluids? Any details would be appreciated.
Best of luck with meeting your Kickstarter goal.
damonbranch2 karma
Hi - It's Damon BTW - Anatole is my brother, the Art Director. Yeah I bascially made a real effort to read whitepapers - people's PHD papers on fluid dynamics and whilst it gave me an idea - or the gist of it - none of it sank in. So I basically said okay this blob is going to: roll down solid surfaces, disperse at this rate when it hits other blobs, needs to become more dense when there's lots of blobs on top of me etc. - wait let me look at the code - yeah each particle needs to have at least position, velocity, density, and type (ie water/lava), and heat. That's the structure then I just toyed with the parameters like a nutter - I'd run the water and adjust all of the parameters in real-time so i could see the direct effects - because it wasn't perfect I did a fwe tricks like flatten off the top and stuff but in the end when i found a model that worked i actually didn't need to do too many tricks. If I knew what I was doing I could probably explain it in a couple of lines but since I did it with no equations I have a kind of scattered understanding of the system - I think the system knows me better than I know it! Thanks for the support!
markievegeta1 karma
What would be your advice for anyone looking to get into programming or developing?
damonbranch1 karma
I'd say get a degree if that option is available. At least some kind of programming qualification. I took a year off before going to University (College) because I wanted to get straight to work and not waste 3 years studying. It wasn't a waste of time at all in the end. I learned lots of different languages and it was WAY WAY easier than trying to learn it n your own. Beyond that most games companies want to see that you have actually made your own games. It's not like other industries where you can show your degree and off you go. It took me 9 months to get my first job in gaming after finishing my degree - get prepped for the knockbacks but dont give up - find your angle - what you are really good at - and be humble - the worst thing I get from students is their BIG attitude - no one is into that - just be a normal nice person - like you'd be around your mum :) Seriously, it matters!
m641 karma
I love games with interesting physics used for gameplay purposes and I am a physics programmer by trade. One things I was wondering when I watched the gameplay videos was how did you go about balancing out the different powers for the versus mode, so that players don't end up using just one force type.
damonbranch2 karma
Cool - you likely know more than me! Well we haven't done the versus modes yet - the gameplay in the videos is us just beating each other up for a laugh - but that's supposed to be a coop mode - which is ridiculous fun BTW.
One thing we're thinking for the versus mode is to have a pickup which can change your character - maybe even into a meat n cheese. then things like pickups re-appearing and enemy generators. Other ideas include racing with ghosting and mad crashing levels where just destroy destroy destroy!! People can just smash stuff for fun all day long so we need to make it a mode!
We've been thinking about it for a long time so we're pretty confident we'll get some fun modes out of it but we like to do things by prototyping so we'll quickly rough in the concepts and have our friends play them - if they start screaming and laughing we'll know we're going in the right direction!
Cabooseaholic1 karma
How is it programming games? Is it fun? Were the classes fun? Im really interested in the feild, please tell me what you can. Thanks.
damonbranch1 karma
Yes, I think it's its fun. I enjoy programming more than most things - although I quite liked editing our Kickstarter video - pretty therapeutic work if you can get it :) I like the sense of reward and achievement as you make each element with game programming. I honestly prefer to work with a small team rather than doing it all on my own but I sacrificed these years to be able to build a cool small company - it's good to have other coders that you like to knock around ideas with, and you learn quicker and more easily - I'm not a fan of big teams as I'm not very good at listening and following orders - something in my DNA - I am actually quite deaf - that what my wife tells me when she's shouting at me :) Going back to your questions - yes the classes are fun - the only thing I always thought was odd is that programming classes tend to be like 95% male so it can feel like you're part of some weird sect at times but yeah I enjoyed the classes a lot.
srogee1 karma
This looks great! It looks a tiny bit like Worms, but with a lot more control over the environment. As an aspiring game programmer, I can definitely understand how long something like this would take--nice job sticking with it and developing a great-looking product!
damonbranch1 karma
Thanks we're big Worms fans - and they're coming out with a new one I saw on IGN - I'll still be playing Worms - it's a classic, and we're not stepping on their toes - maybe we'll team up with them one day and mix our tech with their gameplay and style!
linziwen1 karma
Is it possible to develop this into 3D engine? And if it is you must be looking forward to it. The game looks amazing mate!
damonbranch2 karma
Cheers - I actually spent most of my career making 3D games - we made a 3D engine back in 1999 which had portals like in the game Portal - we were doing so many things we never finished any of it though. I think bigger teams will develop 3D liquids and smashables soon - I'd certainly like to see it. It would be a massive task to do that and I think we'd get buried by people with much better 3D engines, like Unreal, Far Cry Engine etc - those guys are probably already working these themes in and they have big teams to do it. I just tried to do a 2D game because I thought it was too hard to do a really good looking 3D game as an indie - although respect to all the Kickstarters out there who are proving me wrong and doing top looking stuff.
damonbranch1 karma
But they are wrong - don't you see? They're taking over the world! They're everywhere, and don't get me started on the meats - aaarrrrrggggghhh!!! :)
damonbranch1 karma
Yeah would be cool - I'm actually always watching to see what the big companies are doing with their 3D tech - when is it all gonna be destructible with fluids - I think it'll be a massive game changers - mmos will just get insanely more fun overnight. Wish I could be behind it but I'm guessing that's a job for the big boys!
payl0ad1 karma
why did you choose directX instead of OpenGL? was portability not a decision factor?
damonbranch1 karma
I've coded in DirectX since I was a baby - er well since 1997 - DX version 3 - so I know it pretty well. It would have been better to do it in OpenGL in retrospect but I wasn't really thinking cross-platform when I set out on this journey. As you can probably tell from my comments I'm not brilliant with organization or planning - I kinda just jumped into using what I knew. Hopefully if we raise enough we'll be able to hire a programmer to help us with the ports, and get it over to Unity as soon as possible.
8Infinite81 karma
No questions, as I know you guys well! I remember this game idea you had way back in 2000, so just a big well done from the UK! Following this Kickstarter closely (+ backed) and I cannot wait to play the game!
damonbranch2 karma
Thanks, and thanks for your pledge - yeah back then it was Organic Olympics - I used to love games like Hyper sports, and Daley Thompson's Decathlon so I wanted to make a real kick-ass Olympics game, but as with most of my ideas and design documents there all sitting at the bottom of a very heavy cupboard. I've tried to tailor my passion for design in place for just making one set of technology and sticking to it. I think there's a lot of companies out there that try to do too much - we've been guilty of it every time. Every man and his cat has a game idea so it takes some serious discipline to just stick to one thing and do that well - er that's the plan anyway:)
Madd0g1 karma
I'd buy the PSN version of the game when it comes out, looks like a fun, combination of LBP and worms?
Since you're calling it an engine and not a game, are you planning to release it as an engine for developers to work with? If so, which parts?
damonbranch1 karma
I'm sure yet - but yes I'd love for it to be tech for everyone write mods for and build their games on it. I can't believe so many people are asking this question - it's pretty cool. If other companies haven't done it better we'll definitely push to get it as some kind of middleware - maybe we'll talk to Unity as they have a lot of experience in this field - if we could work something out then it could be part of Unity. If not then we'd probably start of with a few devs using the tools to make THEIR games with it as we iron out all the creases and and then push it out as a tool that indies or whoever can use. There's no point in re-inventing the wheel and it would work in our favor too if devs are helping us build the tech base. Which parts - I'd say we'd give devs a ddl with all the system stuff and they can write their game on top of that - like ai, their characters, objects etc. And they would of course be able to use the level editor to put their levels together. Be like a quicker way of make next-gen 2d physics game. It'll take time though but it's becoming pretty apparent it's something devs would like to have so we're in!
damonbranch2 karma
On my Xbox test kit at home :) We should have a PC version coming out in September so our beta testers will be able to play it then we're aiming to release in October or November on PC and Xbox 360 together - then the other ports next year once the Unity port is done.
50_shades_of_clay1 karma
Reminds me of Little Big planet, looms great. Any future for it on iOS? Could be a hit...
damonbranch1 karma
Thanks that's good company - yeah we're planning to go to IOS when we do the Unity port - we are looking at some different design options for the game to fit tablets and phones especially but yes, it'll actually be very cool to build levels using the touch screen - it'll be a lot easier than using a joystick which is what we've made all the levels with so far. We agree and hope it could be a hit as long as it's not clumsy to control - what do you think of faux joypad controls on the ipad? You think it'll play better working out a way to do it all with one hand? We're still debating.
ArchieChoke11 karma
Hi.I had to register just so i could ask you questions. BTW... Fantastic work, your work done inspires me to continue learning everyday.
I would like to know , how did you discipline yourself to continue your work. What was your project goals and time periods for reaching them? What materials/Reference guides did you use and would recommend to someone starting with 0 knowledge to get a starting point?
How long did it take to do your first part of a prototype and what was the prototype?
Did Nvidia give you access to that super secret Dev section? Coding, SFML or SDL?
damonbranch1 karma
Hey thanks for registering just to ask a question - er or two, or three:) Glad it inspires you we make games to really surprise people and give a serious buzz so awesome! Discipline - well I think the most honest answer is that it's not that hard to discipline yourself when you're stuck on something. I spent most of the time stuck on the water, the breakables, memory leaks, bugs, etc. - as a coder when you have a problem like that you just run it through your head over and over again until you work it out. It's almost addictive, I get obsessive about finding a or THE solution. So discipline can come naturally for coders - ONCE YOU"RE INTO SOMETHING - until then you basically just push yourself because for me it was better than any other job I'd have to do to get by. I didn't set goals - I thought initially I could probably do this in 3 years but that was it. I worked really hard just tried to do everything as quickly as I could and it still took forever. I self-produce so I don't have any references really - start off writing some really simple games to go through the process and once you've got the skills then have a stab at a bigger project with some friends. The first prototype took a year - http://www.youtube.com/watch?v=9HgQgrxorW4 - that's what it looked like in 2009! We worked with Direct X on some Xbox kits using Direct X and XDK. I see that old video and I think wow, how did it take so long - ha, where did my life go? :)
damonbranch1 karma
PC & XBOX October or November this year, Then the other ports are slated for Spring 2014 to Summer 2014 - did you have a platform in mind?
corruptedPhoenix1 karma
Do you plan on releasing the engine itself? I would be interested in trying it out.
damonbranch1 karma
Yes as soon as we can - here's what I wrote to maddOg a while ago:
I'd love for it to be tech for everyone write mods for and build their games on it. I can't believe so many people are asking this question - it's pretty cool. If other companies haven't done it better we'll definitely push to get it as some kind of middleware - maybe we'll talk to Unity as they have a lot of experience in this field - if we could work something out then it could be part of Unity. If not then we'd probably start of with a few devs using the tools to make THEIR games with it as we iron out all the creases and and then push it out as a tool that indies or whoever can use. There's no point in re-inventing the wheel and it would work in our favor too if devs are helping us build the tech base. Which parts - I'd say we'd give devs a ddl with all the system stuff and they can write their game on top of that - like ai, their characters, objects etc. And they would of course be able to use the level editor to put their levels together. Be like a quicker way of make next-gen 2d physics game. It'll take time though but it's becoming pretty apparent it's something devs would like to have so we're in!
chanapol1 karma
I have some experience making a really shitty 2d physic engine to simulate rigid bodies collision.
One thing I really want to know is how do people actually deal with the refresh cycle problem? I mean like after one program cycle, two (or more) objects overlap and boom....things go crazy instantly.
In my project I managed to cheat by limiting Vmax and Omegamax and got a decent result. Please enlighten me how do people actually do this thing.
damonbranch1 karma
Actually that's always a problem - we still have bugs where if it slows down it happens - usually the answer is in tweaking all the variables so you do more loops per frame to stop it happening - i think i do between 10 and 30 depending on the framerate. Does that help?
50_Degrees1 karma
How did you go by designing the interactive fluids with no physics knowledge?
Did you just fiddle around and eyeball it until you went "Yep, that looks about right!"?
damonbranch2 karma
Hey 50, In a nutshell yes! Here's what I just posted to a very similar question, let me know if that answers it:
Yeah I bascially made a real effort to read whitepapers - people's PHD papers on fluid dynamics and whilst it gave me an idea - or the gist of it - none of it sank in. So I basically said okay this blob is going to: roll down solid surfaces, disperse at this rate when it hits other blobs, needs to become more dense when there's lots of blobs on top of me etc. - wait let me look at the code - yeah each particle needs to have at least position, velocity, density, and type (ie water/lava), and heat. That's the structure then I just toyed with the parameters like a nutter - I'd run the water and adjust all of the parameters in real-time so i could see the direct effects - because it wasn't perfect I did a fwe tricks like flatten off the top and stuff but in the end when i found a model that worked i actually didn't need to do too many tricks. If I knew what I was doing I could probably explain it in a couple of lines but since I did it with no equations I have a kind of scattered understanding of the system - I think the system knows me better than I know it! Thanks for the support!
damonbranch2 karma
Yep, just checked, we're $35.9K with 20 hours to go. Today has actually been going well not sure why because the press aren't getting back to us at all today - tumbleweeds! It's so bizarre, yesterday morning we were at $25K and we'd had 12 backers for the previous day - it was blatantly apparent that we had failed. My wife said 'how did you sleep?' - I said I've been up since 4am - stressed out and sad. She went off to work and I got my son some Milk and got in front of the computer - I didn't know what to do. I felt like there was no point bugging people and press and asking them to back us as we'd been doing it for over 4 weeks to very little avail. For the first time in the campaign I'd run out of ideas and energy. Then my phone started blinking it was about 8.40am - I have the Kickstarter app so it said you have a new backer - but instead of that being that it was just blinking, not lots of backers just blinking - so I checked my email and we had a about 20 backers in like 2 or 3 minutes. I had no idea what was going on. I thought maybe IGN had done a piece on us - checked - nope, checked other sites etc. then I saw Organic Panic come up in the search and I realized what happened - 'Satellite Reign' who had just succeed with a massive kickstarter, Satellite Reign - 15K backers gave us an incredible shout out - as their top pick! I couldn't believe it - I didn't know who they were - they're in Australia - and basically a bunch of their fans backed OP and that started the ball rolling. I felt we had a chance so I started contacting all my friends and other projects to see if they would also do a shout out for us and it all went from us having no chance at all to raising 10k in two days and the fighting chance we're looking at now. It's pretty amazing that despite all our efforts the success of our campaign might come down to some good luck! BTW Thanks to 5 Lives Studios and good luck with Satellite Reign!!!
damonbranch1 karma
Thanks, we made phone games at our last company - the good thing is you get through them much quicker so you get to play with a lot more concepts though right?
damonbranch1 karma
Thanks people really enjoy it - we hope it makes you laugh and surprises you!
Such_Great_Heights_1 karma
When did you first start programming and wht would you say to someone trying to learn programming?
damonbranch2 karma
Hi I had a similar question 3 hours ago and yesterday:
Here's when I started programming: I wrote a game when i was 12 - based on tron - lightcycles - i added jumps and shields and my friends and i would play it our our ZX Spectrum back in the early 80s. Really nothing helps more than hands on experience. It's easy to get a degree - well not that easy - but it's really difficult to motivate yourself and travel into the unknown and do things for yourself. You might go in a lot of wrong directions but you will keep learning as long as you are doing something that inspires you. That said - I'd get a degree and get industry experience because you'll need to temper your passion with how the real world works. Ultimately the best job that helped me most was running two indie studios where you have to learn how to manage people and ideas and continue to be be passionate and cooperative.
Here's my response to getting into programming: I'd say get a degree if that option is available. At least some kind of programming qualification. I took a year off before going to University (College) because I wanted to get straight to work and not waste 3 years studying. It wasn't a waste of time at all in the end. I learned lots of different languages and it was WAY WAY easier than trying to learn it n your own. Beyond that most games companies want to see that you have actually made your own games. It's not like other industries where you can show your degree and off you go. It took me 9 months to get my first job in gaming after finishing my degree - get prepped for the knockbacks but dont give up - find your angle - what you are really good at - and be humble - the worst thing I get from students is their BIG attitude - no one is into that - just be a normal nice person - like you'd be around your mum :) Seriously, it matters!
Let me know if that answers your questions?
SamConnolly1 karma
I'm going to start studying games development this September at university. I was wondering was there a specific area of building a physics engine which you found most difficult?
As someone who know's he's coming out of A-Level physics with an E at highest, you've given me hope!
damonbranch2 karma
Ha that's funny - actually my E was at O level! So you should have even more hope now!
Game dev course - cool - I wanted to do a game development course - after my degree the first game dev course (Masters) was about to start funded by the industry but at the last minute they stopped it - I was so gutted! I went to Hull to study Virtual Reality instead but I wasn't really into it so I dropped out. You'll enjoy it and learn a lot. The hardest part of the physics was the water as I've stated before - it took me a year alone! But also I had a lot of struggle with the breakable stuff - I never thought it would be so complicated when I started it though. If you asked me if I'd do it again with the knowledge that it would take 5 years I'd probably say no and do something else - heck 5 years is a long time - who would commit to something like that - yeah great 5 years, constantly struggling, no pay, rilliant, awesome, where do I sign :)
SamConnolly1 karma
Ahh that's a shame that it stopped being funded. But, quite clearly you've taught yourself anyway eh. In our final year at uni we're expected to design our own physics engine, but given yours took you 5 years, I'm guessing the final project is expected to be much smaller.
And well for what it's worth, after watching the kickstarter video the water/liquids looks amazing. Will definitely keep an eye out for when this is released.
Anyway, I've pledged a bit, but being a student I'm skint, best of luck to you, hope the hard work pays off. Although you probably know more about this than me, check out Steam Greenlight project, might help the game kick off a bit once you've released it :)
damonbranch2 karma
Thanks Sam- Yeah we put it on Steam and it's getting great feedbck but like you say it'll need a demo for us to get near the top I think. Also, we appreciate your support and because you're a student we'll give you a free copy of the game for your pledge - just message me in Kickstarter so I have it on record. Good luck with your course!
damonbranch1 karma
OKAY - I"M BACK - DIDN'T THINK WE'D GET SO MANY MESSAGES SO I'M GOING TO START ANSWERING YOUR QUESTIONS NOW!!!!!!
ANSWERING THEM IN THE ORDER THEY CAME IN - HOPEFULLY I CAN CATCH UP BUT I WONT RUSH YOUR QUESTIONS!
damonbranch2 karma
Yeah thanks I appreciate it - a lot of big studio spend that time on a game and also a lot of indies too - behemoth spent years on castle crashers and a lot of other devs do it for sure - just not all that common :)
WiseOctopus1 karma
Would love to back it but I don't have any money right now. I miss all the good kickstarters.
damonbranch2 karma
We'll get the Paypal set up if it succeeds so you can pledge for the same rewards for a month after the Kickstarter!
joelnet1 karma
How many people are working on this project? How have you funded your project pre-kickstarter? Can you share some of your expenses? I am a programmer that has made a few small games, but graphics were always my weak point. (i should say finding someone to do them for me). Any advice or tips for programmers that need graphics people? Also backed your KickStarter!
damonbranch2 karma
So I did the design and code and story and voices and got paid zero. Anatole, my brother, did the Art Direction, 3D art, Animation, sound fx, and voices and he got paid zero. Sylvia did the background art, and we have paid her a few hundred dollars but we owe her lots more. Brad did the comic and ditto - paid a few hundred dollars and we owe him more. Same goes for our texture artist Patt, and our character artist Jesse. A few others like Ra, and Luca have helped out with sounds and ditto - we owe them money. Dan has also done work on the Unity build and same again we owe him too, and our music guy Bret - yep you guessed it - more debt, but all worth it! - er so you get the idea. The reason we got it this far is that these people are great friends so they trust and believe in us - we wouldn't have got here otherwise - no chance without them so thanks guys!! In terms of advice I always try to look locally first - I reach out to people I know in the industry and look online for coders and artists that live nearby - luckily all our people live in New York, and lot in my neighborhood in Brooklyn, but a lot of people have teams scattered around the world so it can be done - I just prefer having the human connection if possible, I'd say it's pretty important. For graphics people you can look online - I just searched 'freelance artists, games etc and loads of people came up on different sites - I don't know too many off hand - maybe Deviant Art - someone help me out here!
DottiWBlanton1 karma
I have an 11 year old son who is brilliantly artistic and incredible with electronics, Problem is, he's so far behind in school and socially awkward. Is there any mentoring program for kids like this to hook up and learn from guys like you? He has Autism
damonbranch4 karma
I wrote a game when I was 12. I was more into just doing stuff than what seemed like rubbish around me - I feel connected to you so much you won't believe. My mum has suffered from mental illness. I found my expression through making games and similarly somewhat secluding myself to do what I feel is more important and interesting. The irony is that a lot of Autistic kids love games and go there for entertainment, and the media attributes the condition to playing games - and watching TV. I know a number of sites like autismspeaks.com which have really good general info but I don't know of any programs creatively in video games. I'm trying to work with my local school and local colleges to do an evening game design class using our tools and that's open to everyone. There's a lot of people out there who just want to help so I would suggest reaching out to your local schools and colleges first. If they don't have programs then they may have contacts and other knowledge that will help get your son into what he loves. You are welcome to come to my classes when they are going if you live near New York. Please email me [email protected] with any questions. I will do everything I can to help him do something that is fun and doesn't conflict with mode of being. My grandmother would always go above and beyond for everyone, and she's my guide and inspiration. I'll gladly help you.
neb421 karma
I have a Physics degree and I am about to start a MSc Computer Sciences degree. I have some programming experience (not much) but I am teaching myself more by making a game. Do you have any advice on how to become a Game Programmer?
neb421 karma
I'm looking at going into a Physics engine role due to my physics degree although I'm still keeping my options open.
damonbranch1 karma
Yes I think it's a big growing area - like I said in a previous post I think physics and programming are 2 top qualifications to have to be a game programmer - you'll have no trouble getting a job. Gimmie a call when you're done! Just learn the basics of programming and try to make some small games - with friends so you keep the motivation going - you'll meet people on your programming course who have been programming for years - just try doing a project with someone you get on with and who also has some experience. Try doing something in Unity - it's free for students and it's about the most developed engine out there!
F0GHORN861 karma
No question from me. Just wanted to let you know I've backed your project and wish you all the best of luck. It looks good fun and I hope to play it soon.
damonbranch1 karma
No I'm not a vegetarian lest a vegan. A lot of people think that - it's just good fun - no political message - we're not there - I think the meat and cheese are cooler than the veggies - maybe they need a spin-off?
shimmyking451 karma
what college classes did you go through to be able to program for this? The reason is that im a teenager who would do anything to be a game developer
damonbranch1 karma
Here's what I wrote to a very similar question - let me know if it answers your question:
I'd say get a degree if that option is available. At least some kind of programming qualification. I took a year off before going to University (College) because I wanted to get straight to work and not waste 3 years studying. It wasn't a waste of time at all in the end. I learned lots of different languages and it was WAY WAY easier than trying to learn it n your own. Beyond that most games companies want to see that you have actually made your own games. It's not like other industries where you can show your degree and off you go. It took me 9 months to get my first job in gaming after finishing my degree - get prepped for the knockbacks but dont give up - find your angle - what you are really good at - and be humble - the worst thing I get from students is their BIG attitude - no one is into that - just be a normal nice person - like you'd be around your mum :) Seriously, it matters!
RebelPatterns1 karma
How much is the planned price for Organic Panic? Because this seems like a for sure buy on my books.
damonbranch1 karma
Well the Game and Level Editor is available to $12 on our Kickstarter. I'm thinking the retail price will be 10 for the game and 5 or 10 extra for the level editor and access to all the new levels people create everyday. We'll have to work out the price with the platform providers but either way you get a pretty clear deal being a Kickstarter backer - plus you get all the exclusive art and stuff!
aepeng2 karma
How has your wife been handling the past half decade? What was the most difficult thing about trying to be an indie dev while raising a family at the same time?
damonbranch2 karma
Well my wife is amazing so what can I say. I think she's basically as nuts as I am and I love her and my son so much - I would never, never have been able to get this far without her. Thanks Laura, I love you!
JakeDaMonsta-1 karma
Was doing this easy? I am interested in making a game similar to the cod series.
damonbranch3 karma
not easy, took a long time - I've actually been a 3D programmer most of my career and I wouldn't even attempt to do something along the lines of Call Of Duty. That takes a massive team years to create. I'd start off doing mods and if you're interested in the coding aspect then try writing something small to go through the process of putting a game together - does that help?
damonbranch1 karma
I'm a programmer, I'm better at copying and pasting - coder joke, you're excuse if you think this comment is completely ridiculous!
damonbranch2 karma
yeah - i end up spending most of my time copying and pasting blocks of code - if you are a coder or ever watch one - it's amazing that most have pretty sketchy typing skills but they can press the ctrl and shift buttons just using their mind!
Wild_Marker1 karma
It's like we're Aquaman but instead of mind-calling fish, we mind-call the copy and paste functions.
(Also, as a game programmer, freaking congratulations you crazy, crazy bastard!).
valleyman8642 karma
I am really curious about the fluid in this game. As a programmer myself I'd love to know more about how you accomplished that portion of the game. I did email you about the idea of creating a development overview on the techniques and game design for those interested.
Anyhow I totally backed this game and and would love to see it launch!
View HistoryShare Link