Friday, November 22, 2013

Dungeon Diving 7

Here's a comparison of my the possible views:


Topleft: "expanded" room
Topright: normal room
Bottomleft: "expanded" room, more top-down view
Bottomright: normal room, more top-down view


Taking opinions on what looks the best. The rooms will eventually be decorated more...

-J

Wednesday, November 20, 2013

Dungeon Diving 6

Latest Build: Latest

New features;
Camera pans around when a battle initiates
Stats ported over (or slowly ported over) to a more comprehensive system:
POW - attack damage modifier
DEF - damage reduction modifier
SPD - ability speedup modifier
LCK - Critical/luck modifier

Health will not be controlled by a stat, and rather only by skills/level/permanent upgrades

This will likely be my last update for awhile -- not because I won't be working on it, but because I'm going to start the (long) process of adding equipment/skills/enemies to try and make a decently playable dungeon. I don't want to update mid-process (unless just to talk about my current findings) because there's a 90% chance it's gonna suck until it's right

-J

Tuesday, November 12, 2013

Dungeon Diving 5

Do not fret I'm still alive!
Latest Build

First, my apologies: I took about the last two weeks (some 60 hours of in-game time) to play/beat Persona 4 (which I highly recommend). I might still go back for the platinum trophy, but right now I'm back with my nose to the grindstone on Dungeonsomethingorother.

The first big thing of the week is sort of defining a scope. Scopes are important (especially to an indie developer):
#1 To make projects lean. I'm a firm believer that less is more in video games. You set out with a goal for your game, and you want to accomplish that goal to a satisfactory point in as little features as possible. This makes you emphasize the GOOD features, rather than a dozen mediocre features.
#2 Scope creep makes finishing projects MUCH more difficult, and it's important to set goals and accomplish them. An unfinished game is just as worthless as a game that was never started. So to help that ultimate goal of releasing a game, it's important you set clear boundaries for what you must do to make that happen.

For this game, the focus is on a roguelike design (random content generation, punishing deaths) but with an RPG twist. Characters will learn better skills as they progress, and these skills will help them progress further. Your toolbox of skills you bring into the dungeon is what's ultimately going to dictate how well you do, and collecting as many tools for your toolbox is going to be vital for your success.

With that, here's my current outline:
--Characters when they are defeated in the dungeon will restart from the beginning. They'll lose all their gear they collected, and possibly all of their money as well after they've been given the opportunity to buy upgrades.
--Characters may find skills in the dungeon, buy them outside of the dungeon, or learn them from leveling up.
--Characters will level up, and in doing so receive a health boost, a stat point or two, and possibly new skills
--The only gear slots will be weapon/offhand/armor. Warrior's offhand will be a shield, Mage's will be a tome that'll reward skills and stat points, and a rogue will get a second weapon (etc). You'll find more gear in the dungeon, but you'll likely be able to buy "base gear" (which will always persist over your character), and "entry gear" (that can only be used on the upcoming run).
--Stats will be some combination of brawn/intelligence/dexterity/luck. Brawn will be used for your "non-sp" attack damage, intelligence for your skill damage, dexterity for skill cooldown reducing, and luck for crits/better drops.

I'm gonna start with just one dungeon, and go from there. The goal will eventually be to have more, but I want to get one that progresses like I plan in my head.



As for build updates:
--The UI is quite functional now, you can find/equip gear and they can have tooltips
--Chests now fade away after being looted
--Code was cleaned up quite a bit. Still a lot to go, but it'll be easier to understand down the line
--Minimap completely redone and much easier to expand upon now
--Damage numbers over the player/enemy's head when they're injured
--Stats/Experience/Levels in, although real formulas haven't been designed yet


That's all for now!

Wednesday, October 16, 2013

Dungeon Diving 4

http://johnakerson.acoders.com/latestbuild.html

New UI is in!
Inventory is in!
Experience gain is in! (But not leveling up)
Chest dialogue boxes are in!
iPhone (pre-5/5s) resolution size in!


Next step: possibly real loot??

-J

Saturday, October 12, 2013

Dungeon Diving 3

http://johnakerson.acoders.com/latestbuild.html

Ahh so much has progressed! There's now a fully functional combat system in place for both the player and the enemies (sorry for the lack of interesting skills!). I programmed in a 'rage' bar, which will be the resource management system used by the warrior-type class where the resources build up from standard attacks and you can unleash them on your enemies later on.

I added the ability for the game to create "hallways" to spice it up a bit. They still function as rooms, but with a wall knocked out. One day I want to get better decor randomization in place, but that's not really that important I think. One thing I WOULD like is for the system to be able to create corridors, rooms 3 long and straight that branch off. Dungeon generation is actually the coolest part of the system so far, I generate the blueprints for a room and then I throw it into a factory function that chugs out the room and then I drop it into place.

I also have a working back-end for an inventory system with the ability to specify items as stackable (although the user interface isn't implemented yet, so you can't see anything).

Finally, there's a dialogue system! So now you can see what was really in that chest you just opened. Completely dynamic on my part, I specify the picture and the text and the system takes care of the rest.

Until next time!

-J

Wednesday, October 2, 2013

Dungeon Diving 3

http://johnakerson.acoders.com/latestbuild.html

Preliminary combat is in!! More of a proof of concept at this point -- I went 180 on how I wanted to handle it, but I like this system the best so far. Here's the low-down:

-Each character will be able to learn a variety of skills, but each time you enter the dungeon you'll only be able to take a handful of them. There will be a huge emphasis on making sure you have the right skills and build for the job.

-Skills have a cooldown and a cost. Your class will determine the resource management system that you use. The skills can only be used as often as the cooldown allows, pending you have the resources to use them. This means you'll be clicking nonstop until things are dead! Who doesn't love that.

More to come in the near future, like mobs attacking you back. That's kind of important.

-J

Tuesday, September 10, 2013

Dungeon Diving 2

http://johnakerson.acoders.com/latestbuild.html

Updated with some fancy lighting (and light sources), as well as some randomness to the level generation to make the rooms feel unique.

There actually is a lot of difficulty in making randomness not look so random. What I mean is, in a truely random situation it's totally normal to see something repeated 3 times in a row. But in a random level generator, this is actually a bad thing because, visually, you're not trying to make something random so much as you are trying to make it not repetitious. And believe it or not they're QUITE different. So the last few days I've been going through and every time I see something that looks peculiar, I write in some code to prevent it from happening. The result is a bit of spaghetti code, but there's no reason to prematurely optimize it, especially when I'm the only one working on it.

But all-in-all, I'm pretty happy with where the generator's at. The only issue I still have open is the fact that "junk" can form under a chest, but the code involved in making that not happen isn't worth the effort at the moment. So hopefully it doesn't bug anyone else too much (:

Next stop: combat! Should be interesting, and hopefully fun. If not for me, at least for the player (:

-J