Q: What is SCRUM?

Q: What is agile game development?

Q: What is a Jira? and how they prioritized and used?

I’m the Executive Producer on the project. That is a fancy way of saying I run the studio and the team/project. My main job is to create and manage the schedule. This involves first working with the leads to decide what our current Top 10 priorities are. From there I lay out a roadmap for the project month to month that lists out every feature and every piece of content with more detail in the current quarter and less detail as you go farther out. Once I have the roadmap laid out we then start creating tasks (aka stories) in JIRA which is our task and bug tracking/management tool. The giant list of all tasks and bugs is called our backlog. As each release (aka sprint) starts I pull a set of tasks from the backlog (or create new ones as needed) and assign them to each developer based on how many tasks I believe that dev can accomplish in the sprint. I prioritize the tasks so that anything marked high, critical, or blocker is expected to be completed in the sprint but anything marked medium or low can slip to a later sprint. The total number of tasks assigned is balanced against any bugs the dev needs to fix too. Then the dev and I have a brief discussion about the task load I’ve assigned and negotiate it against my estimates vs. theirs and adjust as necessary (usually pushing a few tasks into the next sprint as I am always a little aggressive). Additionally some tasks need further design/discussion so I will schedule a kickoff meeting before development can begin (this usually pertains to big systems and maps). Each week I triage the task load for the entire team to see who we are doing and push tasks out or pull tasks in as needed (sometimes creating new ones as needed as well). Secondarily I am also in charge of our press, marketing, sales, and funding strategies so I spend time planning how we are going to add content to the store, do telethons, attend trade shows, etc. I also work with the press to make sure we are getting coverage when needed. Finally I make sure we are considering user feedback in everything we do so I spend time every day in the forums reading what you the players are saying.

I’m the Executive Producer on the project. That is a fancy way of saying I run the studio and the team/project. My main job is to create and manage the schedule. This involves first working with the leads to decide what our current Top 10 priorities are. From there I lay out a roadmap for the project month to month that lists out every feature and every piece of content with more detail in the current quarter and less detail as you go farther out. Once I have the roadmap laid out we then start creating tasks (aka stories) in JIRA which is our task and bug tracking/management tool. The giant list of all tasks and bugs is called our backlog. As each release (aka sprint) starts I pull a set of tasks from the backlog (or create new ones as needed) and assign them to each developer based on how many tasks I believe that dev can accomplish in the sprint. I prioritize the tasks so that anything marked high, critical, or blocker is expected to be completed in the sprint but anything marked medium or low can slip to a later sprint. The total number of tasks assigned is balanced against any bugs the dev needs to fix too. Then the dev and I have a brief discussion about the task load I’ve assigned and negotiate it against my estimates vs. theirs and adjust as necessary (usually pushing a few tasks into the next sprint as I am always a little aggressive). Additionally some tasks need further design/discussion so I will schedule a kickoff meeting before development can begin (this usually pertains to big systems and maps). Each week I triage the task load for the entire team to see who we are doing and push tasks out or pull tasks in as needed (sometimes creating new ones as needed as well). Secondarily I am also in charge of our press, marketing, sales, and funding strategies so I spend time planning how we are going to add content to the store, do telethons, attend trade shows, etc. I also work with the press to make sure we are getting coverage when needed. Finally I make sure we are considering user feedback in everything we do so I spend time every day in the forums reading what you the players are saying.

Q: What is a mesh?

A mesh is a collection of lists: Vertices (points in space), Tris (which vertices make up a triangle) and additional (optional) data such as normals, UVs (or UVWs) and vertex colour.A square (or a "quad", as we call them) is essentially built as follows:Vertices is a list of vectors:vert0 : Vector3(0,0,0)vert1 : Vector3(1,0,0)vert2 : Vector3(1,0,1)vert3 : Vector3(0,0,1)Tris is a list of vertices. Three consecutive vertices is a tri (a triangle). The order dictates the frontface (what the engine identifies as the surface to draw when backface-culling is applied):vert0vert1vert3 _ one trivert3vert1vert2 _ 2nd tri(the image above use the term "face" instead of "tris")Normals (optional) is a list of vectors that tell the light which direction the surface is facing. Normal maps is a texture file that contains (x,y,z) modifications to the normals and the data is stored in (r,g,b); used to influence how the surface is perceived by light on a per-pixel basis to add incredible levels of detail.In layman terms, a mesh is the geometry of a 3D model. The reason why we call it a "mesh" it's because a wireframe looks like a mesh. We love to use multiple words for the same thing.Texture maps works with the meshBasically you add another optional list that we call UVs (or UVWs). It essentially goes like this:for vert0 : Vector2(u, v)for vert1 : Vector2(u, v)for vert2 : Vector2(u, v)for vert3 : Vector2(u, v)U corresponds to the X axis in 2D space, V to the Y axis in 2D space and W to the Z axis in 2D space (we use different letters to differenciate 3D space to 2D space).So Vector2(u,v) are coordinates that corresponds to the pixels in your texture file. (0,0) typically is assigned to the top-left corner of your image. (1,1) is the bottom-right corner of your image. A UVW is typically used for procedurally generated textures where you'd want a depth variant; like for tri-planar shading.So, for example, you map vert0 to (u,v) in your image and you map it in 3D space to (x,y,z).I hope this helps.Read more on game graphics at: https://www.shroudoftheavatar.com/forum/index.php?threads/on-video-game-graphics.54435/ I believe it goes in greater detail on various game-related graphics terminology.

Q: What is the challenge in making a story for both single and multiplayer?

A: Do you have a few months?It's one of the more hotly discussed topics on the forum, and with good reason. Story development has lagged behind other parts of the game for a while now, and has been @Lord British 's personal cause for a while now. (Refer back to those 68 JIRAs - the number was about 30 higher last week, thanks to about that many suggestions from a feedback thread on the story finale that LB mined for action items) Specifically, making a compelling single player story that survives contact with multiplayer (and vice versa) isn't easy. There's some technical challenges involving instancing/phasing that we've yet to overcome, which ties our hands in a lot of ways in regards to making your actions have a visible impact.There's issues beyond that, though. Instancing everything willy nilly also isn't a good answer because it effectively puts everyone into a single-player narrative, which is less than ideal. Having everything a player does reflect on a multiplayer narrative for everyone else is also, to put it mildly, less than ideal (I recall a recent thread here where someone was disappointed that they couldn't burn Owl's Head to the ground, thus forcing everyone in the Hidden Vale to shop at their POT. Uh. That has some issues.) In general, our direction has to make a compelling narrative for everyone, regardless of play mode. I think it's obvious we have a way to go there, and continue to iterate on it (and will continue to do so well into the future).The whole topic is something we're actively working to improve, and we keep a close eye on feedback and suggestions here. (Note: burning Owl's Head to the ground is not a helpful suggestion.)We are working on it to the wire; there are significant changes to the ending Path of the Oracle script going live next week based on player feedback.

Spoiler: Additional Answer by Puuk

There's more than one challenge, but the biggest one is that what can be done story-wise in single player usually cannot be done in multiplayer. At least not with the same depth and how player actions (or inaction) affects the story and environment. For example:



Single Player (hypothetical if the single player aspect was the only way to play the game, or was a separate entity)

In Blood River Outskirts, if the player chose to side with the elves and serve Phineas with the warrant, the scene would change to reflect it. Phineas would clear out of his camp and head back to Aerie to reclaim his fortune and probably face trial. The player may even have a quest to be a witness in the trial. Aerie militia would have taken over his camp to make sure any and all signs of the vigilantes were being eradicated. The elves would relax a bit and probably just make this area their new home, building up the encampment to more resemble a village. Naturamans might eventually build up an army of fell-druidic plant-zombies and try to overtake the remaining elves, or make the pyramid his new home, burrowing out more of the interior to hone his master plan of regional domination. Fungelves (what I internally call the Corrupted Elves) would no longer be a problem and would cease to spawn. All the mushroom men and slimes would be a thing of the past. The Obsidian elf camp might build up to a fortification and cause problems for all in the area. Etc., etc.



Now, what would this do to multiplayer? It would kill any other future players' chances of finishing the quests, giving the warrant, or poisoning the elves, etc. So, in considering multiplayer, all quests, interactions, progress, etc. has to play nice to all potential players no matter where they are in the quest lines. We can do checks in dialogues to represent where the player is in their quest progress. We can have the occasional solo-instance to allow us the freedom of showing change based on player actions. And we can put in multiple ways of completing quests to spice things up, time allowing. Now, I tried to do the latter in Blood River Outskirts wherever possible, but man did it cause a lot of problems. Anyone outside Port that could see how many flags and checks I'm using throughout all the dialogues and trigger boxes would probably have their heads explode. I know mine did several times during the polishing phases. It was a great trial-by-fire for me to quickly get up to speed on the tools, but man it was painful. It did allow me to do more with Highvale Outskirts, however. Yes, HVO is more straight forward and more combat oriented, but it's the path of courage and challenges players to jump into the fray. There's a lot of courage virtue points handed out in HVO as a result, and some taken away based on taking the easy way out, so to speak. But the lessons learned on BRO allowed me the time to create the frostgeist critters, the Bogman of highvale Outskirts, the water golems, the fancy barrier in the mine, and a bunch of other things. It doesn't necessarily change the environment based on player actions, but hopefully it made the encounters more interesting. One thing I was able to do that is a direct affect of where the player is in the quest line, is when the player finishes the main quest and defeats the geistesser, all the surprise frostegeist spawners will not fire for players at this stage of the quest, lessening the amount of frostgeists the player triggers in the scene dramatically.



"You can just put in phasing! It's so easy. I could do it in a weekend!"

No, it's not easy. And no, you couldn't do it in a weekend. It's a lot of work and is far from fool-proof. Current MMOs that use phasing still have a lot of issues, not the least of which is that if players want to meet up, they may not be able to because they are in different phases as a result of being at different points within the quest line. It's certainly something to consider, and we have had talks about it, but it's not like flipping a switch and everything magically fulfills everyone's dreams.



Going forward, and using all I've learned about what can and can't be done effectively with the tools, I will try to put in as many options for quest completion as I can, as well as think of ways to illustrate the players' actions in the scene without breaking things for everyone else. It's a tough job, but I like taking a stab at it every chance I get.