Newsfeeds

Simple Smartling

New Drupal Modules - 9 November 2018 - 7:59am
Categories: Drupal

The Usability Playtest: What it is and How to Moderate One - by Jozef Kulik

Gamasutra.com Blogs - 9 November 2018 - 7:51am
A usability playtest can be a powerful tool that  leveraged to gain a lens on how players actually experience your game. This article includes various tips to help ensure your own usability playest generates high quality, actionable data.
Categories: Game Theory & Design

Agiledrop.com Blog: Top Drupal blog post from October 2018

Planet Drupal - 9 November 2018 - 7:12am

We’ve prepared for you an overview of the best Drupal blog post written in the previous month - October 2018. Enjoy.

READ MORE
Categories: Drupal

CKEditor Read More

New Drupal Modules - 9 November 2018 - 6:48am

This module adds a new button to CKEditor which allows users to hide selected content and only show it on "Read more" button click.

Requirements

CKEditor Module (Core)

Categories: Drupal

ComputerMinds.co.uk: Beware File::getFileUri()!

Planet Drupal - 9 November 2018 - 6:06am

I'll keep this short and sweet, but we thought this would be a useful tip to share with the world as a potential security issue with the combined use of File::getFileUri() and FileSystem::realpath().

Consider the following code excerpt :

$file = File::load($some_file_uri); if ($file) { $uri = $file->getFileUri(); $file_realpath = \Drupal::service('file_system')->realpath($uri); }

Seems pretty harmless right? Load up the file from $some_file_uri , If we have a valid file then get the URI and then grab the real path.

Wrong (potentially, depending on what you do with $file_realpath).

If $file is a valid file, but for whatever reason the file is no longer physically located on disk, then $file->getFileUri() will return a blank string.

It turns out that passing this blank string $uri into \Drupal::service('file_system')->realpath($uri) will return the full webroot of your site!

Depending on what you were doing with said $file_realpath, it could then be a security issue.

We were handling a user webform submission and then sending the submission over to a CRM system... because $file_realpath was now the webroot of the site, then code that followed to archive the user submitted file ended up archiving the entire webroot and sending this over to the client's CRM system. 

Luckily in this instance, the archive was only ever available temporarily server side and then went directly to the clients own CRM system, but in another circumstance this could have easily been a very serious security issue.

Fortunately the fix is quite simple, ensure the the $uri returned from ->getFileUri() is valid by some method, before passing through realpath(). Here, I now validate the uri matches what I know it should be for the current webform submission.

if ($file) { $uri = $file->getFileUri(); $webform_id = $webform->get('id'); $submission_id = $webform_submission->get('sid')->getValue()[0]['value']; $valid_file_scheme = strpos($uri, 'private://webform/' . $webform_id . '/' . $submission_id . '/') !== FALSE; if ($valid_file_scheme) { // Proceed with the rest of the code.. } }

 

Categories: Drupal

Bringing The Streaming Fan To The Table

Gnome Stew - 9 November 2018 - 5:12am

Or how I learned to stop worrying and embrace fans of streaming RPG games

It has finally happened to you. You, the veteran Dungeon Master, are adding a new player to your gaming group. You’re taking in a new player into your home game, your inner sanctum. Your baby. Maybe a player at the table is bringing along a significant other, or maybe a friendly coworker wants to make the leap to tabletop RPGs and has asked to play.

“No problem.”, you think. You’ve taught a lot of people to play. Why would this be any different? This isn’t your first rodeo. You get know the person socially to see if they’ll be a good fit. You ask the questions about schedule and commitment. The stars align, and they look like a good fit. So you ask the tough question, “What inspired you to invest time into a tabletop role-playing game?” (You may even silently think yourself so clever and accommodating to avoid the gatekeeping three letter acronym “AR-PEE-GEE”.)

“I love Critical Role.”

And there it is. It can’t be taken back. They watch streaming RPGs ON THE INTERNET and a million questions form in your brain. “How do they find the time?” “Why would they watch a game of Dungeons and Dragon without ever playing?” Maybe your first reaction is defensive. “Ugh. So Hollywood.” Maybe some self-doubt creeps in. “I’m not as good as Mercer. He’s a professional voice actor. And he has all that DwarvenForge”. Or “I’m not Chris Perkins. I don’t have his encyclopedic knowledge of the Realms.”

“Ugh, why me? This sucks.” How could this happen to you? You’ve been a Dungeon Master for decades. Hell, you still have your Basic Edition Redbox. When people are asked about their favorite artists, your friends say things like “Jackson” or “Picasso”. You mumble something socially acceptable, but inside you scream “LARRY ELMORE”. Have no fear fellow Dungeon Master, we’re here to help you through these difficult times.

How do you, the person who has been DMing for so long you can convincingly lie about liking Fourth Edition, handle this situation?

What is all this streaming about, anyway?

Let’s take a moment to review the most influential streams, in case you’re not familiar with the streaming scene.

Dice, Camera, Action! (DCA) is a Skype-based stream produced officially by Wizards of the Coast and run by the legendary Chris Perkins. DCA features the current storyline published by WotC and features four players with an occasional guest star. The game has been playing for several years and features the same characters across multiple published campaign books. The characters advance slowly, deliberately keeping suppressing the power curve to allow the characters room to grow and expand without breaking the power curve of the setting. Each session lasts about two hours and is streamed weekly. DCA is a helpful reference for deconstructing published campaign material into a player focused experience, yet keeping the flavor of the original book.

Acquisitions Incorporated (AcqInc) is a live play game run again by the legendary Chris Perkins played live at the table during most Penny Arcade Expos (PAX). These games are short, lasting about two hours, and feature the founders of the Penny Arcade webcomic Mike Krahulik and Jerry Holkins as well as noted fantasy author Patrick Rothfuss. A fourth player is frequently rotated in and out of the game. This game started in 4th Edition days and focuses and grand set pieces and largely absurdist comedic in Forgotten Realms. The PAX Acquisitions Inc game can provide guidance for running a classic “beer and pretzels” game with a focus on high action and hilarious moments.

A relatively late entry into the streaming realm is the Acquisitions Incorporated: C-Team (C-team) game. This is also a live table game, DMed by Jerry Holkins. Thematically, it is very similar to the AcqInc main game but features a very different table feel. The game is more chaotic and self-referential than any of the other games on the list and can be challenging to follow due to a large amount of crosstalk and inside jokes told at the table. The game streams for two hours on a weekly schedule. Of all the major streamed games, this feels most like a traditional table game.

The most prominent of the RPG streams is, of course, Critical Role. Critical Role has been streaming for several years and is DM’d by voice actor Matthew Mercer, featuring a cast of more professional voice actors. Critical Role’s success, while polarizing in some communities, has been an important influencer on the success of 5th Edition.

Let’s get started

So, where to begin? First, don’t be afraid to ask questions! Showing interest in what excites the player will forge an early bond every Dungeon Master needs to make with their players. Unlike most new players, the stream fan will have a solid understanding of what an RPG is, and how to behave in at the table. Ask them what they like about their chosen stream. Find out who their favorite character is on the show. Do they answer with a character name or with a player name? Answering “I like Liam.” versus “I like Vax.” can tell you a lot about the new player’s expectations. For example, answering with a player’s name may indicate they enjoy strong performances at the table. Answering with the character’s name may show they are more interested in a building a deep, tragic story for their character.

Second, understand watching a stream is a way for a person to be a part of the RPG community. A DM prepping for a game, or players plotting out how to attack the next session are just ways we interact with our hobby away from the table. Taking in a stream is no different. It’s critical to keep in mind playing in a game is just one of many ways we build and participate in our hobby.  A person who enjoys talking about Critical Role will almost certainly bring that level of engagement to your table.Share1Tweet1+11Reddit1Email Armed with this information, you’ll be able to direct your game in a manner enjoyable for your new player. Hopefully, this opportunity can be used to expand your perspective on DMing, too.

Lastly, it helps to understand how RPG streams differ. There are many different streams a person could choose to watch and this will give you helpful information useful for integrating a new player in your game. A Critical Fan vs an Acquisitions Inc. fan could indicate predilection in tonality (a more dramatic tone instead of a more comedic tone. A fan of Dice, Camera, Action might be into world building or enjoy game steeped in lore.

Join us

Of course, people are complicated, and it’s not all chromatic orbs and CR 2 unicorns. A player coming to D&D from a streaming background will have a head start over the traditional new player. They’ll understand rules, table protocol, and probably spotlight sharing better. This knowledge will also come with certain expectations one should be aware of to ensure a good experience for you and all of your players. There are some basic steps you can take you help ease the player in your game.

The obvious answer, watch some episodes of the stream, is probably the least practical one. The task before you now is setting expectations. Based on the game you’re running, the player’s expectations may need to be managed in different ways. Running a published adventure comes with engagement challenges to even the most experienced D&D player, much less a player whose only experience with D&D comes from a campaign built only solely around extract the most from a player backstory.

Running homebrew content also comes with challenges. Every Dungeon Master injects themselves into the world they create. Interests, beliefs, or even our aspirations influence our world and might cause friction with the player’s expectations. As with most situations, open and honest communication is the key to working through these situations.

In short, “How do you want to do this?” is a great way to integrate a streaming fan into the participating at a table, be it physical or virtual, and expand our hobby to new fans!

With the influx of new fans to 5th Edition Dungeons and Dragons, how have streaming shows like Critical Role changed your game?

Categories: Game Theory & Design

Menumatic

New Drupal Modules - 9 November 2018 - 12:03am

Path menu generator

Categories: Drupal

Entity delete operation

New Drupal Modules - 8 November 2018 - 8:09pm
Categories: Drupal

The end of PHP 5

Dries Buytaert - 8 November 2018 - 3:19pm

PHP, the Open Source scripting language, is used by nearly 80 percent of the world's websites.

According to W3Techs, around 61 percent of all websites on the internet still use PHP 5, a version of PHP that was first released fourteen years ago.

Now is the time to give PHP 5 some attention. In less than two months, on December 31st, security support for PHP 5 will officially cease. (Note: Some Linux distributions, such as Debian Long Term Support distributions, will still try to backport security fixes.)

If you haven't already, now is the time to make sure your site is running an updated and supported version of PHP.

Beyond security considerations, sites that are running on older versions of PHP are missing out on the significant performance improvements that come with the newer versions.

Drupal and PHP 5 Drupal 8

Drupal 8 will drop support for PHP 5 on March 6, 2019. We recommend updating to at least PHP 7.1 if possible, and ideally PHP 7.2, which is supported as of Drupal 8.5 (which was released March, 2018). Drupal 8.7 (to be released in May, 2019) will support PHP 7.3, and we may backport PHP 7.3 support to Drupal 8.6 in the coming months as well.

Drupal 7

Drupal 7 will drop support for older versions of PHP 5 on December 31st, but will continue to support PHP 5.6 as long there are one or more third-party organizations providing reliable, extended security support for PHP 5.

Earlier today, we released Drupal 7.61 which now supports PHP 7.2. This should make upgrades from PHP 5 easier. Drupal 7's support for PHP 7.3 is being worked on but we don't know yet when it will be available.

Thank you!

It's a credit to the PHP community that they have maintained PHP 5 for fourteen years. But that can't go on forever. It's time to move on from PHP 5 and upgrade to a newer version so that we can all innovate faster.

I'd also like to thank the Drupal community — both those contributing to Drupal 7 and Drupal 8 — for keeping Drupal compatible with the newest versions of PHP. That certainly helps make PHP upgrades easier.

Categories: Drupal

Dries Buytaert: The end of PHP 5

Planet Drupal - 8 November 2018 - 3:19pm

It's easy to take PHP for granted. The Open Source scripting language is used by nearly 80% of the world's websites.

According to W3Techs, around 61 percent of websites on the internet still use PHP 5. PHP 5 was first released fourteen years ago. Fourteen years is a long time, and makes it easy to take it for granted.

Now is the time to give PHP 5 some attention. In less than two months, on December 31st, security support for PHP 5 will officially cease. (Note: Some Linux distributions, such as Debian Long Term Support distributions, will still try to backport security fixes.)

If you haven't already, now is the time to make sure your site is running an updated and supported version of PHP.

Beyond security considerations, sites that are running on older versions of PHP are missing out on the significant performance improvements that come with the newer versions.

Drupal and PHP 5 Drupal 8

Drupal 8 will drop support for PHP 5 on March 6, 2019. We recommend updating to at least PHP 7.1 if possible, and ideally PHP 7.2, which is supported as of Drupal 8.5 (which was released March, 2018). Drupal 8.7 (to be released in May, 2019) will support PHP 7.3, and we may backport PHP 7.3 support to Drupal 8.6 in the coming months as well.

Drupal 7

Drupal 7 will drop support for older versions of PHP 5 on December 31st, but will continue to support PHP 5.6 as long there are one or more third-party organizations providing reliable, extended security support for PHP 5.

Earlier today, we released Drupal 7.61 which now supports PHP 7.2. This should make upgrades from PHP 5 easier. Drupal 7's support for PHP 7.3 is being worked on but we don't know yet when it will be available.

Thank you!

It's a credit to the PHP community that they've made it easy for all of us to take this programming language for granted. But that can't go on forever. It's time to move on from PHP 5 and upgrade to a newer version so that we can all innovate faster.

I'd also like to thank the Drupal community — both those contributing to Drupal 7 and Drupal 8 — for keeping Drupal compatible with the newest versions of PHP. That certainly helps make PHP upgrades easier.

Categories: Drupal

Hook 42: BADCamp 2018 Retrospective: A GatsbyJS Primer

Planet Drupal - 8 November 2018 - 1:27pm

Now that I’ve settled back down in Alaska after a fun trip to Berkeley for BADCamp, I’m finally digesting all of the info I gathered throughout the week. As always, it was cool to look over the schedule and see what topics were getting a lot of attention; and, without a doubt, it seemed like GatsbyJS was the hot-ticket item this year. So here’s a primer on what GatsbyJS is and why the Drupal community seems so head-over-heels for this up and coming site generator.

Categories: Drupal

Three Square Enix mobile games blocked in Belgium over loot box use

Social/Online Games - Gamasutra - 8 November 2018 - 11:28am

Square Enix is the latest of many developers to be affected by loot box laws in Belgium, alongside the likes of EA, Blizzard, 2K, and Valve. ...

Categories: Game Theory & Design

Ex-EA design chief Patrick Söderlund unveils Embark Studios

Social/Online Games - Gamasutra - 8 November 2018 - 10:34am

The Nexon-funded company has set its sights on using emerging technology to create interactive, online worlds. ...

Categories: Game Theory & Design

Streamlabs launches app store with $1M developer fund

Social/Online Games - Gamasutra - 8 November 2018 - 9:19am

Streamlabs has announced the launch of its native app store, featuring a growing collection of apps built entirely within Streamlabs OBS. ...

Categories: Game Theory & Design

Kanopi Studios: BADCamp + Accessibility = Education, Inspiration and Opportunity

Planet Drupal - 8 November 2018 - 7:51am

Now that the excitement of BADCamp has worn off, I have a moment to reflect on my experience as a first-time attendee of this amazing, free event. Knowing full well how deeply involved Kanopi Studios is in both the organization and thought leadership at BADCamp, I crafted my schedule for an opportunity to hear my colleagues while also attending as many sessions on Accessibility and User Experience (UX) as possible.

Kanopi’s sessions included the following:

The rest of my schedule revolved around a series of sessions and trainings tailored toward contributing to the Drupal community, Accessibility and User Experience.

For the sake of this post, I want to cover a topic that everyone who builds websites can learn from. Without further ado, let’s dive a bit deeper into the accessibility portion of the camp.  

Who is affected by web accessibility?

According to the CDC, 53 million adults in the US live with some kind of disability; which adds up to 26% of adults in the US. Issues range from temporary difficulties (like a broken wrist) to permanent aspects of daily life that affect our vision, hearing, mental processing and mobility. Creating an accessible website allows you to communicate with 1 in 4 adults you might otherwise have excluded.

What is web accessibility?

Accessibility is a detailed set of requirements for content writers, web designers and web developers. By ensuring that a website is accessible, we are taking an inclusive attitude towards our products and businesses. The Web Content Accessibility Guidelines (WCAG) are a globally acknowledged set of standards that help us publish content that fits within the established success criteria. These guidelines are organized into the following four categories.

WCAG Categories:

  • Is your website perceivable? This applies to non-text content, time-based media (audio and video), color contrast, text size, etc.
  • Is your website operable? This ensures that content is easy to navigate using a keyboard, that animations and interactions meet real-user requirements, buttons are large enough to click, etc.
  • Is your website understandable? This means that text content is easy to read for someone at a ninth grade reading level, that interactions follow design patterns in a predictable manner, that form errors are easy to recover from, etc.
  • Is your website robust? This means that content should be easy to interpret for assistive technologies, such as screen readers.

The World Wide Web Consortium (W3C) is an international community whose mission is to lead the Web to its full potential. They have also published a checklist to aid our efforts in meeting WCAG success criteria.

How can we be successful in making the web accessible?

Industries have varied requirements when it comes to web accessibility. WCAG has three levels of compliance, ranging from A to AA to AAA. A conformity has the lowest set of requirements and AAA has the strictest set of requirements; so strict, in fact, it may be impossible to achieve across an entire site.

Efforts to meet these standards fall on every individual involved in the process of creating a website. Although there are many tools that aid in our journey, we reach accessibility through a combination of programmatic and manual means.

The most important thing to keep in mind is the fact that achieving success in the world of accessibility is a journey. Any efforts along the way will get you one step closer towards a more inclusive website and a broader audience base.

Please Remember: Once Kanopi helps you launch an accessible site, it’s your job to maintain it. Any content you add moving forward must be properly tagged; images should have proper alt text and videos should have captions. Users come to your site because they love your content, after all! The more you can make your content accessible, the more you will delight your users.

Interested in making your site more accessible? Check out some of the resources I linked to above to join in learning from my peers at BADCamp. If you need more help getting there, let’s chat!

The post BADCamp + Accessibility = Education, Inspiration and Opportunity appeared first on Kanopi Studios.

Categories: Drupal

MidCamp - Midwest Drupal Camp: MidCamp is Coming

Planet Drupal - 8 November 2018 - 7:50am
MidCamp is Coming

MidCamp is returning for its sixth year next March 20-23, 2019. We’ll be back at DePaul University for four days of presentations, professional training, contribution sprints, and socials. Designers, developers, and users will be able to brush shoulders with Drupal service providers, hosting vendors, and other members of the broader web development community.

Agenda Overview

This year we have some changes to our general agenda. We’ll be adding summits for the first time! We’ve also moved our sessions to Thursday and Friday so that attendees get some of their weekends back. A high-level agenda is as follows:

  • Wednesday, Mar 20 - Summits, Training, and Contribution Sprints

  • Thursday and Friday, Mar 21-22 - Sessions

  • Saturday, Mar 23 - Contribution Sprints

Stay Tuned for these Upcoming Dates

Stay tuned into the website and our newsletter for some upcoming dates.

  • NOW! - Ticket sales are open on Eventbrite. Spread the word and get your tickets early: https://midcamp2019.eventbrite.com/

  • Nov 14, 2018 - Our website will be fully up and running. It will be ready to open our call for papers.

  • Dec 12, 2018 - Call for papers will close and travel information will be available on the website.

  • Jan 9, 2019 - We will open the registration for training and summits.

  • Jan 16, 2019 - Announce Featured speakers on the website.

  • Jan 23, 2019 - We will post the Final schedule for the website.

Help us Make MidCamp!

It’s not too late to get involved with MidCamp 2019. We’re on MidCamp Slack. You can also contribute by telling us what topics you’re interested in seeing in the 2019 program.

 

Join the conversation
Categories: Drupal

Building an immersive soundscape in Shadow of the Tomb Raider - full Q&A - by Chris Kerr

Gamasutra.com Blogs - 8 November 2018 - 7:29am
Here's the full 5000+ world Q&A with Shadow of the Tomb Raider audio director Rob Bridgett and composer Brian D'Oliveira, digging into the tools and techniques the pair used to create a soundscape fuelled by fear.
Categories: Game Theory & Design

The Making of Cinderella VR - by Laura Tallardy

Gamasutra.com Blogs - 8 November 2018 - 7:28am
A dev diary for Cinderella VR, just released today. Choosing a concept, planning, learning VR & Unity, making minigames, 2D art and animation, voices, budgets, shipping, etc. Lessons learned from making an indie VR game. Sketches & screenshots too.
Categories: Game Theory & Design

The Story behind The Truth: Designing a Data Model - by Niklas Gray

Gamasutra.com Blogs - 8 November 2018 - 7:27am
The rationale and design goals behind the data model we use in The Machinery.
Categories: Game Theory & Design

Community: Introducing the Drupal Governance Task Force 2018 Proposal

Planet Drupal - 8 November 2018 - 6:20am

Drupal is one of the most successful open source projects in the world. Governance is fundamental to the project's success.

The community and the code has been built from the ground up. And as the code has grown, so has the community.

When communities are first emerging it's easy to bring newcomers along, but over time the community begins to mature, change, and then needs to adapt. Challenges and opportunities emerge as evolution occurs, and our community needs to navigate them strategically.

A Governance Task Force has been meeting weekly since May to put together the strategic proposal we now share with you. We've synthesized ideas, discussions, and experiences from people we've interviewed, and we've revisited the themes that emerged from the community listening project run by Whitney Hess and by previous governance discussions.

This Drupal Governance Task Force 2018 Proposal serves two purposes.

Firstly, it's clear that for community evolution to occur there needs to be broad agreement and buy-in. People are comfortable jumping in and building a new module, but community change and action is hard. People talked to us openly about the unclear processes and barriers holding back community progress.

We heard strong perceptions that support from Dries or the Drupal Association is needed before initiatives could be created or scaled; real or otherwise, this is affecting community progress and action. Speaking to people from the Drupal Association, the Community Working Group and other initiative leaders, they also feel limitations. But to change their terms of reference and priorities they also need to have a community directive.

The community is stronger and more influential than we sometimes assume  --- when we are speaking together.

That's why at the heart of this proposal is a new community governance structure.

The second purpose of the proposal is to create a starting point --- a framework. We’ve been practical, highlighting a range of actions that form a backbone for community evolution. It’s not a defined roadmap, and it’s not a list of every idea we had or heard. We welcome the discussion, debate and idea generation that this document will spark. We want to hear your solutions on how to get change done, and what you would like to contribute.

We strived to make practical recommendations with the potential to make progress, lower barriers, and help our community to continue to evolve with time.

Throughout this process we have heard people say they believe change is necessary. Change is necessary for the longevity of Drupal the project and the code. Change is necessary to create a new generation of Drupallers — the people we want to help build ambitious things and to have the chance to build a career within our community.

It is hard to not feel the project is at a crossroads. We’ve climbed the mountain of Drupal 8, we sit at the peak and look to the valley below.

Where we go next, and who we take with us, is up to you.

We hope this proposal helps.

David, Ela, Stella, Lyndsey, Rachel, Hussain, and Adam

File attachments:  Drupal-Governance-Task-Force-Proposal-2018.pdf
Categories: Drupal

Pages

Subscribe to As If Productions aggregator