@ChevyRay Yeaah sucks. I really want to see how much changed between their original ideas and what they ended up doing too. (Today)

@ChevyRay I kinda felt like both season 3 and 4 needed way more episodes. (Today)

@EventheOcean <3 (Today)

RT @EventheOcean: Re-tweet, it will help us with exposure! In-game screen from Even the Ocean! (repost) #screenshotsaturday #gamedev http:/… (Today)

@theBanov disco guard (Today)

@kinifi just 640 x 480. Nothin fancy (Yesterday)

@theBanov what! (Yesterday)

@BenRuiz Latch's special seems a little OP compared to everyone else's so you should always pick Latch (Yesterday)

@MarioKid591 hey sorry I forgot. Send me an email hi@kpulv.com (2 days ago)

@BomuBoi oh my god I hate these so much. "What if ash hallucinated Pokémon cause his dad died and he was sad" (2 days ago)

@BenRuiz LL is one of the best feeling games I've played in the past forever. Some minor visual criticisms but aside from that its NOICE (2 days ago)

@TommyRefenes PARCEIL ONIY!!! (3 days ago)

@AsherVo @ADAMATOMIC I'm pretty sure making a game that isn't playable in a weekend is impossible (3 days ago)

@tom_hunt haha oh man that's a slippery slope... (4 days ago)

@GreyAlien Hmm yeah that's good. Right now I'm tinkering with a board game and having fun editing spread sheets full of stuff. (4 days ago)

@GreyAlien I feel like I run out of simple things to do... haha (4 days ago)

Really wish I could figure out why my brain goes from being super productive to having no motivation at all UGH (4 days ago)

@kertgartner @gabrielverdon It seems that people are really getting into this "internet" stuff! Some are even using it for businesses! (4 days ago)

@gabrielverdon @kertgartner I thought canadian internet lines were wood. (4 days ago)

@gabrielverdon @kertgartner The internet lines get cold and moose nibble on 'em so they're pretty slow, eh? (4 days ago)

follow
search
posts tagged with: tools

2014 - 11 - 25 / 12:04 pm / tools

Google Spreadsheet and nanDeck Workflow

Google Spreadsheet and nanDeck Workflow

One of the things I've been fiddling with for the past month or so is a prototype of a board game inspired by stuff like Dominion and Legendary and a mix of other stuff. It's been a collaboration with some of the local developers in the Phoenix area, and we we're getting to the point where hand writing a bunch of cards was getting really cumbersome, so I looked into tools for generating cards.

Image

I ended up finding nanDeck, which at first looks like a pretty weird program. Okay it is a pretty weird program, but after spending some time with it it really does get the job done. There are some basic tutorials that can get you started, and some neat posts about it here as well.

nanDeck has the ability to read data from a csv file. At first I was using Open Office to manage some spreadsheets and export them to csv files for nanDeck to import, but that wasn't going to last if I wanted to collaborate with others.

I converted all of my spreadsheets into a Google Drive spreadsheet so that I could share it with others, but now the question was how can I take all of that sheet and spit out a csv for each individual spreadsheet that is a part of the document?

The first thing I needed to do was download and install the desktop version of Google Drive. This lets me access my files on Google Drive as just files on my computer, much like Dropbox.

Next I needed a csv export script. I found one here, and then modified it to fit my needs more. The script runs the onOpen method and that adds a custom menu to the document so that anyone that the document is shared with can also use the script. Adding a script to a document is located in Tools, Script Editor.

Image

After loading the script I get a new menu option with my script function.

Image

The script ends up spitting out a bunch of csv files into a folder on my Google Drive. These folders end up syncing to my computer, and now all I have to do is move them from there into a folder where my nanDeck project lives.

Image

Image

That's where a Windows batch file comes in handy. I whipped up a quick batch file that will take all of the csv files from that generated folder and copy them into my project folder. Using some custom system variables it's easy to make this work on my various work computers just by setting those variables on each of them. Just using XCOPY works great.

XCOPY "%NANDECK_CSV_SOURCE%" "%NANDECK_CSV_DEST%" /S /Y /I


After the batch file runs all I have to do is click "Validate Deck" in nanDeck and it will update the data from the newly updated files, and now my new deck is ready to rock. Eventually I can even use nanDeck's command line features to copy the files and render the new deck from the batch file. Neat!

There's one major issue to look out for and that's using the Linked Data editor in nanDeck. If you click the button to edit the linked data, nanDeck seems to place the .csv file in lock down, meaning that XCOPY cant write over it. If this happens you'll have to close nanDeck to unlock the file so XCOPY can do its thing. As long as you don't use the linked data editor you'll be okay.

No Comments

2014 - 11 - 18 / 4:07 pm / general

Visual Studio Asset Class Generator

Visual Studio Asset Class Generator

One of the key things I learn from every game jam is what the major knots are in my work flow. The past two jams I did with Otter had a common issue: getting assets from my assets folder to the game was annoying!

I don't like to rely on strings in my code to reference things. A typo can cause a major headache, especially when referencing a path to a file that needs to be loaded. Usually I like to just keep an Assets.cs class that has a bunch of static references to various file paths. Something like this:

class Assets {

static string Asset(string str) {
string assets;
#if DEBUG
assets = "../../Assets/";
#else
assets = "Assets/";
#endif
Console.WriteLine("[ASSET] Register asset {0}.", assets + str);
return assets + str;
}

public static string ImageIcon = Asset("img/icon.png");

public static string ImagePalette = Asset("img/palette.png");
public static string ImageTile = Asset("img/tile.png");
public static string ImageTiles = Asset("img/tiles.png");

// and so on...


This makes it so I can just do something like this later:

public Image Image = new Image(Assets.ImageIcon);


Instead of having to remember that the path to the icon whenever I want to use it, I just keep a reference to it in once spot. This drastically reduces the amount of typos I could possibly hit, and it also makes it easy to bring up with auto complete and intellisense stuff.

However the process of saving out a png, then remembering the exact path to the png, and then opening up Assets.cs and adding lines to it for every new asset every single time becomes a giant pain. The more assets I have, the more complicated this becomes, and the more I'm modifying the assets folder the more annoying it gets! Back when I was using Flash I created an asset generator script to overcome this, so why not just do the same for C#? Wouldn't it be awesome to just be able to click a button in Visual Studio and have an Assets.cs generated from the files in my Assets folder?!

Download AssetClassGenerator.exe (v1.0 Windows 11kb)

This program will execute in the console and build an Assets.cs file based off of the Assets folder in your project directory. This was built with my specific use case in mind so this may not be an exact fit for your needs currently. read more

3 Comments

2013 - 2 - 5 / 7:16 am / tools

Asset Class Generator for Actionscript 3

Asset Class Generator for Actionscript 3

The Reason
As I set forth to try and jam out the rest of this metroidvania game before GDC 2013, I've been trying to think of ways to make content generation as fast as possible. One of the big hurdles that I run into with AS3 when making a lot of content is constantly having to embed assets into the code. FlashDevelop makes this incredibly easy though. Right click a file, click generate embed, and there you go. However this still takes a lot of time when I'm talking about a game that is going to have nearly a hundred level files and who knows how many image assets, and I'm constantly switching assets around.

After a quick consultation with Twitter I got a crash course on Python and spent a couple hours making assetGenerator.py.

Download!
Download assetGenerator.py 1.0, along with an example project right here. You can also just view the code. All the files in the example project are blank files just to use as an example, and keep the download size tiny. Here's an example of the code it spits out. If you want to know more, then read the rest of the post! read more

5 Comments

about

About

Hi there, my name is Kyle, and I'm a kid disguised as a grown up. I'm making video games and living the indie game developer life in Tempe, Arizona. Here you will find my thoughts, games, websites, doodles, and other stuff like that. I worked on Snapshot, Offspring Fling, and a whole bunch of other games. I also created and maintain Otter, a 2d game making framework. If you want to get a hold of me use the form on the bottom of the page, leave a comment, or just tweet at me. I try to post three times a week. Thanks for stoppin' by! You're the coolest.

facebook

videos

Do you want to make a Let's Play of one of my games, or a just a video featuring footage of my games? You have my full permission to do so! Even if you are monetizing your videos, you still have my full permission to use any footage from any of my games. Go for it!

contact

Your message has been sent! Thanks :)
SEND MESSAGE