Open tukkek opened 7 years ago
garrisson (military, 5)
allow it and friendly towns to be activated from a distance
maybe have a "Garrison" Interface that allows you to click on places from afar and move combatants to a new squad instead of picking them up? something like "Garrison.\nDo you want to evacuate these units from this location? (a, b, c)"
Would still need an evacuate code. do we have a unified discharge() when Squads.isempty()? Could also be useful for this and when entering shops etc
#automatic=false
upgrade to Headquarters (15) to allow recruiting via labor from dwellings
prerequisite: dwelling in district(s)
maybe make it twice the price to give CPU advantage
You should be able to build a castle (labor 20, requires town) and possibly place units inside It not only changes the (future) city map but also lets you place units before battle For ai that would be something like “ranged” behind moat, melees forward...
Fighter guild Monk guild (monastery)
Barracks: allows 1 teacher and 5 students per upgrade level. Each teacher gives 1d20 XP (capped by his Charisma score) per day, divided among students, which are automatically converted into a Warrior level once a student has enough for it.
The XP is not added directly to the student unit but to an internal map. Leaving the barracks mid-training wastes any progress made.
A teacher can only benefit students who are up to half his CR. When assigning a new teacher, sort by charisma and show both that value and max student level.
Requires a hamlet and can be updated up to level 4 with each city rank but cannot be upgraded if there are teacher or students on the premises.
hasupgraded()
when a student cannot advance further. 'isworking` as long as the number of students isn't the same as the number of students who cannot advance further and at least a teacher is present.
Should allow for removing students and teachers remotely (just show a Javelin#choose()
with each unit's name, role and whether can learn more or not) .
Rally (non-automatic, requires village, cost=ritual.level
): performs a random ritual (spell.isritual
). Could have the same for Religious and Ecological (festival) #65 #66
Actually, these things have to be instantaneous (no cost), so maybe pick a ritual where caster level <= population
and make sure a rally/festival cannot happen again in a month (use town#lastevent
in validate()
).
Since this can be applied to 3 different districts, might as well select a single ritual (or more) for each of them instead of making it random.
Arms shop: specialized in Artifacts that boost damage.
Memorial (10, requires village): +10% chance of turning a Town Event into a level-higher one instead.
Increase authority (Town#size
labor): adds -1% to chance of generating a Town event, down to 1%.
Raise militia (0): generates a group of mercenaries with EL equal to Town#size
and adds it to the Squad. If hostile, generates an Incursion of the same EL instead. If non-hostile and activated by the AI, does nothing instead.
Arena: works like the Sewer.
Guardhouse/stronghold/fortress/citadel (5/10/15/20, requires hamlet/village/town/city): automatically kills an incursion in the distrcit up to the converted labor->level->EL, self destructs afterward.