• Advertisement


  • Content count

  • Joined

  • Last visited

Community Reputation

144 Neutral

About smo97

  • Rank
  1. Thanks The particle effect engine is pretty simple, I just track position/velocity/acceleration of groups of particles. Transformations to velocity, color, size, etc., can occur and the particles are rendered as either solid rectangles or bitmaps. Both the 'explosions' and the fire are particle effects. For efficiency, the fire calculations are the same for every instance of the effect, but after some testing I think I can make them completely independent without creating a large CPU burden. Because they can then start and stop independently, I should be able to 'start' the fire when the effect is started and then 'extinguish' the fire shortly before the effect times out.
  2. Thanks! I hadn't seen Tibia before, it looks pretty cool.
  3. It's been quite a while since my last post. I am making progress, if slowly. Here is some of that progress. Day/night cycles. The game keeps track of time of day and, when outdoors, the ambient lighting adjusts to appropriate levels. Walking into a bed triggers sleep which will pass time. Sleep will reset spell cooldowns and recharge energy and health, but the characters' hunger continues to increase while asleep. Night falls. Animated tiles and room fade. The engine now supports animated static tiles, which should make the world feel a bit more alive. Also, when indoors, the walls get in the way. In searching for a solution I decided it was best to simply fade out the entire exterior area when entering a building or room within a building. Serialization. The engine can now serialize entities, saving state of dungeons and outdoor areas when moving between, and making it possible to save/load games. To avoid "save scumming", however, the game will only have 1 save slot per game, and saving will occur automatically when certain events occur. Compiler bugs? I don't lightly accuse my tools of being the problem, but I don't know what other conclusion to draw in this case. The problem first exhibited as some sort of heap corruption; the Marmalade system would get arbitrary read or write violations when flushing the GL buffer. I thoroughly examined every piece of code that touched the heap. I commented out large swaths of code but was having trouble correlating the absence or presence of code to the absence or presence of the bug. I searched the marmalade forums, I upgrade marmalade and uninstalled Visual Studio patches. Nothing worked. Finally, while commenting/uncommenting code trying to manually narrow down the source once again, it dawned on me that maybe it wasn't the procedural code per se but the variable declarations -- I located a rather large structure that was allocated on the stack in the top-level rendering function and moved its declaration outside the function. Boom, worked perfectly every time, the problem was gone. I never bothered to root cause the true source of the bug, but I'm pretty sure it's an issue with the VS compiler. Somehow, it was allowing the stack to collide with the heap undetected. This only happened in debug mode. The problem never occurred in release and did not occur in ARM builds (which are built with gcc). Anyways this was a huge waste of time. Ranged attacks. Unsatisfied with the idea of the game automatically choosing targets of all ranged attacks/spells/skills, I bit the bullet and implemented ranged target selection. The system allows a selection of a varying radius and maximum range. AOE Target Selection Particle effects. I really didn't want to have to draw death animations for every sprite, and I did want to implement more effects to make combat more satisfying. I realized that a particle effect engine could solve both problems very nicely. And boom goes the dynamite. Food. As the game is played, the characters become hungry. I want the gameplay focus to be on survival, as many roguelikes are. Actions have consequences, and once of those consequences is increasing hunger and the need to procure sustenance. I've implemented hunger and a (perhaps too complex) food item system. Food decays over time. Cooking can decrease decay rates and increase flavor (characters' willingness to actually eat the food). Prepared foods have different ingredient components: e.g., meat, plant, minerals. This may (eventually) affect different characters differently. Prepared foods may also have additional effects aside from just sustenance. Details of Fried Bacon item. Also note the exterior area around the room has faded out, giving a much clearer and cleaner view of the contents of the room. Misc. - I redid the font. I can't figure out where the old one came from and I think it's just a Windows font anyways. - Combat mechanics are partially implemented. Details to come in a future post. - Title screen and menu is implemented. I'm trying to come up with a good title. - My focus right now is on getting an actual game playable. It won't have a ton of content immediately, but that can be added as time goes on. - I'm going to try to make updates more frequent. Minor feature implemented? Screenshot+update. As is I was having trouble remembering everything I had done.
  4. Archer Alec - IndieGame Devlog 3: Some updates!

    I don't know if you're trying to keep it simple, but bfxr is an improved version of sfxr. http://www.bfxr.net/
  5. Quick Update - Items & Skeletons

    Thanks! One of the biggest challenges for me is to balance the necessarily simple controls and interface with the desired complexity of the game mechanics.
  6. Quick Update - Items & Skeletons

    I haven't made a lot of visible progress recently -- I've been trying to nail down combat mechanics and item/equipment UI, as well as experimenting with some random dungeon generation. I should have a substantive update ready within the next two weeks. However, since it has been a while, I thought I should post a couple of screens. Skeletons Skeletons I added some skeleton enemies. Not much else to say about that. They can hold weapons, but they aren't. Items Decisions, decisions... I really want to have a huge variety of cool loot, both randomly generated and pre-fabricated, so the item structure is fairly complex and versatile. This screen is part mock-up: the purple-ish computed damage values are fake (hence them both being the same for different base damages). The item value is also fake because I forgot to put it into the item structure. The rest come from the item definition. Items can be picked up off the ground (presumably after being dropped by enemies). Items can also sit on top of tables and other static items, and be picked up from there as well. The party shares one inventory rather than micro-manage who carries what. Items can be equipped from inventory into item slots. This screen is the result of attempting to equip the unique sword while the common sword is equipped. Once the equipment UI is nailed down, and the combat mechanics fully implemented, I'll have another update showing the full equipment UI and explaining the combat mechanics in detail.
  7. Video time!

    Very slick.
  8. I'm trying to write it for tablets so that the UI elements that overlay the gameplay will draw outside that, in their own windows, or you could set it to simply scale everything up. The primary target is phones, though.
  9. Thanks guys! The frozen creatures thaw after a set number of frames, though I do suppose any fire-type spells cast on them would unfreeze them, which could have some tactical implications.
  10. Spells and status effects. I finally got around to allowing the player to manually activate skills/spells. There are up to two rows of buttons across the bottom 5/6 of the screen that show the current selected character's skills. The appearance is not yet finalized, but the basic information is there: if the skill is available for use (enough mana/cooldown/reagants), the buttons are outlined. Otherwise, a pie animation (and numbers) show the number of frames remaining for the cooldown to expire. I took special care that dragging (swiping) across the buttons does nothing; the player has to specifically tap a button to use the skill. This prevents accidental use while trying to move the character. Spell buttons with cooldown remaining. Also, some frozen snakes. I added a new spell: freeze. As you can probably guess from the picture, this freezes the target in a block of ice, paralyzing it for a certain number of frames. The target is still vulnerable to damage, and in fact, has a small chance to be shattered from melee damage while frozen. Special attack effects. Had to get this from a video due to my poor reflexes. It is also possible for the snakes to poison the player's characters. The poison does a small amount of damage randomly over time, until it wears off (randomly). I plan to make a lot of these currently random or arbitrary numbers (poison damage, duration, ability to be frozen, shatter chance, etc.) dependent on stats and resists, when those are implemented. I do promise there will be no boss monsters that are simply "Immune!" to spells for no logical in-game reason, because that's dumb. NPC conversation UI. I started working out the UI and mechanics for NPC conversations. Like the rest of the game, nothing revolutionary here. Standard dialog tree/state machine based conversations. Since it's just me working on the project, I'm not going to waste any time writing a scripting system or anything. Everything will be done in C with macros and simply compiled into the executable. This will also make it easier to wire (hack) in special cases for conversation choices triggering other things happening in the game. Preliminary UI for NPC conversations. Right now, NPCs just stand around, but I eventually plan to add schedules. New tileset. I've also been busy working on a lot of new tiles; I really want a lot of varied environments to explore. Here's one that's turning out pretty well, I think. Guess the game that inspired this one for 10 points. Thanks for reading (or just looking at the pictures)!
  11. Fixes and features

    Very cool.
  12. How To Implement Graphical Feedback?

    My compromise between action & turn based is to have each action take a fixed number of frames, where effectively, a frame is a turn. This way, concurrent actions interleave well. Each entity (player, monster, projectile, etc.) has a state that transitions each time a frame elapses. Action pauses for input when any player controlled units are in an idle state. And because actions take multiple frames, you get for free the ability to do things like pre-emptively dodge attacks or interrupt spellcasting.
  13. Normals

    That is an awesome editor.
  14. Character classes and dungeons.

    Yup, I'm using Marmalade, which abstracts a lot of platform specific stuff and lets you write in C or C++. Originally I started using it because it was cheaper than a mac, but there is a lot of portability you get for free. I have it running on an ipod touch and kindle fire right now, and only need to compensate for screen size differences.
  15. Preliminary gameplay video.

    Yeah, I certainly see the appeal of 3d with respect to animation, though the learning curve is steep I can imagine it becomes easy to start cranking out assets. This pixel art can get .. tedious. And I'm being pretty lazy with only a few frames of animation.
  • Advertisement