Archive for the 'actionscript 3.0' Category
May 6th, 2008 by torncanvas
For the last 10 days or so we’ve been preparing Dinowaurs Beta. It’s almost here! We even have a nice little banner on the front of the Kongregate website to coax people to sign up in the forum thread.

What are some of the changes? The first thing one would notice is a brand new main menu. Main actions are organized into tabs. Dinowaurs has persistence, which means you can create up to 3 dinos and give them accessories. These settings are then saved so they’ll come back up the next time you play! We currently have 3 tutorials that teach people more and more about the game until they’re ready to fight a dino controlled by another player. This can be done in the battle tab, where battles take place in either the snowy Alps or the Mexican desert.

Sleepy the Stegosaurus, complete with top hat, is enjoying the new Mexican desert arena. Go get that tier 2 village Sleepy!
We’re super pumped for Dinowaurs Beta. Mike is currently working on some bug fixes, and then we’ll be ready to release it to the wild. If you’re interested in signing up for the beta, go to the Dinowaurs Beta sign-up thread. Make sure to sign up for a Kongregate account so you can post in the thread.

Also, Greg has been making accessories for the dinos. As you can see, the result is amazing. :) Check out this Intuition Forum accessory thread if you want to see more. Feel free to make suggestions, too.
Overall, progress on Dinowaurs is going well. We can’t wait to release the Beta. Go sign up and let us know what you think!
April 18th, 2008 by aeiowu
Wild & Free: A True Story (“WNFats”, for those hip to the beat) released today. Mike & I (employees at Team Yessss!) have been dedicating a night or two each week to take time out to give Boto a home. He’s mostly happy, at least now when you’re not playing, otherwise causing massive oil tankers and speed boats to spawn magically atop the Amazon waters. Those tankers whirl him into a tirade of mystical proportions, summoning forth the guttural calls of the tree mother deep within his soul, thus gathering the young and noble piranha for a feast more glorious than the mystical proportions themselves.

Play it Now! If you want… sorry to be so exclamatory, but we’re excited!
Now for a little back story behind the concept of WNFats in case you missed this post, or this one… & this one too. Basically we started out with wanting to do a Porpoise based Deathworm that we dubbed Professor Porpoise: Adjunct Faculty Advisor to the Apocalypse. We did this in the Summer of 2007 on the side while we were looking for a home for Dinowaurs, it was a good bit of fun, but then PP:AFAA got a bit dusty (remember, porpoises shouldn’t be dusty, they are aquatic) but then a boy named “Boto” dazzled us with flips and tricks beyond compare. We followed the mechanics of PP:AFAA and Deathworm, taking some parts of the Dinowaurs code, Mike did some new flocking stuff for the piranhas and I implemented some new art. Before long we had a prototype with the new piranha flocking mechanic.
That was awhile ago… Since then we’ve been polishing the look and features of WNFats, I’ve changed the art for the boats three or four times, and Mike has hit his fist against the wall a few times. All in all, a fun time, and it’s neat to finally see this beast come together. I hope you all enjoy it, we’ll probably be adding, tweaking and changing things as we go, but for now we hope you enjoy yourselves!
For all the Kongers, we posted Wild ‘n’ Free on Kongregate as well with high scores and all the trimmings. See you there!
September 7th, 2007 by torncanvas
Our apologies for the lack of posting over the last two weeks. Here’s a rundown of what we’ve been up to.
After working on the press kit a little, we did some more business stuff to make sure we’re going to be ok with Uncle Sam and protected from the “unknown unknowns,” as it is referred to in The Boondocks. Our lawyer Rush Nigut has helped out a lot with that. Thanks Rush.
Mike has been working on Professor Porpoise: Adjunct Faculty Advisor to the Apocalypse, mainly as a means to continue developing features for Melba Toast. He managed to get a simple scoring and health system in, in addition to spawning ships, one type of which shoots at you. He also implemented some awesome explosions that we’ve made in the past, which even shake the screen. So PP:AFAA is now made of action-packed awesomeness.

Check out PP:AFAA here (pardon the debug lines). We’ve decided to treat PP:AFAA as a side project that we’re going to pick at from time to time when we need a quick break. It will be developed more and more down the road. Hopefully we’ll get to see some of Ted’s awesome concepts in action.
An interesting side note about this early version: It’s not fully optimized for performance yet, being so early on in development, but, yesterday I found out that Adobe has released a new beta update of Flash Player 9. I was amazed at the performance increase it has with PP:AFAA. Previously, with a few explosions going off at once, my Macbook Pro 2 Ghz Core Duo would drop down to 10fps or so. With the new beta Flash Player, the game doesn’t get much below 24fps. I think game developers who are working on Flash games will really be excited when this new version gets released officially. I know I am.
Ted, Greg, and I have been spending much of the last couple weeks concepting, mostly for Dinowaurs. One of these days we’ll compile stuff together and maybe post it up for all to see. Greg is now officially in Rome, too. It was sad to see him go, but sometimes you just have to let go. He’ll be coming back to the nest soon enough. Be careful out there, Greg!
I’ve also been learning ActionScript 3.0 from a couple books, including an awesome one by Colin Moock, Essential ActionScript 3.0. His ability to explain the meaning behind things is great. Anyone who has a beginner-level knowledge of programming concepts or higher and is interested in learning about ActionScript 3.0 will really enjoy the book.
August 15th, 2007 by fucrate

Bit o’the old update fer you fine folken. I been workin’ on PP:AFAA and, by extension, Melba Toast pretty good the past couple days, and boy oh boy is she startin to come ’round. I s’pose it’s been a long while since muh last post, so I reckon I start at the beginnin.
Separating your timestep from your framerate!
I found a good post on gaffers blog about physics and fixing the timestep to ensure stable and consistant physics. Previously I had thought that using a delta time variable would ensure correct integration of physical movement in my physics simulation, but not only is that not enough but I was using the most horrible integration algorithm possible as well as allowing for wild fluctuations in the delta time variable. Gaffer has a two parter, here’s the second part, on physics simulation.
The first part is all about using RK4 integration to figure out f=ma, I didn’t take the time to really understand the algorithm because apparently I’m a bloody idiot and think Euler is fine enough for PP:AFAA. Also integration scares me. The second part details a simple method to ensure the delta time variable used in your physics simulation is the same regardless of the actual framerate. Put simply, you wait until a minimum amount of time has passed, for me its 10ms, until ticking the simulation. If more than 10ms passes during one frame, then tick the physics simulation as many times as you have to in order to “catch up”. Its bloody simple and increased the consistency of the prof’s movements considerably. And no need for scary integration. I’m still using Euler mostly because its faster than RK4, and when I have more time I’ll implement both and see if the increased accuracy is really worth the performance hit.
Vector Art All Around!
Yeah, there was some discussion about using raster or vector art for the assets in Flash, I was thinking that bitmaps would be faster than vector arts and after doing some simple tests trying to display about 3000 PP:AFAA boats in vector or bitmap of multiple sizes and small bitmaps did prove to render faster than vector stuff. It was a difference of about 10 fps, and in return we got boats and a professor which look like dogshit when rotated. In short I’ve decided to go vector for everything which is gonna work out great for scaling, rotating all all that fun stuff. I was even thinking today about dynamic zooming and got all excited. Not sure how that’ll fit in with the tile management system, but damn it would be cool.
Sweet Console Command Stuff
Spent a bit of time today with my console, trying to figure out how to do console variables for in game tweaking. The end result? Now I not only have the “fps” command, but you can set the prof’s accleration variable with the command “porpAccl=X”. Also I fit in a command history thing so you can cycle through all the commands you did throughout the current game.
I was trying to find a good way to register console variables and the best I could come up with was to create a new child class of Console, PorpConsole specifically for PP:AFAA which has a reference to the prof object and then I hardcoded the parsing for the “porpAccl” command and the variable it changes on the prof. This isn’t so cool, what I originally wanted was to give the base Console object a dynamic list of handles and function calls which could be registered at run time, this way each object which needed a console variable or some other kind of console functionality could just register it remotely and this could be turned on or off from each object individually. The way I have it now, all the commands and their functions are controlled set right in the parse function of the PorpConsole class, its all centralized and crappy.
Also Splashing
He splashes when he gets in the water. Neat.
And I drew some clouds. they are pretty.
-mike out
August 14th, 2007 by torncanvas
This weekend was the first Iowa Indie Game Jam, and it was a great success. Its beginnings were humble and spontaneous. Andres came down to Des Moines to see the coolness that is going on here - this weekend it was The Grey Market. While visiting, he proposed having a game development jam session. I thought it was a great idea. So, since he didn’t have his laptop and my apartment was about 85 degrees, we decided to head up to Ames to his parents’ place.
Our original goal was to make an asteroids clone that created background graphics after you destroyed asteroids with a continuous laser that could reflect off of other asteroids. And it was going to be done in ActionScript 3.0. Well, we soon found out how different AS 3.0 is from 2.0, so we sent out an S.O.S. to Mike B. to save our butts.
(from top-left clockwise: Josh L “torncanvas”, Mike B “fucrate”, Andres R “monkeyscience”)
To our surprise, Mike H. showed up on his way out of town to visit some friends. He ended up staying the whole time.
(from left: Mike H, Mike B “fucrate”)
Thankfully he had a camera to document the event. Soon after, Mike B. arrived and proposed creating a 50-lines-or-less Flash game, inspired by a recent competition on the Kongregate forums. After some discussion, we decided to make a dungeon crawler with this restriction. That proved to be quite the challenge…

Everyone got pretty sucked in, which was great, and eventually we worked into the wee hours of Saturday night. The aftermath:




We had breakfast together the next morning and came back to work on more of the game. Pretty soon Greg showed up to join in the fun, too.
(Greg W “aeiowu”)
Not long after, I had to leave, but the IIGJ continued as everyone worked in true indie fashion on an old school favorite: the dungeon crawler.
There’s already talk of the next Iowa Indie Game Jam. Rock on, independent game development.
July 13th, 2007 by fucrate
We’ve been working full steam on PP:AFAA tonight, and I’ve finally gotten back on track with Melba Toast and breaking out teh codez. I actually started out on prototyping water yesterday and thought I’d have an easy time of getting some wave action going… Boy was I wrong.

Actually in theory, it would have been pretty simple to just throw a line on the screen and use a sine wave to do some nice wave effects and the just move on. However, I have decided to use Melba Toast in the most responsible manner possible and that means avoiding shitty shortcuts and hacks. I determined that I wanted my water to be a tile, which means it has to be subjected to all the culling algorithms I wrote for my MelbaTiles. This set me right in the face of one of the two problems my tile engine currently has, the other of which is I have no faculty for actors which are able to move across the tile sectors (see Tile engine tutorial to get an idea of how the tile system works), and I only register tiles with the sector that contains their registration point, i.e. the upper left corner. This second issue is a problem for any tile which overlaps two sectors or especially tiles which are larger than a sector. I decided that the water shouldn’t be split up into multiple objects, a decision I may change later for efficiency, which forced me to solve the problem of super sized tiles before I could even make my water show up on the screen.
So anyway, I came up with 14 different cases of tile orientation on a single sector and was about to write up a massive nested if() clusterfuck when I remembered the collision lessons the Metanet Software crew (makers of N, check it out) released. Using their “Maths”, I was able to reduce the statement to about 8 lines of code and was very pleased with myself.
Long story short, there is no longer a limit to the size of tiles Melba Toast can support, and we got neato water effects, though it’s not too dynamic at the moment. You can use the arrow keys to scroll around, but you can get lost quick.
Also, tilde brings down the console, though the only command right now is fps.