All RPGs and Storygames by Tod Foley are now available at DrivethruRPG and RPGnow. Bring these games to your table!
"Get your HTTPS on" because Chrome will mark all HTTP sites as "not secure" starting in July 2018. Chrome currently displays a neutral icon for sites that aren't using HTTPS, but starting with Chrome 68, the browser will warn users in the address bar.
Fortunately, HTTPS has become easier to implement through services like Let's Encrypt, who provide free certificates and aim to eliminate to complexity of setting up and maintaining HTTPS encryption.
It took a while before I could write a new edition, I was just busy with the production of customer projects. Here again with a brand new version, what struck me in module updates in the past month:1. D8 Editor Advanced link
A popular module that extends the standard editor in Drupal 8 with additional options for managing links. You can now add the following attributes:
Default password checks are stupid and annoying for the user: they can check the entered password meets certain rules, such as the number of characters and varying types herein (symbols, numbers, capital letters etc.).
This is a stupid way of checking because the password ‘Welcome123’ is accepted, while it is easy to guess.
This module enables a secure password policy by “pattern-matching” and “entropy calculation”. Almost every type of password is accepted, as long as it has sufficient entropy.SourceHow it works
Instead of checking strict rules, this module calculates the expected time a brute force attack needs to retrieve the password. This is calculated based on underlying patterns:
- Words that appear in a standard dictionary, common first and surnames and other default passwords.
- Words from a dictionary, but written in Leet / 1337. For example, where the “e” is written as a three and “a” like an @.
- A standard sequence of letters like “abcdef”, “qwerty” or “123456”
- Dates or years.
This module has been around since 2007, I wonder why I only encounter this now :) It is currently available in alpha for Drupal 8 and stable for Drupal 7 available — it is supported by Acquia and Card.
So if you want people to not have to bother to look for a password such as “one special character, 1 upper case and at least 8 characters’, then this module offers a solution.
In order to give content managers issues, it is possible to write an explanation of all content fields that they import. But the standard explanation in a field in the backend of Drupal are often irrelevant, to not apply these generic texts in the implemented *user story* of the installation concerned.
After installing this module you can:
- Content managers have their own explanation text per field.
- Set where it stands: above or below the field.
- The explanatory style that you like.
Want to make the standard Drupal login screen better? Then install this module and you are good to go: through template overrides you can then do the required further tuning of the layout of the login screen.
Another social sharing module, but as you see in the title: these are terribly responsive. The icons are SVG based and you need no external services such as AddThis.
Advantage: you’re less dependent and have your data in hand, downside: you have less functionality- such as comprehensive statistics.
If you are not using Drush or Drupal console works then you can Drupal caches flush via “the ‘Flush all caches” button in the Drupal backend. But in a production environment, you will almost never flush all caches, it can cause severe performance problems.
This module solves that problem: install it and you have more control over the caches you want to flush.
Have your Drupal content management easier with ‘multiple selects’ administration, this image seems to me to speak for itself:
If you are running a multilingual Drupal website, visitors can see the content in one language: the currently active language. Sometimes you would like to see pages in another language. In addition: content managers / Drupal administrators usually want English and not the backend *default language*, in our case, often Dutch.
Issue tracking for example, much easier if the backend is in English: Drupal documentation and support in English is much more available than in Dutch.
This module ensures that you can visit other pages in another language than the default. And can navigate the backend in English, while frontend is in another language.
Drupal core includes a ‘password’ function: If you have forgotten your password then you can request a one-time login link that is automatically mailed to you.
If you click on the login link, you will see a screen with a login button. Once you click the ‘login’ button you are logged in and you are redirected to your profile page — that’s it.
You are in this situation where your password is lost / forgotten. You are not required to change your password. This is not usually done, so people often endlessly request login links.
This module solves this: the screen where you end up after clicking on the login link not only contains a login button, but also a function to change your password immediately.
The user list in Drupal is usually not or hardly ever administered. If people have long been inactive or have not completed their registration, the account can usually be removed to avoid overhead and security issues.
This module does it for you automatically, it checks inactivity below a point and blocks users if they meet:
- Certain time inactive.
- Account never activated after registration.
- Not been logged in for a period of time.
Not a popular module, but in the case of an example Drupal social intranet it can come in handy.
Want to influence the order of the Drupal tabs? Or do you want some tabs to not show all of your content manager? To keep tabs simple and usable you can install this module: select which tabs to show and in what order.
The default Drupal search is fine, but really standard: you have few options to tune the engine. After installing this module, changes that you can then include are:
- Change the default label in the search box.
- Set a default text in the search box.
- Tune ‘Advanced Search’.
- Change the text on the “submit button”.
And much more, see module page:
Drupal 8 core does not have a ‘remember password’ function when you log in. You can remain automatically logged for some time, but that is based on a PHP session. This module does not, you can also:
- How long users can stay logged in.
- How many places a person can be logged in at once.
- Select certain pages that the user must log in again at. These are usually pages where more sensitive information is available.
- Allow the user to delete all his logins themself.
Using the Devel module you can automatically generate content so you can see if your modules / themes work well. But it gives an unrealistic picture of the end result, this module generates more realistic images and texts.
Although I am a fan of the aforementioned ‘Password strength’ module, this can also be useful if you want to make a specific password policy on your Drupal website.
This module, we often use to implement Drupal social intranet: previously, all users and content created by an administrator on a test environment, without it people were informed through e-mail.
Once the social intranet went live, we sent all users at once an email with a login link via this module; the system was live!
So far that’s what I noticed last month in Drupal modules, stay tuned for more fat Drupal content!
16 Cool Drupal modules For site builders | Februari 2018 was originally published in Lucius Digital | Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.
When I was a younger man, my friends often joked that the only reason I studied Literature in University was to become a better game master. While that was not my primary motivation, there was certainly some truth in that humor. The study of English is littered with different ways of interpreting a piece of narrative art: Structuralism, Psychoanalytic, Reader-Response, Deconstruction, etc. During my first year of study, I was introduced to a very simple means of analysis that has stuck with me to this day. It is not widespread by any means; in fact, it was the creation of my first year English Professor. As I moved into writing scripts and stories and games, I found this model to be an easy one to consider as I work, and when I teach others how to analyze stories, I often fall back on the Levels of Interpretation taught to me by Professor John Blaikie.
So, how does it work? The idea is that, with each piece of narrative art, be it a novel, a film, a play or an RPG campaign, there are different ways in which to engage with the creator, and different levels of meaning that the audience can take away. The great works of art, which remain relevant well past the life of their creator, function well on all four of these levels.Literal Level –Narrative / Plot
This is the most surface level of interpretation. What happens in the story? A lot of popular pop-culture entertainment is based on this level alone. Stories that operate only on this level are typically not very memorable, but this level is very important for creating an interesting story. In Star Wars, Luke Skywalker leaves his home to join a rebellion against the Empire. He helps to rescue Princess Leia, learns of the Force, and eventually joins a rebel attack that results in the destruction of the Death Star.
In terms of games, the literal level of interpretation describes the plot of the story. For example, a group of young wizards explore territory occupied by tribal orcs, and in doing so uncover a source of magic that will help turn the tide in their homeland’s war.Psychological Level – Characters
At this level, the motivation of the characters is considered. Why do the characters in the story do what they do? In stories that function on the psychological level, the characters will have consistent internal motivations. If the story has characters that seemingly do random or nonsensical things just to move the story along, the story is not really operating at this level, and typically, these stories are not going to connect with audiences in a very strong way. Conversely, characters with consistent and interesting internal motivations can become enduring fan favorites. In Star Wars, Luke is a young man who feels stifled by his over-protective Aunt and Uncle, and yearns for adventure. This is why he leaves home to join a dangerous rebellion without really thinking through the dangers involved. He argues with Han Solo in order assert his masculine superiority in front of Leia, to whom he is attracted. He is willing to believe whatever Obi Wan Kenobi tells him because of the absent father figure in his life.
In terms of games, this level is primarily the responsibility of the players. Players will often forgo the narrative elements of a game in order to further explore or indulge their character’s motivations. The best games have the characters motivated to engage in the plot in a manner that is consistent with the characters’ internal logic. For example, the family of one of the young wizards from the previous game was destroyed by the very same tribe of orcs that the group is now investigating. He views the orcs as monsters, rather than people, because at an early age they became something to hate: what sociologists would term the “other.” He is able to project all of his own insecurities and failings onto them, and will deem himself worthy if he is able to avenge the death of his family.Sociological Level – Setting
The function of this level is to criticize some aspect of society, typically in the present. Stories that function primarily on this level are usually stories with a message. They are often trying to “say” something about the realities of our modern world. These types of stories are likely to be popular with critics, and termed “art,” but if this is as deep as they go, their relevance may be fleeting; once the social issue is no longer relevant, then the story becomes less meaningful. In Star Wars, we have a Science Fiction setting with an “Empire” and a “Rebellion.” The story can be interpreted as a struggle against a fascist regime. In the modern light, we might look at it as an exploration into the distinction between terrorists and revolutionaries.
In terms of games, the fictional society that we depict can certainly be more than “generic fantasy.” When we challenge our players with difficult choices in the setting, hopefully we enable them to make meaningful choices that influence the world and encourage them to consider the parallels to our own society. For example, the tribal orcs lead a subsistence existence in the woods, having been forced off their land by the dominant humans. The player characters may enter the orc territory ready to loot the village and take what they need, viewing the orcs as nothing more than monsters, but they are shocked to find the squalid conditions that they live in. This elicits sympathy and compels the PC’s to negotiate with the tribe rather than simply steal their magic.Thematic Level – Philosophy
This level concerns itself with the “big questions” of life, and explores some aspect of the human condition that is universal. Stories that function at this level can retain their relevance for long periods of time because the issues that they explore are timeless. Is there such a thing as true love? Are our actions determined by our choices, or by the forces of destiny / God / brain chemistry? Is there a true reality, or just what we perceive through our senses? These questions ultimately don’t have an answer, and the search for an answer to them is what makes us human. In Return of the Jedi, Luke must confront the evil in himself and accept it on order to forgive his father and resist the dark side. He learns that there is no absolute good or evil, but rather all people have some level of good and evil within themselves. He cannot claim moral superiority over Darth Vader, or even The Emperor, because there is as much capacity for good and evil in them as there is in himself.
In terms of games, when I read advice for game masters, I often come across the idea of a “theme” for a story or a campaign, and this is, ultimately, what they are getting at. When I look to start a campaign, this is the level of interpretation that I begin with – what philosophical issue would I like to explore in this game? For example, the character whose village was destroyed by orcs sneaks into the tribal village at night and confronts the old orc who led the raid against his village so many years ago. This orc is now sad and old. He begs for his life. He tells the young wizard that, when he was a child, a group of humans stole his family land, driving his father to suicide. He blamed the humans for his life’s miseries, and vowed revenge upon them. The character is now forced to see himself in the old orc’s experience, and must make a choice – to satisfy his life-long quest for revenge, or take mercy on the orc, who is not so different from him. Does justice or revenge fuel his anger? Is there really a difference between the two?Final Thoughts
This method of analysis is fairly simple, yet I find myself returning to it over and over again in order to create memorable campaigns for my players that are satisfying for them and for me. Ultimately, games should be about meaningful choices, and the more levels that we are operating on, the more meaningful those choices can be. Do you have a way of looking at the stories you tell to make them more meaningful? If so, please share it in the comments!
File_history offer a new form_api field type permiting saving multiple version of a file or multiple file for multiple file processing.