mirror of
https://github.com/vcmi/vcmi.git
synced 2024-11-24 08:32:34 +02:00
173 lines
3.0 KiB
Markdown
173 lines
3.0 KiB
Markdown
< [Documentation](../Readme.md) / [Modding](Readme.md) / Building Bonuses
|
|
|
|
Work-in-progress page do describe all bonuses provided by town buildings
|
|
for future configuration.
|
|
|
|
TODO: This page is outdated and may not represent VCMI 1.3 state
|
|
|
|
## unique buildings
|
|
|
|
Hardcoded functionalities, selectable but not configurable. In future
|
|
should be moved to scripting.
|
|
|
|
Includes:
|
|
|
|
- mystic pond
|
|
- treasury
|
|
- god of fire
|
|
- castle gates
|
|
- cover of darkness
|
|
- portal of summoning
|
|
- escape tunnel
|
|
|
|
Function of all of these objects can be enabled by this:
|
|
|
|
``` javascript
|
|
"function" : "castleGates"
|
|
```
|
|
|
|
## trade-related
|
|
|
|
Hardcoded functionality for now due to complexity of these objects.
|
|
Temporary can be handles as unique buildings. Includes:
|
|
|
|
- resource - resource
|
|
- resource - player
|
|
- artifact - resource
|
|
- resource - artifact
|
|
- creature - resource
|
|
- resource - skills
|
|
- creature - skeleton
|
|
|
|
## hero visitables
|
|
|
|
Buildings that give one or another bonus to visiting hero. All should be
|
|
handled via configurable objects system.
|
|
|
|
Includes:
|
|
|
|
- gives mana points
|
|
- gives movement points
|
|
- give bonus to visitor
|
|
- permanent bonus to hero
|
|
|
|
## generic functions
|
|
|
|
Generic town-specific functions that can be implemented as part of
|
|
CBuilding class.
|
|
|
|
### unlock guild level
|
|
|
|
``` javascript
|
|
"guildLevels" : 1
|
|
```
|
|
|
|
### unlock hero recruitment
|
|
|
|
``` javascript
|
|
"allowsHeroPurchase" : true
|
|
```
|
|
|
|
### unlock ship purchase
|
|
|
|
``` javascript
|
|
"allowsShipPurchase" : true
|
|
```
|
|
|
|
### unlock building purchase
|
|
|
|
``` javascript
|
|
"allowsBuildingPurchase" : true
|
|
```
|
|
|
|
### unlocks creatures
|
|
|
|
``` javascript
|
|
"dwelling" : { "level" : 1, "creature" : "archer" }
|
|
```
|
|
|
|
### creature growth bonus
|
|
|
|
Turn into town bonus? What about creature-specific bonuses from hordes?
|
|
|
|
### gives resources
|
|
|
|
``` javascript
|
|
"provides" : { "gold" : 500 }
|
|
```
|
|
|
|
### gives guild spells
|
|
|
|
``` javascript
|
|
"guildSpells" : [5, 0, 0, 0, 0]
|
|
```
|
|
|
|
### gives thieves guild
|
|
|
|
``` javascript
|
|
"thievesGuildLevels" : 1
|
|
```
|
|
|
|
### gives fortifications
|
|
|
|
``` javascript
|
|
"fortificationLevels" : 1
|
|
```
|
|
|
|
### gives war machine
|
|
|
|
``` javascript
|
|
"warMachine" : "ballista"
|
|
```
|
|
|
|
## simple bonuses
|
|
|
|
Bonuses that can be made part of CBuilding. Note that due to how bonus
|
|
system works this bonuses won't be stackable.
|
|
|
|
TODO: how to handle stackable bonuses like Necromancy Amplifier?
|
|
|
|
Includes:
|
|
|
|
- bonus to defender
|
|
- bonus to alliance
|
|
- bonus to scouting range
|
|
- bonus to player
|
|
|
|
``` javascript
|
|
"bonuses" :
|
|
{
|
|
"moraleToDefenders" :
|
|
{
|
|
"type": "MORALE",
|
|
"val" : 1,
|
|
"propagator" : ["VISITED_TOWN_AND_VISITOR"]
|
|
},
|
|
"luckToTeam" :
|
|
{
|
|
"type" : "LUCK",
|
|
"val" : 2,
|
|
"propagator" : [ "TEAM_PROPAGATOR" ]
|
|
}
|
|
```
|
|
|
|
## misc
|
|
|
|
Some other properties of town building that does not fall under "bonus"
|
|
category.
|
|
|
|
### unique building
|
|
|
|
Possible issue - with removing of fixed ID's buildings in different town
|
|
may no longer share same ID. However Capitol must be unique across all
|
|
town. Should be fixed somehow.
|
|
|
|
``` javascript
|
|
"onePerPlayer" : true
|
|
```
|
|
|
|
### chance to be built on start
|
|
|
|
``` javascript
|
|
"prebuiltChance" : 75
|
|
``` |