Please visit for more official info on my projects!

Thursday, December 29, 2016

Winter 2016 Projects

I am going to finish my tower defense game.

The game lacks a unique punch; I thought the salvage mechanic would be enough but since some time has passed, I can clearly see that yes, it is unique, but not enough so to totally differentiate itself from other generic games. In summary, I'm going to finish out the salvage mechanic in a much simpler way than previously planned.

And then I'm going to add multiplayer.

Yes, that's right. I've done it once before, on a prototype game that never saw the light of day, so I know it's possible.  I'll have to experiment with Android's platform to determine the viability of this idea, but I imagine, at least on a local basis, that it shouldn't be too difficult.

Let me elaborate: I want Tower Seven to have the ability to put the player up against the computer, or up against another human. The other person will have to be in proximity - I'm really not comfortable with a wide-area networking solution yet. The players use resources not only to build towers, but also to send units of their own towards the other player - much like the mechanics of a versus Wintermaul in Warcraft 3. Players send units at each other until one falls behind and gets overwhelmed.

If it's easy enough (it won't be), I might also add cooperative play.

Okay, so maybe it's not that innovative, but I am going to try this. If it's totally unfeasible, I'll come back and own up to learning more.

Friday, November 4, 2016


I've been working on a game currently called Panopticon, which is about a guy in a special prison. This prison works primarily through surveillance, and only punishes the player for smoking. It's a simply 2.5d platform game, but there's good narrative and environmental appeal. It's also my first game in Unreal 4, and I'm slowly making friends with the blueprint system.

Fortunately, I haven't done too many job applications yet - I'm not burnt out. I really want to be good enough at my work that people recommend me, so if I do apply for a job, I can at least get an interview. If I burn myself out just doing job applications, I feel sorry for my first employer.

Also, my work in the foreseeable future seems to be mostly virtual-reality-related. When I was much younger, this was my dream job - inventing the ultimate virtual-reality system and games. I still want to do this, but I also feel that my education hasn't been directed towards being on the leading edge of that technology. At this point, and despite my reservations, I am grateful to have gone back to school to really build skills in programming, design, and using game engines to make experiences.

Tuesday, July 12, 2016

Unknown Future

My current projects include reworking the Kyn Creations website to reflect recent changes with how I want to display myself as a game developer. Ideally, I would allow visitors to one-click download the game demos I have available, instead of requiring a name and email. Since I'm using WordPress and the Easy Digital Downloads plugin, I am not given the option to easily organize and display those downloads with all of their related content (most notably the nicely laid-out thumbnail grid) without sending visitors to the cart to checkout first. This is a detraction from my site since I don't want to charge for unfinished products, and requiring an email is still technically charging. At the very least it's a waste of time.

So I'll have to create my own page with the thumbnails and manually lay everything out myself, and then create download buttons in a similar style. Not difficult, but certainly tedious - especially since I'll probably end up taking most of those off the site when I start finishing projects. I'm also fairly certain there's some add-on someone's made that I could just download into WordPress and use, but at this point in my professional opinion most of those things end up requiring a similar amount of time in their documentation learning how to use it compared to just doing it manually. Any time I run into intuitive design nowadays I try and point it out.

Part of the plan for reworking my website includes coding examples. This is an exciting challenge for me, because I typically write a type of hastily thrown together code that functions but is otherwise lacking in commenting and flexibility. For example, I wrote some code that dynamically handled sound clip creation for independent sounds - like gunshots and explosions - so that they would overlap, reverberate, and react to the environment, and generally sound as realistic as possible. That code has to be tweaked every time I reuse it because each situation requires a slightly different set of rules. Things like pitch modulation for footsteps and volume reduction for sounds that happen frequently. I'm hesitant to show that off as a representation of my skills when it is observably flawed.

The other part is including information about my game concepts. This is somewhat controversial, and here's why:
Many of my compatriots believe that good game ideas are entirely too common, and I agree. The execution of a good game idea is what makes the game actually feasible. The problem with that logic, though, is that then we're basically telling ourselves not to openly advertise good game ideas, and I think that is wrong.
A good game idea that sits on a shelf forever is a tragic missed opportunity, especially in the ever-changing political environment we occupy. For all we know, our way of life could come to a screeching halt and suddenly any form of video gaming is now outlawed for its distinct lack of productivity (or whatever argument may be the most believable and misdirecting). The flip-side to that argument is that a good game idea that gets overproduced, that is to say, multiple games get made on the same subject matter, are observably worse quality. I'm sure there's some psychological theory that explain things in a rarity-makes-quality kind of way, but that's beside the point.

What I want is to show people who have the opportunity to invest in other young talent, to actively build an educated middle class, a potential product that could not only make money, but also initiate people on journeys that are otherwise impossible without our computer technology.

By including game concepts, even if they are simply excerpts of a bigger design, I want some intrepid investor to say, "Wow, yes that's a good idea, I want to help make that real." The difficulty is to pitch an idea. Most entrepreneurs take a product and sell it. Video games are different. You can't just make a bunch of games and sell them and then go to an investor and say, "I've made ten games that gross $267,000 in a year and that's why you should give me an additional $150,000 to make one more that's bigger and will sell ten times what I made last year!" Video games aren't that simple.

During my time in Game Lab at UTD, three to four months making a vertical slice, or a demo, of a game wasn't nearly enough. The best we ever got was usually 60-70% of a finished product. That's one game. So, speaking for all game developers out there, we need a bit of a push from the investor side - either in educating investors as to the worth and risk of a single idea, or in getting investors to understand that a single product can take months (think of it as R&D) before sales are even possible.

One of the main problems is inherent with this post - it's a wall of text. It's not an 800 page report, so there's a much lower chance of misdirection, but I know no one willing to spend more than 60 seconds deciding if an idea is good AND putting their money behind it. It's like there's a reverse correlation of the amount of time spent deciding something to the amount of money put towards it

I've also talked with people who are clearly capable of investing thousands (if not tens and even hundreds of thousands) on solid projects, who simply shirk a good idea because it wasn't presented perfectly. I've also seen some of those few go on to invest in clearly bad ideas. That's a major and fundamental flaw of capitalism. No matter how free your market is, there's no expectation that good ideas will actually prevail - just the ones that work temporarily. And by work I mean make exponential and unsustainable profits and problems.

I've seen my peers dump hundreds of hours into side projects that are clearly bad ideas, and even I have not seen some of my better ideas through yet. That's my fault entirely, but I do wish quite often that I had someone mentoring me while I'm still young and telling me that thing I haven't finished is more important.

So the reason it's an unknown future is because I can't see past my decision to simply give up - and either teach or join the computer programming industry, games or not - or to keep moving forward with my ambitions and keep being poor until I either finish a game and make it popular or find the funding to expedite the process.

Wednesday, May 25, 2016

Procedural Generation

No Man's Sky had a hype train like no other, but only because the idea of procedural generation made the world tantalizing.

Procedural generation in video games means that the audio, visuals, the structures, and even the gameplay can be created at runtime by code.

There's no need for expensive tools, hundreds of hours of work in pipelines that get clogged regardless of effectiveness or efficiency, or workaround solutions to simple problems.

The idea is that someone with a cursory knowledge of a concept, for example - stone - can write code and use mathematics to create this:
 Computer programming is largely language and math-based. That means we can reduce extremely large systems and environments down to their simplest form. Don't let the word 'database' intimidate you, because they're just rows and columns of information, just like a regular excel spreadsheet. Those cells of data can be interpreted into something as simple as the size, orientation, color, and roughness of each of the stones shown above.

Even something as complex as animating an animal can be solved using a procedural approach. The model composing that animal has to be rigged with joints which represent bones. Each of those bones only has a certain range of motion, and then has muscles attached to points, which further modify how the bone can move. After the entire model is fully rigged, a bit of code can determine how that animal walks, runs, turns, etc. based on how those bones and muscles interact.

So instead of dumping money into arbitrary problems that we can't solve with the tools that are currently popular, why don't we dump some money into solving those problems with new tools that were either previously underrated, misunderstood, or simply undiscovered!

Tuesday, March 15, 2016

Solving the Problem of Simulated Time and Space

Part of the reason why I have waited so long to build a rough prototype of A Village In Time is because I haven't decided how I want to solve the problem of simulating time and space for the medieval world. Speeding up the time is an obvious and common choice developers use to make sure we can play games without absolutely losing all of our time doing so.

For example, in The Sims 3, players get the option of choosing how fast the sims age (ranging from 25 to 960 in-game days). Each in-game day, played on normal speed, equals roughly 24 minutes. And anyone who's played the game knows that 16 of those minutes is spent in fast-forward, so let's just say 10 minutes. That means players can choose how long each game will be based on how long their sims live, effectively determining how much time they'll spend in a single game.

Personally, I like this model, and will probably emulate it in some way. The fundamental problem still exists, however, that simulated time does not convey real actions and movement. The Sims 3 game-play includes Sims that will shower for up to 6 hours, require at least half an hour for a tinkle, or clean the sink for 3 hours. Regardless of the actual math, the principle concept is that the player loses valuable playing time to poor simulation balancing.

Take the example of Banished: each villager lives 75-90 seasons, or roughly 19 to 22 in-game years. Each season is roughly 25 real minutes. Players can control the time scale up to 10x, and so 1 in-game year can equate to as little as 10 minutes of real time. With that kind of time scale, micromanagement becomes impossible and effectively so does expanding the settlement. I need to slow time back down when a trade needs to happen, mark resources for collection, or place plots for construction.

I also like this model, so I have two options. So why not both? Have the player choose the lifespan of villagers at any point in the game via the options menu, and then also control the time scale for precise periods of management and overview. The problem with going with both is that I feel put off by how fast villagers could and do travel over these periods of time.

Simulating weeks, months, seasons, years, and the human lifespan means that a finite number of actions can occur during a specific period of time. Changing the walk/run speed of the villager drastically changes the number of actions, which can drastically imbalance a real-time strategy game. So now it's no longer a question of how long the player feels comfortable playing (since we've relegated a player's general play time to anywhere from 20 to 90 minutes), it's a question of how many actions does the player expect out of their villagers in that time.

Let's be clear here. I'm not talking about actions per minute in the sense of competitive play. Demoting a game to such a high stress level is the opposite of the point of playing games.

Look at Age of Empires - a clean real-time strategy, based in the middle ages, with almost no relation to simulated time. No day/night cycle, no seasons, no years, no lifespans. Simple, effective.

But I have to have simulated time. I can't have all the details I want without sacrificing either player time (dangerous, because games that take too long to play don't get popular), or player satisfaction via villager speed and number of actions per time cycle.

So let's say I max out the average play time: 90 minutes. Each villager has a lifespan of about the same. Okay, next let's determine a good number of actions a villager can do per minute. I'll define a villager action by moving to a destination and then picking an object up. My environment is measured in meters for simplicity. I'm assuming a villager can move at least 2 meters per second. So now my actions are determined NOT by time scale or villager life expectancy, but by distances traveled. A villager assigned to pick up and drop off an object at a distance of 30 meters per trip means that they will complete those tasks 4 times per minute.

That's slow... real slow. The obvious solution is to speed up the villagers. Let's assume they run everywhere (like in most MMORPGs): 7 meters per second. Now that same round trip can be done 14 times per minute, and that's much more reasonable.

TL;DR - Simulating game time means taking liberties with simulating unit speed and/or stamina.

Tuesday, January 26, 2016

Spring 2016 Projects

I finally reached that point where my experience and skill is high enough to warrant having the ability to say "yes I can do that" to almost any game development idea. Unfortunately, I'm also learning that saying something so optimistic can lead to having entirely too much for one person to do in a short period of time. I will work diligently, and I will accomplish my current goals. I will also start saying "no" more than I have ever before.

First and foremost project is Tower Seven. This Windows and Android tower defense game will be my first 100% completed project, and will be on the Google Play store by May if all goes as intended.

Second is Arpeggio, a Windows dungeon adventure game that uses musical notes and chords to overcome enemies and challenges.

Third is Drone Simulator, a Windows game that places the player in control of a drone that must deliver packages within a time limit to earn money for its company.

Fourth is whatever software is required for my programming class - currently it's a number guessing game where the player inputs a range and the computer tries to guess the player's number using a binary search.

Fifth is Drive Forever. This is the problem child. Although the idea is solid - players simply drive a hover car around in a procedurally generated world to their hearts content, earning points for not crashing - it probably won't make it past its current alpha build. I had a blast making it, learned more about Unity3d, and was able to get some experience working on a team.

After that, maybe some cataloging software for a games library that serves as an easy-to-use GUI on top of excel documents; a game design document for a city-building game; a design document for a top-down shooter game that showcases a plethora of fun weapons and crazy destruction; whatever thing I work on for Game Jam...

The list could go on.

tl;dr - I have too many projects at once, and will start saying "no" more.

Wednesday, January 13, 2016

Theoretical Budget - January 2016

I created a theoretical budget for living back in 2014 using the societal needs categories as the items in the budget. I omitted air, sunlight, and recreation, and I was able to easily catch all of my potential expenses either in the remaining items or in the tax withholding item. Here's what it looks like for 2016:


Water -  $ 57.50 - Household of four halved.

Food - $ 400 - Dining out for half of all meals.

Rent - $ 800 - An average 3 bed 2 bath house halved.


Electricity - $ 107.50 - Household of four halved.

Waste - $ 35 - Trash, recycling, and sewage.

Clothing - $ 50 - The cost of one full outfit.

Entertainment - $ 75 - Games, movies, sports, etc.

Exercise - $ 15 - A gym membership.

Tax Withholding -  $ 67 - Automatic taxes to the government.


Transportation - $ 135 - Insurance, gas, and tolls.

Communication - $ 105 - A cell phone and internet.

Shopping / Trade - $ 40 - This money goes to furnishings and goods.

Healthcare - $ 220 - Healthcare and dental.

Safety / Regulation - $ 15 - For when you get a parking ticket.

Social - $ 20 - When you go out for drinks.

Religion - $ 20 - For the sake of charity.

Education - $ 50 - Send your kids to college.

Creative Arts - $ 25 - A hobby or just craft supplies.

Risk - $ 25 - Do you feel lucky?

Total (Monthly)
$ 2,262

$ 27,144

In summary, rent and food prices have risen predictably, and transportation costs have gone down slightly with gas prices. Communications and clothing have increased to represent their importance. This budget is my defining line between the lower and middle class. It also may not be entirely accurate. For instance, many people pay much more for insurance or education.