Skip to content

Commit d918474

Browse files
committed
make town hall offer
1 parent d11e247 commit d918474

File tree

4 files changed

+28
-0
lines changed

4 files changed

+28
-0
lines changed

src/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
- [Operations](./operations.md)
1414
- [Bath House Bribe Success](./operations/0042-bath-house-bribe-success.md)
1515
- [Bath House Bribe Failure](./operations/0043-bath-house-bribe-failure.md)
16+
- [Make Town Hall Offer](./operations/0048-make-town-hall-offer.md)
1617
- [Tavern Interaction](./operations/0052-tavern-interaction.md)
1718
- [Scheduled Tasks](./scheduled-tasks/0000.md)
1819
- [Criminal Investigation](./scheduled-tasks/0005-criminal-investigation.md)

src/file-formats/rou.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,5 @@ The "direction" of a transaction is encoded in the price and amount:
3232
|0|Positive|Office -> Ship|
3333
|Positive|Positive|Ship -> Town|
3434
|Negative|Positive|Town -> Ship|
35+
36+
The "Max" amount is represented by `1_000_000_000` for both barrel and bundle wares.

src/operations.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ The following operations have been identified:
8989
|0x41|Form Militia Squad|
9090
|0x42|Bath House Bribe Success|
9191
|0x43|Bath House Bribe Failure|
92+
|0x48|Make Town Hall Offer|
9293
|0x52|Tavern Interaction|
9394
|0xc2|Autosave|
9495
|0xc4|Advance Time|
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Make Town Hall Offer
2+
The `handle_operation_48_make_townhall_offer` function at `0x0053B010` handles proposed changes to a town's policy.
3+
4+
```c
5+
struct operation_48_make_town_hall_offer
6+
{
7+
signed __int32 field_0_meeting_timestamp;
8+
signed __int32 field_4_extra_tax_amount;
9+
unsigned __int8 field_8_town_index;
10+
council_meeting_type field_9_meeting_type;
11+
signed __int16 field_A_tax_per_head_amount;
12+
char field_C_merchant_index;
13+
char field_D;
14+
char field_E;
15+
char field_F;
16+
};
17+
```
18+
19+
## Normal Towns
20+
For normal towns a *Council Meeting* scheduled is scheduled at `0xE00` ticks (14 days) ahead.
21+
22+
## Hanseatic Settlements
23+
Hanseatic settlements have no council and expand military or enlarge town wall offers.
24+
A change to the head tax is applied immediately, and an *Extra Tax* scheduled task is scheduled at the next tick.

0 commit comments

Comments
 (0)