Browsed by
Category: Updates

Weekly Content Blog #13: This Is An Emergency!

Weekly Content Blog #13: This Is An Emergency!

Guys! Emergency! Our man Josh was supposed to write this week’s article, but he’s so busy kickin’ ass on our game that I had to step in. Funnily enough I spent most of today taking somebody to the emergency room for presumably unrelated reasons. However, I have a suspicion that Josh’s ass kicking on our game is so strong that it’s seeping through the interwebs and kicking anyone’s asses who come in direct contact with it. Let’s just hope we can get that bug squashed before we ship it to you! We want to slay you with sick graphics and wicked game play, not our programmer’s ability to kick people’s asses through the interwebs. That being said, I thought I’d take you guys on a brief tour of a section of our game, because that’s the kind of article that can write itself.

Tangle 4

We start at The Tangle.  A thicket of corrupt magic who’s mere existence is enough to strike malaise into any part of the natural world unfortunate enough to be in its proximity. That slime isn’t there to be the icing on your cake, it wants to eat your soul!

Shop Keeper

After peacing out from The Tangle we find ourselves in Adam. Not the guy, but the town! Here the shopkeepers are always happy to see you, because you saved their town from a purple tentacle jungle. They’re so grateful they’ll let you loot their guest’s chests while they rest!

misty woods sauce

But nobody can stand a shopkeeper’s incessant waving for too long, so we’re off to the Misty Woods. Curious as to where the woods got their name? Check the above screen for a hint.  You may also notice three of our heroes seconds away from downing crazy old Lorabeth’s famous Hoss Sauce. If you’re ever in the area make sure to save room for seconds!

Misty_Woods-5

Upon exiting Misty Woods you’ll find yourself staring at the great castle city of Dradora. Only minutes away from the woods, Dradora boasts numerous luxuries for the wayfaring traveler. Cozy beds? Check! Street magicians? Check! Rampant illegal gambling? Check! Evil megalomaniacs? Check! Well maybe that last one isn’t much of a luxury…

campfire2

That’s it for tonight kiddies, time to snooze. Next time I’m in action I will wrap up the “How to budget the art costs of an RPG” series. Thanks for tuning in!

Weekly Content Blog #12: Jump Inside My Head And Let’s Map!

Weekly Content Blog #12: Jump Inside My Head And Let’s Map!

Originally, I was just a writer for the game, but for some reason (desperation?) the team finally named me as lead level designer and mapper. Will it last? Maybe…

There are a million how-to articles and videos that cover level design and mapping. While I’ll touch on these subjects, I see this post as an opportunity to share my unique perspective regarding my role. What’s it like doing this job? So, with tongue firmly in cheek, away we go…

Merry Christmas
Yes, that’s right, Merry Christmas! Uncle Tim bought you the brand new Earth Maze tileset to play with! Sure the wrap-job was meh (nonexistent), but you’d rather get a cool present rather than a crappy, exquisitely wrapped present. The tileset has everything you need to build a thrilling fantasy locale! Or so the big-letter marketing material claims…
earthMazeTilesetScreenshot

You play with the Earth Maze tileset all Christmas Day. It’s so fun that when your parent (or significant other) tells you to go to bed, you throw yourself on the ground and kick your feet while screaming, “I don’t wanna! I don’t wanna!” It gets totally pathetic, and your dad tells you Santa just called and cancelled Christmas for next year.

Play Time
Surprisingly, your parents let you play with the Earth Maze tileset the next day. Anything to keep you out of their hair. This explains why you’re such a brat. You really go to town with that tileset though, trying to build all sorts of crazy things only to discover that you can’t! The tileset has some limitations! That’s ok, you’re a big boy(when you haven’t thrown yourself on the ground). Hell, you’re Ivy League! You put yourself through an Open Yale Course called Tile Editing 101 just last year (or was that a dream?). So you make some simple changes using GIMP and voila (“wah-lah” for non-Ivy Leaguers), you are able to achieve the look you want.
earthMazeMockup

The Transition
You’ve spent every waking minute with the Earth Maze tileset. Your dad is convinced it’s a total waste of time (he thinks you should spend your time learning a “real skill” like electrical work or plumbing). You’re having one of those classic hero-questions-everything-he-believes-in moments from the movies (complete with a soul searching soundtrack) when you get a call out-of-the-blue from some hotshot computer game exec in Nashville named Tyler. He says he’s heard you’re “the shiz” with the new Earth Maze tileset. Apparently, in seismic super-trend shift, Earth Maze maps have replaced country music as the top Nashville export.

“I need ten chart-bustin’ Earth Maze maps ASAP!” He yells. “And a screenshot made of awesome-sauce before Saturday! Can you do it?!”

You smile.

(Tune in for the thrilling conclusion next month!)

Weekly Content Blog #10: Budgeting the Art Costs of an RPG Pt. 2

Weekly Content Blog #10: Budgeting the Art Costs of an RPG Pt. 2

This is part two of a three part series.
Part 1: Budgeting the Art Costs of an RPG Pt. 1
Part 3: Budgeting the Art Costs of an RPG Pt. 3

 

In part one I talked about some of the costs and risks related to creating art for an RPG. More specifically I outlined the groundwork I laid for Shadows of Adam early on in its life, so that its art could grow organically within the scope of the project and the budget of our team. As both of those factors grew, so did our art requirements. In order to cover this new demand we looked to outsource some of the work to freelance contractors. In part two I will talk about the overall outsourcing experience, what kind of costs to expect when seeking outside help, and how outsourcing helped shape Shadows of Adam.

Dummies Guide to Outsourcing

The first rule of outsourcing is that you need to hire outside help in order to outsource your work. This can be achieved in many ways; posting ads, reviewing portfolios and sending emails, or drawing from your own list of contacts are just some. For Shadows of Adam I knew of two communities where lots of talented pixel artists post their portfolios, so I chose to check out pixeljoint and pixelation and email the people I was most impressed with. The average rate of a pixel artist is in the $15-40/hr range, with the higher end reserved for professionals in the field. It’s important to know what the expected costs are for the quality of art you are looking for. You can’t expect Metal Slug quality graphics when you’re only paying $15/hr to get them. And even if the artist is capable of creating that quality at $15/hr, odds are it will take them at least twice as long and look half as good as an artist charging $40/hr. This is not even taking into account your ability to provide direction and feedback, and a client’s ability to infer direction, apply feedback, and reliably produce art cohesive to the project in a timely manner. The point is that you get what you pay for. A professional artist is going to cost a lot more than a novice, but they also come with greater security that your investment  in them will be worth it.

Tiles and Tribulations

After some deliberation it was determined that new tile sets would be the biggest bottleneck for our project moving forward, so we recruited for that task specifically. I received a few replies back. Not everyone was immediately available, or fit the standard + price point I was looking for, but I did find somebody relatively fit for the job that was ready to go. His first task was to create a tile set for Dradora, the castle city. Below is a side by side of the new tile set for Dradora, and our first town of Adam.

AdamDradora (2)

The first thing you might notice is that the palette changed, and the level of detail slightly increased. Neither of these were planned changes for the game at this point, but the artist’s struggle applying the original palette to a city theme, and their own personal style produced those results. Overall we were happy with this new direction as a team, and felt that it was close enough to the existing art that nothing already made had to be changed. For the second time the art in Shadows of Adam evolved organically without incurring greater costs. Unfortunately the budding artist took on a more demanding project soon after starting the second tile set for us, and so parted ways with Something Classic for greener pastures.

Winds of Change

Upon losing our first outsourced artist to another company (one of the major risks of outsourcing skilled artists at a cheap rate), we set out to find a replacement to continue work on our next needed tileset, the Wind Tower. I found a skilled and willing artist after another round of emails, and work on the Wind Tower proceeded. During this time more grays were added to the palette and it nearly doubled in size from where it started, more details were added to the tiles beyond the new standard set in Dradora, and the art was taking twice as long to produce. Our new artist’s test round was wrapping up and they were unable to finish the tile set in the eight hour window set aside for them. I was starting to wonder how to keep the game’s palette and style in check while keeping the art costs sustainable. Almost serendipitously an artist I initially contacted in the first round of emails -and really wanted to work with- came around to let me know that they were finally available. After talking about the game’s current art direction and needs, they set out to finish the wind tower and unify the palette that was getting out of control.

Wind_Tower 13

Above is a shot of the Wind Tower that they produced from what was started by the other two artists. The palette was transformed into what it is today, and the style of the game evolved for the third and final time. The biggest changes were in the palette (which got a lot warmer and multi-functional through increased color count), the perceived volume of objects (everything is weighted relative to its importance), and the increased application of small details which are more prevalent but also softer.  Not only was our client able to produce amazing art, but they were also able to provide a fully functioning tile set in the same amount of time that our other prospect was able to put out half the work of similar quality. We were ecstatic to see these results, and decided as a team to hire this artist for 80 hours to rework our existing tile sets, and finish up all the outstanding tile sets. In an effort to save costs, I reworked the rest of our existing assets using the new art direction and palette.

80 Hours Later

Eighty hours later and we have about 3/4 of all the tile sets needed for the game. Animations, interactive level entities, and miscellaneous art demands cut into the time scheduled for the tile sets and we came up a little short of our goal for the funds allotted. On top of that, our new artist also had greater demands elsewhere, and so was currently unavailable to finish up our tile set needs. Fortunately we had more than enough to keep us in production from May to the end of June, which is when the artist’s next block of availability will be. In the interim we have found another top caliber artist to assist us in other areas of the game. Overall Shadows of Adam’s art budget has far exceeded our original expectations, but the results have been worth it every step of the way, and the costs have always scaled with the type of game we ultimately hope to produce.

Tangle 4brashear3

Thanks for sticking with me, and I hope that this post has been informative in regards to some of the costs and processes involved in outsourcing your game’s art. Next time I will talk about the upcoming future for the art in Shadows of Adam, and wrap up this mini blog series with a neat little bow. In the meantime feel free to ask any questions about this series or anything pertaining to them in the comments or on facebook or twitter.

Part 3: Budgeting the Art Costs of an RPG Pt. 3

Weekly Content Blog #9: Tools of the Trade

Weekly Content Blog #9: Tools of the Trade

solum6

Hello again from Canadia! Another exciting week has passed and lots of work was completed by the Something Classic team! Our current goal is to reach an alpha state, meaning the game is playable from beginning to end, complete with a credit roll, before doing a final polish pass on the game and adding any extra effects or art to make the areas really radiate. With Luke hammering out some marvelous maps at a super-human pace and Tyler converting our game script into interactive game scenes right-after, our alpha-goal feels like a stepping stone away!

In my last blog post ( Weekly Devlog #3: Battle System and Action Queues) I focused on the battle system and revealed how it was designed from a technical point of view. This week I’m going to mix it up a bit and talk about the tools I personally use to program features and to debug my inevitable failures when the game world explodes in miraculous fashion. As always, Click the thumbnails to view full-sized screenshots :).

traceglIf you don’t already know, “Shadows of Adam” is being built using HTML5 APIs, and the game engine we are using is ImpactJS. One of the biggest obstacles we’ve had to deal with because of this web-based tech stack is debugging. Debugging an interpreted language like JavaScript is significantly more tedious than a compiled language. For a long time, we were using console.log() throughout the code in order to determine if everything was working how it should. This is not an efficient way to work, and if you have a small team like us, you want to streamline your development process as much as possible. Work smart, work fast. Thus, in order to help deal with this debugging mess; I ported over the entire game and engine to NodeJS, and then used a wonderful little code oscillator called traceGL to analyze our JavaScript code in real-time as it runs. TraceGL allows me to filter through the entire source code for certain keywords, in the image to the left I search for “font” and receive a list that is updated in real-time with all of the calls to the font class. From there, I can find the “Darkness knows no bounds” text and trace to the exact place where it is being called. In this case, it is in our “dramatic-message” event command code. We can then trace further and load-up the dramatic-message code and analyze the particular function and receive visual color-coded feedback on the state of each variable in that particular function (True/false). These features are an absolute lifesaver because it allows me to see the code running in real-time and helps narrow down potential issues. The GIF image below is one such bug that would have been a pain to fix if not for traceGL. I honestly had no clue what was happening when I saw it for the first time!
infinite-loop1
The cause was because of a bug where the game started processing the next queued action while the previous action was still clearing itself up; but it only occurred when certain actions were performed in a unique sequence. Typically, when an action is complete it fires a signal telling the action queue that it is done, but because of the way the actions were queued up, a timer-based action can end up overlapping a trigger-based action which caused the queues to fail the timer-based check and never terminate while it starts processing the next action. So when the “HealAll” spell was cast, it was trying to tell the queue manager that it’s code was complete. Except the queue manager received a signal from the prior action saying “I’m not done yet” so it continued processing BOTH actions simultaneously until the end of time. Blargh.

webstormOf course, TraceGL isn’t the only tool at my arsenal. The most important one by far is my integrated development environment (IDE), and for that I turn to Webstorm 10. Webstorm is the Visual Studio for the web, and I honestly couldn’t imagine working on SoA without the powerful feature set it offers. It also has some wonderful debugging options (Complete with line breaks!), but typically I rely more on TraceGL for a more in-depth and visually appealing way to see what my code is doing at any point in time. Like Josh mentioned earlier, we use Git as our version control solution and it has saved our asses many times. If you’re working on a project of any size, make sure you use a version control solution. You’ll thank us later! Webstorm has GIT built-in so I typically use either the built-in GUI or the terminal console straight in the IDE. By using Webstorm and TraceGL in tandem, it provides a very powerful platform for code debugging and helps make me a more efficient programmer.

weltmeister
Full list of tools I use: (Every team member may have minor variations of this)

  • IDE: Webstorm 10
  • Development Server: WAMP
  • Version Control: GIT via GitHub
  • Game Engine: ImpactJS
  • Programming Language: JavaScript, PHP
  • Level Editor: Weltmeister
  • Code Debugging: TraceGL / Webstorm
  • Bug Tracking: Git Issues
  • Feature Progress: Axosoft SCRUM
  • Binary Distribution: Electron
  • File Sharing: Dropbox / FTP
  • Game Script / Design Document: Google Docs
  • Game Object Tracking: Trello / Google Sheets
  • Team Communication: Skype / Email
Weekly Content Blog #7: Level Design – The First Day

Weekly Content Blog #7: Level Design – The First Day

In the beginning, Luke created a map file called testLevel.js. Now testLevel.js was formless and empty. Darkness was over the surface of the deep, and the cursor of Luke was hovering over the abyss.
void
And Luke said, “Let there be light,” but nothing happened. And Luke realized that ImpactJS’s level editor still did not incorporate voice-recognition technology despite months of whining for this feature on the ImpactJS Suggestions forum.

So Luke left-clicked and land or something land-like appeared. And Luke saw that it was good.
void2

Well, not really. It was actually pretty crappy and incomplete looking. In fact, even Luke was not sure what the hell he was looking at. Something like grass maybe?

No matter. Whatever it was, it was clearly distinguishable from the darkness, so hey, that was something. Certainly enough to call it a day. And there was evening and morning—the first day.

Then the next morning, Tyler M. PMed Luke on Skype: “Where the @#$% is the new level?!” And Luke was very afraid and changed his Skype status to “Away.”