Archive

Author Archive

Follow up 1 to Tower Defense Jam

October 14th, 2012 No comments

The first set of changes I’ve made to the game were to add a tower design section. My current idea is that as you play levels, you will earn pieces of equipment for your towers. Then you’ll go into the tower design to equip each of your towers.

Players will only be able to use the top 4 towers at a time, but they will be able to design up to 8. Each tower will have a basic type, but the equipment will give customization, either to increase the tower’s abilities, or to decrease the cost of the towers. Currently, all you can do is reorder the towers. I think for a temporary fix I’ll implement the ability to manually adjust the tower stats so that I can test new builds.

Initial version completed last night

I’ve updated it slightly since uploading this video. Now the buttons slide into their new order over a 0.25 second animation, making it more clear which towers are moving and what the new order is.

The next things I’ll be working on are:
1. Actually allowing tower stats to be changed.

2. Saving the tower designs to the local machine.

3. Adding a couple different base tower types (such as an instant fire laser and an area of effect tower).

Kyle and Ken Game Jam – Final Results

October 7th, 2012 No comments

Well, we finished up around 5 and you can play the results for yourself here. Unfortunately, we didn’t get the chance to actually put a win condition in there for our one and only map. We also didn’t get around to making any additional towers, so you’re stuck with the standard tower. It’s currently getting a 1.85/5 rating on Kongregate.

Currently, our plan is for each of us to take the results and add on to it ourselves to see who can make a better game. Perhaps the updated versions will actually rate as games instead of just prototypes of games. We’ll see…

Overall, I’m very happy with the results of this weekend. This kind of tempts me to submit the current prototype of my TBS game, but I don’t think it’s quite ready. Hopefully some time soon.

Now that Ken is more familiar with coding a game in general and with AS3 specifically, I think we’ll try another one of these game jams in the future. It was incredibly productive and I felt like a learned a lot from the experience too.

Kyle and Ken Game Jam Final Morning

October 7th, 2012 No comments

Ok, so lot’s of coding done over the last 24 hours. The game now acts like an actual game, just without the help interface bits that make it possible to understand the rules. And without the restrictions of needing funds in game to purchase towers. And without any actual strategy because there’s only one tower type and one enemy type. But now it works.

Here’s a video of the results so far.

Next is making a more interesting map, more towers, more enemies and an actual game mechanic where you can win or lose.

Ken and Kyle Game Jam

October 6th, 2012 No comments

My friend Ken and I started a game jam Friday night. I’ve been up working on this game for almost 9 hours now, and while what I have doesn’t look too impressive, there’s a lot of planning that’s already been completed as well as a few technological issues caused by Windows Vista (his computer, not mine). Also, it’s been mostly me on the programming because he’s both more sensitive to alcohol and less sensitive to caffeine.

I figured I’d post the results so far for all to see. It’s not much: a tiled map generator, a “Tower” that fires bullets at (0,0), sound effects, music and a mute button. But I think we’ve laid a good foundation and have a good plan of attack for the next 36-48 hours. Without further ado, here’s the game currently.

Hopefully we’ll have much more come tomorrow afternoon. Stay tuned!

Re-coding complete and then some

May 4th, 2012 2 comments

I’ve completed re-coding my game from scratch and the code is much cleaner and much more reusable this time. I managed to add some background music and sound effects during attacks. I’ve also got a stage selection page working (though admittedly it’s not much at this point). I think it’s much more obvious now which units can still be moved, and the flow of each turn is much smoother (though you’ve lost the ability to attack before moving). The music and sound effects are just filler at the moment, I’m going to try and compose my own bg music at some point. As promised, here’s the video:

Please ignore the 2 spots in the video where the music skips forward. I had a couple bugs pop up that required me to review my code midway through the videos and didn’t have the time to figure out what was causing the errors.

I need some feedback on the control scheme. Currently, you choose to not attack anything by clicking on the unit again or by clicking on an empty attack square. I forgot to show it in the video, but if you click outside of the highlighted move/attack area, you cancel the turn (this can’t be done after an attack is completed). Should I change this? I found myself accidently choosing not to attack a couple times during testing. Would a menu that gives you the option to attack, end or cancel be more useful after the movement selection is complete? Your feedback is appreciated!

I’m Back

May 1st, 2012 2 comments

It’s been a while since I’ve posted anything and I think I can finally share what else I’ve been doing outside of work and programming my game. My wife and I are preparing to move out of state.

We’ve both lived in the Ann Arbor, MI area our whole lives and we’re making plans to move to Savannah, GA this summer. So most of March was spent getting the house ready for sale, applying for jobs and looking at apartments. We took a trip down there in the beginning of April, but weren’t able to anything productive besides relax. I think I’ve finally recovered from all the prep work we had to do and I’m ready to return to game development.

As far as the game goes, my reprogramming from scratch is nearly complete. The game is playable once again by two players and I’m in the process of rewriting the game’s AI. Once that’s done I’ll post another video (this week, I promise). So far I’ve added the ability to switch stages to the game and made it so you can move the screen with a click and drag instead of moving the mouse to the edge of the screen.

Upcoming list of changes:
-Auto end turn after all units have moved
-Highlight units left to move, darken units after turn complete
-Add zombie units to game
-Create unit images/animations (could be a while on this one)
-Add music/sound effects (trying to add temp music/effects soon)

Categories: Game Update, Personal Tags:

First Gameplay Video

March 4th, 2012 1 comment

So it’s another busy weekend, with little time for coding. But I did have time to create a gameplay video from the old code which is currently uploaded to Flash Game License.



Some of the features seen in this video have already been removed from the newest version. The two buttons that appear when you click on a unit have been removed in favor of automatically going to movement. The game no longer scrolls when you go to the edges of the map either, it’s now a click and drag interface.

Also, none of the images in the video are the final versions, they’re just pictures I pulled from Google to have something to work with. Let me know what you think in the comments.

No Work Done in a While

February 29th, 2012 1 comment

So…. not much work has been done on my game lately. I’ve been really busy with house repairs being done last week into this weekend and my car needing to be fixed late this weekend up until today. On a positive note, I’ve been so exhausted when I get home that I’ve been getting 9-10 hours of sleep every day this week. So this weekend I should be good to go.

Also, it seems that computer issues are catching in my house. A week after I recovered my game code with the decompiler, my desktop died. I’m planning on using the desktop to create my game art, so this is yet another set back. I’m going to need to reinstall Windows XP on it, so I’ll do that once I get my installation disk back from my friend. Fortunately, I installed Windows XP on a separate partition from all my data in case of such an issue. So I’ll also start working on my game art this weekend.

I’m not going to wait this long for my next update. I promise something will be done for my game this weekend and if I can figure out my video capture software, I’ll post a video on Sunday.

Decompilers Good, Hibernating Bad

February 11th, 2012 No comments

So I haven’t done any work at all on my game since last weekend. Mostly because losing a week’s worth of work on it was depressing me. I believe I’ve found a way to fix it, but it’s still a pain in the butt.

Hibernation Fail
Here’s what happened. I loaded up my computer on Tuesday night to start doing some coding. FlashDevelop was open when the computer put itself into hibernation due to a low battery. I pulled it up to see this:

FlashDevelop post hibernation

There might not appear to be anything wrong with that at first. The only problem is that when I shut down my computer on Saturday night, I had about 14 classes and there’s only 6 in that picture. I figured, “Well, that just must be because that’s what I had open.” So I browse to the folder where I had been saving all my files. Which I had been saving regularly. And what did I see? 7 files with the last modified date listed as 1/29/2012. Even though I had been working on my code as recently as 2/4/2012.

Looking For The cause
Now I can’t say for sure that it was the hibernation file that caused the issue. I don’t see how loading the contents of RAM should affect a folder full of files saved on the hard drive. I suppose it’s possible that “Saving” was only occurring in FlashDevelop’s memory, but that seems unlikely.

The odd part about it all, was that the compiled swf file – the one that’s created every time I try to debug the game – was still showing a last modified date of 2/4/2012. I loaded it up and, lo and behold, it was the same file I had pulled screenshots from last Saturday.

I still don’t know for sure what happened. But I’ve turned off all hibernation on the laptop just in case. I really don’t mind shutting it down every night when I’m done working. It forces me to save more often anyways.

Finding a Fix
I did try downloading a trial for a deleted files recovery tool. But it acted as if the files had never existed as well. I knew about the importance of securing your code before releasing it into the public. This is because it’s supposed to be really easy to decompile unencrypted flash files. I figured I would look for a decompiler and see what my finished swf file could give me.

I can tell you to NOT try sothink’s swf decompiler. It will let you see your code, but the local variable names will be changed and you can only copy out the code if you buy the full version.

I knew there had to be a free decompiler out there, so I googled “free actionscript 3 decompiler” and was led to F.L.A.S.W.F.. He had links to several decompilers and the one I decided to try was ASDec. Looking at the output I was surprised to find that every variable name is identical to the original version.

My Code Is Reborn!

The decompiler isn’t perfect though. It still has to leave out all the comments because those aren’t compiled at all. It also has many extra lines added in declaring variables and then initializing them on separate lines. Fortunately, it should recompile fine for now and I can update it as I go. I was really concerned for a couple days, but I’m ready to return to coding my game once again.

I’ve learned to appreciate decompilers, so long as they aren’t used to steal my game and pass it off as someone else’s. Anyone else every have computer nightmares resulting in lost code?

Move Engine Recompleted

February 4th, 2012 1 comment

Once again I can move my units as I desire. Next is the reprogramming of the AI. For now, enjoy this screenshot of the movement area, recreated.

3 Steps Forward, 2 Steps Back

Well, time to tuck into bed for the night. While it’s disappointing that I haven’t gotten back to where I was 2 weeks ago, I think I’ll be much happier with the code once it’s done. Just about every variable is private now and the classes are properly encapsulated.