The Anatomy of a game Part II
So I decided to challenge the Time Bounded and object bounded events and see how the game behaves;
a) The last stage is really interesting; it is where the compute gives you a message that the mission is over and Thank you and you can head “South” to go home! So using your compass you start to move south. After a 30 to 40 seconds delay suddenly a message comes on board “Sudden incoming Enemy Aircrafts…” and all hell breaks loose. What I did to test the time boundary was that I started to fly West instead of South. Knowing that the planes would come in from South East! So I was flying in completely opposite direction; something interesting happened. (a) The game looses the direction sense. After flying for 30 seconds west when I turned south I was immediately headed for the Sea where I knew I cannot fly further due to the warning message. So I was lost; I tried west again which surprisingly started to lead me to home base! And all this efforts were raising the time window. Then I tried east, and after flying for 20 more seconds finally the enemy aircrafts appeared! What happened there was the event which should not have happened occurred; i.e. the main objects loosing direction of a synchronized event. So all events started to re start and hence loosed the time bondage!
b) The next thing to test was the elevation; a user can raise his plane to certain elevation and no more after that. Once you reach that elevation the plane started to drop rapidly and you also seemed to lose control, but that is harmless; Enemy planes however tends to fly a little higher so if you try to reach the maximum altitude while chasing the enemy, suddenly you can drop due to that height.
c) There is another interesting stage where you need to shot down the bombers; the bombers fly slowly so you need to adjust your speed and the firing angle to get them at the right time. If you get too close they will fire upon you and that is the end of you. But then I decided to another thing; What If instead of using machine gun fire I drop a bomb on the bomber; well it does not happen! The bomb simply crosses in the middle the object and drops on the ground.
d) On object bound event; I noticed that before engaging the enemy; if I have the maximum altitude and suddenly drops to lowest height the incoming aircrafts remained on my previous height; It provided me a time window to shoot at that plane as it comes in to sync with my height;
e) If there are multiple planes coming in then the one with your line of sight shall change the altitudes and the remaining will follow that plane parameters to adjust directions.
f) Interesting; in a battle sequence I decided to destroy all enemy target and planes except for the ultimo hombre (the last man standing). What I decided to do next let me discover and test so many facts. I moved behind the remaining enemy aircraft and started to pursue it. What I realized first instance that my actual speed is faster than that of the enemy craft. So I pressed control to slow down my plane; the moment I started to chase it I thought that the enemy plane would maneuver itself to save itself, but it didn’t! Instead, it started to move in circles. After 20 circular fly passes I was annoyed. So I decided to fire on it; Two shots hit it which did not destroy it, but as it is hit the enemy airplane changed the direction flew straight and then moved back to the circular motion (interesting). Now I decided to play along so I accelerate and moved above him; this time he started to fire his machine gun; next I moved my plane in the downward direction just a degree down so that I won’t lose the pursuit. As the objects are related so the enemy aircraft started to go down as well; Here I came to know that there is another controller which is independently sensing the terrain for enemy aircraft. The moment I was a feet above the ground the enemy aircraft started to save itself from the tree lines and the ground below. But its movements were sudden not smooth like Human
g) Now, to make things more interesting I decided to run for it; so I pressed shift speed up my plane and ran like hell. I can see in the radar that the enemy aircraft remained where it was. Its controller started to calculate my direction and speed. The distance between us increased and I was thinking now what? But then Sea arrived, so I had to turn my plane, and that is when I realized that the plane will automatically move in circle and I will have the enemy on my head. That happened and it started to engage me again by firing. So I changed the altitude on rapid speed reached the highest point and then dived down rapidly, with the controller to calculate again what I have done, I easily moved behind the craft by taking a 360 degree turn and opened fire – the plane destroyed and mission completed.
It is a wonderful game and with so simple controls. Yet you feel the exact speed and physical effects just like in real life. I wish more people would play it and play other games as well and try to explore it with testing skills. It would increase your fun of playing that game.
As James Bach has said while talking about galumphing in Test Bash 2013 –
“Galumphing is a style of test design and execution whereby inert variations in test procedures are used to find unanticipated and potentially important bugs.”….means; Find those bugs that matters…all of them!”
Or while explaining about exploratory testing;
“The specifics of the puzzle, as they emerge through the process of solving that puzzle, affect our tactics for solving it.”
So why not apply these techniques on whatever we test from now on, and get the best out it?
* Arslan is an experienced tester and has been a source of inspiration for the testing community in Pakistan. He very actively manages a LinkedIn group Software Testers & QA from Pakistan which has over 1300 members (and it is growing). He also conducts trainings on how to be effective as testers and his next training is in September. I feel it as an honor to have his article appearing on my blog. Thanks Arslan.”