Combat Write Up - Rev 1

Published April 16, 2007
Advertisement
Its been a while. I've been doing lots on the game dev side. I just haven't had much time to post due to helping my wife start her own business and getting ready to go back to school. This post is going to be mostly a cut and paste from some of my design document. But it should give a good idea where I'm going with the game. Right now my goal is to make a test bed with a simple map and random battles. Then I will add more features later. Like shops and towns. The game has changed from a side scroller to a top down view to simplify development of the combat prototype.

This is the initial writeup for how the combat system will work in my game and is subject to suggestions and change.

----------------------------------------------------
Character Stats
----------------------------------------------------
Hit Points
Ability Points
Melee
Ranged
Magic

----------------------------------------------------
Levels
----------------------------------------------------
The level cap is unlimited
The character gains three skill points every level
The character gains one specialty point every 5 levels.
The equation for the next level is PrevLevel + CurrentLevel * 100
Experience is reset to 0 when you level.
Experience does not over flow into next level.

IE.

Bob has 99/100 xp. Bob gains 10 xp. Bob would level to lvl 2 and his XP would be set to 0 not 9.

-----------------------------------------------------
Combat
-----------------------------------------------------
Combat is turn based. The combat order is randomly decided at the beginning of combat. Each combatant is able to make one action per turn. Until all of the opposing combatants are dead.

-----------------------------------------------------
Character Death
-----------------------------------------------------
The character will loose 10% of current xp. The character can not level down.

-----------------------------------------------------
Specialties
-----------------------------------------------------
The way the character gains abilities beyond the basic attack ability is through specialties. It takes 1 point to unlock a specialty and 1 point to unlock additional skills under that specialty. Some specialties may have masteries that would let the character gain further skills once the Character has gained all the base skills under that specialty. Mastery skills cost 2 specialty points.

IE.

Specialty Holy Magic:
* Heal
* Cure
* Bless
* Smite
* Group Heal

Holy Magic Mastery Undead:
* Exorcism
* Holy Water Grenade
* Turn Undead

This is the sample lua script for setting up the specialties and masteries.
--------------------------------------------------------------------- An Example Data File for laying out Specialties and Masteries ------------------------------------------------------------------------------------------------------------------------------------------ Data Available to define abilities with----------------------------------------------------------------------- Specialty-- * LongName-- * Discription-- * MinLevel-- * Register()---- Mastery-- * Specialty-- * LongName-- * Description-- * MinLevel-- * MinRank-- * Register()---- Ability-- * Specialty-- * Mastery-- * Rank-- * LongName-- * Description-- * MinLevel-- * Use(Target,ActionType) IE. Targets could be Friendly, Hostile,--                          Undead, Add AOE to the end of any --                          Target to make the ability AOE.--							Action Types would be Damage, Heal,--							Buff, and RemoveBuff-- * RangeMin-- * RangeMax-- * Buff-- * BuffType-- * Register()---- Buff-- * LongName-- * Description-- * Stats-- * Turns-- * Duration-- * RangeMax-- * RangeMin-- * Type(Type) ------------------------------------------------------------------------------------------------------------------------------------------ Specialty Holy Magic:-- * Heal -- * Cleanse-- * Bless-- * Smite-- * Group Heal---------------------------------------------------------------------------------------------------------------------------------------- Set Up Holy Specialty -------------------------------------------------------------------------------------------------------------Holy = newSpecialty()Holy.MinLevel = 1Holy.Register()--------------------------------------------------------------------- Set up Heal Ability --------------------------------------------------------------------------------------------------------------Heal = newAbility()Heal.Specialty = "Holy"Heal.Rank = 1Heal.Use("Friendly","Heal")Heal.Use("Undead","Damage")Heal.RangeMin = 5Heal.RangeMax = 10Heal.Register()--------------------------------------------------------------------- Set up Cleanse Ability -----------------------------------------------------------------------------------------------------------Cleanse = newAbility()Cleanse.Specialty = "Holy"Cleanse.Rank = 2Cleanse.Use("Friendly","RemoveBuff")Cleanse.BuffType = "Bad"Cleanse.Register()--------------------------------------------------------------------- Set up Bless Ability --------------------------------------------------------------------------------------------------------------Bless = newAbility()Bless.Specialty = "Holy"Bless.Rank = 3Bless.Use("Friendly","Buff")Bless.Buff.Stats.Melee	= 1Bless.Buff.Stats.Ranged = 1Bless.Buff.Stats.Magic	= 1Bless.Buff.Duration		= 5Bless.Buff.Type("Good")Bless.Buff.Type("Holy")Bless.Register()--------------------------------------------------------------------- Set up Smite Ability --------------------------------------------------------------------------------------------------------------Smite = newAbility()Smite.Specialty = "Holy"Smite.Rank = 4Smite.Use("Hostile","Damage")Smite.RangeMin = 5Smite.RangeMax = 10Smite.Register()--------------------------------------------------------------------- Set up Group Heal Ability ---------------------------------------------------------------------------------------------------------GroupHeal = newAbility()GroupHeal.Specialty = "Holy"GroupHeal.Rank = 5GroupHeal.Use("FriendlyAOE","Heal")GroupHeal.RangeMin = 5GroupHeal.RangeMax = 10GroupHeal.Register()--------------------------------------------------------------------- Mastery Undead:-- * Exorcism-- * Holy Water Grenade-- * Turn Undead---------------------------------------------------------------------------------------------------------------------------------------- Set up Undead Mastery -------------------------------------------------------------------------------------------------------------Undead = newMastery()Undead.MinRank = 5Undead.Specialty = "Holy"Undead.Register()--------------------------------------------------------------------- Set up Exorsism Ablility ----------------------------------------------------------------------------------------------------------Exorsism = newAbility()Exorsism.Mastery = "Undead"Exorsism.Rank = 1Exorsism.Use("Undead","Damage")Exorsism.RangeMin = 10Exorsism.RangeMax = 12Exorsism.Register()--------------------------------------------------------------------- Set up Holy Water Grenade ---------------------------------------------------------------------------------------------------------HolyWaterGrenade = newAbility()HolyWaterGrenade.Mastery = "Undead"HolyWaterGrenade.Rank = 2HolyWaterGrenade.Use("UndeadAOE","Damage")HolyWaterGrenade.RangeMin = 7HolyWaterGrenade.RangeMax = 10HolyWaterGrenade.Register()--------------------------------------------------------------------- Set up Turn Undead ----------------------------------------------------------------------------------------------------------------TurnUndead = newAbility()TurnUndead.Master = "Undead"TurnUndead.Rank = 3TurnUndead.Use("Undead","Buff")TurnUndead.Buff.Turns = -1TurnUndead.Register()

Previous Entry Screeny Power!
Next Entry Education
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement

Latest Entries

Education

1014 views

Screeny Power!

857 views

Level Editor

902 views

Happy New Year

786 views

X-Mas

826 views

(OO)

724 views

Another Screeny

685 views
Advertisement