Page 1 of 2

Unit Structure Data

Posted: Mon Jun 27, 2011 9:59 pm
by Alexandra
Hi People, I finished the most dificult and first example unit data structure for age of war.

I attached a zip file with both a html version and my excel workbook that shows all unit data.
The html file cant be edited but is for the people who don't have excel to see the worksheet

Any questions and comments are welcome and this is very complex but required to reach a perfect game.
My next target is the terrain data structure

Re: Unit Structure Data

Posted: Tue Jun 28, 2011 3:08 am
by blejdaq
It looks quite complex, seems you have thought of many unit aspects. But it's too messy in this form. At first objects must be divided into categories whose share similiar properties. For example:

Code: Select all

                           Object
                         /        \
            TerrainOverlay         \
                                 Hittable
                  TerrainObject_/ /  \  \__ Machinery
                                 /    \     
                          Living       Building
                         /   \          |      \
                        /     \         |       \
                   Animal    Humanoid  Garisson  Production
                             /      \         
                            /        \
                      Villager     Soldier


Every category inherits properties from its parent. Properties can be divided to realtime and declaring. For example Hittable contains:
- declaring properties:
    MAX_HP
    DEFENSE_CLASS
- realtime properties:
    HP
So everything that has association with the Hittable aspect (being able to receive damage).

So..when this tree of categories is more or less productive, you can divide your properties (those are the declaring properties) according to it. I think it will be far more clear.

Re: Unit Structure Data

Posted: Tue Jun 28, 2011 2:00 pm
by Alexandra
You mean creating somesort of unit types system afterall, this is extremely complex for me but I guess you want some options that will enable other parts of the data file if you set yes, so if you set for example "HUMAN=1" then all other areas belonging to that type will follow, if "HUMAN=0" no further info will follow?

Ill try but that will be extremely hard, btw can you remove the limit of making posts because I can't upload other files because of it as waiting 2 hours for each post is extremely long

Re: Unit Structure Data

Posted: Tue Jun 28, 2011 10:07 pm
by blejdaq
Alexandra wrote: btw can you remove the limit of making posts because I can't upload other files because of it as waiting 2 hours for each post is extremely long


The delay is set to 15 seconds so probably something with the forum went wrong. Anyway i disabled the flood check for you. Try to flood now :)

Re: Unit Structure Data

Posted: Tue Jun 28, 2011 10:09 pm
by blejdaq
Alexandra wrote:You mean creating somesort of unit types system afterall, this is extremely complex for me but I guess you want some options that will enable other parts of the data file if you set yes, so if you set for example "HUMAN=1" then all other areas belonging to that type will follow, if "HUMAN=0" no further info will follow?


Yes, something like that...if you will be defining a champion for example then the ingenie will know that this unit you're declaring is of Soldier class and will look for the properties belonging to Soldier, Humanoid, Living, Hittable classes:

Code: Select all

[champion]
class = Soldier

// Object properties
UNIT_ID =
INT_NAME =

// Hittable properties
MAX_HP =
DEFENSE_CLASS =

// Living properties
MOVEMENT_SPEED =

// Humanoid properties
MUTINY_NO_FOOD =

// Soldier properties
UNIT_CLASS =



And the task is to categorize the properties you have chosen so they fit this tree and maybe adjust this tree if required.

Re: Unit Structure Data

Posted: Wed Jun 29, 2011 12:02 am
by Alexandra
That will be pretty hard todo but I think it's doable
First categorize all data and then you can add somesort of yes/no system which will activate parts of the datafile if that's what you mean, example:

HUMANOID = 1
"all humanoid stats"

But there are also some important data like Unit id, unit name etc, these could be in a headerfile

Re: Unit Structure Data

Posted: Wed Jun 29, 2011 12:06 am
by blejdaq
Ok..what does the Unit ID mean?

Re: Unit Structure Data

Posted: Wed Jun 29, 2011 12:08 am
by Alexandra
It's a Unique number given to each unit so the game can recognize it.

Some examples:
41 Villager - Male
67 Militia
107 Barracks
211 Knight

Each unit got an id, it's used to point to things in the game, scenarios, datafile itself and more

Re: Unit Structure Data

Posted: Wed Jun 29, 2011 1:16 am
by Alexandra
anyways later on im planning to finish:
> Sound Slot Data
> Graphic Slot Data
> Techage Slot Data
> Technology Slot Data
> Unit Abilities

There are also lists with tributes to be worked out like:
> Unit Classes
> Game Buttons
> Game Resources
> Techage Resources
> Terrains List
> Terrain Restrictions, but note I need alot of your decisions to be made in there. Each terrain restriction slot will define a group of terrains to be accessible or not, groups must be made on terrain restrictions like ships, foot soldiers, animals, buildings, etc.
> Unit ability type

and probably alot more if the game progresses

Re: Unit Structure Data

Posted: Wed Jun 29, 2011 2:13 am
by blejdaq
So i estimated it good when i put it into Object category which is ancestor for all objects. It means every class will inherit it. But i don't think it's good (for example) to call a building a unit. What about object_type instead of UNIT_ID? And object_id will be the unique identifier (realtime property) amongs all the objects in entire game.

„Na světě je zavedeno, že spousta hloupých si hraje na chytré. Z chytrých, kterých je na světě nedostatek, jen ti nejchytřejší si hrají na hloupé.“ Jan Werich