Skip to Content


Lullabot: Drupal as a Services Platform

Planet Drupal - 4 September 2014 - 9:29am

The next issue of Drupal Watchdog features articles about Drupal as a Services Platform. Several authors in the issue and the executive editor will be sharing various perspectives on web services in Drupal and in the wider world. With hostess Amber Himes Matz and her guests Peta Hoyes, Scott Hooker, Lin Clark, and Larry Garfield.

Categories: Drupal

Liran Tal's Enginx: “Oh you lazy cron!” – learning on Drupal cron issues

Planet Drupal - 4 September 2014 - 9:19am

We’re still working with Drupal 6 at work, and we’re triggering our notifications and other cron related tasks through a small script that crontab is running, and with the help of drush at the command line. The following problem and description of the scenario we had applies to Drupal 7 too as these are pretty much close with regards to implementation.

Drupal’s cron job will most often run smoothly and without any issues, it will appear to “just work”. The reason for that is that behind the scenes, anything related to creating scheduled tasks in Drupal will have to implement hook_cron, and simply enough, not a lot of modules will be doing that. So when you first setup your Drupal application and get it to run, you’ll wrap up any issues with cron and from there it’s smooth sailing… Or not! There are practices you should be aware of when you program modules in Drupal that are not related to cron, yet can still mess it up.

So back to the story, at some point we noticed our notifications aren’t being sent out in our development environment, and because cron is responsible for running the notifications, then that’s the immediate suspect. Problem is, debugging cron isn’t that easy, mainly because Drupal will just fire off those hooks and you’ve got no idea where the culprit code is.

Search for the problem begins by checking quickly all the modules that implement hook_cron, primarily your very own and recently added modules are the prime suspects. If that yields no results, as did in my case you’re going to have to broaden the search and a good way to quickly figure out where this happens is by inspecting Drupal’s to catch the cron hook. One way of doing that is through a debugger, another quick and easy way is by using Drupal’s own watchdog (or PHP’s own errorlog) function to capture this data:

function module_invoke_all() {
$return = array();
foreach (module_implements($hook) as $module) {
$function = $module .'_'. $hook;
if ($hook == 'cron') watchdog('cron', "hit $module cron"); // add line to log in db log



Inspecting the information there from the change or through the debugger we’ll be able to see which cron hook last ran successfully.

I will spare the rest of the debugging process but the research led to Drupal’s own implementation of hook_cron which further led to module calls of node_invoke and node_invoke_nodeapi where it was then failing. At that point, all custom, and recent changes to anything the codebase related to hook_nodeapi revealed the culprit:

function my_module_nodeapi($op...) {

switch ($op) {

case ‘view’:



This makes perfect sense. Nodes get loaded through the node_load() and the rest of Drupal’s hooks for the sake of handling the notifications, which in turn calls nodeapi hook all around, and having a drupal_goto() doesn’t really help drush when its running from the command line.

Lesson learned.

(adsbygoogle = window.adsbygoogle || []).push({});

The post “Oh you lazy cron!” – learning on Drupal cron issues appeared first on Liran Tal's Enginx.

Categories: Drupal

GDC Next adds talks on community management and proximity sensors

Social/Online Games - Gamasutra - 4 September 2014 - 9:09am

The creative director of Sequence speaks about designing games for proximity-sensing tech while a panel of community managers from across the industry unite to share advice at GDC Next 2014 featuring ADC this November. ...

Categories: Game Theory & Design

SQL user sync

New Drupal Modules - 4 September 2014 - 8:49am

This module allow to keep in sync two Drupal instances, and must be installed on both web sites.

The way it works is to update a table, on the slave website, with the user data, when a user is updated or created on the master web site.

Once the update is done, a url is fired via cURL on the slave website. This function read the data from the table, updated by the master, and create or update a user based on the email address.

To test/use this module you need:

Categories: Drupal

ECK Services Extend

New Drupal Modules - 4 September 2014 - 8:12am

this module will extend ECK services, let it support more feature.

Coming soon...

Categories: Drupal

Game Feel Tips III: More On Smooth Movement - by Mark Venturelli Blogs - 4 September 2014 - 7:41am
More in-depth discussion on character movement, with a playable example.
Categories: Game Theory & Design

Code Karate: Drupal 7 Node Class Module

Planet Drupal - 4 September 2014 - 6:39am
Episode Number: 166

In this episode you will learn how the Drupal 7 Node Class module works with the basic page content type. The simplicity of the Node Class module provides an easy way for site builders and themers to add a CSS class directly to the wrapper on the node. Using this module allows for various different layouts and styles to be called based on defined CSS rules.

Tags: DrupalContent TypesDrupal 7Layout ToolsDrupal PlanetCSS
Categories: Drupal

You Should Crack Open My Game - by Andy Wallace Blogs - 4 September 2014 - 6:21am
Why I decided to make it easy for players to edit the file that contains all of their scores and stats in PARTICLE MACE.
Categories: Game Theory & Design

The Secrets of Cats • A World of Adventure for Fate Core

New RPG Product Reviews - 4 September 2014 - 6:18am
Publisher: Evil Hat Productions, LLC
Rating: 5
Originally published at:

It’s been a good year for Evil Hat Productions and Cat based RPGs. Atomic Robo: The Roleplaying Game is one of the best new titles of 2014 and by far my favorite use of the Fate Core System so far. Meanwhile, 2014 has also been the year of RPG with cat based protagonists. Cathulhu for Chaosium’s Call of Cthulhu was remixed and released as a supplement. We’ve also seen Call of Catthulhu Deluxe get released (although I am still waiting on my physical box set of the game!) which is a more newcomer/family friendly game that Cathulhu. Heck, earlier this month Strays (which uses the Fate Accelerated Engine) was funded over at Kickstarter. So if you’re in the mood for taking on the role of an animal trying to stop nefarious types and creepy crawlies, you’re got a lot of options right now.

The Secrets of Cats was crowdfunded via Patreon which is crowdfunding along the lines of regular payments ala NPR or PBS rather than a single lump sum in the way one funds on Kickstarter or Indiegogo. Currently Evil Hat has 644 patreons, which means they’re bringing in a little over $2,500 per Patreon release if you just use the minimum suggest amount of four dollars. Now I bring this up only because if that is all Evil Hat raised for The Secrets of Cats I am SHOCKED, because the art alone is some of the best I’ve seen in a RPG this year and the writing is pretty top notch too. So although this is currently a “Pay What You Want” piece that you can get for free if you choose to be a skinflint, this fifty-two page supplement for Fate Core really does deserve to have a MSRP of at least twice the suggested rate because it’s that fantastic.

Let me get the praise for the art of the way right now. The wonderful cartoon designs of Crystal Frasier really made this piece come to life for me. It’s cartoony and yet dark at the same time. I felt the book gave off a modern, friendlier Ralph Bakshi meets Cartoon Network style and the art alone will make you want to throw money at Evil Hat for this supplement – even if you don’t own the core Fate Core System book. I normally try to avoid making any reference to the name of a specific creator or artist in a review because I’m critiquing the body of work rather than a specific person, but the art in The Secrets of Cats is some of the best and most original I’ve seen in a RPG all year and I will be shocked and horribly dismayed if this isn’t on our short list for the “Best Art” award come the end of the year. So yes, buy this thing just for the art and then go back and get the Fate Core System handbook. It’s that good.

So let’s talk about the meat of the supplement now. As this is a supplement, you will need the core rulebook for Fate. Make sure it is Fate Core and NOT Fate Accelerated as they are two slightly different systems ala AD and D 2e and Basic D and D. You can still make The Secrets of Cats work with Fate Accelerated but it does take some work on the part of the GM. The supplement does assume you already have Fate Core and are familiar with the both the rules and jargon of the game, so if you pick this up without it, you might find some (well, a lot) of the text in the character creation section to be gobblygook.

Part 1 is “The Duty of Cats” which serves an introduction to the supplement’s concepts and themes. In like most games with animal protagonists, the cats in The Secrets of Cats are actually protecting the world, and specifically humans, whom they call “burdens” from the secret evils that lurk in the shadows. Spirits, dark fae, boogeymen and other fiendish thingies are all real, but mankind (burdenkind?) are oblivious to. There is also the concept of sapient animals, which follows Descartian philosophy. It’s odd that the text states that sapient thought can vary wildly between species. Some (humans, cats, crows and raven) are almost all sapient but then dogs, squirrels and mice are mostly instinctual. I would have liked some insight as to why those species were chosen as examples of each, but I didn’t get it. The good thing is that is someone REALLY wants to play a chicken hawk or a gerbil, they pretty much can with this supplement. Examples of sapient owls, bats and rabbits are given in the text, but remember – the game is primarily about cats, even though I like the option of a rabbit protagonist. You also learn that cat based magic relies heavily on sacrificing other life forms. This might squick some people out and I’m sure the Jack Chick type people of the world will point at this aspect as proof that “RPGS AM SATAN WORSHIP,” but it makes sense in the context of the game and why cats sometimes kill things without eating them. Of course, there’s no correlation for how an herbivore would use magic, but this is The Secrets of Cats after all. Perhaps if this does well enough, we’ll get an additional supplement for other species.

Part 2 is “The Naming of Cats” and it is purely character creation. Again, newcomers might be a little lost here, especially if this is their first exposure to Fate, but people who have played any other version of the game will plow right through this as it is almost instinctual. Making a cat character is very similar to a regular Fate character except The Secrets of Cats> has its own magic system and some slight modifications. The section gives you some reminders on cats and how they are not human, so they see and hear things differently, can’t read and are easily distracted. You have to pick your High Concept (personality), your Trouble (character flaw) and your Burden (Human or humans you protect). You pick your skills, each with a rating of +4 to +0. If you are new to Fate each + in your skill is an automatic success. So if you have a +3 in Investigate and you need five successes for a specific action. You only need to get two more +s from your die roll. If you have a +0 in Investigate, well, you’re in for a harder time as you only get four dice to roll. It’s not impossible though!

You have four types of magic: Warding, Seeking, Naming and Shaping. They’re all pretty self-explanatory and you can learn more than one sphere of magic. However, you can only master a single sphere. Master of a sphere get some exclusives stunts and spells, so it’s worth doing at some point. You don’t HAVE to do it at character creation time. Stunts are essentially your special abilities and talents. You get three regular stunts relating to your non-magic skills and another three magic stunts. So your character is pretty well rounded from the start. There is no discussion on character advancement in this supplement so I have to assume it is the same as in regular Fate Core.

Part 3 is “Silver Ford” and it’s the campaign setting for this supplement. Silver Ford is a small tourist resort town in Maine which happens to have more than its fair share of ghosts. This section is really short, details some story seeds and primary locations for the town, but really, it’s just window dressing for Part 4.

Part 4 is “Black Silver” and it is both the adventure and the majority of this supplement’s page count. The adventure is about a vengeful old ghost who is awakened when some stupid kids go into its abandoned silver mine and steal nuggets from its corpse. The ghosts ends up taking control of the albino rat colony in the mine and…becomes something unpleasant. The cats of the town must discover what is behind the strange occurrences in Silver Ford and how to shut them down. It’s a pretty straight forward adventure. It’s somewhat linear and definitely comes across a bit hand-holding, but honestly, that’s how first adventures for a setting/system SHOULD be. It lets the PCs and GM alike learn the mechanics of the game without having to tax themselves too much. The cast and crew of “Black Silver” are a lot of fun and many of you might decide to set further adventures in this location instead of making it a one-shot. If that is the case you’ll be happy to know there are some extra story seeds and dangling threads at the end of the adventure to let you do just that. There are found in Part 5 – “Threats and Complications.”

Overall,The Secrets of Cats is fantastic and left me wanting more, even though I probably won’t get it. The concept is a fun one, even if we’re being hit with a deluge of cat oriented RPGs this year and the artwork really makes this supplement stand out. I do wish there was a little more substance here as there is a lot more than can be done with the ideas presented here. As a freebie, this is a no-brainer. However I do have to strongly suggest that you throw SOME money towards Evil Hat (and not just because they’re local to the Washington D.C. area as well) because it’s that well done. I’m looking forward to seeing what else comes from Evil Hat’s Patreon project because if the other releases are half as good as this one, they’ve got a winning formula other companies are going to start duplicating.
Categories: Game Theory & Design

Real time in game facial animation changes everything - by Victor Didra Blogs - 4 September 2014 - 5:22am
Mixamo just announced the closed beta of real time in game facial animation via users webcams. This changes everything. Let's imagine the new opportunities.
Categories: Game Theory & Design

Big Fish hires new CFO as it continues mobile push

Social/Online Games - Gamasutra - 4 September 2014 - 4:20am

Casual games giant Big Fish has hired a former PopCap chief financial officer as its own CFO, as the company looks to continue its transition from being solely PC game-based into a mobile games company. ...

Categories: Game Theory & Design

2D games: Shoot photos to make better & cheaper art (Part 1) - by Junxue Li Blogs - 4 September 2014 - 4:18am
This article is a guide of how to shoot pictures to use them in 2D game art production. It includes shooting object photos for props, hidden objects; And shooting architectures/interior for making background art.
Categories: Game Theory & Design

Post-Kickstarter Finance By The Numbers; A One-Man Studio Postmortem - by Kee-Won Hong Blogs - 4 September 2014 - 3:08am
In March 2013, I ran a 30 day Kickstarter for my cyberpunk 2d shooter 'Contract Work'; Although the campaign was a success, the initial public release was a dismal failure. This is a full breakdown of the money numbers and my postmortem thoughts.
Categories: Game Theory & Design

Drupal core announcements: Drupal core updates for September 4, 2014

Planet Drupal - 4 September 2014 - 2:59am
What's new with Drupal 8?

It has been a month since the last update on Drupal core development. In the meantime we met and worked hard together at TCDrupal and Drupalaton at the start of August triaging outstanding critical issues and resolving some. Also we collaborated on making Drupal's frontend better at Frontend United at the end of the month.

We've been doing such a great job taking care of the beta blocker issues that we are currently down to only one beta blocker as of this writing. What does this mean? Once we are down to no beta blockers left, a final alpha release is published. If there are no more beta blockers identified during a two-week window, the first beta release is published. Then we'll focus on resolving the hundred or so remaining critical issues to get to release candidates (once all of them are resolved).

Right now, help with the remaining beta blocker as well beta deadline and beta target issues is most welcome. Beta target issues may get in anytime later, but beta deadlines may not unless re-evaluated for inclusion regardless.

The best opportunity to get to work with Drupal developers in person is the 9 (nine) days of sprint opportunities coming up at the end of September at and around DrupalCon Amsterdam. It is the best way to learn Drupal 8 hands-on and help on the way.

Where's Drupal 8 at in terms of release?

Last week, we fixed 8 critical issues and 12 major issues, and opened 4 criticals and 7 majors. That puts us overall at 104 release-blocking critical issues and 644 major issues.

Where can I help? Top criticals to hit this week

Each week, we check with core maintainers and contributors for the "extra critical" criticals that are blocking other work. These issues are often tough problems with a long history. If you're familiar with the problem-space of one of these issues and have the time to dig in, help drive it forward by reviewing, improving, and testing its patch, and by making sure the issue's summary is up to date and any API changes are documented with a draft change record, we could use your help!

More ways to help
  • Pick a critical issue or beta deadline issue, take the time to thoroughly read the issue (including doing some background reading if necessary to understand the problem space), and then update the issue summary for the issue. Include a summary of the current status and remaining tasks for the issue, and identify any API changes the issue would introduce. Consider whether the change would require a change record or updates to existing change records. Consider what the implications of not resolving the issue would be, or of resolving it after the first beta or after release.
  • We also need help writing help text for core modules like Field UI, Image, Taxonomy and Toolbar. This is an easy way to learn the Drupal Core contribution process and start contributing to Drupal Core.

As always, if you're new to contributing to core, check out Core contribution mentoring hours. Twice per week, you can log into IRC and helpful Drupal core mentors will get you set up with answers to any of your questions, plus provide some useful issues to work on.

You can also help by sponsoring individual Drupal core development.

Notable Commits

Some of the best of git log --since "August 4, 2014" --pretty=oneline (277 commits in total):

  • Issue 1510544 by swentel, Bojhan, Gábor Hojtsy, merlinofchaos, Cottser, Wim Leers, plopesc, aspilicious, sannejanssen, larowlan, tim.plunkett, nod_: Fixed Show previews in front-end theme, able to select different view modes. This was a long time coming. Finally, your node preview will not appear on the backend!
  • Issue 2248767 by effulgentsia, beejeebus, alexpott: Use fast, local cache back-end (APCu, if available) for low-write caches (bootstrap, discovery, and config). Improves performance for some critical data a great deal.
  • Issue 2224761 by Gábor Hojtsy, alexpott, pfrenssen, effulgentsia, xjm, mlncn: Add a generic way to add third party configuration on configuration entities and implement for field configuration. Resolved a beta blocker by adding a facility for configuration entities to support third party settings. To be used for node types and other things as needed as well. Provides a simple solution when a full-on plugin architecture as in views is not suitable, but extension mechanisms are needed for configuration.
  • Issue 1966436 by naveenvalecha, cesarmiquel, Berdir, mr.york, jlbellido, segi, vasi1186, Leksat, Gábor Hojtsy, Schnitzel, grisendo, Aron Novak, likin, penyaskito, vijaycs85, kfritsche, fago: Fixed Default *content* entity languages are not set for entities created with the API. Now made Drupal properly create entities in the right language regardless of through the UI or API (eg. when adding a tag or uploading a file). Also makes entities created from the creation of the site be in the right language always.
  • Issue 2295469 by Cottser, dawehner | effulgentsia: Add support for static permission definitions with *.permissions.yml. Makes it possible to simply define permissions in a simple YAML file making this system consistent with several other in Drupal 8.
  • Issue 2271529 by attiks, alexpott, Lowell, YesCT, Jelle_S | mdrummond: Move breakpoint settings to theme and module *.breakpoints.yml files at root level. Improves developer experience providing breakpoints.
  • Issue 2317085 by pfrenssen | rteijeiro: Added the possibility to create a REST export when creating a new view. Makes it much easier to create simple web service views of Drupal content.
  • Issue 2250119 by ParisLiakos, Devin Carlson: Run updates in a full environment. Now that updates are not supposed to operate in API-incompatible environments, their implementation was unified with any other Drupal environment.

You can also always check the Change records for Drupal core for the full list of Drupal 8 API changes from Drupal 7.

Drupal 8 security

With the API stabilizing we are focusing on security again. In our last issue we already reported on Twig autoescape now being on, sometimes resulting in unwanted HTML strings appearing on the page because of double escape bugs. Please check the meta issue if you see these.

  • The router service is now access aware so there is no need now to separately access check the routes returned from it.
  • Building on this, now menu links, shortcuts and link fields use a unified path validator service..
Drupal 8 Around the Interwebs Drupal 8 in "Real Life" Whew! That's a wrap!

Do you follow Drupal Planet with devotion, or keep a close eye on the Drupal event calendar, or git pull origin 8.0.x every morning without fail before your coffee? We're looking for more contributors to help compile these posts. You could either take a few hours once every six weeks or so to put together a whole post, or help with one section more regularly. Read more about how you can volunteer to help with these posts!

Categories: Drupal

Unlock Your Creative Star Power - by Shelly Warmuth Blogs - 4 September 2014 - 2:42am
The only way to make your mark as a developer, or for your games to make their mark in the world is to explore the abilities of your tools and employ them in new and ingenious ways.
Categories: Game Theory & Design

This Week in Archmage Rises: The Move - by Thomas Henshell Blogs - 4 September 2014 - 2:25am
Building a top-notch team and returning to civilization
Categories: Game Theory & Design

PAX Prime: an orange post-mortem - by Alex Nichiporchik Blogs - 4 September 2014 - 1:51am
Let's do PAX Prime we said, it's going to be fun we said. Chronological post-mortem of 10 days of PAX Prime Insanity.
Categories: Game Theory & Design Telize - Simple IP-based Redirection Module for Drupal Sites

Planet Drupal - 4 September 2014 - 12:54am

Was working with a customer who required simple IP-based redirection for Drupal Sites.

Was analyzing the various existing options:

  • Smart IP : Looks good. But sets sessions which break Varnish Caching. Most Drupal sites run from behind Varnish Reverse Proxy and using Smart IP would mean either forgoing varnish caching or having to add complex VCL rules.

  • Geo-Redirect : Again, would not work well with Varnish. The first redirection will be cached on Varnish and all subsequent users from different countries might be redirected to the cached redirection. Requires additional GeoIP.dat file to be downloaded and this should be updated frequently.

  • Using MaxMind API : Most hosts like Acquia allow the Maxmind API to be integrated on the balancers so that Varnish maintains country code in the cache (preventing the same redirection to be cached). The country code is added to the headers in both request and response. This is the ideal way to implement GeoIP for any enterprise site. But it requires dedicated load balancers, and there is no plug-and-play module to utilize the API requiring custom development.

  • And a plethora of other modules that break varnish in similar ways..

What I wanted:

  • Simple country-based redirection

  • Should not break caching / varnish

  • Should not require GeoIP datafiles to be downloaded and maintained

  • Should be simple and light-weight

  • Good-to-have, though not mandatory : Zero or Low subscription cost

A hour-long search resulted in nothing significantly useful for Drupal.

Finally found this API : . Sounded promising.

  • The API powering the site is opensource

  • There is no rate limit of any sort at the moment, and the service is free for everyone to use.

  • Used GeoLite data created by MaxMind

The API was exciting but still it was not something that could be plug-n-play’ed on Drupal.

Built this module -

  • Simple Country-based redirection

  • Redirection happens at front-end through JS. Works on top of Varnish

  • Does not set any session cookies. Won’t break your Varnish

  • No subscription required

  • No additional files/libraries required

Try it out of you have simple GeoIP redirection requirements.

Categories: Drupal

Cross Platform Considerations for Designers - by Ulyana Chernyak Blogs - 4 September 2014 - 12:44am
Multi platform releases are becoming more popular with technological advances making development viable. For today's post we're going to examine some of the details to keep in mind when moving a game from one platform to the other
Categories: Game Theory & Design

Don't Sit Idly By - The Wake Of "GamerGate" - by Mary Lee Sauder Blogs - 3 September 2014 - 10:16pm
How the gaming community can step up and handle these issues correctly this time.
Categories: Game Theory & Design
Syndicate content

about seo