Vault-Overseers / nuclear-14

Multiplayer survival role-playing game set in a post-nuclear apocalyptic world
https://nuclear14.com
GNU Affero General Public License v3.0
30 stars 46 forks source link

Guidebooks Guidance #154

Open Peptide90 opened 6 months ago

Peptide90 commented 6 months ago

Description

We need guidebook entries for all sorts of stuff to help guide players new to the fallout universe, new to RP and just curious about learning more.

Below is an outline of guidebooks that need added, as well as a guide below that on how to contribute guidebooks for newbies.

To Do List

Factions

Weapons & Ammo

Lore

Mobs / AI

Medicine

Crafting

Guide

Check out pull request #153 and check out the file changes page to see what it takes to add guidebooks.

Guidebooks consist of:

  1. A prototype. This is like the directory which tells the game what the entry is, it's name, where to find the text for it and it's children entries. They're found at Resources/Prototypes/Nuclear14/Guidebooks. This is a yml file and easily edited in notepad++ like the other files.
  2. A name / localisation data. Localisation files are found at Resources/Locale/en-US/Nuclear14/guidebooks.ftl and these are what translate the file name to something readable in game. Simple format e.g. guide-entry-nuclear14 = Nuclear 14
  3. Text! This file holds all the information you want to show on the guidebook page. It's written in XML which is like fancy text. You can use an online editor to convert / type and format in XML or just edit the file in notepad++ again and set your language to xml. Look at other example documents in the directory if you get stuck. Our text files are in /ServerInfo/Guidebook/Nuclear14/ but go up a folder and you'll see the upstream entries for guidance.

Now let's explore the factions guidebooks to see what needs to be done to structure some guidebook entries.:

- type: guideEntry
  id: Factions
  name: guide-entry-factions
  text: "/ServerInfo/Guidebook/Nuclear14/Factions/factions.xml"
  children:
  - BrotherhoodOfSteel
  - CaravanCompany
  - NCR
  - Townsfolk
  - Tribes
  - VaultDwellers
  - Wastelanders
  - MinorFactions

# Brotherhood of Steel
- type: guideEntry
  id: BrotherhoodOfSteel
  name: guide-entry-brotherhoodofsteel
  text: "/ServerInfo/Guidebook/Nuclear14/Factions/BrotherhoodOfSteel/index.xml"
  children:
  - BrotherhoodMidwest
  - BrotherhoodWashington

# Midwest Chapter
- type: guideEntry
  id: BrotherhoodMidwest
  name: guide-entry-brotherhoodmidwest
  text: "/ServerInfo/Guidebook/Nuclear14/Factions/BrotherhoodOfSteel/midwestmain.xml"

Above is an example of a top level directory, in this face Factions. Factions is a child of Nuclear14 as specified in another guidebook prototype but in this file Factions also has it's own children listed. One of the entries is BrotherhoodOfSteel. This matches the ID on the next entry down. The children ID and the guideEntry ID must match for it to show as a child entry in game. This is repeated again for the individual faction entry with no children at the bottom.

In each case we can see a unique ID for each entry linked to the above entry through the children: list, each one has a name specified as guide-entry-name which links to our localisation file mentioned earlier, and finally a text: path which leads to the xml document with the contents.

Peptide90 commented 6 months ago

Guidebooks PR has been merged so you can find the existing directory here: https://github.com/Vault-Overseers/nuclear-14/tree/master/Resources/ServerInfo/Guidebook/Nuclear14

All of the current entries are placeholders that need content adding to.