Saturday, March 18, 2017

Fallout 4 Machinations

hey all,

I've been playing through Fallout 4 for several weeks now, and overall it is fun. I wanted to share some of my analysis so far, so please check out the video below.


In addition to observations I made in the video, there are level requirements for the abilities, so that a player cannot actually just invest 10 points in Luck, and then unlock the rank 10 Luck ability. Instead, the player might be forced to invest in other abilities until they reach level 40, for example, and then they might be allowed to invest in the rank 10 Luck ability, whatever it may be.

This acts as a kind of gating or even Stopping mechanism, preventing the game from becoming too easy too soon. These restrictions also create opportunities for the player to strategize about which attributes and which abilities to invest in, a form of long-term planning which increases player engagement.

Stay tuned for more analyses.


Thursday, March 16, 2017

Digestion Game

hey all,
Below is a video of the digestion game that I made about a year ago. I've had a Skype meeting with a company that is interested in selling it to schools to use as an educational tool, after it has received a healthy dose of polish, of course.

So, in the next few days I hope to finish up following the node editor tutorial videos, and then take a look under the hood of my digestion game and see if I can make it run smoother, play in a more engaging way, and look nicer.




Thursday, March 9, 2017

GDC

hey all,

GDC 2017 is over, and my oh my, how overwhelming, wonderful, boring, and fascinating it was. I've never been to San Francisco, so just that was pretty interesting for me. I was able to do a little sightseeing the day before GDC started, but after that I was in seminars and meetups almost the whole day every day after that. I have no idea how many people attended this year, but I read that in 2016 about 27,000 people attended, and it would not surprise me to know that around the same number did so this year.

I only went for the Educational pass, which although well worth it for the money, does severely limit what seminars you can attend. So, for the first two days, I participated in the Game Design Workshop, which was focused around working in small groups to design mechanics and themes for games. Really fun to finally work in a group, although I was lucky and most of the time my group was filled with great people from academia, the industry, and amateurs/hobbyists like myself.

The other days were spent running from room to room and building to building to attend the next seminar. In between those, I got to chat with random people and check out the expo, which featured games being developed by teams all around the world.

That's all for now, but expect more news soon.


Wednesday, February 22, 2017

We're off to see GDC, the Wonderful GDC of San Francisco!

hey all,

I wish I had some uber cool gameplay or demonstration to show everyone, but to be honest, although I have been working on improving that node editor, I have not made significant progress on it. I have written a small Windows Application Form that will construct file folder structure, and generate properly formatted Visual Studio Solution files, which are amazingly dry to read:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common", "Common\Common.csproj", "{2F7CB239-8DEB-473E-AD4F-54BDA3A573F6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common.Editor", "Common.Editor\Common.Editor.csproj", "{F3429125-342F-4C61-8B06-BCB24B3B2177}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NodeGraph", "NodeGraph\NodeGraph.csproj", "{31EF0942-3ECB-44C7-9909-7803AB3F1965}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NodeGraph.Editor", "NodeGraph.Editor\NodeGraph.Editor.csproj", "{33AC7A55-35B9-4422-AD3D-A90F2C584A4E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{2F7CB239-8DEB-473E-AD4F-54BDA3A573F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2F7CB239-8DEB-473E-AD4F-54BDA3A573F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2F7CB239-8DEB-473E-AD4F-54BDA3A573F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2F7CB239-8DEB-473E-AD4F-54BDA3A573F6}.Release|Any CPU.Build.0 = Release|Any CPU
{F3429125-342F-4C61-8B06-BCB24B3B2177}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F3429125-342F-4C61-8B06-BCB24B3B2177}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F3429125-342F-4C61-8B06-BCB24B3B2177}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F3429125-342F-4C61-8B06-BCB24B3B2177}.Release|Any CPU.Build.0 = Release|Any CPU
{31EF0942-3ECB-44C7-9909-7803AB3F1965}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{31EF0942-3ECB-44C7-9909-7803AB3F1965}.Debug|Any CPU.Build.0 = Debug|Any CPU
{31EF0942-3ECB-44C7-9909-7803AB3F1965}.Release|Any CPU.ActiveCfg = Release|Any CPU
{31EF0942-3ECB-44C7-9909-7803AB3F1965}.Release|Any CPU.Build.0 = Release|Any CPU
{33AC7A55-35B9-4422-AD3D-A90F2C584A4E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{33AC7A55-35B9-4422-AD3D-A90F2C584A4E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{33AC7A55-35B9-4422-AD3D-A90F2C584A4E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{33AC7A55-35B9-4422-AD3D-A90F2C584A4E}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal



But that does not make for really gripping story or text. So, here it is: on Saturday I leave for the Game Developer's Conference in San Francisco, California. I will be attending under the educational pass, so I get access to all the educational and career seminars and workshops. I've ordered a big stack of business cards (that should be arriving later today) to pass out to all and sundry. In other news, I contacted Teacher Gaming months ago, but never heard back, so I assumed I was getting the cold shoulder. But I actually got an email from them the other day, so it is at least possible that I could polish one of my early games and sell it.

In any case, please do not expect any updates for the next week.

Wednesday, February 15, 2017

Node Editor Demonstration

hey all,
 Here is a brief demonstration of the node editor I've been working on. It is not perfect by any means, but I've learned quite a bit about coding GUI, serialization, and handling connections between nodes, which can get really complicated.


Cheers,

Wednesday, February 8, 2017

Quest System

hey all,
I've been working on putting together a quest system to work with my NPCs and their changing needs and moods. Following a few tutorials on how to set one up, I've decided to create an interface IObjective from which ten different objective classes will inherit.

Using these objectives, I can then create a Quest class that will contain, among other things, a list of objectives.



The quest system will have to be hooked up to the Item and Actor classes, much like it is in the Papyrus scripting used in The Elder Scrolls V: Skyrim. This way, the quests can be updated and notified using events fired off by the items and actors that are part of the quest.

As a ... I actually don't know what to properly call it, but I've been working on a custom node editor for the Unity engine at the same time. The idea is that I can have custom nodes, windows, and graphs,  which could represent conversations, behavior trees, quests, or something else. Much like Skyrim has the Creation Kit editor, after I'm finished coding, Unity will have a custom interface that will allow me or others to quickly create new content, or to design the rules that the game engine will use to generate content on its own. At least, that is the conceit now. Besides, following this tutorial will give me more experience working with GUI, interfaces, events, reflection, and serialization, which will all benefit me in the future.

Wednesday, February 1, 2017

More Steering Behaviors and Let's Play

hey all,
Here's a quick demo video showing my steering behavior at work. They finally seem to be functioning properly, after two weeks of slaving away at them. I actually reverted to using Reynold's version, but I think I'm going to revisit my own Perlin noise version in the future.


I've also started a Let's Play video series of me playing Total War: Warhammer.



Cheers,