Archive for the ‘game development’ Category.

Garshasp on Steam!

By the prickling of my thumbs
Something wicked this way comes…

Garshasp is up on Steam and Gamers’ Gate, and it will be available for purchase shortly. This is a huge step for us, specially if we are received well.

I am now praying to all the gods I don’t believe in to make it so (witness the vanity and weakness of man!)

VN:F [1.9.13_1145]
Rating: 8.2/10 (5 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 4 votes)

پیام من به قضاوت‌کنندگان گرشاسپ

بازی گرشاسپ که حاصل تقریباً 4 سال عمر بعضی از ماست، کمتر از یک هفته‌ی پیش به بازار عرضه شد. نظرهای بازی‌بازهای ایرانی در مورد گرشاسپ کم و بیش مثبت بوده، ولی انتقادهای برنده و گاهی عجیبی هم در موردش دیدیم که در نگاه اول ناامید کننده، ولی در نهایت مسرت‌بخش هستند. شاید در فرصتی دیگر به دلیل مسرت‌بخش بودن این انتقادها هم بپردازم.

روی صحبت من با همه‌ی کسانی است که گرشاسپ را می‌بینند و نه فقط انتقاد کنندگان. من کاملاً به حق شما برای انتظارِ دیدن یک بازی کامل و بی‌نقص احترام می‌گزارم. من با جدیت تمام عقیده دارم که حق همه‌ی ما به عنوان بازی‌باز این است که بدون هیچ قید و شرطی بهترین بازی‌های ممکن را بازی کنیم. ولی گاهی کمی واقع‌گرا و منطقی بودن هم بد نیست.

مثلاً بودجه‌ی گرشاسپ را در نظر بگیرید. کل هزینه‌ی صرف شده برای تولید گرشاسپ (به اضافه‌ی سوشیانتِ ناکام) و تبلیغات و شرکت در نمایشگاه‌های داخلی و خارجی به 300 میلیون تومان هم نمی‌رسد (این عدد فقط حدس و تقریب شخصِ من است.) این یعنی حدود 300000 دلار (برای راحت‌تر شدن مقایسه‌ها در ادامه‌ی بحث همه‌ی عددها را به دلار بیان می‌کنم.) این عدد را با بودجه‌های بازی‌های مطرح دنیا (اصطلاحاً AAA) مقابسه کنید:

  • Gears of War: $15M
  • Modern Warfare 2: $50M
  • Killzone 2: $45M
  • Gran Turismo 5: $80M
  • Metal Gear Solid 4: $60M
  • God of War III: $44M
  • Assassin’s Creed: $18M
  • Assassin’s Creed 2: $25M
  • Bioshock: $15M
  • Halo 3: $55M
  • Grand Theft Auto 4: $100M

دقت کنید که از ساخت بعضی از این بازی‌ها چندین سال می‌گذرد. همچنین توجه داشته باشید که اعداد بالا تقریبی و فقط شامل هزینه‌ی تولید هستند و نه هزینه‌های تبلیغات و بازاریابی و توزیع، وگرنه هزینه‌ی تمام شده‌ی بازی‌ای مثل Modern Warfare 2 به عدد باورنکردنی 200 میلیون دلار می‌رسد!

بیایید از فاکتورهایی مثل ساخته‌شدن بیشتر این بازی‌ها برای چندین دستگاه و کنسول مختلف، باتجربه بودن همه‌ی این شرکت‌ها و تازه‌کار بودن ما، هزینه‌های بازاریابی که معمولاً بیشتر از هزینه‌های تولید هستند و مانند این‌ها صرف نظر کنیم. تعدادی از متخصصان و باتجربه‌های صنعت بازی در جهان معتقدند که یک بازی بزرگ و مطرح جهانی برای اینکه هزینه‌های خود را جبران کند و اصطلاحاً “سربه‌سر” شود باید حدود یک میلیون نسخه بفروشد. با توجه به قیمت معمول بازی یعنی حدود 60 دلار (حالا شما با توجه به انواع تخفیف‌ها 50 دلار فرض کنید،) یعنی یک بازی AAA حدود 50 میلیون دلار هزینه دارد. باز فرض کنید نیمی از این عدد هم هزینه‌های بازاریابی و توزیع باشد (که معمولاً بیشتر از این حرف‌هاست) پس می‌توان فرض کرد که یک بازی مطرح در جهان حدود 25 میلیون دلار هزینه‌ی تولید دارد. این عدد را به یاد داشته باشید.

بخش بزرگی (تقریباً همه‌ی) هزینه‌ی تولید به صورت مستقیم و غیر مستقیم برای نیروی انسانیِ سازنده‌ی بازی صرف می‌شود (یعنی دستمزد و غیره.) دستمزد دست‌اندرکاران بازی‌سازی در ایران حدوداً بین 12000 دلار و 24000 دلار در سال است (1000 تا 2000 دلار در ماه.) این عدد برای بقیه‌ی دنیا حدوداً 50 تا 100 هزار دلار در سال است که می‌شود حدود 4.16 برابر. یعنی بازی‌سازی در ایران حدوداً چهار و شانزده صدمِ برابر ارزانتر تمام می‌شود، پس باید بودجه‌ی ساخت یک بازی جهانی را بر 4.16 تقسیم کنیم. 25 میلیون تقسیم بر این عدد می‌شود کمی بیشتر از 6 میلیون دلار. یعنی در تئوری، برای تولید یک بازی مثل بازی‌های نام‌برده شده در ایران باید حدود 6 میلیون دلار هزینه شود.

کلِ بودجه‌ی گرشاسپ یادتان هست؟ 300 هزار دلار. یعنی یک بیستمِ مقداری که بنا بر نُرمِ جهانی باید برای این بازی هزینه می‌شد! حالا از همه‌ی شما بازیکن‌ها و طرفداران و منتقدین گرشاسپ خواهش می‌کنم این عدد را همیشه به خاطر داشته باشید. یعنی کیفیت گرشاسپ باید 20 برابر بدتر از بازی‌های روز جهان باشد. یعنی طول بازی، تعداد ویدیوها، تعداد کاراکترها، کیفیت مدل‌ها و صداها باید 20 برابر کمتر و پایین‌تر و تعداد باگ‌ها و crashها و مشکلات مورد انتظار باید 20 برابر بیشتر از آن‌ها باشد. اگر گرشاسپ از این مقدار مورد انتظار بهتر و بالاتر ظاهر می‌شود، یعنی ما کار خود را خیلی خیلی خوب انجام داده‌ایم.

تازه از منظر دیگری هم می‌شود به قضیه نگاه کرد و آن هم قیمت محصول برای مصرف‌کننده است. یک بازی AAA در جهان در حدود 60 دلار قیمت دارد، در حالی که قیمت گرشاسپ بین 3 تا 3.5 دلار است. اگر شما بازی‌های خارجی را به قیمت واقعی می‌خریدید، آن‌وقت قدرِ واقعی بازی‌های ایرانی را می‌دانستید و می‌توانستید درست و منطقی در مورد آن‌ها قضاوت کنید. باور کنید که در این دنیا در همه‌ی زمینه‌ها هر چقدر که پول بدهید آش و سوپ و لازانیا می‌خورید. (این حقیقت که قیمت پایین بازی در ایران نه تنها تولیدکنندگان، بلکه مصرف‌کنندگان و بازی‌بازها را هم نابود می‌کند باید مثل روز بر همگان آشکار باشد. اگر می‌گویید نه، تا آن‌لاین شدن و غیرِ قابلِ کرَک شدنِ همه‌ی بازی‌ها صبر کنید!)

من و بقیه‌ی دوستانم در تیم سازنده‌ی گرشاسپ به کار خود افتخار می‌کنیم و به هیچ وجه شرمنده و عذرخواه نیستیم. درست است که ما می‌دانیم که گرشاسپ اصلاً بی‌مشکل و بی‌ایراد نیست و می‌شد و می‌توانستیم خیلی بهتر از این را هم بسازیم، ولی این نگرشِ ایده‌آلیستی تقریباً در مورد هر محصولی و در هر زمینه‌ای و در هر زمان و مکانی صادق است.

من فقط از شما می‌خواهم که کمی منطقی و منصفانه فکر و قضاوت کنید؛ همین.

VN:F [1.9.13_1145]
Rating: 9.0/10 (22 votes cast)
VN:F [1.9.13_1145]
Rating: +21 (from 31 votes)

Garshasp’s Release Day

Tonight at midnight is Garshasp’s official release day. Finally! After many delays, tomorrow people can supposedly buy Garshasp at retail stores all over Iran.

The reason that I say “supposedly” is because that our distributor, a company named Lohe Zarrin e Nikan (I won’t even bother to link to their website) is a bunch of idiots who have done their best to disrupt the release and demean Garshasp. They have postponed the release date with no apparent reason for more than two weeks (not to mention their previous blunders and postpones for a couple of months,) they missed a huge (by Iranian standards) public game show, they rejected our designed retail packaging, they have used their own idiotic artwork for promotional material (which not only have nothing to do with Garshasp, but are also so very hideous.) Oh, and they have printed on the package that all rights of Garshasp are reserved for them! I must add that none of the above is permitted by the terms of the distribution contract we have with them!

Tonight is the culmination of years of our lives, and instead of partying and drinking and stuff, everyone has already gone home. No one even mentioned the release, as if we have all given up hope about this event being of any note and importance.

Tonight Garshasp is released, and not even we care. How’s that for a sad state of affairs?

VN:F [1.9.13_1145]
Rating: 8.5/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: +4 (from 6 votes)

An ABSOLUTELY Unmissable Talk on Modern Hardware

Iff[sic] you are a programmer, if you don’t do anything else even if you don’t eat and even if you don’t shower, please please please please please watch this presentation.

The presenter is Dr. Cliff Click, and the topic is an in-depth view of modern code execution architecture. The talk is from 2009, and it has been on my to{do} list for almost 6 months. It is the best thing I have seen in the last year (and I played God of War III!) if not in many years. The guy is obviously very knowledgeable and he talks extremely fast, which just means that he packs an incredible amount of invaluable information into this 50+ minute talk.

I can’t stress this enough. Take an hour to watch this. Please! If you are a game developer, or any programmer with a conscience, you have to watch it right now! I’m not kidding here. Watch this through.

On an ego-boosting note, I just watched this talk and I already knew almost all of it (I have to brush up on the newer cache-coherency protocols though; those have also been on my to{do} list for some time now!) It did have some eye-opening “Aha!” moments for me. I may write about them later.

What are you doing still reading my shithead rant?! GO WATCH THIS!Cliff Click’s Crash Course in Modern Hardware (hosted locally.)

VN:F [1.9.13_1145]
Rating: 10.0/10 (5 votes cast)
VN:F [1.9.13_1145]
Rating: +4 (from 4 votes)

“Planning for Debugging Day” Presentation

Here are my presentation slides from the talk I gave this past March in Sharif University, at the first Iranian computer game developer’s mini-conference.

Here I talk (mostly out of personal experience) about things that we should pay attention to, at the beginning of a game development project, so our debugging and issue tracking and solving experience becomes less irritating and more effective. I’d be happy to hear any suggestions, corrections and discussions.

Oh, and I have expanded the talk a bit, from what I actually presented! Also I’d be happy to explain my views on any of the particular points if anyone actually bothers to read through the thing.

VN:F [1.9.13_1145]
Rating: 8.2/10 (5 votes cast)
VN:F [1.9.13_1145]
Rating: +4 (from 6 votes)

National Computer Games Conference

Sharif University is holding a two-day conference on games and game development. We (the guys at Fanafzar) are going to attend and some of us are going to have presentations and panels. There are also other interesting talks, mostly on the lighter side of technical issues. Here’s the web page for the conference, and here’s the pre-registration page (but I think you need to actually show up there on the first morning to register.)

The conference will be held on Esfand 19th and 20th (March 10th and 11th) somewhere inside SUT campus (yes, that’s tomorrow!)

My talk’s title is “Planning for Debugging Day” and in it I will present some thoughts and topics you should ponder and consider at the beginning of a game project to have less problems later on in the cycle when debugging, adding features, releasing, etc.

VN:F [1.9.13_1145]
Rating: 8.3/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: +4 (from 6 votes)

Time, Only Time

I have a post about measuring time in a game engine on the Grashasp Dev Blog. Give it a read if you have the time and you are interested.

VN:F [1.9.13_1145]
Rating: 7.0/10 (4 votes cast)
VN:F [1.9.13_1145]
Rating: -1 (from 1 vote)

Developing Games For Mac and Linux Too

Is it actually a good idea? I have to really think about it. These people seem like they think it is.

VN:F [1.9.13_1145]
Rating: 9.0/10 (7 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)

Better Soshiant Videos

Here are two higher-resolution in-game videos from Soshiant: one (~90MiB) and two (~86MiB).
Here’s another video (~71MiB) showing some characters from concept, through modeling, to animations.

Note that our engine is not even in alpha. There are many bugs present, most of with are level design bugs due to our rush for the exhibition (camera placements and transitions, characters occasionally going through walls, Soshiant’s hand not being aligned with the ledges he is hanging from, etc.) But there are some engine bugs too, like the character’s hair getting stuck in a wall or ground, or the character jumping from one position to another, or the shadows poping here and there. All you see is subject to improvement, change or both.
Also, these videos are compressed with the irreplaceable Xvid codec. The third video, which is the only one with sound, features one of our original sound-tracks, composed and played by our multi-talented concept artist Soheil Danesh.
I would be very happy to hear your feed back on any and every aspect of these videos.

VN:F [1.9.13_1145]
Rating: 8.5/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)

Awesomeness!

Amir Hosein made a post to the OGRE showcase forums about Soshiant. The response is overwhelmingly positive. I’m hoping that our love, care and enthusiasm can fuel our effort for just another year or two, and I believe we will make it, and we’ll make it big time!

VN:F [1.9.13_1145]
Rating: 8.5/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)

Soshiant In-game Videos

Refer to these two (one and two) blog posts by our fearless team leader “Amir Hosein“.
If you are lucky enough not to be pestered by a ridiculously ineffective, yet irritatingly irritating Internet filter, you will have a peek at some of our gameplay.
You should note that this is not even alpha software. We are a long way away from a feature-complete demo, and even longer away from a game. Please bear with us!

VN:F [1.9.13_1145]
Rating: 8.5/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)

Soshiant Demo

The Soshiant website just went live. (UPDATE: Here’s the English homepage.)
And again, we are pulling an all-nighter to ready everything for the exhibition that opens tomorrow. This will be the first time that the public sees our baby, and you could imagine how excited we are.
However, there’s still a long road to go for Soshiant to become anything resembling a playable game. What we currently have is basically nothing more than a techdemo of some of the stuff that we could do, with time and of course, money.

Anyways, the exhibition is held at Tehran Mosalla. It starts tomorrow (October 22nd, Aban 1st) and goes on for 10 days. I’m told that the visiting hours are from 9AM to 9PM. If you are interested in posters, collector cards, T-shirts and some in-game and technology videos, concept art and our game, please give us a visit. We will be at “Fan-afzar Sharif” booth.

VN:F [1.9.13_1145]
Rating: 8.5/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)

Quench My Thirst With Gasoline

I woke up yesterday, 7AM. It’s now 9PM and I’ve just come home, and I’m gonna eat something, and I’m gonna go to sleep after 38 hours. That’s a personal record. And I’ve been at work, non-stop for 27 hours.
And you know what, I’m just feeling conventionally tired and I may even try and work on my own programs a bit. I never thought I would be at work 27 hours and be this happy (well, as far as I get happy, which is not much.)
And my work was hard, at least for someone with my limited practical knowledge (or theoretical, for that matter.) I implemented the whole shadow system for our game project Soshiant from the ground up, after several failed attempts at using Ogre‘s shadowing services and several other attempts to figure out the pieces needed to use Ogre’s facilities from other people’s code (nobody seems to have had the problems that we had!) Anyway, me implementing generic shadow-mapping was like a blind man with Parkinson’s trying to fix a deaf and mute man’s teeth: full of screams, blood and gore. But that’s another story for another time.
My pint here is that I was doing something I liked, and that I’m not badly incompetent at, on a project that engaged me, with people that interest me. Therefore, I cannot wait to get more (after I’m rested well enough of course. I’m a lazy slob after all, and nothing can change that.) What I’m saying is that “Give me fuel, give me fire, give that which I desire.”

VN:F [1.9.13_1145]
Rating: 8.0/10 (6 votes cast)
VN:F [1.9.13_1145]
Rating: 0 (from 0 votes)