Post news RSS Development Report: Aura Rewrite

The aura system has been recreated to allow for dynamic auras.

Posted by on

The upcoming capability system requires a way to change stats of surrounding units. That made dynamic auras necessary. Consider Skhorn's bagpipes that can make the surrounding Scottish troops yell. Therefore Radagast had to rewrite the aura system to support this.

It allows:

- To specify auras outsourced for easy reuse and to fulfill the single source principle.
- Entities to override an aura at any time.
- Auras that are active for a certain amount of time (extensively used by the capability system).
- Adding and removing auras on the fly.

- Multiplayer compatible.
- Not the easy way as adding and removing auras on the fly can be costly. 0BC used an high-performance algorithm.

Upcoming

Capabilities system allowing wizards and heaps of magic spells or special attack moves.
Entities playing instruments like bagpipes as envisioned by Skhorn.
Entities learning capabilities (entities teaching each other things, see also technology transfer).
Professions (making extensive use of the inventory system, i.e. entities cooperate when following their profession).
Mounted knight.
Animations.

Comments
radagastearendil Author
radagastearendil

Working on the full conversion of 0 B.C. to capabilities.

That'll make the GUI code so much easier. It's easily underestimated, the capability system will replace the crazy 0 A.D. GUI code. It works, but so static! Thousands of lines of code and every new functionality further adds heaps to it.

The early-this-year problems relating to arguments between historic_bruno and mimo (both 0AD team) play a role (and this feature argument where the majority failed to convince the minority indicates how crazily stuck gameplaywise 0AD is with their hierarchies).

Let's get rid of this crazyness of codesize and add heaps of functionality like learning capabilities at the same time.

Don't give up hope, magic philosophers will do their best to make the time machine epic - 3 new render related features are in the pipeline too!

Reply Good karma+1 vote
radagastearendil Author
radagastearendil

Almost there, professions come in soon too. Can't await watching citizen settlers learn from the blacksmith and acquire the blacksmithing capability themselves after finishing their apprentice!

Or having one recruit learn from a skilled hero how to fight special attack moves.

Reply Good karma+1 vote
Skhorn
Skhorn

What kind of professions you have in mind?

Reply Good karma Bad karma+1 vote
radagastearendil Author
radagastearendil

Having coded baker, need to add textures and anims, hunter also is an option, fighter also is a profession and more.

If leader ... or politician, everything's possible now with capabilities.

Reply Good karma+1 vote
Skhorn
Skhorn

Entities learning capabilities (entities teaching each other things, see also technology transfer). --> But all units? I mean any unit can teach whatever to another unit? Or it will have restrictions, i mean, only commanders, officers, generals or some veteran unit at that profession like the blacksmith?
It will have a limit of units in training, or this is according to the profession?
Will you add some hierarchy like, e.g: apprentice-professional-master-legendary. Where legendary is the most difficult and you can only have 1 or 2 units in it? Plus, when a unit its teaching it may add points the skill.
Just a rough thought, don't know what you have in mind.

Reply Good karma Bad karma+1 vote
radagastearendil Author
radagastearendil

Comrade, indeed only those that currently have this active profession can teach others. These then are apprentices (all coded already). Each apprentice learns by doing.

The alternate is university, also coded.

Of course predefined in entity templates is possible too (templates are templates, init data).

Number of apprentices is coded. If master has too many apprentices, then no entity must look for another entity that masters this profession.
Not yet tied to profession but we'll add it.

Yes, comrade, indeed hierarchies are already in. I mean the master knows its apprentices, it's all dynamic.

Unbelievable you know that it'll influence skill? Actually that's already coded, too. :)

If learning to bake an ice cream cake, you also learn baking. It can be specified in the capability template if it's allowed as profession or not. That's been required for aircraft pilot profession for example ...

GUI is dynamic now. We must to give up.
Just missing epic textures, 3d models and animations, art department needs our focus soon. Else our coded epicness won't be visible.

Reply Good karma+1 vote
radagastearendil Author
radagastearendil

Docs.google.com

Capabilities that are up to come.

Reply Good karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.