Posts tagged Cutscenes
I was rather unproductive this week, thinking about what I was going to do and not getting around to it. I also had a lot of paperwork to take care of due to a new job that I will be starting in the Spring, so that left me not wanting to do much else. But! Now this the time for action, because I definitely don’t want to be left with a bunch of work to do when I have to start a full-time job! So, here is my basic rundown of stuff that I want to have accomplished by the end of this sprint:
- First, smooth out the two enemies I created and add an animation for the one that currently doesn’t have one
- Fix a bug wherein the flying enemy falls to the ground (has to be a simple logic error)
- Actually, I just looked at the code and that stupid bug was because I had already set up a timer which tells the enemy when to attack, but never actually implemented attacking, so a nice block of nothing was getting executed after a certain amount of time
- Player-controlled light or enemy-controlled light? I guess player-controlled would be the more “fun” one, so I’d be a fool not to do it. Mouse used to point in certain directions, or else arrow keys
- Player sprite! This can’t be put off any longer, the player needs to look like something or there isn’t a game
- Add new lights, this should be easy, just need to do it.
- Expand the levels, throw in more enemies
- I’m still debating this one, but a way to write messages to the screen, and have NPCs to talk to? This seems like it could be helpful for content, and also for future projects, but at the same time I kind of want to avoid it. Need to think more about this.
- Create a cutscene. Really want to do this, but if it doesn’t work out I’d be okay dropping it
So that’s a good list to work with I think. Really need to have something for people to play. And in the meantime I will try to get this thing running on foreign machines; I want to be present for the process so that I know exactly what end users have to go through.
NOTE: For better or worse, the following is a bit of a live development journal of working with the flying enemy that dives at you.
I just was working on the flying enemy that is supposed to dive at you, and implementing the attack method the first try he flew up instead of down at you, and the second try he just got onto me really fast and shoved me against a wall. Pretty brutal, pretty awesome actually, but I think it was most awesome because it was so surprising to me. Man, just tried it again and if you jump, the thing pins you to a wall and you slowly slide down it together while it’s pushing you against it. So awesome! However, now it’s very clear that I need a way to know when the player has been successfully attacked. Sounds like more collision subscription to me! Of course that would be the case.
Yep! I just got done adding a new class to allow game objects to play audio, using the helpful information here. I’m using XACT to manage all of my audio files, so I created an initial Wave Bank and Sound Bank and instantiate those with the AudioEngine class, and then just take requests from other objects when they want sounds to be played. For now, I’ve allowed my map files to have a “BackgroundTrack” property defining the name of a background track to play for the map, and it’s the sound of rain to go along with the rain particle effect that I’m using in the current demo.
So it’s great that all that’s figured out. The next thing I need to do soundwise is figure out how to have so-called “3D Sound,” but in my 2D environment, so that as the player gets closer to certain sound-making objects the audio for them gets louder. I realize now that the “dynamic audio” I had in mind is not exactly difficult, because I can just play sound whenever I want with any object; all they need to do is request the correct sound be played at the correct time. I’ll probably move on to other functionality for now, because at the moment I just wanted to make sure that I could create a basic Audio class and be able to play sounds or background tracks with it.
The real next step is going to be integrating a configuration library I found called EasyConfig, which will let me define configuration files easily and intuitively. After that’s done, I’m going to move on to either creating a MovingPlatformComponent that moves between a list of points at a given speed, or creating a simple way for me to script basic cutscenes so that I can create the opening sequence for Ne+.