Leongi’s Blog

Life and Thinking

Talk about My History

I think, all of you who know me will also know that I’m taciturn, which means I always have less stuff to say or share out while everyone are chatting interestingly. As someone asking me why I’m so quiet, I will feel uncomfortable in my heart and want to return him back with rude word, but of course I will not do that and just instead with a smile.

If I meet a or some new friends who never know about my characteristic, I will try my best to hide my taciturnity before they discover. But this is very hard for me, anyhow I’m shy. I’m not really remember my history in primary school. I meant I’m not sure if I was a silent person. But I know when I’m a kid (below 12 years old), no matter my relative came to my house or I went to their house for every festival, I was that one who disappeared very quickly. I’m very afraid of seeing anyone except my family [ Not sure why .. ] . As they coming, I went to my room to do my own stuff. The speaking and laughing sound was passed from outside (living room) to my ear but I ignored it. My parents asked me to come out but I rejected to do that. My parents was angry that I was always hiding in room when many guest came to visit us. After they “invite” so much times still can’t get me out of my room. They gave up and continued to guest people. Don’t know how my relative thought about me at that time. I’m such a special person, they were very hard to see my real face. Think of this I also feel very funny.

During my secondary school, I’m very lazy to move around while teacher was not in class. Every time teacher left the class, the noise would start to be more and more. The students [ I didn’t go to know them so I called them as students instead of my friends. ] in class would leave their chairs and move to other’s “house”. As the teenagers, they could start to know other girls so they would find chance to sit with beautiful girls and chat with them [ I doesn’t mean that we cannot know other female students in primary school but there’s another meaning ]. We were very happy to hear that our teacher absented for class. Because the students could play and yield noise in class. I’m very happy too, because I had time to do my homework or sleep. Ok la .. I also had some friends in class [ If after half year still no friend in class, it is really too weird =.= ] . I liked to write short novel at that time, so after I completed a story then shared to them. I had a friend also like to write story but nonsense one. His writing was damn ugly [ Other people cannot recognize his words except himself, but don’t know how teachers mark his homeworks and exam papers. ] , it was impossible for me to read his nice story. As the solution, he read for me, then we laughed together. The story was very nonsense and very funny. I didn’t have any chatting topic with my friends, only after exam week, then we had a chatting topic that was comparing exam results. Other than that, we played paper games. After went back to home separately, then no more contact. I never asked my friends for eating supper at “mamak” or going out to shopping complex and they also didn’t ask me too [ May be they don’t have my homephone number, but I also don’t have their contact number =P ] during my secondary school life. So, I wasted my teenager’s life [ Now is already 21, not more teenager =P ] .

As I came to MMU to study in Alpha year, it was the first time I went out to eat with my friends. Five people sat around the same table, 4 people speaking 1 people “sleeping”. They talked with their unending topic, then I’m not sure that I was hearing or thinking other thing. So, very bored one, I was always that one who never come out with one word except they asked me questions [ It was impossible that I could be silent again and ignored them. =P ] . Since I met my Beta year’s friends, I tried my best to change my characteristic. Tried best to say something, not be too quiet while other friends were talking. When I meet my relative, I was not try to avoid again. May be according to age increasing, thinking will be more mature, then will like to talk. My relative say that I have change a lot, to be willing to talk and start to contact with them. [ Hehe … 🙂 ]

February 2, 2008 Posted by | Life | 2 Comments

Good to Great

Do you can differentiate the meaning of “Good” and “Great”?

This kind of thing I heard from a meeting on a day of Industry Training semester. Something I realized was quite meaningful. What is the different between “Good” and “Great”? It cannot be denied that “Great” is better than “Good”. There are 3 levels: Bad, Good, Great. Someone can jump from “Bad” level to “Good” level or “Great” level. But he/she is unable to jump from “Good” to “Great”. Someone can be good but not great. And, someone can be great but not good. This one I can’t explain why because I also don’t know. Last time the discussion was talking a lot of points about this issue but all of the points was almost disappeared in my mind and just remember the idea.

Everyone also know that humble can make someone to be better. In a chinese proverb said, “Humble brings benefit, proud makes loss”. Now you should know why someone cannot jump from “Good” to “Great” but can jump from “Bad” to “Great”. It is relative with the proverb. If you think that you are good, you will think that your idea and solution to do something is good enough and it is not necessary to accept any another way to do. You will ignore someone who gives you a better way to solve the problem. Then you will lose the chance to learn something new. That means, your knowledge was always remaining at the same level. So … how can upgrade to “Great” without improving yourself.

SO … Always think that yourself is very very bad. Then you will ask for help from someone may better than you. Saying about programming, there are many ways to do a program but the different things will be performance and complexity. Something may be actually easy stuff but you may use a complex way to do it and write a long long code. As the result -> performance slow … Anyway, although you know how to do but you pretend that you don’t know and ask for better solution. This is a good way to help you to be great!

September 8, 2007 Posted by | Uncategorized | 4 Comments

Void

I’m DotA (Defense of the Ancient) fan. Since I realized DotA, almost everyday I played it until now. I’m not sure why I so like to play. Sometime I will feel bored while I play it. I felt regret after I joined a game and the game started. But at middle of the game (When my hero has his/her ultimate skill –> Lv6), I started to feel excited and the feeling of fun was coming (Because can start to pawn people, kekeke). That’s right, I love the excitement of DotA.

One day, I started to have the interest to make another version of DotA, that’s DotA Card Game. This game is similar as Yu Ki Ho (A Japanese Card Game) but using the DotA heroes to fight and it was Turn-Based plus Real-Time. Why say so? Because each hero had its own attack speed. To see whose turn to attack, that’s an attack rate bar below each hero card. The attack bar rate was loading based on real-time. When it was completed loading, the corresponding hero was given a turn to do its action. Each hero could move, attack, and cast spell. “Move” was moving to another empty cell. “Attack”, for ranged hero, it could attack any hero on the battleground, for melee hero, it only could attack the hero same column with it and must attack the nearest unit in front of it. “Cast spell” meant using the hero’s own abilities. Each hero could carry item to enhance its own stats (Strength, Agility, Intelligence, Attack damage, Attack rate, Armor, Hitpoint, Hitpoint regeneration, …). From here, I realized how Warcraft III was complicated, one unit could have so many variables. My game included all of DotA heroes and the number of abilities was more than 100. This game I almost complete 50%. But it was not OOP (Object-oriented Programming), no class, and functions. All the coding was in chaos. Still remember that one time I discovered that I wanted to make an ability, Mana Shield (When the hero receive an incoming damage, if it has mana, its mana will be used to resist the damage until its mana has been exhausted, then the remaining damage will be applied on the hero.). Because I’m not using OOP and I already done 40%, if I need to change the coding that was related to “Attack” , there’s so many thing was related to “Attack”. I felt the doom was coming because I need to change the coding until crazy. But finally I done it. Really crazy for that time. I started to do this DotA Card Game started from the first day of a holiday (3 weeks). After I completed 50%, the holiday left 4 days.

I haven’t complete the game. But I changed my mind. I wanted to make the gameplay more fun. LOL. The DotA Card Game was incomplete, a New DotA Card Game was coming soon. This version of DotA Game used a 10 x 10 cells on the battleground. All the game elements were still remained. This time I learnt the lesson, I made many functions. So, when an unit did an attack, it will call a function to calculate (reduce damage because of the target’s armor, increase or reduce according target’s status effect) and return back the real damage. After a few weeks, I felt that the idea to use attack bar in order to see whose turn to move or attack was not really good. So, I made my game to be pure Turn-Based Game. Each hero was given a new element called “Action Point”. No matter the hero move or attack, it cost Action Point. So, the player in the current turn could control all of his/her own units (only can move once during a turn) to move once and attack until the Action Point exhausted. Few days after, I came out with an idea. Since I did this 10 x 10 tile-based board, why not I did the different terrain for each cell (Plain, River, Tree, Mountain, and etc.). After that, I used XML to generate the battleground and also included more thing. The different cost of Action Point for walking on plain, swimming in river, and climbing the mountain. In addition, the hero which swam in river will hard to attack an unit on the plain (Has a chance to miss on attack) and also hard to be attacked. A ranged hero on the mountain could attack further enemy unit. I finished all the game elements. The remaining thing was abilities, this was my favourite work. This version was completed approximately 50% just left the abilities. I let my friend to try playing my game. Their comments are: Good idea, but too complicated, too many thing, not fun …

When I realized SFS (Smartfox Server, a program to help developer in making multiplayer game), I came out with another idea. This time was “Online Multiplayer DotA Chess Game”. This version no more using card. When the game started, host chose the race. If host was Sentinel, then his/her opponent will be Scourge and vice versa. Then, each player had to chose one of Sentinel/Scourge turn by turn until each player had a maximum number of heroes. There’s 3 heroes had their position: Commander in Chief, Army Corps Commander, and Division Commander. Each position gave different bonus of stats. Anyway, many game elements were still same, just change a different playing way. I had my full confidence to make this DotA Chess Game and greatly hoped it will be a fun game. Everyday I also imagined how fun this game will be if it is done. This one I also completed a lot of thing.

One day, one friend came to find me. He asked me whether I had the interest to help him to make a Flash game (A company project). I accept the job. From this project, I learnt OOP and realized a lot of benefits through using OOP style. So … I changed my DotA Chess Game into OOP. My code became tidy and easy to read, some more I added comments. This version must be the final version with the fun gameplay and tidy OOP-style coding.

But one day a cruel matter happened on me, my dear Laptop was infected by a damn virus causing it unable to log into Window. Damn it. I hoped to remain all of my stuff inside my Laptop so I had no courage to format my PC by myself. In a morning, I sent it to a PC shop, I told a guy about my PC problem and asked him to format my PC without deleting any thing inside. He promised me. But after I wanted to take back my Laptop. He showed the “good” matter he did to my Laptop. He said he could not find the stuff inside MyDocument, so the stuff inside were lost. He said the movies, files inside D drive was still remained but my installers left 2 only (Before there’s 30++ installers inside). Damn it. Why I kept these installers, that’s for convenience purpose after I formatted my PC. Then I needed to search back all the installers again…

I forgot to backup my DotA Card Game, New DotA Card Game, Non-OOP and OOP DotA Chess Game into D drive before my Laptop get infected, they are lost … All have already to be history. Seems like I have a dream of creating such game in my life.

August 5, 2007 Posted by | Life, Programming | 2 Comments

History of Gaming

Indeed I prefer to create games more than play games. I’m just a casual and bad skill gamer. Games that I can play very well are action games, but 2-dimensional one. So, I quite like to play “Rockman” or “Megaman”. But nowaday very very few 2D action games, many people rather buy a 3D action game without good gameplay than 2D action game with good gameplay.

I like to think but only for programming and games, so I like to play strategy games. But my skill in playing game is not really good. With a bad control and slow response, I’m hard to play well in real-time strategy games. Since the first time I met with Starcraft, I played its campaign. After a few months, I knew the cheat code. Everytime I played until bored with the level (Because lose too much), then I will type “this is no cow level”. After “finish” campaign, I went to play with AI. When their base grew huge and nearly raze my whole base, I will type “power overwhelming”. Then, I bullied back them. Said actually, during the moment, I couldn’t even fight one AI computer. I tried few times to fight one AI computer without using cheat code, but never get victory. Then I played the Map Editor. It’s really my favourite thing.

I’m crazy with playing the Map Editor for more than 4 years but never been bored with that. Gamers were crazily training themselves through playing with multiple AI computers or fighting with friends or joining tournament. But I’m practising how to use the Map Editor (Actually it’s easy to use, within one week I already knew all features and “coding” stuff) and creating more than 200 maps (my own game champaign, mini games). Since I realized such good program, my time for playing games became lesser and lesser because all of my time and spirit were put on designing maps. The map editor for Warcraft III was more great. But it’s quite complicated so it’s not easy to learn and understand the whole features during a short period. I stopped to play the Warcraft III Map Editor since I had Macromedia Flash.

I think, since I realized DotA from one of my housemate, my time for playing games was slowly increased. During my Alpha year, my apartment was really a gaming heaven. All the lines were connected together for the whole block of apartment. So, all the tenants could play any games using Local Area Network (LAN). Everyday we had the DotA meeting, starting after dinner to midnight. Sometime I played Counter-Strike but everytime let people killed only. Blueserver seemed like a god for DotA fans. DotA became my favourite game until now. DotA was a teamwork game, but I didn’t like to play combo kill with my teammate. I like to kill by myself to show my pro-ness (Expert skill in DotA). Before, those player was easy to get bullied by me. But nowaday many noobies also become professional DotA gamers. So I could not solo kill anymore. So I’m forced to learn teamwork.

Recently, I played back all those games I played before and long time didn’t play such as Counter-strike, Warcraft III, Starcraft and etc. Everyday I upgrade my skill in Counter-Strike with my friends and a “CS-King” but this game was quite hard to say improvement, depending on luck one. I discovered that Starcraft is more fun than Warcraft III. I missed the Starcraft’s golden age, so now I play back it. LOL. Play for 3 times, I could win an AI computer without using cheat code. Hehehe …

August 2, 2007 Posted by | Life | Leave a comment

Forgettery

It is undeniable that I’m a forgetter, who is a person who easily forget something.

Today I did an Oh-My-God thing. I asked my roommate to go out for dinner. But he was busy playing WoW (World of Warcraft) because the battle was nearly started. Then I asked him what he wanted to eat and I bought for him. He said, “Chao Kui Teow”. Alright, the thing was already saved in my brain storage. After we had our dinner, we totally forgot something need to do and went back home. As I reached to my home unit, my brain suddenly reminded me that I needed to buy dinner for my roommate. Anyway, it’s late. Aikz …

I had a great dictionary program. It’s very useful because it helps me a lot on understanding any English sentences. But unfortunately, I cannot remember these words that I checked and learned before although I tried hard to memorize them. I looks at these words, they are so familiar, but I don’t know the meaning of them. Because of this forgettery characteristic, I don’t like to read theory for exam. Because those theory thing I read repeatedly and understood well. I could not take them out from my database during exam. What could I do was only writing something on the answer paper according to my common sense. People said that understanding something will get something to be easily remembered. But it seems not apply for me.

I always forgot what I did for the previous few days but those forgetting thing was not important. Luckily I still can remember important thing. Haha. Some keyword play role as a key to unlock my database. Such as today I ate dinner with my housemate, she said that yesterday I had my dinner at Sri Kembangan. But I didn’t have the impression of that. I was thinking what was happened during my dinner time and I said I cannot remember that I went to Sri Kembangan yesterday. After that, she asked,”Dengkil?”. This word “Dengkil” caused me to remember back all those matters happening during that time. OMG! Hahaha …

In conclusion, I am a forgetter. Sad thing indeed.

July 29, 2007 Posted by | Life | Leave a comment

Annual Code Match 2007

Always want to write blog but lazy to create an account. Now finally have my own blog.

Yesterday (Saturday), I had participated in ACM (Annual Code Match) which was organized by Multimedia University (MMU). This is my first time to join this competition. With my two friends, who are the legendary people in MMU Programming Competition because they are the winners in the ACM last year. Their team name is SJK (Sekolah Jenis Kebangsaan?) and they are Solid, Josh and Kuan. But this year Josh didn’t want to join so I replace him. Our team name is “Ace of Spade”.

Because of this ACM and my teammate wanted to use Java for the competition, I started to learn back Java one week before the ACM. I almost forgot how to start writing Java code. Anyway, this was not a thing need to be worried since my house had a Java God – Solid. Through his teaching, I learn back all the Java syntax very quickly. To prepare for the ACM, I tried to do these questions from my trial ACM paper. I used 3 days to solve all the questions. It seems not a good result for me because the duration of ACM was 3 hours for solving these questions. Then I read the “Art of Programming” which was prepared by ACM orgranizers and tried to learn these algorithms.

The day of ACM, that’s yesterday morning, my teammate and I came to the competition venue one hour before the competition started. I felt very hungry. The food was prepared, there are nasi lemak, donuts, junk food, and etc. I ate the nasi lemak, quite nice. Our strategy for the competition is: Solid was responsible to do programming part (the most pressure job), Kuan and I were responsible to read the questions, wrote down what these questions requested and also the algorithms. Anyway, we worked as a team. The competition time passed quite fast and we also increased much for our time used because we always either chose the wrong file to submit or selected the wrong question title and get a lot of +20 seconds penalty. May be too nervous …

After the competition finished, we solved 4 questions. Then we got the 3rd place. The team named “Cincai” got the 2nd place and the winner was Team “!” … Don’t know whether we have a chance to be selected to join the programming competition in Singapore but anyway this is a great experience for me.

Hope that we are selected to join the Singapore’s ACM then we can get more experience and do better than this time.

July 28, 2007 Posted by | Programming | Leave a comment