[Old] Games

/Tag:[Old] Games

Rico’s Disgaea 4 Guide: Evil Symbols

Alright let’s get something out of the way. If you want to level up your Evil Symbol you should do so by going into the Chara World (Unlocked by Reincarnating someone from level 100 or higher) and then clearing out every block on the first level. One caveat is that the character you are inside must be on one of the active squares for this Evil Symbol. This is the easiest and safest way to do it. Don’t wait until level 9 and don’t wait until level 10. Every guide online says wait until 9 and 10 and all those guides are wrong. For the Vita you should do it at level 1, period, end of story. There I just saved you hours of frustration, wondering why the guides online aren’t working for you.

With that out of the way lets talk about leveling Evil Symbols and what Symbols exist! I’ll be covering all of them that exist and how much it costs to level them! First lets look at each one of them and their layouts. If you notice any with hollow green squares those are the spots I’ve unlocked (more on that in a bit).

Aura Pyramids - Unlocked: Automatically Unlocked.

Unlocked: Automatically Unlocked.

Babel Tower - Unlocked: Tower attack an enemy.

Unlocked: Tower attack an enemy.

Blight House - Unlocked: Finish Chapter 7.

Unlocked: Finish Chapter 7.

Cam-pain Board - Unlocked: Pass 3 bills.

Unlocked: Pass 3 bills.

Defense Fortress - Unlocked: Beginning Bill

Unlocked: Beginning Bill

Discipline Room - Unlocked: Throw enemies 3 times.

Unlocked: Throw enemies 3 times.

Dual Dojo - Unlocked: Kill a level 1000+ enemy with MagicChange.

Unlocked: Kill a level 1000+ enemy with MagicChange.

Fusion Weapon Lab - Unlocked: Kill a level 100+ enemy with fusion.

Unlocked: Kill a level 100+ enemy with fusion.

General Advisor - Unlocked: Have 10 characters die.

Unlocked: Have 10 characters die.

Hall Monitor - Unlocked: Steal from an enemy.

Unlocked: Steal from an enemy.

Heart Cannon - Unlocked: Beginning Bill

Unlocked: Beginning Bill

Information Bureau - Unlocked: Finish Chapter 4.

Unlocked: Finish Chapter 4.

Item World Radar - Unlocked: Defeat an Item King.

Unlocked: Defeat an Item King.

Legendary Tree - Unlocked: Play Chapter 4.

Unlocked: Play Chapter 4.

Nether Shoe Lab - Unlocked: Finish chapter 2.

Unlocked: Finish chapter 2.

Nether Express - Unlocked: Move 10 spaces or more with a character.

Unlocked: Move 10 spaces or more with a character.

Rosen Queen Shop - Unlocked: Finish Chapter 2.

Unlocked: Finish Chapter 2.

Sacrificial Altar - Unlocked: Have at least 2 characters die on 4 separate stages.

Unlocked: Have at least 2 characters die on 4 separate stages.

Training Ground - Unlocked: Automatic.

Unlocked: Automatic.

I’m currently missing 3 of the Evil Symbols myself so you won’t be seeing them in the guide yet. They are the Beast Lab which is unlocked by finishing the Post Game Level 6, the next is Carnage Master which is unlocked by getting a character with base stats of 20 Million or higher, and finally pentanque.hades.org is unlocked by throwing enemies with your monsters 30 times. You can accomplish that last task by throwing bad guys onto your monsters. I believe chains work. I’ll verify soon.

Now that we’ve looked over the symbols above lets discuss the steps for leveling your stuff!

2014-09-04-202255

I want to level my Heart Cannon because it is the most absolute badass non-power leveling Evil Symbol. This thing is total boss mode. If you get it up to 6 characters you are looking at chains that could get obscenely long (check out the image at the end of this post for an example of just >2< people on the symbol). I’ve placed Dave (a buddy of mine who really is a Super Hero) on one of the squares for the symbol. You can have them overlap but I tend to find that that occasionally causes problems. It is safest to have it out by itself somewhere.

Edit: I put two on top of one another and it lets you choose which one to upgrade. No more reason to fear about separating them :).

2014-09-04-202321

I walk over to the NPC that was unlocked by reincarnating someone level 100 or higher.

2014-09-04-202326

I select Dave. You’ll notice that the enemies in the zone will be the same level (or higher) than the person you are going inside. It is best to do this stuff with a level 1 character but because I’m kind of hardcore I’m going with 9,999. Oh yeah. *flexes* Contain your lust.

2014-09-04-202356

Well this is great! Most Character world levels are these lovely 3×3 corridors! So lets get to using Big Bang and other spells until its all gone! Be sure to not kill all the enemies either hold one up while you work or put them to sleep. Just keep in mind you can’t lift Gate Guardians.

2014-09-04-202614

Put the last guy to sleep because unfortunately he is a Gate Guardian just as I mentioned. It might be wise to have a mage with Slumber at +9 if you’ve got the mana to burn.

2014-09-04-202703

Next we destroy the last square in the raddest way we can think. I use Valvatorez because he’s currently boss mode damage wise.

2014-09-04-202714

Robin Williams walks into the magical portal and we are on our way. There is a 50% chance that you’ll either get the guy for leveling your evil symbol or you’ll get this prinny that helps you unlock the secret moves for each weapon.

But we don’t need to talk about him because there is just no way that he’d pop u-

2014-09-04-202719

God. Damnit. Alright well I guess I’ll show you the moves and their costs for the future.

2014-09-04-202725

There ya go. But since we didn’t get the wrong guy here are the leveling costs for evil symbols when you get the right guy.

1st Level Up – 5,000 Mana.
2nd Level Up – 50,000 Mana.
3rd Level Up – 500,000 Mana.
4th Level Up – 5,000,000 Mana!
5th Level Up – 9,999,999 Mana!!*

*For this one you want to go into item world for an Evilty or Skill upgrade so that you don’t use any mana and have your maximum 9,999,999 at the very first level.

So let’s think. I’ve listed out all the symbols, what they do, how to upgrade them, and how much it costs to upgrade them. I think that’s everything!

Oh wait I forgot one thing. When you DO level up your item how do you add those squares? That’s a great question!

2014-09-04-220646

Simply select the evil symbol that you’ve leveled up. Once you’ve done that press Triangle.

2014-09-04-220653

Next click any square around any of the squares adjacent to the already existing squares of your evil symbol. Press X and VOILA! In my case I moved one square over to show you what its like. You can remove and move them just by clicking on them again.

That’s it! Thank you for visiting and helping me rebuild this blasted search engine index after that stupid website crash… More guides coming over the next week that’ll cover basically everything about Disgaea 4: A Promise Revisited! Don’t forget to check out my guide on the Puppy Paw Stick too!

Heart Cannon is the bestest best thing ever. Look at that chain on the side! Shit is about to go >down<.

Heart Cannon is the bestest best thing ever. Look at that chain on the side! Shit is about to go >down<.

By | 2014-12-20T22:12:55+00:00 September 5th, 2014|Journal|4 Comments

Rico’s Disgaea 4 Guide: Puppy Paw Stick

Hello and Welcome!

Oh crap…I don’t have my Vita with me. I’ll be right back. Just uh…just wait right there. Alright, game saving. Now to download these pictures. Well shit…I need content manager assistant first. Ok. Just one moment again.

This guide series is going to be a bit difficult because I need to explain multiple tips and tricks. If you reach a point where I say you need a frying pan and you don’t have one you can rest assured that an upcoming guide piece will tell you how to get that frying pan and I’ll update this post to link to it. With that out of the way lets talk about what you need!


1-1 Promotionhell Ticket!
Cheat Shop with Level Set to 20!
A Single Character with Impaler Drop.
Preferably a nice robust team of level 1000 characters. (More on this in a bit)
The 6th rank of Nekotama unlocked.
Discipline Room (More on this in a bit)
Tiny bit of Patience.

The first thing we need to do is get the Discipline Room! Without it this entire thing falls apart! Go into any level at all that has at least three enemies and throw those suckers anywhere you want. After the level you should see a request to pass a bill for the Discpline Room. Go pass that Bill and then place this little ditty down.

2014-09-03-204243

Once this is down put at least one of your characters in it. I put Stella down in it, if you don’t have a Save File from Disgaea 3 you won’t have access to her. You can put literally anyone here. The characters you get in the Post Game (the more psychotic ones) are your best options for these spots but really anyone can do it.

Next you’ll need to get both a team of 1000 characters and that 1-1 Promotionhell Ticket! I recommend doing this by slowly cranking up the EXP payout of your game. Then go stack some Nekotama on the 5-2 Level (Called Lost Dignity). Use your evil symbols to share EXP and Mana to help accelerate the leveling process. More on this in a future guide. But presuming you do it well you should have some characters that you now like that are a modest level 500 to 1000.

Take these characters with you into item world on a legendary rank item after setting up your cheat shop to look as close to this as possible.

2014-09-03-203649

Now just complete the item! Somewhere between level 1 and 100, presuming you’ve been hitting and activating every mystery gate along the way, you should find the Promotionhell vendor. These tickets cost something like a million a piece if I remember correctly (I don’t), but you should generate this kind of revenue just by playing through the item world. If you find the monsters are getting too hard you can drop the stars difficulty a bit but in general I find that if you complete every level you’ll be rocketing up in levels.

Also be sure to leave every 10 levels because this game sometimes crashes in the item world! It’s a nightmare to lose a ton of progress!

UPDATE: Alternatively you can set your voice acting to Japanese! It turns out its the English voice for (I believe) the final form of the Nekotama that crashes the game. So if you are in Japanese you can play all day and be safe! 🙂

Once you have that ticket move it to your storage (I don’t sell them, I’m not sure if you even can safely). You should notice a new NPC in your base!

2014-09-03-203515

Talk to her and pick the first level.

2014-09-03-203520

Once you pick this you’ll be greeted with a level 600 Nekotama in the smallest arena you’ve ever seen.

2014-09-03-204123

From here you want to take your spearman and use Impaler Drop on the Nekotama. I named mine Stabby.

Note where you'll end! Outside of the Arena :D.

Note where you’ll end! Outside of the Arena :D.

Next you want to haul ass over to the No Entry Block and hit end turn.

2014-09-03-204149

Once that is lifted you can move outside of the arena with one of your characters and lift the kitty.

2014-09-03-204201

Next you’ll want to chuck her into the base and clench your buttcheeks.

2014-09-03-204428

Victory! If you fail you can retry the level. I find that sometimes I lose and then retry and win without changing anything. It’s got a bit of RNG associated. Once you are sitting on 9,999 characters like me it never fails though… At any rate we’ll have a few more guides up soon after this that’ll teach you how to do that in a matter of minutes :).

Once you’ve caught the Nekotama go to the Nurse and heal. Then come back and do this again. Repeat up to 20 times if you so desire. Each time it should be easier than the previous time because you are adding a level 600 Nekotama to your group each time you succeed!

Once they are all gathered go talk to the new NPC you see in town from your Discipline Symbol.

2014-09-03-204442

Pick a Nekotama from the menu and get to disciplining!

2014-09-03-204454

The colored options vary in efficacy and are determined by the characters you put on the symbol squares. Some work better than others and generally the scarier they sound the better they work. Once you’ve done a few you should see the option to “Find Treasure”.

Leave the torture zone and save your game if you wish. I don’t really recommend save scumming because it felt slower to me but you can. After you save you can click find treasure. Once you do this a variable is locked into place. That variable is “Shit or Treasure” basically. If you open the treasure chest and its a shitty gift no amount of resetting will change this. If it’s a pirate ship part there is a >small< chance it'll be a Puppy Paw Stick if you save scum. But I don't recommend doing that because you can only get pirate ship pieces once. Each time you get one of them your odds of getting the PPS go up. It's an inevitability that only took me about an hour of playing (by then I had gotten nearly all the pieces too, if you were curious). 2014-09-03-204519

Now that you know where it is go there and get it! You don’t need to memorize it because Disgaea marks the level.

2014-09-03-204530

2014-09-03-204534

Rinse and repeat until you get the Puppy Paw Stick!

Next Disgaea 4 Guide will likely be about Maximum Duping! I’ll get you to 9999 within a day including the prep and then from there you can hit 9999 in a matter of minutes after that! Heck if you are quick with menus you could probably get to 9999 in under 2 minutes with my help :). But that’s all for now!

By | 2015-03-02T12:46:49+00:00 September 4th, 2014|Journal|18 Comments

Reviews: Witch and the Hundred Knight

Witch and the Hundred Knight is a bit of a bitter pill. On the one hand it has a diablo style gameplay that I find very rewarding. The protagonist (the terribly named Hundred Knight) is adorable. The animation style is pretty good (one of the things that interested me in it). The music and sound effects are forgettable, minus the sound when you sell things that’ll deafen you. But the character with the most dialogue is an unimaginative irritating annoying monster.

“Mettalia” who really wants you to stop calling her “Lia”, a joke they make almost every single time she’s on screen (a few times a mission chapter, it feels like), is disinteresting on nearly every level as a character. If you are familiar with the story of Disgaea you immediately know what her arc is going to be once she starts talking. The problem is that while the story worked for Laharl because he was charming it falls apart for her because she’s just not fun. If I’m going to be playing or working directly for an asshole I want them to have some level of depth. She is basically the stereotypical bad boss you might experience in a minimum wage job but she demands you also murder people in between cleaning the aisles.

I want something. I already know she’s going to “turn a new leaf” by the end of this story, and trust me you do too when the game starts, but that’s not rewarding if the journey to that end is an insufferable slog. It’s a shame too because, as I said, the actual gameplay isn’t half bad. I had fun mixing my weapons to chain together combos based on their rank value, weapon type, and even their effects. I liked going ahead far too soon and using strategy to defeat monsters that would OHKO me otherwise. That’s super cool and even the time limit ended up being pretty cool instead of a pain in the ass.

714pfhN233L._SL1280_

Nothing feels right or interesting. I kept trying to force myself to complete it and I realized I just couldn’t. No matter how much I thought the combat was passable I just couldn’t justify what was turning into me helping out an NPC that was just completely boring. She was killing me with how badly she was written and its irritating. I could see under the surface she was one of the NIS characters with great levels of power and those tend to be fun to play. The kind of character you happen across in a future crossover game and think “Oh shit.” Like stumbling upon a pissed off Black Adam.

I wanted her to grow quicker, to become a nice iconic staple of villainy. If I’m going to be working for someone evil either make them funny or make them interesting. These are basically the only two options. If you aren’t certain you can do interesting then just fall onto the side of funny and go full tilt silly. And for the last time I don’t care what your damn name is! I get it! Ok yes, in Japan apparently her name was “Metallica” which obviously wouldn’t work in the US. Maybe the Japanese name and “Lica” had some kind of cute wordplay that made sense there. But once you localized it for the US its just obnoxious.

Sometimes people call me Mikey, I might be annoyed the first time, but we are to believe he’s been calling her Lia for hundreds of freaking years. At a certain point you let that shit slide because its obviously never going to change.

Hundred

I sincerely think she would have been better off just being the villain. If they were going to make her obnoxious at least let her be the villain so that I know I’m supposed to stop the obnoxious character. They have already done the sassy powerful female character before with Etna, they had the template all ready and they could have copied it again with perfect precision. I don’t think anyone would care to have another Etna style character floating around. I just don’t get it. I suppose about the only thing I can say nice about her is that I like her character design. I know some folks are put off by “too much skin” or whatever but I thought she worked. I was really excited to see her saiyan up, maybe in a future Disgaea game as a DLC character? That would be lovely. I’ll buy it.

I wish I had more to say but this game just really disappoints me. The gameplay is fun, not life changing but not bad. The Hundred Knight is cute and I have no complaints about him really. The story is literally so predictable that I feel like you’d only consider anything I say a spoiler until you read the first 5 lines of dialogue. The villains for the most part are not people you are interested in killing.

Imagine a Grand Theft Auto where you spent the majority of the beginning basically hunting down perfectly normal people, torturing them, and then killing them. Not because its possible (since we all do stupid stuff during free play in GTA) but because the game specifically called for it. Imagine that torture scene from GTA 5 (that is one of the more powerful moments for me in a video game) but completely without the self awareness of the situation and without any semblance of character development.

Take that situation and carry it out across hours of gameplay. I’m sure that about 60% of the way through she becomes bearable and by 90% of the way through she’s fun, but I’m not going to drag my balls through a bed of nails to get there. I have the considerably better experience of Divinity: Original Sin asking me if I’d rather drink the finest drink and tip my monocle instead. Review for that coming soon I guess…shorthand is its amazing.

This…this not so much. Darn shame.

Bad

By | 2015-02-08T20:07:45+00:00 July 19th, 2014|Bad Things, Reviews|Comments Off on Reviews: Witch and the Hundred Knight

Reviews: World of Warcraft Challenge Modes

Today we finished the Challenge Mode feature of World of Warcraft. WOW has been around for an awfully long time now and its quality ebbs and flows. Some of the ideas are pretty darn good (Challenge Modes) and some are absolutely terrible (Legendary Cloak Quest). It leaves the review of the game as a whole incredibly difficult but each individual piece of it can be more easily targeted and pieced apart.

Challenge mode isn’t perfect, not by any stretch of the imagination, but as a first pass of a new idea its done quite well. The basic premise is that you must complete each of the heroic dungeons in Mists of Panadaria with depreciated gear, super powerful baddies, and a very very strict timer. We are talking about a single mistake and you might be done. These mistakes don’t even need to be your own either, the game itself can goof and you are proper fucked. That’s where we’ll start actually.

CM requires that the game be perfectly balanced, no latency, and that all the AI act properly. But this is just not the state that WOW is in, it isn’t the state it was at a launch, and likely won’t be the state it’ll be in on its dying days sometime long in the future. WOW is always under development and a lot of the changes fix a few problems while adding dozens more. It’s a massive game and this is to be expected. However when you sometimes have 5-10 seconds of mistake leeway a mob seeing through a wall, getting stuck in a wall, teleporting, or even becoming immortal is just not acceptable. I, for instance, had my Misdirection suddenly stop working. It just stayed greyed out forever. Sure you can fix this (by dying twice, once to turn the button on and a second time to reset the skill or by resetting your game) this shouldn’t happen in the first place.

Better hold your ass. This part will make or break some people.

Better hold your ass. This part will make or break some people.

Because of this you’ll have some of your CMs that are going swimmingly fall apart in the last minute of a 12-20 minute event. That’s upwards of a half hour of your life lost because of a bug with the game itself. This sort of problem could be avoided with the simple addition of a checkpoint system. Our team’s progress on each CM was relatively constant, if we did section A quickly we did it quickly each time. This meant that we had to parrot the same actions, over and over, because of a single part that was sticking us. Having the checkpoint system save both your position (at certain places, probably after bosses) and at the exact time that was on the clock at that point means that people progress better and those errors in game design end up not having a huge impact.

Additionally having it reset completely if the party disbands will incentivize people to stick together and tough it out. I was lucky because our group was pretty baller, everyone was nice and we took failure with relative ease. But if you were in a group with PVP players you are likely to get railed because of the lack of a checkpoint system. Now that isn’t to say this whole thing is a bust, as I’ve already spoiled I think that the progression you get in CM is smooth enough to not be terrible. It’s not like the legendary cloak quest which was so bad it should have gotten someone reprimanded at the company.

No this is something to build on. With some small improvements this could become one of the coolest additions in the game, possibly ever. It teaches people the importance of invisibility potions, DPS rotations, crowd control, damage mitigation, and basically everything else that makes an MMO more than just a click fest. It becomes something genuinely interesting and engaging. At no point is there incentive in CM to be a complete cockbag, which is rare in the world of…well Warcraft. Often it feels like the developers were trying to cater to the darkest sides of humanity with decisions that necessitate being an asshole, the fact that that is completely absent here is lovely.

The difficulty curve of the Challenge modes is awfully peculiar. Some of them a marginally adequate team will get on the very first try, others are so incredibly hard that a single sneeze could be the difference between success and cataclysmic failure. I feel like there were perhaps 2-3 teams (or 2-3 people) working on this project. It has a feel about it that suggests to me it wasn’t all done by the same collective hive mind. That’s fine, but it also means that someone on the team was a bit more of a masochist. A few of the dungeons got awfully stressful and not in the good way.

Miss that dominate and you likely can kiss the entire run goodbye.

Miss that dominate and you likely can kiss the entire run goodbye.

Another problem is the finicky nature of the reset system. If you reset and some people are outside of the dungeon for any reason (like dying) they will not reset and their potions will still be on cool down. Are you a class that has a pet? Well go eat a rock because you are going to have to resummon them every-single-time there is a reset. It’s frustrating and tedious. These problems aren’t enough to make the entire thing shit but they certainly put a little bit of shit on the otherwise lovely meal.

And I’m sure most people would consider a little bit of poop enough poop to ruin a meal. This however was a special exception for me, these problems weren’t enough to make it utterly worthless and quite the contrary I’m somewhat almost possibly fond of it. I won’t be even contemplating doing it again for a solid couple weeks, but it is not an experience that I regret.

Unlike the Legendary Cloak Quest, honestly, fuck that thing.

    What I liked.

  • Well designed to not necessitate being an asshole to succeed.
  • Helps you to learn your class better and even the mechanics of WOW itself.
  • It actually feels good and progress is not at a snails pace.
  • No damage to gear on death.
    What I disliked.

  • Success can be limited by the games quality rather than your own skill.
  • Some of the challenges are astoundingly easier with certain classes on your team, not really a fair ground for all classes.
  • No checkpoints, leads to some really frustrating problems with the top negative in mind.
  • Pets vanish after a CM reset.

rate41.png

By | 2015-02-08T21:15:25+00:00 July 5th, 2014|Good Things, Reviews|Comments Off on Reviews: World of Warcraft Challenge Modes

Rico’s ActionScript 3 Game Making Guide [Anyone can do it.] ~ (PT.3) FlxTilemaps and CSVs!

Introduction
Making a Menu

I had been meaning to start this earlier but I figure I’ll just get part of it done tonight and finish up the rest tomorrow. You won’t know this however because it’ll be drafted and then published in full. I’ll begin with stating that I’ve actually moved onto “HaxeFlixel” and may end up writing a guide for that next. It’s like Flixel but with far more functionality and its updated still instead of being kind of left behind.

But even then I’m finding myself needing “moar power” and I might be switching to a genuine physics engine soon. Today we’ll talk about FlxTilemaps and how to use them! I probably won’t build a very comprehensive level with this guide but what I will do is provide you with the tools to do so yourself. The first thing we need to do is create the game state that we’ll be building this level in in the first place! This is easily done in one of two ways. I’m going to use the quickest way which is to just copy the “MenuState.as” file we made and rename the new one “VictoryRunner.as”. You can name yours anything you want. You can even be boring and name it “GameState” which seems to be popular. I don’t advise this only because it obfuscates it. What if your game has multiple gamestates? Well time to start naming them GameState2, 3, and so on… Which is dumb.

Once you pop back into FlashDevelop you should see the file on the right side. Double click and open it. Go into it and clean it up so that it looks like this:

package
{
	import org.flixel.*; //Imports flixel.
	import org.flixel.plugin.photonstorm.*; //Imports FPT.
	
	public class VictoryRunner extends FlxState //Add Flixel API to MenuState.
	{
		
		//Unassigned Variables and Embeddings are put here. They don't NEED to be but I like to keep things clean.

		
		override public function create():void //When the gamestate loads this gets called.
		{			
			FlxG.mouse.show(); //This makes the Flixel mouse visible! FlxG.mouse.hide(); hides it!
			
			
		} // end function create
		
		override public function update():void //Anytime the timers are called this part runs. More on this later!
		{
			FlxG.stage.align = '';
			super.update(); // "Updates" the game every time an action is called or anything is activated.
		} // end function update
 
	} // end class
}// end package  

Note that I changed the class from “MenuState” to VictoryRunner. If you don’t do that you are in for a bad time. Once that’s done go back to your MenuState file and make the following changes to the button:

		public function StartGame():void
		{
			FlxG.switchState(new VictoryRunner());
		}

Now if you press F5 and compile your game you’ll notice that pressing the button takes you to a black screen. That black screen is your game world! It doesn’t look like much now but we can sex it up a bit! The first thing I suggest is to add in a function to the gamestate where pressing “1” will take us back to the menu and “ESC” will reset the game. This is great for getting back to the menu when we are testing things.

But how do I do that? That’s not even related to tilemaps! I know, I’m so generous.

if (FlxG.keys.justPressed("ESCAPE")) {
					FlxG.switchState(new VictoryRunner());
						} else if (FlxG.keys.justPressed("ONE")) {
						FlxG.switchState(new MenuState());
						}

So how does this work? Pretty simple really. The game checks to see if “ESCAPE” was pressed. If that’s the case it will switch the state of your window to “VictoryRunner” which is the game. You effectively reset the game this way. I’ll explain later how to save information between resets (maybe).

The “else” is simply checking if 1 was pressed instead of Escape. You don’t NEED to do these like this but I figured it was a good chance for you to see what “else if” statements look like. If you press “ONE” (1) you’ll go back to the Menu screen. The parentheses that follow the name of the states is a field where you can pass other information. I’ve never tried it with states and for now we can just ignore it. But don’t forget to include it or the entire thing will fail to load.

Next we hit F5 to see if we succeeded! Sweet it worked! With that out of the way I’m going to change my mouse show to a hide.

FlxG.mouse.hide(); //This makes the Flixel mouse visible! FlxG.mouse.show(); shows it!

I’m doing this because now we can confirm the screen works just by hitting 1 instead of seeing the mouse. Next we should work on the tilemap because it is getting late and I am thinking I might be able to finish this before I go to bed. Because of the size of the level “1366 by 768” we have a few options. The first is that we can create an excel sheet of the CSV (Which is short for comma-separated values and is exactly what it sounds like). The second option is that we could just use a level editor. The third is we could just steal the one from the last game I made and then expand on that later. I think we’ll first try the first option and if that doesn’t fail miserably by 11 PM I’ll stick with it. Else…well…

I suppose I should show you what a CSV looks like! First as as just the text and then next as my super clever excel format.

var data:Array = new Array(
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	2,	2,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	2,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	2,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	2,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,	5,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	6,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,	4,	4,	9,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	7,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	7,	0,	0,	6,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	8,	4,	4,	9,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	2,	2,	2,	2,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	2,	2,	2,	2,	1,
		1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	1,	1,	0,	0,	0,	0,	0,	0,	0,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	1,	1,	1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	1,	1,	1,	1,	1,	1,	1,	1,	1,	0,	0,	0,	0,	0,	0,	0,	0,	0,	1,
		1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1
		);

Well that’s a damn mess! Look at all those numbers and commas! I’m having palpitations just looking at it!

exampleofCSV

Now THAT makes more sense to me. Luckily when you copy and paste to and from excel it will format properly because you can both leave newlines AND tabs in! This is why the ); is after that huge paste chunk at the top. This means that I can quickly edit the level and see my edits in the excel file. Easy to visualize and easy to do.

The color differences were all made with conditional formatting:

conditionalformatting

Be sure you leave the comma OFF of the last number. Else Flixel will be waiting for the next number (which won’t exist) and will throw a fatal error. Anyways, if we build an excel file like this that is 1366 across and 768 down that’s going to be somewhat big. But hey let’s try it. The first thing we need to do is gather up our images that’ll be used for this project. I’ve made some incredibly ugly tiles for this little project. Hopefully yours will actually…you know…tile.

leveltiles

Something to consider about these tiles is that they each have a number associated with them. Remember that that number begins at 0 like so:

leveltilesexample

You’ll note I left 0 blank. You don’t NEED to do this but it makes life much easier for us. Otherwise we’ll be putting “-1s” in certain places and then France invades Peru…Cats marry Dogs…it’s just madness. Anyways lets setup what we need to add to the script before we can load a tilemap!

Under the VictoryRunner Class (where I told you before to put embeds and variables) put the following:

private var _level:FlxTilemap; //This is the "group" or "tilemap" of the level itself!
		
[Embed(source="images/leveltiles.png")]	private var _LevelTiles:Class; //Create a class embedded with your lovely new tiles!

Pretty simple! I’ve put an underscore before the variable names just to make 100% sure they don’t impact anything that is already a variable. This is why you’d write “_background” instead of background. Something I did wrong in a previous tutorial. Also be sure to use private variables any chance you have so that you don’t have to spent eternity bug fixing when something goes wrong.

Now that you have these two lets add in the CSV for our gamestate. Even though we are using 1366 by 768 our tile sprites are 30 by 30. This means that the entire thing is only 45.53 by 25.6. Now we are working with whole integers so I’ll tell you what I’ve done to fix this problem. You can resolve it yourself by just using a number that divides into those (it doesn’t NEED to be a square, you could use rectangles).

At any rate:

var _levelCSV:Array = new Array(
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	0,	3,
			3,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	2,	3,
			3,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	1,	3
			);
			_level = new FlxTilemap(); //Level is set as a tile map.
			_level.loadMap(FlxTilemap.arrayToCSV(_levelCSV, 46), _LevelTiles, 30, 30, 0, 0, 0, 1); //CSV is comma separated values. It's just pulling from above.
			_level.x = -10; //Moves the entire tilemap 10 pixels to the left. Just an aesthetic thing.
			add(_level);

Alright so we’ve got “var _levelCSV:Array = new Array(” Which is super self explanatory. The variable “_levelCSV” is set as an array and its value is the massive CSV that we’ve generated. Really CSV is just fancy speak. “Apple, Tangerine, Grape” is a CSV. We call it that because saying “Comma Separated Value” is verbose. You COULD just call them arrays too…why people don’t just do that is beyond me. But they don’t, so I don’t. Perpetuating a cycle of obfuscation I suppose. But at least YOU know now!

We end the CSV on a 3 (without a comma) and then );.

“_level = new FlxTilemap(); //Level is set as a tile map.” Is again simple to understand. _Level is a FlxTilemap (as we noted at the top) and we are creating a fresh array with it. This, as I’ve mentioned before, is called Initializing.

Next lets fill that newly initiated variable with stuff!

_level.loadMap(FlxTilemap.arrayToCSV(_levelCSV, 46), _LevelTiles, 30, 30, 0, 0, 0, 1);

Alright lets break it down.

_level.loadmap tells Flixel to literally “load this map of values”.

Then we take that array above and convert it to a CSV (redundant much…), _levelCSV takes care of the height. 46 is our width.

The following value is asking for the images to use for this tilemap. We use our embedded image “_LevelTiles”. We then tell the game they are “30 by 30” with the two numbers following that. This way the game knows where to separate all those different sexy little images we strapped next to one another.

The next thing is asking if it should autotile. I put “0” because no, just no. If you want to use AutoTile you can read up on it yourself :). Following that it asks where is the blank sprite? Put 0, because that’s where you put yours right? You did? I like you, smart kid this one. Then it asks us where it should start DRAWING things. I put 0 again because I’m saucy but you could in theory put 1. Where is the fun in that though?

Finally it asks us where should the character start colliding? Obviously “1” because we don’t want him running into air and stopping.

Next we move the entire thing 10 pixels to the left because its not an exact fit.

“_level.x = -10; //Moves the entire tilemap 10 pixels to the left. Just an aesthetic thing.”

Finally we add it into the game:

“add(_level);”

Hit F5 and then click our level button. What do we have?

leveltilesexample

VictoryLevelTileMap

Well that looks good! So alright I actually DID finish this tonight. Next update we’ll start working on adding in our character, a background, and even some platforming. Following that I’ll show you how to add in a goal.

Honestly by now I feel like you are probably already “getting” it but if you aren’t leave a comment! I’ll gladly help.

By | 2014-06-15T23:52:03+00:00 June 15th, 2014|Journal|2 Comments