Bold Underline- Class Underline- Class Call
Italic Underline- Enum Italic- Enum Call
Regular- Function or Variable Asterisk- Preprocessor or Constant
Sprite
Picture
Level Flag*
Tile
Sprite
Walkable
X position
Y position
Map
Array of Tiles
Width
Height
Item Effect
Heal 20-1, Heal 50-1, Heal 100-1, Heal 500-1, Heal All-1, Restore 5 Mana-1, Restore 10 Mana-1, Restore 20 Mana-1, Restore 50 Mana-1, Restore All Mana
Item
Item Effect
Name
Quantity
Character
Name
Total Hit Points
Current Hit Points
Total Mana
Current Mana
Level
Sprite
Strength
Dexterity
Intelligence
Speed
Agility
Vector of Items
X Position
Y Position
Hero
Character
Attack
Defend
Item
Experience
Magic
Monster
Character
Attack
Defend
Item
Magic
Map Person
Sprite
X Position
Y Position
Name
Menu Option
Name
Do Action
Menu
Width
Height
Vector of Menu Options
Text
Dialog
Width
Height
Name Of Talker
Text
View
Width
Height
X Position On Map
Y Position On Map
Screen
Menu
Dialog
Map
View
Map Level Flag*
Lower
Middle
Upper
Object
Person
Character
Plan for a small RPG engine
Alright, Me and my friend have started to plan for an RPG engine, and I was writing it out in Microsoft Word. I was hoping to get some feedback on wether or not I'm going about this right. Here is what I have so far. If I am missing anything in my engine, could everybody point it out? Thanks alot!
Your missing quite a bit when it comes to techincal/architecture aspects. I don't really have time to elaborate, but I'd just like to add my two cents.
Yes, I realize that, This is just the base. I will add Technical Classes and Functions as I start to expand on this. By this I mean: for instance a bitmap loader, Movement and drawing functions, and the rest of the sort.
It looks like you have all the variables defined, which is all well and good, but a lot of that is just the fluff that makes up the actual game mechanics, and not the game engine mechanics.
You need functions for blitting sprites to the screen, printing the screen, killing dead sprites, etc... etc...
On another side note however... Your Hero/Monster "subclasses" I'm going to guess they are, could both logically be derived from the generic "Character" class, rather than containing a "Character" object within their own seperate class since it would seem the only things that are different between the two is an experience variable for the player "Hero".
Also, perhaps you have good reason but, your hero and monster classes should not have item containers since the character class already contains a vector of "items" and that could get really confusing. But you don't have enough defined to really say for sure, because without the logic structure, all you have is a word document.
My two cents,
Vopisk
You need functions for blitting sprites to the screen, printing the screen, killing dead sprites, etc... etc...
On another side note however... Your Hero/Monster "subclasses" I'm going to guess they are, could both logically be derived from the generic "Character" class, rather than containing a "Character" object within their own seperate class since it would seem the only things that are different between the two is an experience variable for the player "Hero".
Also, perhaps you have good reason but, your hero and monster classes should not have item containers since the character class already contains a vector of "items" and that could get really confusing. But you don't have enough defined to really say for sure, because without the logic structure, all you have is a word document.
My two cents,
Vopisk
I notice that I didn't have a way of notating functions from variables.
The "Item" object under Hero and Monster is a function.
Another thing is that the reason Hero and Monster are seperate is because of their differences on the outside, you will see the Hero on the screen, but not the monster, the hero will have experience but not the monster, the Hero will move, but not the monster.
The "Item" object under Hero and Monster is a function.
Another thing is that the reason Hero and Monster are seperate is because of their differences on the outside, you will see the Hero on the screen, but not the monster, the hero will have experience but not the monster, the Hero will move, but not the monster.
Was the lack of notation for functions/variables due to MS Word stripping? Otherwise in the future, I'd recommend just simply putting two parantheses () at the end of a variable name to signify a function, which would have cleared up some of the confusion there.
I have to wonder though, why won't your monsters be moving? For that matter, how will you have monsters at all if you do not display them to the screen? These are all things that can be wrapped up nicely into the parent Character class and then overloaded for specific handling in child classes like hero and monster. Of course, that's my take on it and you should do what you feel is right for your game.
I could see item as being a function that acts using one of the items stored in the vector of items, but once again this is something that could be contained within the greater character class if it is a shared, common attribute since fundamentally there is no difference between a player character and a non-player character as far as game mechanics go, only the handling of such objects via either player input or game AI. Another note, you might want to consider a different structure if players will be able to access items randomly within the vector, because popping stuff out of the middle of a vector is entirely too much of a pain in my opinion.
More of my non-cents,
Vopisk
I have to wonder though, why won't your monsters be moving? For that matter, how will you have monsters at all if you do not display them to the screen? These are all things that can be wrapped up nicely into the parent Character class and then overloaded for specific handling in child classes like hero and monster. Of course, that's my take on it and you should do what you feel is right for your game.
I could see item as being a function that acts using one of the items stored in the vector of items, but once again this is something that could be contained within the greater character class if it is a shared, common attribute since fundamentally there is no difference between a player character and a non-player character as far as game mechanics go, only the handling of such objects via either player input or game AI. Another note, you might want to consider a different structure if players will be able to access items randomly within the vector, because popping stuff out of the middle of a vector is entirely too much of a pain in my opinion.
More of my non-cents,
Vopisk
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement