🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

AE2

Published August 16, 2005
Advertisement
Got the object/asset allocator system bugs and issues all pretty much sorted, got Golem3D's skeletal animation system fully ported over, and re-did the impostor system a bit to make it faster. It's no longer descended from my vertex animation classes, but instead is based on static geometry. Initially, I'd had the idea to be able to mix up impostors with vertex-animated objects, so that level geometry could be either/or transparently. Well, I can still do so, but the virtuals are implemented higher up the object hierarchy, so I no longer have to do unnecessary keyframe interpolation for static impostors. It wasn't much of a performance hit, of course, but it was a hit nonetheless.

Currently, I'm now working on the state machine driving creature AIs. AI is nothing complicated; it's a Diablo-ish/Nethack-ish hack-n-slash. It doesn't need to be fancy. I've foregone the use of my typical state-machine spaghetti code, and have gone with the function-pointer based state machine stuff from GPG3, which makes things a lot nicer to fiddle with.

I've also drawn up a quick wishlist of desired level types, and assets I'll want for each level type, so I can start modelling and rendering some of the props and constructing the terrain tiles a little bit at a time.

Still haven't put a great deal of thought into the combat system; I'll probably resurrect some parts of the system from Golem 1, but strip it down to a lot fewer stats. That sucker was getting out of hand with the stats. Don't believe me? Check out the stat screen it had:



Too complicated. Thoreau would've kicked my ass for such lack of simplicity. [grin] This new system will be much simpler, trust me.

A lot of the elemental stuff may still be in there, but I at least want to hide the actual numbers from the player. The attribute "of Fire Resistance" on an object (assuming I even use such an over-used attribute descriptor) should be enough to clue the player in to the fact that he can take on fire-users without much fear, and experience should give him the rest of the information he needs to make the judgement.

I am wanting to tone down the count of monsters per level as well. In Golem 1, there were often large swarms of monsters lurking around corners, waiting to decapitate, violate or otherwise abuse the player. Much like the hordes in D2. I'd like to go with drastically fewer, yet more difficult-to-kill monsters. A more Nethack/Dungeon Crawl -ish scheme, where a single unlucky encounter can prove your character's undoing. Not only is this the style of gameplay I desire, it'll also be a lot easier on the graphics card, considering the processing involved in the skeletally animated component system. Hundreds of monsters onscreen at once could bring mid-range cards to their knees. [grin]

I've also discarded my alternate execution path for cards that are detected to not have vertex program support. It was just too messy, trying to build two branches, and especially trying to get the non-vp path to perform well. The skeletal code brought this fork to it's knees, on top of the copious buffer copying that went into rendering the blended terrain without vp's. I suppose it's not unreasonable to require vertex program support for this sort of game.

I've tentatively decided to set the game during what were called the Years of Desolation, the period of several decades immediately following the end of the war in which humans were almost totally exterminated. A lot of interesting things happened during these years, including the release of six Maugrim Lords and their darkling servants from the sealed underground city of Ture. Darklings are beings of shadow that have a peculiar effect on magic used in their vicinity, increasing the effect of chaos and unpredictability. They seek out and feed upon outcroppings of the magical crystal upon which the powers of magic are founded, making the finding of such an outcropping either a great blessing for a magic-using golem, or a terrible curse if the crystal happens to be home to a darkling. I used these creatures to great effect in Golem 1; darkling-haunted crystal mana stores became veritable magical minefields that golems navigated at their peril.
Previous Entry Stuff
Next Entry Nothing important
0 likes 4 comments

Comments

Ravuya
CSRPG2 made do with only three stats -- INT, DEX and STR. Other than that, they are completely unnecessary.

I made up for the loss of other stats (CON, etc) by means of a robust skill system in my new RPG system (which still doesn't have a game project attached to it yet). So instead of increasing CON, for example, you would increase your Environment and Survival skills. The calculations are more complicated, but designing a character is more natural than assigning values to arbitrary stats with no knowledge of what bearing they have on various actions in the gameworld.

STR, DEX and INT are fairly obvious -- they stand for hitting people with sharp objects, running away from other sharp objects, and throwing balls of fire at people. Anything more should fall under skills.
August 16, 2005 08:49 PM
rogerdv
I would be more conservative and go for a 5 stat system: st, in, dx plus some constitution or stamina and perhaps charisma for a single player rpg. For online rpg perhaps I would discard charisma.
BTW, VertexNormal, Im looking for some engine I could use for my game client. I have always followed Golem 3d, I love how it looks. It is possible to split graphical part from your game code so I can use it on mine?
August 18, 2005 09:03 AM
JTippetts
I can do away with charisma altogether, since it would never be used. Pure hack-and-slash, very little if any RPG elements. There won't be much NPC interaction at all, outside of occasional hint delivering, administering of heals and buffs, and maybe some shopping. I've never really liked intense RPGs where complex NPC interaction is required, and where charisma is a factor in those interactions.

As far as the Golem3D engine, it would be fairly easy to separate the graphical aspects from the game aspects, especially at this stage where the game is not very far advanced beyond prototype stage and I haven't had to do anything weird to the engine codebase to shoehorn 'game' into it, as is usually the case when my projects get beyond a certain level of complexity. However, I'm not really sure I want to open source it, I'll have to see how I feel later on down the line. But if you need any help architecting something similar, just let me know.
August 19, 2005 03:58 PM
rogerdv
Mi big problem is maths, so Im stucked in AI programming and sound, and I have to find somebody else to code my graphical engine if I want to implement a 3D client for my game. Never found a way to convert clicks to 3d coordinates or how to figure out the way animation works.
August 20, 2005 08:32 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement