Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add RoF2 Guild Feature Documentation #66

Merged
merged 4 commits into from
Feb 10, 2024
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions docs/server/guilds/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
description: This page describes the guild management system on your EQEmu Server.
---

# Guilds

The internal structure of guild management is based on the Rain of Fear 2 (RoF2) client. This means that the internal structure is based on the 8 guild ranks and rank names. The server will translate these to older clients when the player is using Titanium or Underfoot.

The guild management system has not been tested with other clients. If your player base uses another client, please post an [issue](https://github.com/EQEmu/Server/issues) as it may be possible to add the appropriate opcodes.

As of February 2024, the following **features are implemented**:

* Customizable Guild Ranks (RoF2)
* Permissions (RoF2)
* Notes
* Guild Creation using Alt-G (UF/RoF2)
* Tributes
* Guild Bank
* Guild LFG. Works from the command line and the Bulletin Boards in Guild Lobby (requires queryserver to be running)

**Not Yet Implemented:**

- Guild Trophies
- Real Estate
- Banners

The sysytem has been tested against Titanium, Underfoot and Rain of Fear 2. Functionality is limited to the client feature set.
neckkola marked this conversation as resolved.
Show resolved Hide resolved

## Server Rules for Guild Management

There are several rules that allow for customization of guild functionality.

| Category | Rule Name | Type | Default | Description |
| :--- | :--- | :--- | :--- | :--- |
| Guild | TributePlatConversionRate | int | 10 | The conversion rate of platinum donations. Default is 10 guild favor to 1 platinum |
| Guild | TributeTime | int | 600000 | Time in ms for guild tributes. Default is 10 mins. |
| Guild | TributeTimeRefreshInterval | int | 180000 | Time in ms to send timer updates to all guild members. Default is 3 mins. |
| Guild | UseCharacterMaxLevelForGuildTributes | bool | true | Guild Tributes will adhere to Character:MaxLevel. Default is true. |

## Scripting

If you have existing quest scripts that use client:GuildRank() or $client->GuildRank(), these will need to be updated to reflect the RoF2 guild rank numbers.


## Known Issues

There is a display issue within the Guild Management Window across all three clients (Ti/UF/RoF2). Care has been taken to alleviate the issue, however it is explained here for reference.

When a player opens the guild management window and has 'Show Offline' unchecked, they may notice that the 'Notes' and 'Tribute' tabs are missing an online client. If they toggle the 'Show Offline' checkbox, the Guild Management Window will update itself and correct the display issue.

The guild tribute window may show a level of 0 when the tribute level is higher than the CharacterMaxLevel. This is a display bug only and will not allow the tribute to be used.
53 changes: 53 additions & 0 deletions docs/server/guilds/compatibility.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
description: This page describes the backwards compatibility for the guild management system on your EQEmu Server.
---

### Ranks

Guild ranks will translate as follows when the server sends rank to the client.

|Guild Rank Name|Titanium/Underfoot|
|---------------|------------------|
|Leader(1)|Leader(2)|
|Senior Officer(2)|Officer(1)|
|Officer(3)|Officer(1)|
|Senior Member(4)|Member(0)|
|Member(5)|Member(0)|
|Junior Member(6)|Member(0)|
|Initate(7)|Member(0)|
|Recruit(8)|Member(0)|
neckkola marked this conversation as resolved.
Show resolved Hide resolved

What does this mean?

If you are using a mixture of clients, the change of ranks will mirror the above translation.

Example:

If an RoF2 client changes the rank of Player A from Recruit to Junior Member, a Ti/UF client will show Player A as a member.

If a Ti/UF client changes the rank of Player A from Member to Officer, a RoF 2 client will show Player A as Officer. Player A will then be afforded the permissions as noted within the RoF2 client for the rank of Officer.

### Permissions

When creating a new guild, the following permissions are set as a default.

![image](https://github.com/EQEmu/Server/assets/65987027/5e5d4a21-8b44-4f05-b185-774141ef0f18)


### Guild Bank

By default, the guild leader is a guild banker. This is accomplished based on the client type.

The Ti/Underfoot Client has a checkbox to identify a guild member as a banker.
The RoF2 Client uses the permission system to determine a guild members access to the guild bank.

Please note: The system will convert RoF2 bank permissions to Ti/UF banker status when the following four permissions are set.

- Bank:Deposit Items
- Bank:Promote Items
- Bank:View Items
- Bank:Withdraw Items

Therefore, if your player base uses RoF2 generally though a few use Underfoot, those Underfoot players will have banker status based on the above noted RoF2 permissions. The guild leader will not have to login with Underfoot and set their banker status.

Please note: The internal structure of eqemu uses the RoF2 rank system. Therefore if a member has the rank of Junior Member, and that rank has the 4 permissions noted above, when they log in with a UF client, they will have banker access, even though their UF guild rank will display as 'member' in the client as noted in the above translation table.
27 changes: 27 additions & 0 deletions docs/server/guilds/defaults.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
description: This page describes the guild management defaults on your EQEmu Server.
---

|Guild Rank Name|Guild Rank #|
|---------------|------------|
|Leader|1|
|Senior Officer|2|
|Officer|3|
|Senior Member|4|
|Member|5|
|Junior Member|6|
|Initate|7|
|Recruit|8|


Default Invite Rank

|Client|Rank|
|:---|:---|
|Titanium|Member|
|Underfoot|Member|
|Rain of Fear 2|Recruit|

Guild Banker

By default, the guild leader is a guild banker.
4 changes: 4 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,10 @@ nav:
- Creating a New Faction: server/factions/add-a-new-faction.md
- Customizing Factions: server/factions/customizing-factions.md
- Faction Values: server/factions/faction-values.md
- Guild Management:
- server/guilds/README.md
- Defaults: server/guilds/defaults.md
- Backwards Compatibility: server/guilds/compatibility.md
- Items:
- Alternate Currencies: server/items/alternate-currencies.md
- Augment Restrictions: server/items/augment-restrictions.md
Expand Down