Saturday, April 3, 2010
Testing and Debugging
The last time I used trace to find a problem (in my main project anyway) was during the hitTest on the notes. Patrick helped me write an efficient and working code, but I needed to troubleshoot it later. Mostly because I didn't fully understand it when he wrote it in class, and I was working on my project outside of class. Anyway, I was having trouble calculating a hitTest between two different movieclips from within several instances of a single movieclip. I believe I eventually used global variables to get things working, but I used a trace command in my hitTest so that I could easily tell when I had things working properly. Then I just tweaked until my trace began running.
Coding Enemies
In this assignment, we learned to use math statements and mouse co-ordinates to make an enemy character follow the mouse cursor or another character. It was odd at first, because we were using a completely new list of commands and statements we'd never touched on before but it didn't take long to get used to them.
Platforms
This one was a long and tricky day in class. Yet again, not relevant to my game but a necessary skill indeed.
Running, Jumping, etc.
Again, something that isn't very integral to my game. As a fairly standard rhythm game, my game doesn't have any characters moving or jumping or any other such nonsense... But still a fun, interesting, and helpful day in class.
Drag and Drop
Honestly, I enjoyed the drag and drop tutorial greatly, and had a great time putting my own spin on the kirupa project we used, but I don't have any plans of using drag and drop features anywhere in my game at this time.
Character Effects
The main way character effects will be used in my game, is to signify that notes have either been hit or missed. This will happen via use of "._alpha" as the note's alpha will reduce to 0 if it has been hit. Should the player miss the note, its value will remain at 100.
Other uses for character effects may arise at a later time.
Other uses for character effects may arise at a later time.
Wednesday, March 3, 2010
Timer
...I'll keep this short and sweet. I hate Timers... I cannot make the code kirupa.com. actionscript.org, or the majority of the rest of users APPARENTLY use, work. I am Agent Smith and they are Neo. I am Joker and they are Batman. They drop in to piss me off whenever they get the chance and F?%! up my fiendish schemes... In the Actionscript world, they're my mortal enemy; In an RPG, I'd PVP them (and LOSE!); In reality, I'd play Manhunt with them...
End of story...
End of story...
Sound Effects
My game is about music, so likewise there will be lots and lots of audio. As far as actual sound effects such as dings or other such notifications on hitTests, not so much.
I'd say they're an integral part of my game, but not in a highly dynamic way.
I'd say they're an integral part of my game, but not in a highly dynamic way.
Preloader
I did a noire slideshow for this assignment. Lots of black and white, with vintage American film stylings from the 30's and 40's cast onto current era photos. The outcome was quite nice, I believe...
In relation to my game, there is no way around a Preloader. I plan on much music, 3 or 4 full length tracks at the least, before developement can truly be considered "complete." That's probably around 12 - 15 minutes of music. The average 3-minute MP3 is around 3.7MB. At that rate, that is 14.8 - 15 MegaBytes at best JUST in audio files. Yep, gonna need a Preloader...
In relation to my game, there is no way around a Preloader. I plan on much music, 3 or 4 full length tracks at the least, before developement can truly be considered "complete." That's probably around 12 - 15 minutes of music. The average 3-minute MP3 is around 3.7MB. At that rate, that is 14.8 - 15 MegaBytes at best JUST in audio files. Yep, gonna need a Preloader...
Tuesday, March 2, 2010
Collision Detection
I posted up a quirky little maze/fantasy game called Kingdom Was... for this assignment. Sadly, just like in the AAA gaming industry, I happened to release around the same time as another company/person who put a lot more time and effort into theirs and put out a higher quality product, aka. Bagh Nakh Kora (Ben) with Miken the Troll King.
As far as my main game, this is another core element. The game needs to know whether or not the player is hitting the notes on-time, so it can calculate score and determine the player's end rating.
As far as my main game, this is another core element. The game needs to know whether or not the player is hitting the notes on-time, so it can calculate score and determine the player's end rating.
Score Keeping
Another core component to my game's gameplay. Each note is worth a certain amount of points, the player's total points at the end determining his/her rating at the end of the stage. With my current Actionscript, though, there is emphasis on how fast you can release the note, as well as hitting the note in the first place. The game's quite harsh about its hitTests and how strict the scoring zones are.
Scrolling Background
This was a fun and interesting excersise, for what it was. Not really a requirement for my game, but its still good to know how to do it, and do it correctly. I had fun "overkilling" the assignment in class, with 3rd dimensional props and a detailed expansive mountainous range in the background... That scrolled...
Special Effects
My game (currently, in its current alpha stage) requires the use of heavy alpha manipulation as a defining factor within most (if not ALL) of my hitTest statements, which are a core gameplay component and cause the game to work correctly.
Its planned to have a rustling crowd animation in the background and possibly some other visual flair added to the game through special effects.
Its planned to have a rustling crowd animation in the background and possibly some other visual flair added to the game through special effects.
Moving on a Path
This excersise is a great bound toward the completion of my game, because all my notes use it. The notes make up the entirety of the gameplay, as the gameplay is based completely around their location. It's a rhythm game, you need to hit your notes in the correct rhythm... And to do that, they need to move on a path.
Navigating The Timeline
My worst coding issue was probably the sound on my current Fretz alpha demo. I needed the sound to play through as a whole but on only one frame, and I constantly ran into both sound clipping looping (sound began once per frame at 30 FPS, deteriorating into an ear scalding aggressive white noise static in about 2 real-time seconds) and the sound refusing to stop (running from then on, despite whether the player was viewing their rating or had returned to the main menu).
I eventually fixed this with an Actionscript statement that addresses Flash's internal sound mixer and stops everything. It's on all the rating frames/scenes, which are not skippable.
I eventually fixed this with an Actionscript statement that addresses Flash's internal sound mixer and stops everything. It's on all the rating frames/scenes, which are not skippable.
Finding Solutions
Generally, finding solutions, for me, involes several minutes of googling and then a few copy/pastes. This isn't to say I don't learn much, but its how I initially solve my problems. Sometimes kirupa.com is absolutely no help. Being told over and over and over that I'm a Masta Flash Programma is just gimmicky and proves to piss me off when I'm frustrated and in search of answers. But its a nice alternative to the endless sea of no-clue hobbyists who like to step in on message boards with their "advice" and make things MUCH MUCH WORSE.
There is one thing that was NEVER covered in class, or on the wiki, which is this little gem that I found through personal experience and much trial and error... During the "if" part of if statements, "=" works consequently, like it would as a straight up statement. It takes "==" to say "if this equals 4, then that explodes." Like so...
if (yellow = true){
score += 5;
}
says "Yellow equals true." Whilst what you're really looking for is...
if (yellow == true){
score += 5;
}
Which says "If yellow equals true, blah blah blah..."
Just a fun little tidbit, Ben's surpassed me at this seemingly overnight and I corrected him on that the other day. Fun stuff...
There is one thing that was NEVER covered in class, or on the wiki, which is this little gem that I found through personal experience and much trial and error... During the "if" part of if statements, "=" works consequently, like it would as a straight up statement. It takes "==" to say "if this equals 4, then that explodes." Like so...
if (yellow = true){
score += 5;
}
says "Yellow equals true." Whilst what you're really looking for is...
if (yellow == true){
score += 5;
}
Which says "If yellow equals true, blah blah blah..."
Just a fun little tidbit, Ben's surpassed me at this seemingly overnight and I corrected him on that the other day. Fun stuff...
Learning from Others
I didn't have much difficulty with this one. Minus a few rough patches, this is generally an easy course and concept. Typically, if and when I join together files, it really depends how much I want to take from one file to another. I just copy/paste movieclips because they seem to take care of themselves this way, but more complex things like multiple scenes, and the Actionscript behind those scenes, I copy/paste the actual frame into my timeline and disect them there. I generally like to keep things seperate, but within the same .fla.
Subscribe to:
Posts (Atom)
