Newsfeeds

Troy’s Crock Pot: World-building: Draw in those nations

Gnome Stew - 29 June 2018 - 12:01am

A continuation of last month’s article, where we took some maps, turned the one of Italy and the Mediterranean sideways, and created coastal outlines for a summertime world-building exercise.

Next step: Define nations

Geographically, that means establishing borders. You’ll often hear that natural landforms are definitive for borders. In some cases, that is true. Rivers, mountains, deserts — they all can be demarcation lines for nations. That is often the case, if during your world’s history, two diplomats at a negotiation table hammered out peace treaty plans. “You get everything east of the canyon, we’ll take everything west. Sound good? Excellent. Open that bottle of wine and let’s celebrate.”

A map that only has natural landforms as boundaries never quite looks right, however. There’s always more to it than that. Perhaps invading armies went so far, stopped at a defensible point, such as a castle; then either waited for their supply lines to catch up or got pushed back by another army, until finally, someone in charge said, “That’s it, we’re planting the flag here.”

Check out this historical atlas of Europe.  The shape and definition of borders are flexible. They ebb and flow as time, climate, and economic and military conditions change.  Coalitions and confederations dissolve. Alliances form and reform. Empires of economic might and martial prowess emerge. Domestic politics and economic conditions, not to mention disease, all affect stability. Or, more plainly, governments fall.  Dominance, history has proved, is fleeting.

Projected power, not boundaries

Two things to keep in mind, as your world-building continues, is that regardless of lines on a map, a nation’s “true border” only extends as far as it can 1) project power and reasonably enforce, 2) what neighboring political entities will respect.

Our example map of a peninsula-styled continent, for instance, has many coastal nations. Once we reach the stage of putting dots for cities, I’ll adopt a “points of light” model.  Many will be city-states with a maritime flavor, but beyond being able to protect a key trade road, most of the territory beyond the city-state will be wilderness. There might be pockets of organized agriculture — plantations and farming enclaves — but these will be the exception.

For fantasy adventure and exploration to flourish, there needs to be an untamed wilderness. If you need this map for political campaigns — a “game of thrones” game of intrigue and ambition, the wilderness serves as a place from where invading forces coalesce or where armies clash.

Reflecting the ‘now’

Rather than let this devolve into geopolitics with a dash of sociology, I’d say there are enough variables at work that there is no “wrong” way to set borders. Its arbitrary. Let your map reflect that. The “now” has history behind it.  The location of a river might be more valuable than a network of roads. A national border might simply be the traditional range of grazing cattle or the growing region for a cash crop. The families that are good stewards might end up being kings by virtue of their holdings; feudal systems, ultimately, reward those who manage the land well. Or, perhaps, rulers rise on other factors, such as they are better at raising armies and winning battles than their predecessor. Or maybe, it’s the converse, they are just smart enough to raise defenses that will withstand any attack or seige.  

Let these things percolate in your mind as you start carving up your fantasy map and placing nations and city-states here and there.

 

Categories: Game Theory & Design

Design 4 Drupal: The future of JavaScript in Drupal

Dries Buytaert - 28 June 2018 - 4:44pm

Today, I gave a keynote presentation at the 10th annual Design 4 Drupal conference at MIT. I talked about the past, present and future of JavaScript, and how this evolution reinforces Drupal's commitment to be API-first, not API-only. I also included behind-the-scene insights into the Drupal community's administration UI and JavaScript modernization initiative, and why this approach presents an exciting future for JavaScript in Drupal.

If you are interested in viewing my keynote, you can download a copy of my slides (256 MB).

Thank you to Design 4 Drupal for having me and happy 10th anniversary!

Categories: Drupal

Dries Buytaert: Design 4 Drupal: The future of JavaScript in Drupal

Planet Drupal - 28 June 2018 - 4:44pm

Today, I gave a keynote presentation at the 10th annual Design 4 Drupal conference at MIT. I talked about the past, present and future of JavaScript, and how this evolution reinforces Drupal's commitment to be API-first, not API-only. I also included behind-the-scene insights into the Drupal community's administration UI and JavaScript modernization initiative, and why this approach presents an exciting future for JavaScript in Drupal.

If you are interested in viewing my keynote, you can download a copy of my slides (256 MB).

Thank you to Design 4 Drupal for having me and happy 10th anniversary!

Categories: Drupal

New Releases Available From Renegade Game Studios

Tabletop Gaming News - 28 June 2018 - 3:00pm
A pair of new releases are now available from Renegade Game Studios. One involves insanely cute dragons in The Tea Dragon Society. The other takes you to the edge of space in Junk Orbit. Both are available now from your LGS. From the announcement: Starting today, you can bring two new Renegade titles home! The […]
Categories: Game Theory & Design

Roll20 Adds Charactermancer Character-Building Helper

Tabletop Gaming News - 28 June 2018 - 2:00pm
When you want to play in an RPG, you’ve gotta start with your character. That’s the foundation of what else will come later. But… not everyone has the ability to make a character on their own. There’s tons of different options and choices and such. It can get you lost very easily. That’s where Roll20 […]
Categories: Game Theory & Design

Angie "webchick" Byron: An update on Drupal 8.6 pre-feature freeze

Planet Drupal - 28 June 2018 - 1:52pm

Greetings, folks! As we head into feature freeze for Drupal 8.6 (the week of July 18), here's a run-down of the various initiatives, and a hit-list of what they're trying to accomplish in the next two weeks. Patch reviews, testing, design, docs, and many more skills are very welcomed!

A couple of caveats here:

1) This is my own personal best understanding of where this stuff is all at, based on reading issue comments, attending meetings, overhearing things from other people who attended meetings, catching the odd Slack snippet of conversation, carrier piegon, etc. And therefore may not be 100% accurate, or even 80% accurate — there's a lot going on! (please clarify in the comments if you see any errors/omissions)
2) Just because something is listed here, there is absolutely no guarantee that it gets reviewed + (truly) RTBCed + committed in time for feature freeze and makes it into 8.6. As you can see, there are lots of issues in the list below, and we're all doing our best to stay on top of them. Worst-case, there's always 8.7. :)
3) This post gets into nitty-gritty "technical audience" details; if you're interested in a more broad overview of initiatives and their aims for 8.6 and beyond, there's the strategic initiatives overview on Drupal.org. I was also recently on a Lullbabot podcast to that effect.

OK, here we go! These are listed in alphabetical order.

Admin UI & JavaScript Modernization

This initiative has some lofty goals indeed, to redesign Drupal's admin experience, and modernize the underlying JavaScript code in Drupal to meet modern standards/best practices. While there's a ton of work actively going on in these areas right now, most of the fruit won't bear until 8.7 or later. If you're planning/able to go, come join the sprint next week at Drupal Developer Days Lisbon!

For 8.6, one of the big accomplishments of this initiative was introducing Nightwatch.js testing framework to core, which allows us to test JavaScript code with (wait for it)... JavaScript (what a concept!). This will be critical in ensuring that the React-ified components work as expected, and our existing JavaScript-rich functionality continues to work solidly as we expand on dynamic functionality in the UI.

Here are the issues this team has surfaced as important for 8.6:

Make Nightwatch testing more generally useful
  • Add login/logout commands to nightwatch [#2973879]
  • Create nightwatch command to install modules [#2974619]
Fix long-standing issues in the JavaScript system

Seriously, check out the five-digit node IDs on these bad boys! :P

  • ajax.js insert command sometimes wraps content in a div, potentially producing invalid HTML and other bugs [#736066]
  • Provide a common API for displaying JavaScript messages [#77245]
Bring JS code up to modern standards
  • Use Prettier for formatting core JavaScript [#2978964]
API-First

This team's 8.6 goals are two-fold: 1) stabilizing and filling gaps in the existing REST API, and 2) attempting to add JSON API to core.

TONS of work has been going on in the JSON API contributed module queue to fix a number of outstanding issues to make it core-worthy. So even if this module doesn't make it in time for 8.6, the entire ecosystem will benefit throughout 8.6's lifecycle by using a much more robust and well-tested contributed module. Additionally, a long-standing gap of file upload support has been added. Huzzah!

For the remainder of 8.6, the team would like to focus on the following:

Unblockers to API-First in general
  • Add DateTimeNormalizer+TimestampNormalizer, deprecate TimestampItemNormalizer: @DataType-level normalizers are reusable by JSON API [#2926508]
  • @DataType=map cannot be normalized, affects @FieldType=link, @FieldType=map [#2895532]
Unblockers to REST
  • EntityResource should add _entity_access requirement to REST routes [#2869426]
  • PATCHing entities validates the entire entity, also unmodified fields, so unmodified fields can throw validation errors [#2821077]
Unblockers to JSON API

These are all issues in the JSON API contrib module, which help unblock "Add experimental JSON API module [#2843147]" for core.

  • [PP-1] Work around core's ill-designed @FieldType-level TimestampItemNormalizer normalization until #2926508 lands [#2929932]
  • JSON API indicates it supports POST/PATCH/DELETE of config entity types, but that's impossible [#2887313]
  • Needs Issue: Module name conflict between contrib/core (what happens when we bring a same-named contrib module to core that sites are actively using?)
  • [>=8.5] Remove JSON API's "file URL" field work-around now that Drupal core 8.5 fixed it [#2926463] - Fixed!
Automatic Updates / Composer in Core

These two initiatives overlap in that we're aiming to build the automatic update functionality around improving core's underlying Composer support.

The Composer team has compiled an excellent plan of attack for how to provide Composer support without jeopardizing the site builder experience. Most of that work will take place in 8.7.

However, one of the pre-requisites for Composer to work well, is adding semantic versioning support for contrib. Support for this would also be tremendously helpful to contrib module authors and site builders, regardless if they use Composer to manage their dependencies or not.

Unblockers to semver for contrib
  • Core version key in module's .info.yml doesn't respect core semantic versioning [#2313917]
  • Module version dependency in .info.yml is ineffective for patch releases [#2641658]
Configuration Management 2.0

This team spent most of the 8.6 cycle forming, brainstorming a list of blockers to configuration awesomeness, and prioritizing those efforts. The hope is for a roadmap to get published after the sprint next week at Drupal Developer Days Lisbon.

One major win in 8.6 is the ability to Allow a site-specific profile to be installed from existing config, which is part of the aim to Allow a site to be installed from existing configuration (basically, moving the capabilities of the Config Installer module into core.)

Unblockers of install from existing configuration
  • Install a site from config if the config directory is set in settings.php [#2980670]
Documentation

The Documentation initiative has a lot on the go right now, from designing a top-level landing page for the new docs system, to taking a holistic look at the existing docs and how to refactor the IA around them, and finally creating a repository around "quick start" guides. None of these have a particular deadline around 8.6, because they're happening independently of core.

On the core side, there's work being done on a new experimental module for overhauling the in-app help system and this work has an 8.6 deadline.

New topic-based core help system
  • Refactor using a plugin system [#2961552]
  • Add experimental module for Help Topics [#2920309]
Extended Security Support

For the plan around this initiative to happen, we need to make several adjustments to core's Update Status module, which currently makes several hard-coded assumptions about the last minor release of Drupal expiring immediately once a new minor release is available.

Update Status Improvements
  • If the next minor version of core has a security release, status still says "Security update required!" even if the site is on an equivalent, secure release already [#2804155]
  • Status report should indicate next minor release date (needs issue)
  • (other issues TBD)
Layout

The Layout team has been hard at work improving upon the experimental Layout Builder functionality that was added to 8.5. The main goal of the team for 8.6 is to gather real-world testing feedback from end users, which they are accomplishing by adding Layout Builder to a new branch of the Lightning distribution. Doing this has uncovered a few holes in the implementation relative to what's possible in contrib right now, and filling those gaps is the focus of the remaining 8.6 time for the team.

Layout Builder gaps
  • Allow the inline creation of non-reusable Custom Blocks in the layout builder [#2957425]
  • Add a validation constraint to check if an entity has a field [#2976356]
  • Determine if Layout Builder should replace entity_view_display for all Entity Types [#2936358]
  • No ability to control "extra fields" with Layout Builder [#2953656]
  • Allow Custom blocks to be set as non-reusable adding access restriction based on where it was used. [#2976334]
Integration with other subsysytems/modules
  • [PP-1] LayoutBuilderEntityViewDisplay::getRuntimeSections() does not delegate to plugins [#2976148]
  • Add EntityContextDefinition for the 80% use case [#2932462]
  • [meta] Decide how Layout Builder should function with Content Moderation and Workspaces modules [#2973382]
  • Layout Builder does not respect translations [#2946333]
  • Track Layout override revisions on entities which support revisioning [#2937199]
Media

Media has made tremendous strides in 8.6, including remote video support and a newly designed media library.

Next, we need to integrate that media library into the node form, and ideally allow people to add from there as well in a more streamlined fashion.

Blockers to media awesomeness
  • Create a field widget for the Media library module [#2962525]
  • (needs issue) Mark Media Library as beta
  • [PP-1] Allow media to be uploaded with the Media Library field widget [#2938116]
  • Any AJAX call disregards machine name verification when AJAX is used and leads to a fatal error [#2557299]
Migrate

The goal of this initiative for 8.6 is to stabilize the migration system which means marking the experimental Migrate Drupal + Migrate UI modules stable. This was also the goal for 8.5. What's making it tricky is multilingual migrations, which are themselves tricky because there are a multitude of ways one might have set up multilingual functionality prior to it being included in core in Drupal 8, which introduces lots of edge cases around making IDs line up and whatnot.

The team is taking a two-pronged approach here:

1) Attempt to close all of the remaining i18n-related issues.
2) Worst-case, split off multilingual migrations to an experimental module, so that the rest of the system that works for 80%+ of sites can be marked stable.

Make Migrate Stable
  • [policy, no patch] Mark Migrate Drupal as stable [#2905736]
  • [policy, no patch] Mark Migrate Drupal UI as stable [#2905491]
  • [META] Multilingual migrations meta issue [#2208401]
  • Experimental migrate_drupal_multilingual module [#2953360]
Out-of-the-Box

The Umami profile was committed (albeit marked hidden) in 8.5, and major efforts have been going on to remove all of the "beta blockers" preventing it from being visible in the UI. The last of these—Install profile in settings.php and mismatch check makes re-installs of Drupal hard [#2975328]—just landed earlier this week!

From here to 8.6, the team is working on stability and accessibility improvements.

Umami awesomesaceness
  • Un-hide Umami in 8.5 to vastly improve Drupal's evaluator experience [#2957464]
  • Improve Umami demo's support for managing field display settings [#2980029]
  • Improve Umami Demo's header layout and responsive behaviour [#2980528]
  • Umami missing some Media "plumbing" found in Standard profile [#2939594]
Workflow

Last, but certainly not least, is the Workflow initiative, which aims to add the Workspace contributed module to core in 8.6 to facilitate content staging and full-site previews. The module was already committed to 8.6 awhile back, but must be brought up to "beta" level stability to remain in the tagged + shipped release.

Because Workspaces can only stage content that's revisionable, there's also a parallel effort to add revision-ability to more types of data in Drupal core.

Blockers to Workspaces Stability
  • WI: Workspace module roadmap [#2732071]
  • Add workspace UI in top dialog [#2949991]
  • Remove the automatic entity update system [#2976035]
MOAR revisionable thingies
  • Convert taxonomy terms to be revisionable [#2880149]
  • Convert custom menu links to be revisionable [#2880152]
  • Convert comments to be revisionable [#2880154]
Anything else?

Whew! That's QUITE a lot. Are there any issues out there that we're missing that you feel are mission-critical to get into Drupal 8.6? Feel free to suggest them, with the caveat that the longer the list is, the more distributed the community's and core committers' focus is.

Thanks for reading!

Tags: drupaldrupal 8drupal 8.6product manager hat
Categories: Drupal

Plaid Hat Posts New Leaf Clan Preview for Crystal Clans

Tabletop Gaming News - 28 June 2018 - 1:00pm
A whole new pack of Clans is about to hit for Crystal Clans from Plaid Hat Games. And they want to make sure you know what you’ll be getting into. In case you’re diving into the raked-up pile of leaves that is the Leaf Clan (because who doesn’t love jumping into a pile of leaves?), […]
Categories: Game Theory & Design

WeKnow: Creating a Custom Ajax Command in Drupal 8

Planet Drupal - 28 June 2018 - 12:37pm
Creating a Custom Ajax Command in Drupal 8

Drupal 8 provides the option to include an Ajax Callback within our applications using the Ajax Framework. There are some existing functions which can be used: Methods to hide/show elements in the html document, attach content to an element, redirect a page after a submit, and so on. Sometimes we need to implement something particular, or a custom JS code. In that case, those out-of-the-box functions are not enough. Fortunately, we can also create our own custom responses. So, let’s start creating a new ajax callback for a custom form submission.

mcastillo Thu, 06/28/2018 - 19:37
Categories: Drupal

Fantasy Flight Previews Two New Adversary Decks for Realms of Terrinoth

Tabletop Gaming News - 28 June 2018 - 12:00pm
There’s never enough possible resources for a GM, if you ask me. They have a lot to keep track of and plan for, so if there’s a thing that’ll make that easier, I’m all for it. If you’re playing the Genesys RPG and are using the Realms of Terrinoth setting, you’ll want to check out […]
Categories: Game Theory & Design

Thursday Terrain Corner

Tabletop Gaming News - 28 June 2018 - 11:00am
The work week continues along. We’re almost to that weekend again. I’ve got D&D again this weekend. What will our intrepid band of heroes get into this time? Hard to tell, but we’ll need a good-looking table for it. And that means terrain. Today in the Terrain Corner we have: New Industrial Platforms – Reinforced […]
Categories: Game Theory & Design

Battlefront UK Open Day Happening This Weekend

Tabletop Gaming News - 28 June 2018 - 10:00am
Battlefront has a whooooooole ton of stuff going on this weekend. It’s their UK Open Day and they’re making sure to jam-pack it full of everything. Check out their Facebook page all weekend for live updates on events, previews, and more. They’ve also got new releases going up, so be sure to check out those, […]
Categories: Game Theory & Design

Warlord Games Taking Pre-Orders For Strontium Dog

Tabletop Gaming News - 28 June 2018 - 9:00am
You’ve seen the previews, now it’s time to put your name down on the list. Warlord Games has started taking pre-orders for their Strontium Dog starter set. You get the minis, you get the rulebook, and you get a whole solar farm’s worth of terrain. Plus dice, cards, and everything else needed to get you […]
Categories: Game Theory & Design

OPTASY: What Are Some Quick and Easy Ways to Secure Drupal? 7-Step Security Checklist

Planet Drupal - 28 June 2018 - 8:16am
What Are Some Quick and Easy Ways to Secure Drupal? 7-Step Security Checklist adriana.cacoveanu Thu, 06/28/2018 - 15:16

You have patched your Drupal website, haven't you? If so, then that critical 3-month-old security flaw Drupalgeddon2 can't get exploited on your site. Even so, with the menace of a cryptocurrency mining attack still lurking around the unpatched websites, you legitimately ask yourself: what are some quick and easy ways to secure Drupal?

“Which are the most basic steps to take and the simplest best practices to adopt to harden my Drupal site's security myself?”

Categories: Drupal

Steamforged Previews Veteran Fangtooth For Guild Ball

Tabletop Gaming News - 28 June 2018 - 8:00am
During the Union in Chains event for Guild Ball, just about every Union member was accounted for… just about. One that seemed to slip off the radar was Fangtooth. Whatever happened to him? Well, it seems that the Solthecian church found him, gave him a bath (or probably several), and has outfitted him with some […]
Categories: Game Theory & Design

Gaming or gambling? Online transactions blur boundaries

Virtual Reality - Science Daily - 28 June 2018 - 7:50am
In-game purchasing systems, such as 'loot boxes', in popular online games resemble gambling and may pose financial risks for vulnerable players, according to gambling psychology researchers.
Categories: Virtual Reality

Acro Media: Reducing Unnecessary Code Nesting in PHP

Planet Drupal - 28 June 2018 - 7:45am

The majority of Drupal's underlying code is PHP. As a Drupal developer, the better you know PHP, the better your code will be. In this Acro Media Tech Talk video, Drupal developer Rob Thornton discusses code nesting and how you can optimize your code in order to reduce unnecessary nesting. 

Code nesting can basically be described as when a block of code is contained within another block of code. If you're code isn't well thought out, you can potentially end up with deep nesting that is both hard to read and difficult to maintain. Aside from reducing difficult to read code and making your code more maintainable, reducing the amount of nesting helps you find bugs and lets other developers contribute to your code easier. Rob uses a number of examples of common nesting scenarios, walking you through how to find and fix them.

If you liked this video, you might also like these posts too.

Categories: Drupal

Card Games: No Gain from Pain, Part 2 - by Nicholas Kinstler

Gamasutra.com Blogs - 28 June 2018 - 7:08am
It's possible to make design decisions that turn players away, but it's also possible to make art and writing decisions that cause similarly negative reactions.
Categories: Game Theory & Design

Infinity Poster Contest Happening Now

Tabletop Gaming News - 28 June 2018 - 7:00am
Propaganda. Messages with a political motivation behind them. Usually, we have a negative view of propaganda. But in this case, it can win you stuff. Corvus Belli is running a contest to see who can produce the best propaganda poster for the various Infinity factions. If yours wins, you get a signed book and some […]
Categories: Game Theory & Design

Drupal Europe: Drupal, DevOps and Infrastructures in the brave new world of Distributed Systems

Planet Drupal - 28 June 2018 - 6:55am

Distributed systems face incredible challenges — Photo by Dennis van Zuijlekom

With Drupal 8 reaching its maturity and coupling/decoupling from other services — including itself — we have an increasing demand for Drupal sites to shine and make engaged teams thrive with good DevOps practices and resilient Infrastructure. All that done in the biggest Distributed System ever created by humans: the Internet. The biggest challenges of any distributed system are heterogeneity of systems and clients, transparency to the end user, openness to other systems, concurrency to support many users simultaneously, security, scalability on the fly and failure handling in a graceful way. Are we there yet?

We envision, in the DevOps + Infrastructure track, to see solutions from the smallest containers that can grow to millions of services to best practices in the DevOps world that accomplish very specific tasks to support Drupal and teams working on it and save precious human time, by reducing repetitive and automatable tasks.

Questions about container orchestration, virtualization and cloud infrastructure arise every day and we expect answers to come in the track sessions to deal with automation and scaling faster — maybe using applied machine learning or some other forms of prediction or self management. See? We’re really into saving time, by using technology to assist us.

We clearly don’t manage our sites in the same way we did years ago, due to increased complexity of what we manage and how we are managing change in process and culture, therefore it’s our goal at Drupal Europe to bring the best ideas, stories and lessons learned from each industry into the room and share them with the community.

What’s your story?

How is your platform scaling? How do you solve automated testing and continuous integrations? How do you keep your team’s happiness with feature velocity and still maintain a healthy platform? How do you make your website’s perceived performance even faster? What chain of tooling is running behind the scenes and what is controlling this chain? Are you using agentless configuration management or are you resorting to an agent. Are you triggering events based on system changes or do you work with command and control.

Be ready to raise, receive and answer some hard questions and but most of all, inspire people to think from a different angle. What works for a high-high traffic website might not be applicable for maintaining a massive amount of smaller sites. We want operations to inspire development on reliability and for development to inspire operations on any kind of automation. We want security to be always top of mind while still have an impact on business value rapidly and efficiently. And that is just the beginning…

About industry tracks

Drupal Europe’s 2018 program is focused on industry verticals, which means there are tons of subjects to discuss therefore when you submit your session be sure to choose the correct industry track in order to increase the chance of your session being selected.

Please help us to spread the word about this awesome conference. Our hashtag is #drupaleurope.

To recommend speakers or topics please get in touch at program@drupaleurope.org.

About the Drupal Europe Conference

Drupal is one of the leading open source technologies empowering digital solutions in the government space around the world.

Drupal Europe 2018 brings over 2,000 creators, innovators, and users of digital technologies from all over Europe and the rest of the world together for three days of intense and inspiring interaction.

Location & Dates

Drupal Europe will be held in Darmstadtium in Darmstadt, Germany — which has a direct connection to Frankfurt International Airport. Drupal Europe will take place 10–14 September 2018 with Drupal contribution opportunities every day. Keynotes, sessions, workshops and BoFs will be from Tuesday to Thursday.

Drupalcon Nashville — Photo by Amazee Labs

Categories: Drupal

Fantasy Flight Previews Three New Uthuk Units for Runewars

Tabletop Gaming News - 28 June 2018 - 6:00am
The ravening hoards are getting even more ravenous. Three new units will be making their way to the Uthuk ranks for Runewars soon, and Fantasy Flight is giving you a look at them. So, if you’re an Uthuk commander, you can start thinking about how to integrate them into your strategy. If you’re anyone else, […]
Categories: Game Theory & Design

Pages

Subscribe to As If Productions aggregator