Refactoring: A quick overview

Hi! As promised, here I am again with another “basic concepts for coding lovers” thing. Before proceeding, I’d like to say thank you to all the people that read my last post and gave me feedback, because you help me very much during my learning process. 🙂

Well, after this short but certainly emotive declaration, we’re getting into the matter. Today we’ll learn about refactor. Continue reading “Refactoring: A quick overview”

SOLID principles

I’m applying for a job in a frankly interesting company, so I’m reviewing all the good programming practices I was taught and learned during my career. Those are essential for developing good code, however an alarming number of “programmers” don’t really understand them (or actually never heard about them).

Continue reading “SOLID principles”

AI in games III – Pathfinding

This post is the third part of the talk I gave on the WTM and belongs to this root post.

We call pathfinding to the process by which the machine calculates the shortest or fastest path from its position to the position of its target.

Pathfinding sits on the border between Autonomous Movement and Decision Making, because usually we first decide where we want to go, then pathfinder works out how to get there, and finally we move to the goal using a movement control system.

Continue reading “AI in games III – Pathfinding”

How to program a robot to dominate the world

robot_blackHey everybody! Today I attended as speaker to the WTM event in CastellĂłn, and I gave a 30 minutes talk about artificial intelligence and how to implement it in video games using gdxAi.

And so I tought it would be interesting to write the content of that talk in a post. This will allow me to develop an explanation about what AI is, and at the same time I’ll be able to link my sources and embed the recorded talk and the Prezi. Let’s do this!

Continue reading “How to program a robot to dominate the world”

Artificial Intelligence IV – Pathfinding

Today I’ll write about Pathfinding. Pathfinding is the plotting of the shortest route between two points. Applied to videogames, it is a process through which the AI calculates the most suitable route to get from a starting point to the goal, even across mazes.

gdxAi provides an API for this feature, the (obviously) named Pathfinding API. While steering behaviors were the best option to pursue dynamic targets, pathing is optimized to pursue static targets. Thus, I implemented it on the kitten’s movement towards a waypoint.

Continue reading “Artificial Intelligence IV – Pathfinding”

Artificial Intelligence III – Repulsion behavior

As explained in my previous post, I had a problem with the movement of the mob. When the mob was following the kitten, and suddenly encounter a collidable obstacle in the way, he was getting stuck at that obstacle and wasn’t able to pursue the kitten anymore.

I noticed that, after that happened, the ray thrown by the mob was colliding all the time, making impossible for the mob to see the kitten. Hence, the mob was not just colliding with the obstacle, but actually getting inside the obstacle.

Continue reading “Artificial Intelligence III – Repulsion behavior”

Artificial Intelligence I – Arrive behavior

Hello everynyan! Was summer vacation long enough? Did you enjoy any relevant videogame or anime series? Please, let me know!

Here, summer was full of great experiences. We organized another meeting with our World of Warcraft guild and it was as funny as always! Also I joined my family for a few days, which is important because they live 500 Km. away from me.

Back to work, I started playing around with the awesome gdxAI, so today I’ll talk about Artificial Intelligence! Doesn’t it sound good? 🙂 Continue reading “Artificial Intelligence I – Arrive behavior”

Refactor to MVC

Hi! It’s been a while since my last post. My live has changed so much! I finally left my dryasdust work at a large IT consulting company, and got another job at a small Dutch company. Dutch people rock! I changed my job, I changed my house, I lived all new kind of experiences in different countries… And I also changed my mind! Now let’s code again!

Continue reading “Refactor to MVC”

Game Physics

In this third step I achieve kitten’s movement. I had to dust off my physics and mathematics schoolbooks and used tons of scratch paper where kittens became arrows, numbers and strange Greek symbols. It was kind of bleak until I saw the real kitten romping around through the screen. At that moment I smiled and added six more kittens and light projecting functionality just for fun.

Continue reading “Game Physics”

Act I

Here’s my first post. I’ve been working on a first simple quest: animate a kitten.

I recommend you to download the code from github before continue reading.
I’ve inserted some links across the post. Some of these links will guide you to external resources. Other links lead to my code.
I will differentiate my links with this color.
It is important that you keep this in mind because it may be difficult to figure out what am I trying to do without reading the related code.

Please, forgive me for using other’s charset on this first steps. I know I will have to start drawing some day, but for the moment I rather focus on software design in order to avoid overwhelming myself.

Continue reading “Act I”

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑