Is Glasstaff and the entire Redbrand Hideout supposed to be this easy?

DISCLAIMER: The whole question has spoilers about Lost Mine of Phandelver.

So, I went through the Redbrand Hideout with my party. They

This fight was the one they used most resources – two 1st level spell slots from the 2nd level Cleric for healing, Lay on Hands from the Paladin for healing (7 HP out of the 10 total HP pool), Hunter’s Mark from the Ranger for damage. Also, the Paladin used one divine smite.

After that, they

Our Druid used Faerie Fire on the enemy, as the first person moving. He failed the ST, making every other attack against him have advantage. Our Paladin had the +1 Longsword from

He critted, with divine smite, dealing 6d8 + 4 (31 average) damage. So… yeah, Glasstaff was unconscious before being able to make any action or reaction.

Is the fight (and the dungeon as a whole) supposed to be that easy? I understand that they skipped essentially every content on the dungeon, making literally the fastest path to Glasstaff they could make, but still… Everyone’s left with a feeling of “really? Was it supposed to be that easy? I’m confused.”

I’m running this adventure for the first time, so I’m not sure about: did I do something wrong? – did I misplay Glasstaff or something? Were they just too lucky in finding the secret door, getting to surprise him and critting him?

Am I mistaken and the real challenge begins now, as they are mostly drained out of resources, and there’s still much dungeon to explore?

As a note: Glasstaff roled for an amazing 3 initiative, so even if he wasn’t surprised, he would be unconscious (PCs didn’t kill him) before his first round anyway.


I am sincerely confused about how easy this “dungeon” and its “boss” was. As I said, the main “questions” (I think they are all related, so no “more than one question” here) are:

  • Is this supposed to be this easy?
  • If it is not, did I do something wrong?
  • If it is, is there something I can change (the next time) so it actually becomes more challenging?

I’m aware that Glasstaff encounter gives only 200 XP, being a CR1 monster against 4 2nd level characters, so pretty easy encounter. But should it have been different, overall?

And, as I mention in the body

  • Am I mistaken and the real challenge begins now, as they are mostly drained out of resources, and there’s still much dungeon to explore?

Party setup

Probably implied for now, but the party this time had only 2nd level characters, one Druid, one Paladin, one Ranger and one Cleric. To be fair, they aren’t even worried about optimization.

Tactical comment

I don’t feel like I have played the NPCs/monsters wrong. As I said, the Nothic itself drained a lot of resources from the party – 2 out of 3 spell slots from the Cleric, 1 out of 2 spell slots from the Ranger, 1 out of 2 spell slots from the Paladin, dropping the Cleric and the Paladin to half HP and the Ranger to half HP as well.

Glasstaff, on the other hand, with his miserable 22 HP and (even with) 20 AC, got pretty easily hit by the +6 attack bonus from the paladin (+1 LS) (it actually critted, as I said, so that doesn’t even matter) and +7 attack bonus from the Ranger (+2 from archery, +5 from usual).

nginx ssl_dhparam key for each vhost, or once for entire configuration? vs SSL confg

Should diffie hellman parameters (ssl_dhparam key) be generated for each vhost, or just placed within http{...}? (for completely different website served up by the same host.

Conversely, to confirm, ssl_certificate, ssl_certificate_key, ssl_trusted_certificate should be different for each website? Is there a way to refer to these three parameters if used in multiple vhosts (e.g. forwarding none www to www) without copy pasting? (Trying to follow the DRY principle, one source of truth)

Is it possible to send the entire rendered html and css from client to server?

If you hit ctr-s you can save the current website on your hard drive. I want to send exactly the same data directly to the server when hitting a button using javascript. How to do that?

It should later be possible to serve the website data from that server. And it should look and behave the same way.

Change an entire google sheets to UPPER case, not with an add-on or onEdit(e) [on hold]

I need to change all the text in Google Sheets to upper case, the problem is it’s filled in by Zapier which doesn’t register as an edit for onEdit functions. It’s also automatically converted to .xlsx and emailed so none of the add-ons will work because they need to manually run. After the email sends a script wipes it and we start over as a daily report. I’ve looked everywhere for a script that will work but haven’t been able to find anything.

I currently have it transferring to other sheets using importrange wrapped in arrayformula(upper, which works but then my xlsx cell contents is all iferror functions.

I’m sometimes the only one working for an entire day or longer. How should I handle the daily Scrum Stand-up?

We have a very small team: me, my 2 coworkers who are both my senior by over a decade, a web designer who usually works on marketing material but also does some graphical mock-ups or minor graphical fixes for our front end, and the manager/boss. The daily Scrum stand-up is me and my 2 coworkers. Due to the small scale of our team, we tend to take some liberties with the Agile system, like longer stand-ups with a lot more discussion between the 3 of us to agree on solutions for problems we have.

The situation I have is that, because I’m the only one who is at the office every day and I rarely take more than a day of vacation at a time outside of either holiday season, I’m often the only one at the office for the entire day, sometimes even for an entire week or longer. I’m not just talking about “both my coworkers works remote”, I’m talking about “both my coworkers are taking a 2-3 week vacation at overlapping times”. During this period, I’m the only person of our team who is present, so I have no one else to do Scrum with.

So far, what I’ve done during these period is do a Scrum stand-up with either the web designer or the manager. However, because neither of them has the domain knowledge the main Scrum team has, this tends to limit the scale of problem solving during the Scrum. They’re also sometimes on vacation during the same period. If I’m truly the only person at the office during those times, pretty much the only thing I do during the Scrum is move items I’ve finished from “In Progress” to “Testing” and mark half days worked in Jira. I don’t have the ability to bounce my progress or ideas off my coworkers.

I’m not sure how to handle this. There are resources on how to handle Scrum in a one person team if there is always only 1 person, but there don’t seem to be many resources on how to handle teams where the number of members on a day to day basis varies between 1 and 3. Are there generally accepted ways to handle this particular limitation?

How can I back up an entire MySQL Version, to be re-uploaded, in the event of a version upgrade going wrong?

I run a VPS, where I would like to upgrade the MySQL from 5.5.5 to 5.7. To achieve this, I will be looking to follow one of MySQL’s official Documentations. I would welcome any suggested articles on how to perform the full upgrade.

Naturally, I am going to want to perform a full backup of the MySQL Database beforehand. To backup a MySQL Database, I am aware that you simply head into the relevant Database’s ‘phpMyAdmin’ and then Export from there.

What I would like to be able to do is to download the entire current MySQL ‘package’ so to speak, so that if the new version causes any problems, I can simply re-upload the original working MySQL version. Is there a way this can be done?

Ideally, there would be a process akin to using FTP to backup a server’s Web Files.

System Overview

  1. OS: CentOS 6.10 (Final)‬;
  2. Product: Plesk Onyx (Version 17.8.11 Update #56);
  3. MySQL Version: 5.5.5

C Function returning pointer to first element vs. a pointer to an entire array

Suppose I have an API function which returns a pointer to some memory, that is later to be consumed in an array-like manner. Suppose also that its size is known in advance, and that it’s declared like so:

returntype API(void); 

Is it better for the function’s return type to be declared as pointer to an array, like so:

typedef struct data (*returntype)[]; 

or for it to be defined as simply the good old pointer to the first element, like so:

typedef struct data *returntype; 

On one hand returning a pointer to an entire array seems to make more sense, but on the other the API consumer would probably prefer the 2nd version because it’s easier to consume:

e.g. from the consumer’s perspective, copying the 3rd struct in the array:

1st declaration:

returntype = API(); struct data third= (*returntype)[2]; 

2nd declaration:

returntype = API(); struct data third = returntype[2];