ID:114436
 
I won't have a lot of time to spend on development this week, so here's where my projects all currently stand:

A Miner Adventure

I had accumulated a decent number of bug fixes so I figured I'd post an update. The changes include:
  • Added elevator call buttons to adventure mode (where the red key is)
  • Fixed a glitch with giving credit for wins in rescue mode.
  • Fixed a problem with water mode that'd cause you to somtimes get an instant win.
  • Added a warning message to career mode notifying players that you won't get credit for finding hidden gems in multiplayer games.
  • Added some checking to reduce the amount of "Adventure game saved." messages you'll see.
  • Fixed a bug where the enter key wouldn't set focus to the chat input.
  • Fixed a bug where remote players would get a black screen when joining a game.
  • Fixed a bug where the winner in free-for-all rescue games wasn't getting credit.
Unfortunately there seems to be a BYOND bug that causes images in the top bar to not display.


Tiny Heroes

I've gotten a bit of work done. I'm trying to focus on adding elements that'll make it easier to create content. Making a new dungeon is more than making a map. I need to create the tileset for it and new mob icons for enemies. I may have to add new enemy AI. There may be new gameplay elements (ex: pressure switches on the floor) that I have to add.

Here's a video of some new enemy AI: http://www.youtube.com/watch?v=FSXVzpvnpyA



There are a lot of little details I've gotten done, but still a lot left to work on.

Completed (in part, at least):
  • Due to what I can only assume is a BYOND bug, I converted the HUD to use images instead of screen objects.
  • Added music and sound effects
  • Made enemies drop powerups that restore health/mana.
  • Made stats factor into combat
  • Added death animations for enemies (or static death states in the absence of an animation).
  • Made enemies respawn
  • Populated starting areas with NPCs.
  • Enemies with more intelligent AI.
Things I need to do:
  • Create starting areas for druids and knights.
  • Create quests.
  • Finish planning character ability sets and figure out at what level each ability is learned.
  • Add a title screen, saving/loading, character creation, etc.
  • Make interface to manage key bindings, inventory, and quests.
Once I cross a few more things off the to-do list it'll be a lot closer to playable.


Sidescroller

Chowder sent me some code to handle the arrow keys better. I don't get a lot of feedback about the libraries so I'm not sure what changes people would like to see, but if they're sending me code then maybe it's something they'd like to see added.

The code makes the left and right arrow keys "cancel" each other out. If you press left, then right, you'll move right. But if you keep holding the left arrow when you release the right arrow, you'll move left again. I didn't want to include this initially, but for a sidescroller I think this is how 99% of people will want it to work (for general pixel movement, it's not necessarily the case). This will be included in the next update.

I've been working on the pathfinding stuff again. There are really two parts to pathfinding: finding the path and following it. Initially I tried two approaches to path following:

1. Given the list of turfs that is the path, remove each turf from the list as you enter it. The first turf in the list is the turf you should move towards next.

2. Given the list of turfs that is the path, find where in the path you are but don't remove anything from the list. The next turf in the list (after your current position) is the turf you should move towards next.

The second method worked better if the mob missed a jump. When you miss the jump you might revert to an earlier place in the path. If you remove turfs from the list as you go, after you fall you'll have to find the path again. The current version on the hub uses the second method, but now I'm leaning towards the first. I'm not sure what I'll end up with.


AI Article

I wanted to write an article about creating more advanced enemy AI using the sidescroller library. My work on Tiny Heroes is giving me a lot of ideas and material for this, I just need to finalize the changes to pathfinding and polish these examples up a bit.

Pixel Movement Optimization Article

Yesterday I posted an article about how to optimize how a project uses my Pixel Movement library. It's similar to the optimization demo that comes with the library but it has expanded explanations.
Looks like fun.:)
I'm excited to see the Sidescroller library continue to improve, the left and right thing was something that bugged me. I'm currently designing a game that will utilize this library. Still working with paper and pencil though, but I will start on some systems the game will use soon. The AI article will help out immensely.
I probably won't even begin to really work on the AI article for another week or two. When I write these articles they're based on how I use the library. Be sure to keep me in the loop about your game (ex: write blog posts about it, even if you're just brainstorming) - if I can see how people are using the library I can make sure I address that in my articles too. If I don't know what kind of AI anyone else is trying to make, the article is only going to explain the kind of AI I've made (which might not help you as much).

And, as always, if you have any specific questions about using the library, you know where my forum is =)
Looking good thus far. The AI looks good, but that particular enemy seems to be quite difficult to defeat. Every time a projectile is about to hit it, it jumps. Heck, you took a ton of damage just trying to hit it once.

An AI article would be interesting, as AI is not my forte. I have never used your pixel movement library, as I use my own, but I would love to incorporate intelligent AI into my projects one day.
Thanks. I gave the enemy more health to make for a better video, it wouldn't actually take that long to kill in the game (he also made some lucky jumps, he's not always that perfect). It would have also helped if I had a melee attack =)

I'm sure it won't be useless, but I don't know how much the AI article will help if you're not using my sidescroller library. The code for the enemy in the video ends up being only ~80 lines because it relies on ~500 lines of code that are in the library.
I find your game "Tiny heroes" quite intresting.
If you want, i can make soundtracks to the game. im still a learner of FL studio, but i have been making and playing music since i was 6 so i think i can make a few cool tracks if you want.
i dont have any tracks avalable to show, but i can make one over the week if you want.
Tafe wrote:
If you want, i can make soundtracks to the game. im still a learner of FL studio, but i have been making and playing music since i was 6 so i think i can make a few cool tracks if you want.

Sure. I got the screen capture utility set up to capture audio too, so I'd at least like to have some music for the videos.
k, which type of music do you want? Typical adventure tracks? rock? action? calm and easy?
or, just tell what genre/type you want in the game :P
il do my best
Typical adventure, I guess. Or maybe calm and easy (I'll be listening to it a lot). Something that goes along with either of the videos (this one or this one) will be fine.
Cant wait to try out tiny heros!
The AI in the video was a bit predictable. I'm guessing this will be remedied when more kinds of abilities are in? It seemed like you didn't need to move around, as he would hit you when you hit him anyway. Also, I'm a bit worried about the player's ability to adapt to this kind of AI with online latency.
I plan to make some similar enemies that use different types of attacks. I'm not sure if they'll switch modes and the melee attacker will retreat a bit and start throwing spears at you. Once I get some of this done I can post a video that's a better example of how combat will be. Generally you'll be facing multiple enemies at a time.

If latency is an issue, it'll be an issue for everything - reacting to fast-paced enemies, timing tricky jumps, etc. The game won't have 40 people in one server. My plan is that you'll play by yourself and the chat system will be universal. If you want to invite a person to join you, they'll connect to your server. If every player is off doing their own thing, they still have global chat to make it feel like one big server, but they don't have the latency that would be caused by using one server.
I plan to make some similar enemies that use different types of attacks. I'm not sure if they'll switch modes and the melee attacker will retreat a bit and start throwing spears at you. Once I get some of this done I can post a video that's a better example of how combat will be. Generally you'll be facing multiple enemies at a time.

Giving the AI varied strategies is important. The AI in the video just dodged and used his dagger, which made for a pretty repetitive fight.

If latency is an issue, it'll be an issue for everything - reacting to fast-paced enemies, timing tricky jumps, etc. The game won't have 40 people in one server. My plan is that you'll play by yourself and the chat system will be universal. If you want to invite a person to join you, they'll connect to your server. If every player is off doing their own thing, they still have global chat to make it feel like one big server, but they don't have the latency that would be caused by using one server.

Ah, I figured you'll have several players in one server. Sounds good. Are you going to allow for things like PvP or item trading (are there even items in the game)?
I'm not sure how elaborate an enemy's AI will be, at least in terms of variety. Look at old platformers (mario, mega man, castlevania, etc.), the variety comes from the environment and the combinations of enemies, not so much from the enemies themselves. Still, I am looking to make some more intelligent enemies to also play up the RPG elements. I think some dungeons will have loosely defined categories: platformer, puzzle, or combat.

I haven't given much thought to PvP or items. I figure there will be items but I'm not sure if players will be allowed to trade them. I don't know where items will come from (quests? Purchased? Dropped by enemies?). I suppose I can allow for it and slap level requirements on items. If they're quest rewards (which is what I'm leaning towards) then you'll have to be a certain level to be able to get the quest anyway.

I have some ideas for pvp, but it'll really depend on how the rest of the game turns out. There are a lot of things I need to figure out before worrying about pvp.
Ok, the song will hopefully be finish by the end of the week :o
i need good inspiration u know XD And i have less time then expected.
if i get the Oral exam, i wont finish it until summer vacation :o (the 23.)
I am not entirely sure what type of music you'd be looking for. I play the piano/keyboard, although I am still learning, and recently made this. If this fits your idea musical style for your game, I could possibly come up with some more pieces.
Look at old platformers (mario, mega man, castlevania, etc.), the variety comes from the environment and the combinations of enemies,

I think this is more due to the developers wanting levels to have a 'set' way of completing them. If the AI just repeats itself a level would play out exactly the same each time you start it. This is probably because those games had very little emphasis on the combat aspect. I'd prefer seeing a more varied AI in a platformer that emphasizes combat.
I'm not saying that I won't work on the AI, I'm just saying it's not essential. Diablo 2 was all about combat and the AI was very simple. I'll have to see what the game ends up being like. I expect that the player will kill enemies quickly, so you might never even notice the intricacies of an enemy's behavior.

Still, I think there will be room for all types of enemies. Some dungeons might be full of heavily armored enemies that you can't kill, you just have to carefully avoid them. Some dungeons might send waves and waves of enemies at you, and some might have just a few, very intelligent enemies.

Calus, I'll listen to it later and let you know what I think. Thanks for posting it!
Note 'essential' is not equivalent to 'important'. Very few gameplay elements are essential. Having intelligent enemies would place your game above others. Most enemies in Diablo II had simple AI by design, but the bosses had, if I remember correctly, a more advanced one. I'm not saying there isn't room for 'stupid' enemies - to the contrary. But it doesn't mean they all should be.
Page: 1 2