Tuesday, September 27, 2011

Game Pad Support

0 comments
I've done quite a bit of research and I can't find any way to directly include Game Pad support in an Adobe Flash app. However, there is an easy work around if you care to use it. There are several programs available that will convert game-pad input to keyboard input. Here's what I would recommend:

For PC:
JoyToKey

For Mac:
ControllerMate

For Linux:
QJoyPad

Friday, September 23, 2011

Minor update. Who plays this game?

1 comments
Hey all. I uploaded a new version. If you're one of the folks who have figured out how to activate debug mode, then you might find several significant changes in the "in-progress" areas. Otherwise, most of the changes are to back-end stuff in preparation for the next version. There's a few minor graphic changes, some tweaks in the level generation code and some more item preffix/suffix.

Please play the shit out of this and report bugs! Pretty please? With robo-sugar on top?

Also, please just report... anything. I get quite a few hits a day and would like to know who's been playing, what they think, what they'd like to see changed / added. There are also a few things I might need help with down the line so....

Don't be afraid to speak up.

Monday, September 12, 2011

Update (Sooner or Later)

0 comments
Just to let folks know what I've been working on...

I've been designing some functions to draw level art for future zones (The Cave and The Town mostly). Where-as Level 1 is composed of larger pieces of odd-sized art, future levels will be more tile based, with smaller more versatile pieces of art.

That's all to say I've been working on the Cave Zone and The Town. After you defeat the eyeball boss you'll find yourself in this underground shelter, which will serve as a town with shops and kind of a central hub for the rest of the zones in the game. Zones are going to be divided into 3-subzones, each about twice the size of Level 1. The first of these zones you'll usually explore is going to be The Cave Zone, which will play similar to a lot of the areas in Super Metroid. Lots of hidden rooms, large caverns to explore, simple monsters that follow patterns. I've been working on something of these monsters as well.

Anyways, the next update is a ways off. But it will be a big one, hopefully with whole new areas to explore.

Friday, September 9, 2011

Working on Items...

0 comments
I'm knee deep in items right now, raiding the thesaurus for Diablo style prefix's and suffix's

Here's all the weapon prefix's thus far:
public function genWeaponPrefix(roll:Number, level:Number):String
        {
            if (roll > 0.90)
            {
                stats.levelReq += 1;
                stats.skillBaseDamage = 1;
                stats.skillRateOfFire = 1;
                stats.red += 1;
                stats.green += 1;
                stats.blue += 1;
                stats.value += 300;
                return "Blaster's ";
            }
            else if (roll > 0.8)
            {
                stats.levelReq += 1;
                stats.skillBaseDamage = 1;
                stats.red += 0.5;
                stats.green += 0.5;
                stats.blue += 0.5;
                stats.value += 400;
                return "Marksman's ";
            }
            //RATE OF FIRE
            else if (roll > 0.78 && level >= 20)
            {
                stats.levelReq += 5;
                stats.skillRateOfFire = 5;
                stats.red += 0.6;
                stats.green += 0.6;
                stats.blue += 0.6;
                stats.value += 1000;
                return "Hair-trigger ";
            }
            else if (roll > 0.76 && level >= 15)
            {
                stats.levelReq += 4;
                stats.skillRateOfFire = 4;
                stats.red += 0.7;
                stats.green += 0.7;
                stats.blue += 0.7;
                stats.value += 10000;
                return "Breakneck ";
            }
            else if (roll > 0.74 && level >= 10)
            {
                stats.levelReq += 3;
                stats.skillRateOfFire = 3;
                stats.red += 0.7;
                stats.green += 0.7;
                stats.blue += 0.7;
                stats.value += 5000;
                return "Automatic ";
            }
            else if (roll > 0.72 && level >= 5)
            {
                stats.levelReq += 2;
                stats.skillRateOfFire = 2;
                stats.red += 0.6;
                stats.green += 0.6;
                stats.blue += 0.6;
                stats.value += 1000;
                return "Nimble ";
            }
            else if (roll > 0.7)
            {
                stats.levelReq += 1;
                stats.skillRateOfFire = 1;
                stats.red += 0.5;
                stats.green += 0.5;
                stats.blue += 0.5;
                stats.value += 400;
                return "Quick ";
            }
            //DAMAGE
            else if (roll > 0.68 && level >= 15)
            {
                stats.levelReq += 4;
                stats.attack.minDamage += 5;
                stats.attack.maxDamage += 15;
                stats.red += 1;
                stats.green -= 0.4;
                stats.blue -= 0.4;
                stats.value += 5000;
                return "Vorpal ";
            }
            else if (roll > 0.65 && level >= 12)
            {
                stats.levelReq += 3;
                stats.attack.minDamage += 2;
                stats.attack.maxDamage += 12;
                stats.red += 0.8;
                stats.green -= 0.2;
                stats.blue -= 0.2;
                stats.value += 1000;
                return "Leathal ";
            }
            else if (roll > 0.62 && level >= 9)
            {
                stats.levelReq += 3;
                stats.attack.minDamage += 4;
                stats.attack.maxDamage += 9;
                stats.red += 0.7;
                stats.value += 1000;
                return "Deadly ";
            }
            else if (roll > 0.58 && level >= 6)
            {
                stats.levelReq += 2;
                stats.attack.minDamage += 1;
                stats.attack.maxDamage += 8;
                stats.red += 0.5;
                stats.value += 250;
                return "Savage ";
            }
            else if (roll > 0.54 && level >= 4)
            {
                stats.levelReq += 2;
                stats.attack.minDamage += 2;
                stats.attack.maxDamage += 5;
                stats.red += 0.5;
                stats.value += 250;
                return "Brutal ";
            }
            else if (roll > 0.5)
            {
                stats.levelReq += 1;
                stats.attack.minDamage += 1;
                stats.attack.maxDamage += 3;
                stats.red += 0.3;
                stats.value += 100;
                return "Strong ";
            }
            //COLD
            else if (roll > 0.49 && level >= 20)
            {
                stats.levelReq += 5;
                stats.attack.minCold += 10;
                stats.attack.maxCold += 20;
                stats.red -= 0.5;
                stats.green -= 0.5;
                stats.blue += 1;
                stats.value += 10000;
                return "Hyperborean ";
            }
            else if (roll > 0.47 && level >= 16)
            {
                stats.levelReq += 4;
                stats.attack.minCold += 4;
                stats.attack.maxCold += 13;
                stats.red -= 0.2;
                stats.green -= 0.2;
                stats.blue += 0.8;
                stats.value += 5000;
                return "Glacial ";
            }
            else if (roll > 0.46 && level >= 12)
            {
                stats.levelReq += 3;
                stats.attack.minCold += 2;
                stats.attack.maxCold += 12;
                stats.blue += 0.7;
                stats.value += 1000;
                return "Arctic ";
            }
            else if (roll > 0.45 && level >= 9)
            {
                stats.levelReq += 3;
                stats.attack.minCold += 3;
                stats.attack.maxCold += 8;
                stats.blue += 0.65;
                stats.value += 1000;
                return "Frigid ";
            }
            else if (roll > 0.44 && level >= 6)
            {
                stats.levelReq += 2;
                stats.attack.minDamage += 1;
                stats.attack.maxDamage += 6;
                stats.blue += 0.5;
                stats.value += 500;
                return "Cold ";
            }
            else if (roll > 0.44 && level >= 5)
            {
                stats.levelReq += 2;
                stats.attack.minCold += 2;
                stats.attack.maxCold += 4;
                stats.blue += 0.45;
                stats.value += 500;
                return     "Icey ";
            }
            else if (roll > 0.42 && level >= 4)
            {
                stats.levelReq += 2;
                stats.attack.minCold += 1;
                stats.attack.maxCold += 3;
                stats.blue += 0.3;
                stats.value += 150;
                return "Chilly ";
            }
            else if (roll > 0.4)
            {
                stats.levelReq += 1;
                stats.attack.minCold += 1;
                stats.attack.maxCold += 1;
                stats.blue += 0.3;
                stats.value += 50;
                return "Nippy ";
            }
            //FIRE
            else if (roll > 0.39 && level >= 22)
            {
                stats.levelReq += 5;
                stats.attack.minFire += 15;
                stats.attack.maxFire += 30;
                stats.red += 1;
                stats.green += 0.6;
                stats.blue -= 0.6;
                stats.value += 15000;
                return "Hellfire ";
            }
            else if (roll > 0.38 && level >= 18)
            {
                stats.levelReq += 4;
                stats.attack.minFire += 8;
                stats.attack.maxFire += 20;
                stats.red += 0.9;
                stats.green += 0.5;
                stats.blue -= 0.4;
                stats.value += 8000;
                return "Vulcan ";
            }
            else if (roll > 0.37 && level >= 15)
            {
                stats.levelReq += 3;
                stats.attack.minFire += 5;
                stats.attack.maxFire += 15;
                stats.red += 0.8;
                stats.green += 0.4;
                stats.blue -= 0.3;
                stats.value += 2500;
                return "Blazing ";
            }
            else if (roll > 0.36 && level >= 10)
            {
                stats.levelReq += 3;
                stats.attack.minFire += 1;
                stats.attack.maxFire += 12;
                stats.red += 0.6;
                stats.green += 0.3;
                stats.blue -= 0.3;
                stats.value += 800;
                return "Flaming ";
            }
            else if (roll > 0.35 && level >= 9)
            {
                stats.levelReq += 2;
                stats.attack.minFire += 3;
                stats.attack.maxFire += 8;
                stats.red += 0.5;
                stats.green += 0.25;
                stats.blue -= 0.25
                stats.value += 800;
                return "Scalding ";
            }
            else if (roll > 0.34 && level >= 6)
            {
                stats.levelReq += 2;
                stats.attack.minFire += 1;
                stats.attack.maxFire += 6;
                stats.red += 0.5;
                stats.green += 0.25;
                stats.value += 400;
                return "Firey ";
            }
            else if (roll > 0.32)
            {
                stats.levelReq += 1;
                stats.attack.minFire += 1;
                stats.attack.maxFire += 3;
                stats.red += 0.4;
                stats.green += 0.2;
                stats.value += 100;
                return "Hot ";
            }
            else if (roll > 0.3)
            {
                stats.levelReq += 1;
                stats.attack.minFire += 1;
                stats.attack.maxFire += 1;
                stats.red += 0.3;
                stats.green += 0.1;
                stats.value += 50;
                return "Toasty ";
            }
            //ELECTRIC
            else if (roll > 0.29 && level >= 22)
            {
                stats.levelReq += 5;
                stats.attack.minElectric += 15;
                stats.attack.maxElectric += 30;
                stats.red += 1;
                stats.green += 1;
                stats.blue -= 0.6;
                stats.value += 15000;
                return "Voltaic ";
            }
            else if (roll > 0.28 && level >= 18)
            {
                stats.levelReq += 4;
                stats.attack.minElectric += 8;
                stats.attack.maxElectric += 20;
                stats.red += 0.9;
                stats.green += 0.9;
                stats.blue -= 0.4;
                stats.value += 8000;
                return "Scintillating ";
            }
            else if (roll > 0.27 && level >= 15)
            {
                stats.levelReq += 3;
                stats.attack.minElectric += 5;
                stats.attack.maxElectric += 15;
                stats.red += 0.8;
                stats.green += 0.8;
                stats.blue -= 0.3;
                stats.value += 2500;
                return "Lightning ";
            }
            else if (roll > 0.26 && level >= 10)
            {
                stats.levelReq += 3;
                stats.attack.minElectric += 1;
                stats.attack.maxElectric += 12;
                stats.red += 0.6;
                stats.green += 0.6;
                stats.blue -= 0.3;
                stats.value += 800;
                return "Brilliant ";
            }
            else if (roll > 0.25 && level >= 9)
            {
                stats.levelReq += 2;
                stats.attack.minElectric += 3;
                stats.attack.maxElectric += 8;
                stats.red += 0.5;
                stats.green += 0.5;
                stats.blue -= 0.25
                stats.value += 800;
                return "Electric ";
            }
            else if (roll > 0.24 && level >= 6)
            {
                stats.levelReq += 2;
                stats.attack.minElectric += 1;
                stats.attack.maxElectric += 6;
                stats.red += 0.5;
                stats.green += 0.5;
                stats.value += 400;
                return "Spark ";
            }
            else if (roll > 0.22)
            {
                stats.levelReq += 1;
                stats.attack.minElectric += 1;
                stats.attack.maxElectric += 3;
                stats.red += 0.4;
                stats.green += 0.2;
                stats.value += 100;
                return "Shocking ";
            }
            else if (roll > 0.2)
            {
                stats.levelReq += 1;
                stats.attack.minElectric += 1;
                stats.attack.maxElectric += 1;
                stats.red += 0.3;
                stats.green += 0.3;
                stats.value += 100;
                return "Static ";
            }
            //KNOCKBACK
            else if (roll > 0.1)
            {
                stats.levelReq += 1;
                stats.attack.knockback = 100;
                stats.green += 0.3;
                stats.blue += 0.3;
                stats.value += 100;
                return "Gust ";
            }
            //OPTION BOT
            else if (roll > 0)
            {
                stats.levelReq += 2;
                stats.skillOptionBot = 1;
                stats.red += 0.3;
                stats.blue += 0.3;
                stats.value += 400;
                return "Helpful ";
            }
            return "Glitched ";
        }

Tuesday, September 6, 2011

Version 0.43

0 comments
Hey all, fixed the inventory bugs. Turned out to be a nasty error that was causing event listeners and arrays and other objects to stick around after exiting the play state. That's what I get for maintaining my own piece-meal, extensively modified version of Flixel since version 1.2.

Tonight or tomorrow I'm going to go over the newest version of Flixel and see if I can incorporate its better features, and makes some other tweaks and changes I've been thinking about to all the graphics buffering stuff.

Also, this version has visible armor, boots, and sprites. No new gfx yet, but color-shifting works.

I plan on working more with items in the next update and have them generate more appropriately to the area they're in. I'm tired of Lvl Req 5 Items dropping at Level 1.

Other plans:
-Make spikes deal damage instead of auto-kill
-Figure out ongoing damage
-Add lava that auto-kills.
-Make a pop-up frame for item descriptions instead of using the narrow hint-bar.
-Figure out how to show quest goals on the automap.
-Add a quest log.

Monday, September 5, 2011

Inventory Bug

0 comments
I just caught some bugs with the new inventory system while working on visible armor. I've fixed most of them, except one involving saved games. I'll upload the fixed version tonight after work.


Update: This bug is trickier to fix than I thought. Maybe a new version tomorrow

Sunday, September 4, 2011

Comments

0 comments
I just enabled comments for anonymous users, so folks that don't want to register for blogger can have input as well. Let me know if you find any bugs or have any ideas as to how I might better game-play.

Followers