Wednesday, December 16, 2015

ODTUG APEX Gaming Competition - How'd They Do It? (Part 7)

At Kscope 15 this year we launched the first ever ODTUG APEX game competition. The APEX community responded with 15 entries! Each and every one of them left me thinking "How'd they do that?" So, let's find out more about the games and those who wrote them.

Next up is the one...the only....Nick Buytaert.


First off, tell me a little about yourself.

My name is Nick Buytaert and I work as an Oracle consultant for Contribute NV. We are located in Belgium. You can always contact me on Twitter @nbuytaert1 or through my blog APEXPLAINED at https://apexplained.wordpress.com/.


How many years of APEX experience do you have?

I have around five years of Oracle APEX experience.

What motivated you to participate in the APEX Gaming Competition?
The APEX Gaming Competition was a great opportunity to step outside APEX its comfort zone. Instead of working on a back-office business application, I had the chance to develop an actual game. 


What is the name of your game?
The name of the game is MoviePick.



Briefly describe your game.
MoviePick is a movie guessing game based on a movie database web API. 
The goal is to correctly guess five different movies by requesting specific hints. The more hints you need, the less points you will get per movie. There are four types of hints you can pick from: movie facts, actors, backdrops and character hints. 
After finishing the fifth round, you have the possibility to register your score.


How long did it take you to develop your games?
It took around two weeks to develop the game.


What was the most challenging element of your game design and how did you overcome it?
Before starting development, we had one important question to answer: “To invoke the movie database API from client or server side?”. The easy solution would have been to pick the client side. Calling a couple of web services in JavaScript (or jQuery) and storing their JSON result into a variable is pretty straightforward. However, this would mean that all movie information would just linger around in the browser. You would literally see the movie title passing by when keeping an eye on the incoming movie database AJAX responses. 
This idea bothered me too much and made me choose to invoke the movie database web services from server side. Each hint requested by the end user would then result in a separate AJAX call returning only the requested information.

Invoking the web services from PL/SQL also gave me the opportunity to play around with the new APEX_JSON package, which has been introduced in APEX 5.0. After getting familiar with the package, it was pretty easy to parse the movie database JSON responses and collect all relevant movie information.

Alright, how can I play?
You can play the game at http://contribute.be/moviepick/   No credentials required.

Anything else you'd like to add?
I'd like to thank ODTUG for the organization of the contest

Thanks, Nick. In the coming days we'll share more insight into a few of the remaining games that were part of the contest.

...our journey continues

No comments: