Sunday 19 September 2010

New Blog created!

Here's the link to my new blog:
http://beelee93.wordpress.com

I'm no longer using this blog anymore. Too much dust man!

Sunday 24 January 2010

Net....

Ever got mad at anyone? I think everyone faces that once in a while, when someone disagrees with you and just makes you feel like you should punch him right in the ass. But does that mean you should blurt it out in the net?

The internet has grew a lot since its invention. Now it has blogging services and social networking services. The net has became a good place to express ones feelings and thoughts. But with the freedom of expression comes with responsibility and limits.

Whenever you get mad, you are easily enticed to crap about it on the net, maybe on facebook or blogger, something like me. But would it be right to state the name of that fella who caused you grief and anger? That would be quite demoralizing, if you are in that poor guy's shoes. Sure, it may be fun to have your revenge on someone you hate so much, but even so, you should not go over the limits.

Demoralizing someone through the net is really a no-no. Imagine if you're the one being talked about badly on the net, how would you feel? I don't think you would be very happy, now that millions of people know that you are an asshole. Hmm...

I just came across a group in FB that's made for hating a specific teacher in my school. When I was invited to join it, I was furious, even if I don't really like the teacher myself. I was like "What the f*** is this?"

I immediately rejected the offer. No thank you.

Now, if you wanna express your hatred so much on the net, at least keep it anonymous. It's totally wrong to demoralize a person. There, I used "demoralize" for like 3 times in this post. Do you want somemore?

Come on people, be a little more mature. If you hate someone, just keep it to yourself. No one wants to know who you hate. If you're really desperate, you can express your feelings, but also at the same time, be considerate.

Saturday 23 January 2010

Mr Ball!


Just one more secret battle and Mr Ball 2 will be ready. I'll bring back the secret battle from Mr Ball 1, but the boss won't have the same attacks (well, maybe a few, but not many).

I plan to implement the Critical Moment system that I used in Mr Ball Recreated (in 2D) exclusively for this secret battle, just to ease things a little. And the damages are gonna be pretty high, so Mr Ball should get prep-ed up before it (90+ damage anyone?)

Sadly, my new blog is down. Stupid modem is refusing to enable port forwarding for my server. Darn it!

Saturday 16 January 2010

Yesh! Finally! It's saved!

Mr Ball 2 has saving capability! It's a totally new addition to the game. You can only save once after every battle. When you load the game later, all your status and attributes are loaded as well. (Though, I don't think this saving thing would be a BIG thing for Mr Ball 2, since you only need about 30 minutes to 1 hour just to finish the main battles, and 1 secret battle)

After running through the game at least once, it's actually possible to finish the last boss without a game over provided that you have the right upgrades.

I'll be planning one more secret battle for the game.

Friday 15 January 2010

Updates!

Ok, the 2nd week of school is finally over! And I have a new modem (thank God!). Consequently, my website is currently down as I have not port forwarded my server, so I'll post my updates here.

Mr Ball Recreated / Mr Ball in 2D:
It has its own cheat engine, ready to make Mr Ball more powerful than he can ever be without cheating! (God mode, anyone?)

In addition to that, there's a new game mode, called "Chaos Mode", which is way way harder than the Impossible mode, which is already very hard (I barely made it out alive without cheating!). But, this mode can only be activated through cheating.

The Chaos Mode mainly alters the part of the boss' AI which controls how rapidly it attacks. It sets the delay between attacks to about 0.1 - 0.2 second, so it can get quite messy. One bad thing about this mode is that it's not compatible with slow computers. Even on 2 GB of RAM and 512 MB of Video RAM, there's a noticeable lag in the game during Chaos Mode (there was once when it dropped to about 20 FPS)

Mr Ball 2:
The Final Boss battle is finally finished. And it incorporates one of the suggestions that my pal, David, told me. Not only that it looked awesome, it kinda made the level that much harder. So far, it's quite tough to win, relying solely on luck (did I mention Random Number Generator). I'm still tweaking the settings to lower the difficulty. C'mon, a game that's impossible to win should not even be played at all.

My plans after the release of Mr Ball 2 would be to learn electronics and how to program in DarkBASIC and C language. I have quite a lot of plans, but hopefully, I can get my straight As for mid terms and SPM.

Sunday 20 December 2009

A new website!

I created my new website with JoomLa!

BLProductions

I'll slowly phase out from Blogger and use that website. Though, I must warn you, that website is only on when I'm on. I'm usually online most of the time, so don't worry...

Saturday 19 December 2009

AI

Artificial Intelligence eh? I wonder have I ever disclosed the AI system of Mr Ball? It's not that advanced really, as compared to today's AI, which uses things like Neural Networks and stuff like that. Those are serious maths, but in Mr Ball's case, the AI system is basically a...

Random Number Generator

Not convinced that the whole game is governed by a random number generator? Well, here's the proof:

See the random(...) command there? That's the proof!

Well, I'm just using what's given to me in Game Maker to my advantage. But it's just a number generator, how significant is it?

Now, the whole AI system of the enemy is basically like this:
-choose a random attack
-executes that attack
-repeat

But then, if you were given a chance to look deeper into the source code, it's not that simple. It used to be only that simple, but as the AI system grew and matured for 4 years, it has many more additions.

The AI system is actually a big timer. Whenever the timer reaches its target, it executes a long list of codes, which is the "main code" for the boss character (the one that makes the boss attack).

When the battle begins, the boss character sets one of its properties, aprev, to -1. This property just means "previous attack". Each attack has its own id number.

Attacks that are very simple will not change the value of aprev. But for an attack that is made of chains of different motions and animations, that attack change the value of aprev to its id number.

Every boss has this part of code:
if(aprev>-1)
{
a=aprev;
}
else
{
a=floor(random(.... /*Number of attacks*/))
}

which basically means that when "aprev>-1", keep executing the same attack as the previous, otherwise, choose another random attack.

Chained Attacks (the ones like the Deperation Attacks, or attacks that require the boss to move to a specific place) are subdivided into many different parts, which are called "phases" in the system. So, everytime the "main code" is executed and a Chained Attack is chosen, the "main code" will execute once for every phase.

This may sound a bit confusing, but that's just the way how Mr Ball works.

This system, as I have said, it's about 4 years old. The longest "main code" that I have written so far stretches for 958 lines (around 17.8 KB, for about 30 different attacks, in Mr Ball 2D)

There is one bad flaw about this system though, it's very HARD to debug. Yea, whenever something goes wrong, sometimes, it's very difficult to look for the error.

Another bad thing about this system is that the timer for the "main code" must always be reset. If the timer were to stop, the main code will not execute and the boss will do nothing. Now, this may not be so bad in some cases, but most of the time, when the boss stops doing anything, the level becomes boring. This is usually one of the most annoying bugs in the game.

Well, that's all about the basics of the AI system of Mr Ball. Nothing much to it really, it's just a creation of my imagination. It may not be the best, but as long as it works, it's good enough for me. See you then!