Skip to Content


Starting up a game business: Travelguide into Finnish public funding - by Juha Vainio Blogs - 19 April 2015 - 10:22pm
Epic Owl's CEO Juha writes about how to go about funding a game startup in Finland and how to avoid some of the pitfalls on the way. An interesting and eye opening article even if you aren't from Finland.
Categories: Game Theory & Design

AR App with Wikitude SDK Using Cordova on Visual Studio 2013 - by Mamdouh Tarabishi Blogs - 19 April 2015 - 10:22pm
In this article we will see how to setup Wikitude SDK with Cordova on Visual Studio 2013. we will use the official samples provided by Wikitude.
Categories: Game Theory & Design

How jRPG influenced creating football manager - by Andrey Kostyushko Blogs - 19 April 2015 - 10:22pm
The story about origins of idea of Football Tactics
Categories: Game Theory & Design

Shader Cross Compilation and Savvy - The Smart Shader Cross Compiler - by Apostol Dadachev Blogs - 19 April 2015 - 10:06pm
Taking a look at the problem of shader cross compilation and introducing a solution which utilizes a purely text based approach.
Categories: Game Theory & Design

The Holy Trinity - by Jouse Then Blogs - 19 April 2015 - 10:06pm
Should the Holy Trinity (TANK, DPS, HEALER) be enforced more or should players have more freedom to build how they want, even though this creates issues?
Categories: Game Theory & Design

Styleguide File Snippets

New Drupal Modules - 19 April 2015 - 2:38pm

This module allows the Styleguide to be extended with snippet files from the local filesystem. The goal is to allow front-end developers to easily add markup components to a code repository so that they may be:

Categories: Drupal


New Drupal Modules - 19 April 2015 - 4:25am

The blogs module in intended for sites hosting multiple bloggers.

It provides a page and block that lists all bloggers having at least one blog post on the site, sorted descening (most recent posting first).

If the user profile has text a field with machine name field_blog_title, this will be used as the blog title instead of the user name. Note that the module will not create this field for you.

Categories: Drupal

Plugin Selector

New Drupal Modules - 18 April 2015 - 6:07am

Plugin selectors allow users to select plugins of a particular type and configure them using the plugins' configuration forms.

This module is a tool for other modules to build user interfaces. Using plugin selectors, your users can easily select and configure your plugins and you won't have to write any complex form API integration; the plugin selectors will do that for you.

Categories: Drupal

Jim Birch: Drupal 7: Hide Sticky and Promote

Planet Drupal - 17 April 2015 - 6:35pm

Promoted to front page? Don't worry about that, we don't use it.

That was the phrase I heard from a developer on the first site I was tasked to theme. I had asked what the "Promoted to front page" check box on the admin screen of a content type was what put it in the queue on the home page. 

It turns out that most every home page our agency ever built in Drupal had more complex requirements than that sole checkbox allowed for. 

The same goes for Sticky at top of lists. No one ever uses those, just ignore them.

What makes sense for a developer to ignore, can cause confusion for an administrative user.  The admin doesn't know all of the hard work that went into the Panel that drives the home page, or the view that creates the pane for the home page.  They just see a simple checkbox.  And when that checkbox doesn't do what it says it does, the site seems "broken".

So, I started searching, and found a great post discussing this problem, and a great solution from user StudioZut, who has created a custom module called "Hide Sticky and Promote" as a Drupal Sandbox and a Github Repository.

Read more

Categories: Drupal

'Where do you make your games?'

Social/Online Games - Gamasutra - 17 April 2015 - 4:26pm

We have a diverse crowd making games these days -- so why not take a look at their workspaces? ...

Categories: Game Theory & Design

Code Karate: Drupal Views Module: Creating lists of content on your Drupal site

Planet Drupal - 17 April 2015 - 12:14pm
Episode Number: 203

In this episode we cover an overview of the Drupal 7 Views module. The Drupal Views module is probably the most popular Drupal module and is installed in almost every Drupal 7 website I build. It’s so popular in fact that it’s included in Drupal 8 by default.

Tags: DrupalViewsDrupal 7Site BuildingDrupal Planet
Categories: Drupal

Video: How BioWare built enough content to fill The Old Republic

Social/Online Games - Gamasutra - 17 April 2015 - 11:54am

At GDC Online 2011, BioWare's Georg Zoeller uses Star Wars: The Old Republic to explain how spatial analysis can be used to support a rapid content iteration process during the late stages of MMO development. ...

Categories: Game Theory & Design Featured Case Studies: National Baseball Hall of Fame and Museum

Planet Drupal - 17 April 2015 - 11:30am
Completed Drupal site or project URL:

The National Baseball Hall of Fame and Museum (BHoF) is an American institution. For 75 years they have housed the archive of America's favorite game, welcoming new inductees each year and connecting generations with their huge love and knowledge of the sport.

BHoF has a large and dedicated audience, but their location in Central New York limits the number of physical visits to the museum. To reach a wider audience, they needed to unlock the full potential of their online presence.

Cogapp helps organizations use digital media, specializing in large-scale, mission-critical projects for prominent institutions.

BHoF appointed Cogapp to perform a discovery phase to research user engagement, the kinds of content that are of interest to users, and key value propositions of the website to its visitors. This work then fed into developing the site, with the central objective being to showcase the vast number of artifacts in the Hall's collection, creating connections that bring these objects to life for site visitors.

Key modules/theme/distribution used: Islandora Imagecache ExternalParagraphsEntity APIMetatagFeaturesStrongarmMasterVarnish HTTP Accelerator IntegrationOrganizations involved: CogappTeam members: alxbridgechapabutassos
Categories: Drupal

Drupal Watchdog: VIDEO: DrupalCon Amsterdam Interview: Angie Byron

Planet Drupal - 17 April 2015 - 9:59am

Angie Byron is Director of Community Development at Acquia. For this interview, during the final day of DrupalCon Amsterdam, we were able to find an empty auditorium. Alas, filming with my brand-new GoPro camera, we got off to a topsy-turvy start...

RONNIE RAY: I’ve had you upside down.

ANGIE BYRON: Oh hahaha!

I go by Angie Byron or webchick, and more people know me as webchick than Angie Byron.

Today, what I love to do at DrupalCons, on the last day of the sprint days, is just walk around all the tables and see what everyone is working on, cause there’s hundreds of people here and they’re all sort of scratching their own itches on everything from Drupal-dot-org to, like, what is the newest coolest content staging thing gonna be?, to how are we going to get Drupal 8 done?

And everybody working together and collaborating with people they don’t get to see all the time, it’s a lot of fun for me.

I feel like we made a lot of really great decisions about the Drupal 8 release management stuff here that we’ll be able to put into practice, and help try and focus efforts on getting the critical issues resolved, trying to clean up the loose ends that we still have, and getting the release out the door faster.

And the other thing I’m going to work on for the next month is something called Drupal Module Upgrader, which is the script that can help contrib modules port their modules to Drupal 8. It automates a lot of that task.

Now that Beta is here it’s a great time for people to update their modules, so I want to work on tools to help facilitate that.

RR: What are you reading, besides books on Drupal?

AB: Not much. Although I love reading kids books, because I have a daughter who’s 16 months now and she loves to be read to. So my latest books I’ve been reading are Where is the Green Sheep? and Go, Dog, Go! and a bunch of Richard Scarry stuff and things like that because she loves to know what everything’s called. She loves books.

There’s a Dr. Seuss book called Oh, The Places You’ll Go! That book is dark, man, that is like a dark book. It’s entertaining. I remember it from when I was a kid but I don’t remember it like that!

RR: Music?

AB: I listen to a lot of old music cause I’m one of those curmudgeonly people who thinks the best music was already made. So, like I’ve been having like a ‘70s rock, ‘80s pop, ‘90s punk rock, like – that’s sort of what’s in my chain all the time. Hair metal, junk like that. How to relive my kid-age stuff.

I think the community has grown to such an enormous size now that I guess one thing I wonder about, – not really worry about– but am curious about, is if can we still maintain that small-knit community feel that we had back when I started, when we were 70 people at a DrupalCon – not the 2,500 people we have now.

It’s cool to kind of walk around DrupalCon, especially on a sprint day, especially because I feel we have retained that – and people are finding people to connect with and cool things to work on and stuff like that.

I think it’s something we all need to collectively be intentional about is, you know, it’s not just enough that Drupal is just a great software project, it’s also about the people and trying to maintain that welcome feeling – that got us all in the door – for generations to come.

So that’s something I would leave as a parting note.

Tags:  DrupalCon DrupalCon Amsterdam Video Video: 
Categories: Drupal

Chapter Three: Presentation: Drupal 8 Module Development

Planet Drupal - 17 April 2015 - 9:15am

This session was presented at Bay Area Drupal Camp, San Diego Drupal Camp, Phoenix Drupal Camp, and Stanford Drupal Camp.

Have you written a few simple modules for Drupal 7, and are a little bit nervous to find out the changes you'll be facing in Drupal 8?

Categories: Drupal

Aten Design Group: Speeding up Complex Drupal Data Loads with Custom Caches

Planet Drupal - 17 April 2015 - 8:27am

Recently we had the task of loading data from a content type with 350 fields. Each node is a University’s enrollment data for one year by major, gender, minority, and a number of other categories. CSV exports of this data obviously became problematic. Even before we got to 350 fields, with the overhead of the Views module we would hit PHP timeouts when exporting all the nodes. If you’re not familiar with Drupal's database structure, each field’s data is stored in a table named ‘field_data_FIELDNAME’. Loading an entire node means JOINing the node table by entity_id with each related field table. When a node only has a handful of fields, those JOINs work fine, but at 350 fields the query runs slow.

On this site we’re also plotting some of the data using highcharts.js. We really hit a wall when trying to generate aggregate data to plot alongside a single university's. This meant loading every node of this content type to calculate the averages, which turned our slow query into a very slow query. We even hit a limit on the number of database JOINs that can be done at one time.

In retrospect this is a perfect case for a custom entity, but we already had thousands of nodes in the existing content type. Migrating them and implementing a custom entity was no longer a good use of time. Instead, we added a custom table that keeps all the single value fields in a serialized string.

The table gets defined with a hook_schema in our module's .install file:

function ncwit_charts_schema() {   $schema['ncwit_charts_inst_data'] = array( 'description' => 'Table for serialized institution data.', 'fields' => array( 'nid' => array( 'type' => 'int', 'default' => 0, 'not null' => TRUE, 'description' => 'node id for this row', ), 'tid' => array( 'type' => 'int', 'default' => 0, 'not null' => TRUE, 'description' => 'intitution term id that this data belongs to', ), 'year' => array( 'type' => 'int', 'default' => 0, 'not null' => TRUE, 'description' => 'school year for this node', ), 'data' => array( 'type' => 'blob', 'not null' => FALSE, 'size' => 'big', 'serialize' => TRUE, 'description' => 'A serialized array of name value pairs that store the field data for a survey data node.', ), ), 'primary key' => array('nid'), );   return $schema; }

The most important part of the array is 'data' with type 'blob', which can be up to 65kB. Not shown is another array to create a table for our aggregate data.

When a new node is saved hook_node_insert() is invoked. hook_node_update() fires both when a new node is saved and when it's updated.

/** * Implements hook_node_insert(). * save serialized field data to inst_data table for a new node * For a new node, have to use this */ function ncwit_charts_node_insert($node) { ncwit_charts_serialize_save($node); }     /** * Implements hook_node_update(). * save serialized field data to inst_data table */ function ncwit_charts_node_update($node) { if (isset($node->nid)) { // we're also calling this function from hook_node_insert // because hook_node_update doesn't have the nid if is a new node ncwit_charts_serialize_save($node); } else { return; } }

Now we actually process the fields to be serialized and store. This section will vary greatly depending on your fields.

function ncwit_charts_serialize_save($node) { // save each value as a simple key => value item foreach ($node as $key => $value) { $data[$key] = $value[LANGUAGE_NONE][0]['value']; }   $fields = array(); $fields['nid'] = $node->nid; $fields['tid'] = $node->field_institution_term[LANGUAGE_NONE][0]['tid']; $fields['year'] = $node->field_school_year[LANGUAGE_NONE][0]['value']; $fields['data'] = serialize($data);   db_merge('ncwit_charts_inst_data') ->key(array( 'nid' => $node->nid, )) ->fields($fields) ->execute();

When a node is deleted we have some clean-up to do.

/** * Implements hook_node_delete(). * Also remove node's data from inst_data */ function ncwit_charts_node_delete($node) { if ($node->type !== 'data_survey') { //only care about data_survey nodes return; }   $query = db_select('ncwit_charts_inst_data', 'i'); $query->fields('i')->condition('i.nid', $node->nid); $result = $query->execute(); $data = $result->fetchAssoc(); if ($data > 0) { db_delete('ncwit_charts_inst_data')->condition('nid', $node->nid)->execute(); } }

When first installed or when fields get changed, we added a batch process that re-saves the serialized strings. Aggregate data is calculated during cron and saved in another table. Rather than loading every node with JOINs, the data comes from a simple query of this custom table.

Pulling the data out of the database and calling unserialize() gives us a simple associative array of the data. To pass this data to highcharts.js we have a callback defined that returns the arrays encoded as JSON. Obviously this gets more complicated when dealing with multiple languages or multi-value fields. But in our case almost everything is a simple integer.

This process of caching our nodes as serialized data changed our loading speed from painfully slow to almost instant. If you run into similar challenges, hopefully this approach will help you too.

Categories: Drupal


New Drupal Modules - 17 April 2015 - 8:14am

Documentation [TBD]

Categories: Drupal

Horror on the Orient Express

New RPG Product Reviews - 17 April 2015 - 7:56am
Publisher: Chaosium
Rating: 5
Originally posted at:

After more than TWO YEARS since being funded, a final version of the Horror on the Orient Express remake has been sent to the 1,374 Kickstarter backers that made it happen. Sure it was originally scheduled to come out in August of 2013, but it’s very rare that tabletop games make their estimated release date. It’s part of the industry. What matters is that it is here now – at least for Kickstarter backers who pledged at least $20 to the project. For everyone else, you can get this massive PDF collection for a “mere” $499.95. Now don’t worry – this price will drop after the official release of the physical product in a few weeks. This hefty price tag is to make sure that the Kickstarter backers (or those who have Sanity Points in the single digits) have a few weeks to themselves with this. Considering the physical product can be preordered for about $120, it’s safe to say the PDF collection itself will be under $100.

Now if you joined me back in January of 2014, you already know that I’ve extensively looked at the first four books in this collection (Chaosium sent me the proofs – that’s why I could cover it nearly a year before the actual release) and did a photo collection of some of the many ancillary items that can be obtained with (or separately from) the physical edition of the game. I won’t be rehashing those. Instead I’ll be covering everything but those parts of the collection in this review. For those interested in reading very long and detailed coverage of the first four books and some physical swag, here are the links:

Add-on and Ancillary Items (
Book I: Campaign Book (
Book II: Through the Alps (
Book III: Italy and Beyond (
Book IV: Constantinople and Consequences (

I should also mention that I will also do a review of the physical product when that is finally release, although that will be more a pictorial of all the bells and whistles. I will review the story collection Madness on the Orient Express that was a stretch goal funded by the Horror on the Orient Express Kickstarter as well. Man, you are probably getting sick of all the Horror on the Orient Express coverage I’ve done this year but honestly, I’ve been waiting for a new version to go with my Fifth Edition version since I was in high school, so I’m even more excited for this than the Seventh Edition books coming my way. Now, let’s look at what else is in Horror on the Orient Express besides those core four books we looked at in January and February.

Book V: Strangers On the Train. This is the final core campaign book for Horror on the Orient Express. I didn’t cover it in my original preview pieces, mainly because Chaosium had not sent it to me. Now I have a copy and can delve into some detail about what you’ll find in this ninety-four page booklet. As this is the biggest piece I haven’t covered, expect this to be the largest section of the review.

Strangers On the Train starts off with a look at famous people who could be found riding the Orient Express. This two page brief is broken into three sections: 1890-1900, Around 1900 and After 1920. From there, the book goes into a list of non-essential NPCs to populate the train with. This list of over forty characters (more if you count the “entourage” each NPC has with them) includes both passengers and staff and also can make for potential PCs once one of the original characters dies in the campaign. You’ll have to flesh the stats out a bit in this case, but if there’s a particular NPC a player gravitates toward, this might be a fine option for you. The “List of Passengers” is quite long and it’s arranged not by page order but by alphabetical order. Of course alphabetical order is by first name or beginning of a title, so take a good long look at the list or you’ll get confused thinking the actual layout of this section is in alphabetical order as well. Much of “List of Passengers” is a direct reprint from the original campaign, although the list was in a small loose leaf (Unstapled) pamphlet. There is new art in this re-release of the campaign though.

Book V then concludes with “Investigators.” There are twelve premade characters here for your use. The first six come from the Bradford Players recording of Horror On the Orient Express, which can be found over at and the other six were created by Kickstarter backers. All characters are given Seventh Edition stats, so you’ll have to do a bit of converting if you want to use with an earlier edition.

Book VI: Handouts for the Investigators. This is a 196 page book and a new addition to the campaign from previous printings. Previously the campaign was only numbered up to Book IV and the handouts pamphlet was about sixteen pages in length. This is a greatly expanded booklet with a page count worthy of being considered a full campaign book in its own right. The production values are also greatly increased. It is all stuff you have seen before though. It’s just a collection of all the handouts and maps in the first four books, collected for easy use and printing. After all, you don’t want to show the players one of the handouts in a campaign book and let them see snippets of content they aren’t meant to view! I really like this addition, especially the PDF version, because I don’t cut up my books and I hate folding/creasing them on a Xerox machine or scanner to make actual handouts for players. This is a great move by Chaosium.

Le Guide du Voyageur: The Traveller’s Companion. This is another new piece for the updated and expanded 7th Edition Call of Cthulhu version of Horror on the Orient Express. This fifty-two page supplement is meant to really enhance the look and feel of the campaign for those that want a more immersive experience. The piece is written completely in-game and it acts as a little booklet from the Orient Express and its concierge to its travelers. You get travel advice, menus, information about the routes, sites to see and so much more. This is perhaps my favorite aspect of the Horror on the Orient Express remake as it’s so well done. Sure some gamers won’t appreciate or even make use of this, but this little travelogue is pretty fantastic and it’s something I’ll give to each player who takes part in this campaign the next time I run it to really help them get a feel for what the level of class and care the Orient Express was known for in its heyday.

Air Routes of Europe in 1923. This is a one page PDF and it’s exactly what the same suggests. It is a map of Europe complete with air routes that were used back then. This should help players who are trying to circumnavigate the region or who might have missed the Orient Express and are trying to catch up quickly. It’s worth noting that Italy, Portugal and Ireland lacked air routes at this time – at least according to the map.

Routes of the Orient Express. Another self-explanatory one page PDF. This is a full colour piece showing the routes of the five different Orient Express routes throughout Europe, along with a sixth “lesser services” route. Each route is assigned a different, distinct color so you should be able to follow the map quite easily. Unless you are colorblind or only can see in black and white. Then you’re screwed. The map also a nice little legend details major cities, capitals, and locations important to the Horror on the Orient Express campaign. There are also close-ups of three regions to let you and your gaming troupe better see these areas which will come into play as you go through the campaign.

Orient Express Bumper Sticker. Exactly what you think it is.

Sedefkar Simulacrum. A print and play version of the McGuffin that the campaign revolves around. A VERY different version from the one in my old 5e set. I like the new design.

Train Car Plans. Five pages of diagrams showcasing the layout of the Orient Express cars. You have a dining car, a sleeping car, a cathedral car and more. Everything you need to give a visual representation of the train is right here.

Scroll of the Head. This is a one page PDF describing what the Scroll of the Head is and how to use it in the campaign. It also gives some neat ideas on how to make the scroll look aged and weathered. It also references a “How to Use Supplemental Items” sheet that should be in the boxed set, but unfortunately, it’s not in my PDF collection. Boo-Urns.

Overall, the updated and expanded version of Horror on the Orient Express is truly fantastic. If you missed out on the original back in the day for whatever reason (Age, lack of funds, didn’t play the game), you really need to pick this up to see just what an incredible job Chaosium has done on this boxed set. Sure the original version was terrific in its own right, but this new expanded version really makes the overall experience that much more immersive and entertaining. Unless you are dead set against Seventh Edition for whatever reason. Even then, it’s worth picking up Horror on the Orient Express because it contains a conversion guide. It’s also cheaper than trying to buy an unused version of the original edition on the second hand market. Of course, you’ll want to wait for a price drop on the digital because five hundred dollars is insane, even for a terrific job like this, but once the Kickstarter backers have everything in their hands, expect the price to drop to something far more reasonable. Of course, you can still pre-order the physical version if you missed out on the original Kickstarter campaign. You won’t get as many bells and whistles, but it’s still a fantastic deal for anyone even remotely interested in Call of Cthulhu. I can safely say that Horror on the Orient Express has been worth the wait.
Categories: Game Theory & Design
Syndicate content

about seo