About this blog
Go from Obscure to Secure
Entries in this blog
I have torn my poor modules into pieces and brought them back together again as a "single game plan" (rather than a "plan to form multiple different games from assembling modules in different ways"). Doing so allowed my to get rid of a whole 4 files. Hooray! So far I've been concentrating on the menu, and making it as robust as possible. The way I see it, a game and it's menu (while obviously connected) are sort of two different things. Once I get the menu running really well, it's as simple as a call to openMenu().
And speaking of a menu running really well, so far so good! I didn't really realize how much would have to go into a robust menu! So far, this is what I have:
*Characters, items, spells, and menu options can be added and removed on the fly. The menu(s) will automatically accommodate them.
*Current menu options : Item, Magic, Equip, and Status.
*All menus are navigated with a scrolling cursor (no "type a number" here!) by using the up and down arrow keys and enter.
*All menus have an option to display "command keys", specialized for each individual menu.
*Items: Shared by all characters.
-"Basic" type can be used, anything but "Key" type can be discarded.
-Items stack if you add one you had already, and automatically decrement when used or discarded.
-Pressing left or right will cycle through displaying: # held, type, description, pow, and def.
-Sort inventory based on name, type, pow, def, or manual sorting. (Select the same sort option to reverse the sort. Each sort option preserves the last one as much as possible).
*Magic: Shared by all characters.
-"White" type can be used.
-Spells can use MP or have a set number of uses, mix and match is OK!
-Pressing left or right will cycle through displaying: cost, type, and description.
-Sort inventory based on name, type, mp cost, # of uses, or manual sorting. (Select the same sort option to reverse the sort. Each sort option preserves the last one as much as possible).
*Equip: Dynamic, the number of equip slots and what they hold is set when giving a character their initial equipment.
-Redirects to a character selection menu.
-Displays what the character has equipped currently.
-Selecting a slot displays available equipment for that slot, including the item's pow and def.
*Status: Dynamic, the number of stats and what they hold is set when creating a character. Stats can modified easily using a single call.
-Pretty simple, redirects the the character select menu and displays the selected character's stats.
When I type it out, it looks a little... lackluster ...but as with most code, there is more going on behind the scenes that I can't really accurately or concisely record here. I don't claim to be doing things elegantly, or the so called "correct way", but for now... I'm pleased.
*Actually selecting an item from the equip menu and equipping/unequipping it (thereby removing or re-adding it to the inventory).
Other Immediate Plans:
*Equipment subtypes (different kinds of weapons/armor for different classes)
*Skills (character independent, unlike magic. Related to classes and/or weapon subtypes)
*Update aesthetics (even plain text can be beautiful!)
The going is slow, but the progress is undeniable. I'll keep at it!
Thanks for reading!
Here I am.
My name is Phil Manning and I am a video game designer/programmer.
I am still unknown, and I've only been programming for a couple years, but I plan to walk this path to its end.
During all of this, I've tried my hand at some game programming, but always found myself lacking in some area.
Well no more.
I'm set to graduate in a few months, and it's time to get this DONE! Or started. Whichever.
Enough about the personal story that nobody cares about though.
On the 14th I started a C++ project that aimed to create modules that could be assembled together in any combination. The goal was to make a sort of "engine" where one could create a game (on the console) with a very small amount of effort. About a week into the projects, I found I had roped myself into circular dependencies and, just last night, I decided to abandon the "module" idea. I didn't do enough planning from the get go, and there are several things I had to do that locked the modules into a Windows system. If I'm going to make modules like that, I'd rather they not only be for a specific environment.
So modules is being pushed back, and I'm using what I have to make a Rogue-like game in the console window. I say rogue-like, but that only covers the visual style. This game will have separate battles like an RPG, along with equipment, magic, party members, stats, etc. In that sense, it's more like a simple RPG. Anyway, that's what's up for the moment. I'll be gutting and combining .h and .cpp files this afternoon, so when I actually get something to show, I'll show it. The menu is pretty much all done, but I'd jut like to get everything into it's "Normal Config".
Anyway, thanks for reading. Sorry for a long post with no payoff, but I'll have something for you within a few days!