If Quake was done today
The “Hint: Shoot enemy to kill them” isn’t even funny because in Day of Defeat: Source there is the exact same hint.
The “Hint: Shoot enemy to kill them” isn’t even funny because in Day of Defeat: Source there is the exact same hint.
I need to clear my mind about some things and ask my long time readers for some opinions.
You might have read the latest post on the King Arthur’s Gold blog. It’s called Adventures, Overworlds and the Full Version. If you have been following this devlog then you’ll see that there is nothing new there. I’ve talked about these ideas here and here.
Why didn’t I do that with Link-Dead?
Because I was struggling with a solid foundation. This time, with KAG, I have a solid foundation and can build upon it.
Or can I?
read more »
There’s an interview up on IndieGames.com and Gamasutra.com with me with the glorious title:
“Soldat’s Marcinkowski On Why Alpha Funding Will Save The Games Industry”
.
He looked at it carefully, then he said:
My friend smiled gently and indulgently.
But it was rejected too, just like the others.
And I threw out an explanation with it.
Quick recap of what has been going on in my life:
Remember me posting about a QoS emulator made for RakNet which I used to simulate high ping? Well I lost it in a disk format and now I can’t find it anywhere on the internet. Does anybody by chance have this piece of software?
I just got signed up for the IndieWeekend over at QubeTubers.com for a live interview. If you want to listen it’ll be in 15 mins: Saturday 6th August 2011 at 4:00am EST. That should be 10:00am GMT. Meet you there.
Some requested a definition of good/bad code in the thread below.
Archont is right with “good code” : works as expected. But I have a slightly different view.
Suppose you want something expected to work on a release date (can be a major release in 6 months or just a patch in 3 days).
Good Code:
Any code that moves you closer to the release date.
Bad Code:
Any code that moves you further away from the release date.
With this we see that if you don’t set a release date you cannot measure how good or bad is your code. So your development time increases infinitely because you might spend time rewriting and “perfecting” code that already works. Of course there are some companies that say it’s done “when it’s done” (like Valve, Id, 3D Realms RIP). I believe they just don’t announce a release date. I’m sure someone disciplined like Carmack sets release dates that are kept even for himself (like setting milestones). There is a paragraph in “Master’s of Doom” where it’s noted that Carmack after releasing Quake locked himself for a week in a hotel room to experiment with some technology. Doing that sets a deadline of 7 days. After that you expect to have something awesome working. It doesn’t matter what is inside the source code or how it looks.
My favorite release date approach is a deadline of 1 day. When I start work on that day I say to myself: today I will make a physics engine or today I will make a particle engine. I work only on that during that day and usually at the end I have something working. Code made this way is usually the best code I make. If I tweak it or add stuff later it usually makes the code worse and less elegant. Doing a big chunk of code in 24 hours makes you remember the whole thing in your head. So you work the whole code in your head. The next day you will forget most parts of the code. If you return in a couple weeks there is nothing left of your understanding of the code. In 1 day it is possible to understand every bit of the code.
Try it, instead of working on every piece of the game from time to time. Just take one segment of the game and try to code it in 1 day. If you fail, erases it, and try again.
Soldat is good because it has shit code. It wouldn’t ever be good if it had good code. Why?
http://the-witness.net/news/2011/06/how-to-program-independent-games/
Presentation by creator of Braid. I could have done a similar presentation, lots of great stuff here.
Check it out at 2:20 -http://www.youtube.com/watch?v=zK0IKeAoGDU