Thursday, December 28, 2017
Don't be a Game Designer
A large company will need a very specialized designer. And junior jobs are highly contested and difficult to get into.
Instead of going to school for game design. Go to school for computer science. Learn statistics, and learn excel (google spreadsheets). Know how to take data and analyze it. Learn how to figure out percent chances of complicated randomness. Be a mathematician.
Practice drawing every day. Practice with a mouse using shapes with google draw. Take a drawing class. Learn how to do pixel art. Learn how to do line shading. Learn how to do simple 3D modeling. Do that instead of going to school for game design.
Learn how to program. Learn how to create a prototype. Create practical prototypes of game ideas when its faster than programming something. Watch youtube videos like Mark Brown's gamemaker's toolkit. Do that instead of going to school for game design.
Then go to school for anything. Anything at all. I still suggest computer science. But if you're more art oriented you can attend a technical school for that. Even history is fine. Just don't go for game design. Have insanely good grades. You do not want a C average. Also go to a really good school.
After all this, you can have a very good chance of being hired for a game design position. But you'll find what most people who get a game design degree learn: if you want to be a game designer, you have to do it yourself. Being an indie is the way up. At which point you're going to want to learn about business and advertising.
You have to do it yourself. A game design degree won't get you there. It might help you with some of these tools, but it won't be extensive enough in any field. You're going to have to learn a lot of this on your own. I suggest going to learn the things that are hard for you to learn. And self study the rest.
Wednesday, December 18, 2013
A note from my older self: How to get started with coding
Now, for a 14 year old to get started with C++ without so much as a basic understanding of ANYTHING, I can see how I was restricted. I would do things in HTML, back when it was very flat and nowhere near as dynamic as it is now.
I had a book named Learn C++ in 30 days. And the one thing that this book failed at, was setting up. So many self help books seemed to just assume that the person would know how to set it up, or how to figure it out. And at such a young age, with no experience or tutor or mentor, or anything. And with the internet at such an infant stage of information sharing, I simply couldn't find the answers I needed.
These books were supposed to teach me, and they failed to even get me started! Print "Hello World" is a horrible start. I don't want to print a message. I want to know how to even start. You can't tell me to print "Hello World" and run that. Because I had no idea how to run it! You need to go back SEVERAL steps before I can print "Hello World"!
But... at 14 I had access to a teacher in my high school. He taught Computer Math, and he was the school's "tech guy". They called him in to look at the servers and what not. I think anybody who has had that experience, of being grudgingly needed but otherwise avoided, will understand the position this man was in.
My lesson to my older self: Ask for help from your teacher. You WANT to learn, so make time. Ask for time, and seek it out.
Now, this was over 15 years ago. I think kids today have a much easier entry way into coding. So if you want to do it. Reach out there and grab your opportunity. Coding is actually easy. The difficulty of it, comes from creatively understanding and developing the solutions to get the results you desire.
Coding is an extremely creative process, that requires years of experience to accomplish through "feel" alone. As it stands, I have to sit and plan out more complex thoughts, on paper before I commit it to code. Creating diagrams, and logic trees to make sure that what I'm trying to accomplish makes sense.
Monday, August 5, 2013
Kill your Darlings
You see, when your gut is telling you that something is off, it can be difficult to work. Authors refer to it as writer's block. It is a conundrum that has to be resolved so that the work can be the best it can be. Sometimes it will require rework or scrapping a project, but the sooner you realize what is wrong, the sooner you can fix it.
How this May Progress:
Procrastination -
Perhaps the one that can be the hardest to identify. If you procrastinate already, it can be difficult to identify your normal procrastination from that resulting from a problem. This procrastination occurs because you have no solution for the problem, yet you do not quite understand that the reason you're doing this is because of that lack of solution.Solving Easier Problems -
That is to say, that instead of tackling the big mess, you spend time clearing out your inbox, responding to twitter, etc etc.Essentially, you do not want to tackle the problem, you are aware of it, and so you fill your time with other things that "have to be done", but are of lesser priority.
Writing or Talking about the fact that you are Procrastinating or Solving Easier Problems -
You are now addressing the issue that there is a problem. You are talking to other people in an effort to find a way to save that problem, or to finally come to the conclusion, that it has to be resolved some how.
Solving the Problem, or Killing It -
And here it is, the whole point of this mess. If you can't solve the problem, then you have to come to terms with killing it off.How to Kill:
Combine it with something else -
Maybe the character is a bit redundant, maybe their role can be merged with another. Perhaps the mechanic is just not interesting enough by itself. It could be that you don't need jumping in the game, so you can just put any jumping with the other Quick Time events in the game. Have it be context sensitive like other interaction points in the game instead.Remove it entirely -
Is the scene causing more trouble than its worth? Sometimes, going back and rewriting, or recreating a room is better than trying to shove something where it doesn't belong. The best authors have every scene progressing multiple things at once (character, story, setting up a Chekov's gun). Similarly every area of a game, should be exploring the game world narrative, the character narrative, and the player narrative.When thinking of moving from controls to touch gameplay, I wondered if I should keep the character icon, or if I could remove it entirely instead of animating it for touch. Sometimes, its better to not waste time on additional animations, while other times, the investment allows the game to feel more "juicy". Think it through and make the decision.
Change its location -
Sometimes a scene doesn't work because it hasn't been set up. Maybe make the scene take place later on, and have the current moment set up that payoff. In a game, you may need to have a room or two where the player can safely play with a new mechanic. You may feel that you have to rush it, because the level is already built, but you should evaluate the space, and attempt to script around this, or simply move the challenge to a later spot.In the end:
Solutions vary based on why you have to kill your darling. Hopefully, this will at least get you back on track to solving your problem. Good luck!Monday, April 15, 2013
Getting Flash to Talk to UDK - part 2 - addendum
A) Create layers for each element of your UI. This will allow you to animate them, and lock them down later as you finish them.
B) Create a layer for actionscript. This makes it easy to find, and easy to label without arrows and what not getting in the way. I usually label it "as" in the movies inside the file, and "as_root" for the main one in the file.
C) Unless you want something to play or loop for ever, put a quick stop(); on the first line.
We're going to move on, implementing the one singular feature for now. Then we'll come back and look at spawning in new things.
I figured that you have some experience with Flash, so I'll assume you understand this. If you have questions, please ask it here.
If you have suggestions to clarify something or a better way of doing something, then please do so in the addendum. Thank you.
Friday, March 1, 2013
Getting Flash to Talk to UDK - part 1
Introduction -
I've been working on different Flash UIs in UDK for a few months now, and the evolution of what I could do before to now is pretty astounding. This is my third foray into the world of Scaleform and I have to say that I am feeling better and better about what I am doing.My goal with this next series of posts will be to detail HOW I got Flash to work with UDK, and then go into what I did in Flash and what I did in UDK.
If anything, I'm hoping that I can have a series of tutorials that will guide would be newbie UI creators into what its like to create a HUD in Flash for use in their own UDK game.
There will be certain assumptions made during this process:
1) I assume that you have Flash. This is unfortunately an expensive requirement. Luckily, if you are a student, you can purchase Flash Professional 6 for $200. Or, if you are taking a one month class, you can "rent" flash for $20 a month.
2) I assume that you have a pretty recent version of UDK installed. As far as I am aware, this will work on version of November 2012 and February 2013. Those are the two version I've been using on these projects. This could work with an earlier version, but I have no guarantee of that.
3) I assume you have a good script editor for coding uScript. I use Note++. Some people use different IDEs, but I tend to hate how big they are. Note++ is fast, and does what I want it to do.
4) I assume you have done something in UDK and Flash before. Though I will do my best to tackle all that is absolutely necessary.
5) I assume basic coding/scripting and computer knowledge. If you have never scripted before, this may not be a good entry point. I will do my best to cover what is needed.
6) I assume you have an image editor that can output PNG files. Such as paint.net, gimp, or Photoshop. This tutorial will NOT cover this at all. The focus here is for Flash to UDK communications.
Setting Up Flash -
Setting up your Flash work environment is very important. Though future version of UDK may be able to work with Actionscript 3, the current set up, as far as I am aware, requires Actionscript 2.0 and Flash 8. This limits what can be done a bit, and also makes something more difficult. When looking for hints and additional help in Google, remember to ad AS2, Actionscript 2.0 or Flash to UDK to whatever it is you are searching for.Under File, go to Publish Settings, and click the second tab on that option dialogue that opens up. Set the player version to Flash 8 and set actionscript to 2.0. It should be okay to leave the rest alone.
Next, you need to set up the canvas. The canvas should be at 30 fps, and the size I use is 1980x1080 (in uScript, you'll be making it scale). The size of all object should be to the power of 2 (2, 4, 8, 16, 32, 64, 128, 256, 512 etc). This is because UDK deals with it better. Example make an image 64x128.
I'll begin by adding base functionality to the menu, and once we have it working we'll move on to connecting it with UDK through uScript. Note, that my set up is different, as I own Flash on a Mac, and cannot test the way you could if you had it on a PC.
Creating the Flash file will be on the next installment.
Tuesday, July 20, 2010
Escalating Plot
An opposing family is super rich and has infinite resources and leads. Another is a mafia style family and is killing collateral supporting cast, and the main characters are mostly clueless about it. Suddenly, the wrong people are too far away, bombs are being set in the house, a ninja breaks in, and the main character is getting set up for a crime he didn't commit, and there are relationship troubles to boot!
Somehow, having all that happen at once is just too much, and a perfectly good story is suddenly a wallbanger. This recently happened as I was reading what before the breaking point was one of the best Ranma 1/2 fanfictions, Careful Destiny.
Reading as far as I did, to the last written chapter, I can see why the author could no longer write for that story. It just reached a point of no return, and short of going back and fixing it, there was nothing he could do.
Alea iacta est. The die was cast. This is the biggest problem with publishing online. People see what you already put up, and unless you can allow yourself to rewrite, if you reach the wallbang moment, you are pretty much SOL. You lose your readers. Now, this can happen in print published materials as well, but there is usually so much refinement going on there, and a completed story, that either a wallbang moment is written out, or the reader muscles through it, since they know they have a definite end approaching.
So how can this be avoided while still increasing tension? I say limit what is causing tension down to one main issue and a small problem. Solve small problems on the way to solving a bigger problem. Maybe not all problems are solved, and are put off for later (allowing for sequels, or for a payoff down the line), but throwing too many problems at once without it being a proper climactic point in a story is too much, and even then it might overwhelm the reader.
I think people should look at their favorite tv shows and write out the plot. Follow the rising action, the falling action, the plot threads, the hints leading to other things. Write it out, as if you were recreating the manuscript from viewing the show. Now read through it and identify what is going on with a critical eye.
I've done this to a few genres and I've found myself improve each time. It is highly recommended.
Monday, September 7, 2009
Sidekicking
Suddenly, they pass leadership to the 18, and they all become 18!
You ask, and they tell you, right click your portrait, and choose to sidekick!
Tuesday, September 1, 2009
Creating a Champion, tip #4
There are 3 main catergories, Science, Mysticism, and Arms. Further more, each one has 3 subcategories.
Arms Upgrades:
Fighting Techniques (Blueprint name: Kata)
Alien Biology (Blueprint name: Dossier)
Ordnance (Blueprint name: Diagram)
Mysticism Upgrades:
Arcana (Blueprint name: Grimoire)
Avatars (Blueprint name: Apotheosis)
Enchanted Gear (Blueprint name: Imbuement)
Science Upgrades:
Inventions (Blueprint name: Schematic)
Mutations (Blueprint name: Mutagen)
Exposures (Blueprint name: Catalyst)
Monday, August 31, 2009
Creating a Champion, tip #3
When you pick a framework, you'll see on the bottom right, what it's energy builder, it's first main attack, and it's base stats will be.
If you want to still have the powers of a Power Armor type forexample, but want different stats, then go ahead and do custom framework, pick the energybuilder from Power Armor, and the first attack from it as well. Then you can pick a different set of starting stats.
Sunday, August 30, 2009
Creating a Champion, tip #2
The steps are, pick a framework, head, body, costume (costume is done in a series of tabs), and finally Name/Bio.
Within those steps you can go back and forward with it them without losing data, and if you want to avoid risk you can always save your look.
Also, you can do what I do, and go in, pick any power, and come up with a hero, save them, then just make them later when you've decided what end-builder + main attack to pick.
PS, on a note about sharing your costumes, you'd need to email the jpg, or zip it when you upload it somewhere, so that the meta-data is not erased (it won't work with many online services, since they convert jpg to their own web friendly version).
So if anyone can point me to an image sharing site that won't lose the meta data, I'd appreciate it.
Friday, August 28, 2009
Creating a Champion, tip#1
One thing that Champions (online) did right was allowing you to "save" your character ideas. You spend HOURS messing around in that character creator. Sometimes a costume piece you find will send you on a wild tangent. At any of these points you can hit a convenient save button.
Strangely, you used to be able to share these ideas, but maybe it's from where I'm uploading the images to, but I can't seem to get it to trigger on the load screen. It WAS working in beta though. I'll see if this is a bug, or if I'm doing something wrong.
PS Apparently Blogger and Picassa removes the "meta" data neccessary to make sharing work. Emailing the image to myself worked out, but I would like someone else to email me their character so I can see if this feature still works. Editing the name does not affect how it will show up in the in game load file.

