114 lines
4.1 KiB
Markdown
114 lines
4.1 KiB
Markdown
# Ringworld Foundry System (v12-v13 MVP)
|
|
|
|
Ringworld is a custom Foundry VTT game system for BRP-like percentile play with hit locations, location armor, and energy-tracked weapons.
|
|
|
|
## Online Install (GitHub)
|
|
|
|
Repository:
|
|
- https://github.com/slaguru666/Ringworld
|
|
|
|
System manifest URL:
|
|
- `https://raw.githubusercontent.com/slaguru666/Ringworld/main/system.json`
|
|
|
|
Companion content module manifest URL:
|
|
- `https://raw.githubusercontent.com/slaguru666/Ringworld/main/ringworld-content/module.json`
|
|
|
|
Starter world data archive:
|
|
- `https://raw.githubusercontent.com/slaguru666/Ringworld/main/dist/ringworld-starter-world.zip`
|
|
|
|
## Status
|
|
|
|
MVP implemented:
|
|
- Actor types: `explorer`, `creature`, `vehicle` (stub)
|
|
- Item types: `skill`, `weapon`, `armor`, `gear`, `species`
|
|
- Percentile checks with `Special Success` and `Fumble`
|
|
- 1d20 hit location roll with Ringworld 7-location mapping
|
|
- Weapon workflow with target selection, hit location, armor subtraction, and damage to both location HP and general HP
|
|
- Auto conditions at location 0 or less (`prone`, `unconscious`, limb unusable flags)
|
|
- Armor overlap stacking across all equipped armor items covering a location
|
|
- Energy use from actor pool or linked power pack item
|
|
- World catalog seeding for Ringworld equipment, armor, weapons, gear, and species
|
|
- Character tools: roll all characteristics and random explorer generation
|
|
|
|
## Install / Build
|
|
|
|
From this project folder:
|
|
|
|
```bash
|
|
cd /Users/timevans/FoundryVTT/foundryvtt-ringworld
|
|
npm install
|
|
npm run build
|
|
```
|
|
|
|
Build output:
|
|
- `module/ringworld.mjs`
|
|
- `styles/ringworld.css`
|
|
|
|
## Foundry placement
|
|
|
|
Foundry loads systems from `.../data/systems` (or `.../Data/systems` on case-insensitive macOS paths).
|
|
|
|
Recommended live-dev symlink:
|
|
|
|
```bash
|
|
ln -s /Users/timevans/FoundryVTT/foundryvtt-ringworld /Users/timevans/FoundryVTT/data/systems/ringworld
|
|
```
|
|
|
|
If `ringworld` already exists, remove or rename it first.
|
|
|
|
## Using the system
|
|
|
|
1. In Foundry, create a world using **Ringworld** system.
|
|
2. Create an **Explorer** actor.
|
|
3. In the **Skills** tab, click **Populate Ringworld Base Skills** to add all canonical Ringworld skills.
|
|
4. Add extra custom skills or weapon items from the actor sheet as needed.
|
|
5. For energy weapons:
|
|
- Create a `gear` item with `Is Power Pack` checked.
|
|
- Set weapon `Power Source` to `Power Pack Item` and select the pack.
|
|
6. Target a token, then click **Use** on a weapon.
|
|
7. Choose hit location (or random 1d20) and confirm damage application in chat.
|
|
8. Use header tools on Explorer sheet:
|
|
- **Roll Characteristics**: rolls all characteristic values from gravity profile
|
|
- **Random Character**: random species + gravity + rolled stats + starter kit
|
|
|
|
## Catalog and Generators
|
|
|
|
- On first GM world load, the system seeds world Items with Ringworld catalog entries.
|
|
- You can reseed manually from **Items Directory** using `Seed Ringworld Items`.
|
|
- You can create a random explorer from **Actors Directory** using `Create Random Explorer`.
|
|
- If you install the companion module **Ringworld Content**, you can import everything with one button:
|
|
- **Items Directory** -> `Import Ringworld Content`
|
|
|
|
## Rules implemented for v1
|
|
|
|
- Roll-under percentile checks (`1d100 <= target`)
|
|
- Special Success: roll `<= floor(target / 5)`
|
|
- Fumble:
|
|
- target `< 50`: roll `96-100`
|
|
- target `>= 50`: roll `100`
|
|
- Hit locations (1d20):
|
|
- `01-03 Right Leg`
|
|
- `04-06 Left Leg`
|
|
- `07-10 Abdomen`
|
|
- `11-15 Chest`
|
|
- `16-17 Right Arm`
|
|
- `18-19 Left Arm`
|
|
- `20 Head`
|
|
- Locational damage also reduces general HP (same final damage)
|
|
- Armor subtracts 1:1 damage and stacks across overlapping covered armor pieces
|
|
|
|
## Seeds
|
|
|
|
`seeds/` contains starter data:
|
|
- `base-skills.json` full base skill list
|
|
- `example-items.json` sample skill/weapon/armor/power pack
|
|
- `example-explorer.json` sample explorer with items
|
|
|
|
These are JSON templates for manual import or scripted pack generation.
|
|
|
|
## Notes
|
|
|
|
- Content is numeric/stat-driven only. No long rulebook text is embedded.
|
|
- Vehicle combat and computer subsystems remain backlog.
|
|
- `world-data/` contains a starter world shell and packaging files for server transfer.
|