It’s the Bone Collector on tv. I don’t care if you think that Angelina Jolie is overrated or underrated I just like her. And me liking her is a very good thing tonight. What’s best? Me knowing that Golemizer is amazing.

How do you get 5,000 rabbits in a 20×10 zone? Golemizer can. How do you get 5,000 rabbits in 5,000 20×10 zones? Golemizer can. How do you get 5,000 rabbits, wolves, zombies, X-Rex, robots in 20,000 20×10 zones? Golemizer NOW can.

Why is it awesome? Because I had no clue how to do that some years ago. I bet that for a lot of people it’s a ridiculous feat to achieve. Not for me … But I did it.

As Golemizer became more popular new problems arised. Problems I never expected. Why? Because I allow player to do pretty much everything. Created new permanent monsters in the world? Done. Create quests? Done. Control pets? Done. Assemble hundreds of items together in a single zone? Done.

But what if something wasn’t right? What if the number of possibilities become a problem? I had no way of testing that. Yes I tested 5,000 rabbits in a 20×10 zone. I tested 25,000 rabbbits in a 20×10 zone. I tested even more rabbits in that same zone. Beside client lag I never experienced any other problem. But I wasn’t testing that in a real world situation. In a situation where hundreds of players could changed the world. It took time. It took many words used as cursing words but I think I did it. I can now manage the unthinkable on a regular PC … at least for me … 42,317 NPCs in 43,829 zones … (real numbers BTW).

Maybe I could have asked how to do it and somebody would have gave me the answer in some minutes. I didn’t … For many months Golemizer was crashing almost every single day. Some kind of extreme CPU consumption. From time to time the CPU would go to 99% and make the game unplayable. I surely lost many players because of that and I hate myself for that …

And then I started to work on a “secret” project I won’t tell you about yet. That project lead me to read about basic things like sockets. Yeah, basic things. I had no idea what it was about. The most complicated thing I had to deal with since then was multi-users Access databases. Big deal yeah … And then I read about multitthreading … And then I read about ASP.NET web services limitations … And then I figured a couple of things about what was required to have an MMO running with the tech I’ve been using for Golemizer …

I know … It’s silly …. Synclock … I have to lock data when many users are accessing it. Silly I said … But how was I supposed to figure it out. I found a way and it was a 3 years learning process. Since I’ve applied that last patch to Golemizer the game is now stabled as rock. It never crash. Not for 3 weeks at least which is a miracle from my point of view. Sure it’s not perfect as I also figured out that adding “enablesession:=true” to asp.net web services¬† can turn asynchronous calls into synchronous calls but I’m getting there. I just need to find a way to save the session of a player another way and then my stupid web service structure will be a stupid web service structure that can handle thousands of players at the same time. It’s not complicated to achieve, just require some changes to the code.

What’s the big deal here? I went from a total newbie to someone who knows a bit what he’s talking about just by giving me some chance to experience something new. The bottom line here is that when you think that you have failed … Allow yourself to try something new even if you think it’s unrelated and it might reveal some interesting things to you. Put your trust into someone who knows more than you and then be amazed by the results …

Golemizer is now 100% stable. Not 100% performance perfect but it’s a huge progress. It’s only by testing this in real conditions that I’ve been able to see it wasn’t quite working … And it’s only by allowing me to see something else that I’ve been able to fix it.

I’ve been afraid for some time to build something 100% serious with the Golemizer framework but I am not anymore. I finally feel I have reach a huge goal which is building something that will allow me someday to do full-time what I’ve been doing part-time for now 3 years.

If you have hit a wall in a project then allow yourself to try something else. It might reveal to you a couple of important things you didn’t consider in the first time. I’m glad I did and I’m glad I trusted someone who knew more than me. I wish you the same …

Share