docs(game): migrate game-design canon notes from Joplin into docs/game/

Eight canon notes (Game Concept Overview, Mechanics Source Mapping,
Combat System & Stat Scaling Design, Skill & Magic System, Medals &
Honours System, Lore & World Building, Idle Fantasy Inspirations,
Tech Stack & Architecture) as markdown, note title as H1, with source
line citing the Joplin note ID. Joplin keeps status notes.
This commit is contained in:
Jan-Peter von Hunnius 2026-10-03 17:27:43 +02:00
parent 2343d5e154
commit 7a9a5a3e7b
8 changed files with 2810 additions and 0 deletions

View file

@ -0,0 +1,390 @@
# Skara Brae — Skill & Magic System (MERP/Rolemaster-Inspired)
Source: Joplin note 4c295d18c9b04aea947b534834ffaced, migrated 2026-10-03
> **Goal**: Port the depth of the MERP/Rolemaster skill and magic engine into Skara Brae's existing use-based, BIGINT-stat, idle/MMO framework — *without* abandoning the Torn-style "stats only go up, train by doing" feel.
---
## 1. Design Philosophy — Reconciling Two Worlds
| Concern | RoleMaster/MERP | Skara Brae Existing | Resolution |
|---|---|---|---|
| **How skills grow** | Development Points spent per level (point-buy) | Use-based XP per skill (like RuneScape/Idle Fantasy) | **Hybrid**: practice-ranks by use **+** development-ranks by spend. See §3. |
| **Skill depth** | ~60 skills in 18+ categories, stat-linked, diminishing returns | Flat list of ~25 skills, each on its own XP bar | Adopt RM **categories**, **rank-bonus formula**, **stat integration**, **maneuver difficulties**. |
| **Magic** | Spell *lists* (open/closed/base), realm-based, learned in order, power-point cost | 4 BT1 schools + 3 realms mentioned but undefined | Full **spell-list system** (§5): curated lists per realm, ordered progression, PP cost, bolt/ball/utility classification. |
| **Resolution** | d100 open-ended + skill bonus vs. maneuver difficulty | d100 open-ended for combat only | Generalize d100 open-ended **maneuver roll** to *all* skills (§4). |
| **Stats** | 10 stats | 6 BIGINT stats (Str/Agi/Con/Int/Wis/Cha) | Map each skill to 1–3 of our 6 stats (§2.2). |
**Key principle**: Use-based training is the *primary* advancement loop (consistent with Torn + Idle Fantasy + the idle/offline features). Development Points are a *secondary* layer that lets players cross-train skills they don't actively grind — exactly Rolemaster's flexibility, but earned through play rather than per-level allocation alone.
---
## 2. The Skill Catalogue
### 2.1 Skill Categories
All skills are organized into Rolemaster-style **categories**. A character's **profession (class)** grants a **profession modifier** per category — a discount on Development Point cost and/or a small bonus to the skill bonus. This is the Rolemaster "class feel" mechanism.
| # | Category | Example Skills | Primary Use |
|---|---|---|---|
| 1 | **Armor** | Light Armor, Medium Armor, Heavy Armor, Shield | Mitigation, agility penalties |
| 2 | **Weapon — Melee** | 1H Edged, 1H Concussion, 2-Handed, Polearms, Unarmed, Martial Arts | Attack rolls, OB |
| 3 | **Weapon — Ranged** | Bow, Crossbow, Thrown, Sling | Ranged attack rolls |
| 4 | **Athletic / Brawn** | Climbing, Swimming, Gymnastics (dodge), Lifting | Movement, escape, evasion |
| 5 | **Awareness / Search** | Perception, Alertness, Tracking, Trap Sense, Ambush Awareness | Detection, scouting |
| 6 | **Body Development** | Constitution (HP pool growth), Stamina | Survivability |
| 7 | **Combat Maneuvers** | Mounted Combat, Adrenal Defense, Multiple Parry, Feint | Advanced combat options |
| 8 | **Craft / Trade** | Blacksmithing, Alchemy, Enchanting, Tailoring, Jewelcrafting, Fletching, Cooking | Crafting professions |
| 9 | **Gathering** | Mining, Herbalism, Woodcutting, Fishing, Skinning | Material acquisition |
| 10 | **Directed Spells** | Runes, Staves & Wands, Scrolls | Using magic items |
| 11 | **Influence** | Leadership, Persuasion, Intimidation, Disguise | Social, guild, trade |
| 12 | **Lore** | General Lore, Magical Lore, Religious Lore, Skara Brae Lore | Quests, puzzles, dungeon riddles |
| 13 | **Magic Lore** | Runereading, Spell Mastery, Mana Weaving | Spellcasting support |
| 14 | **Mental** *(Mentalism)* | Telepathy, Mental Defense, Mind Control, Enhancement | Mentalism spell channeling |
| 15 | **Outdoor / Environment** | Foraging, Survival, Weather Reading, Navigation | Wilderness, Wilds, offshore |
| 16 | **Self Control** | Meditation (mana regen), Frenzy (berserk), Willpower (RR bonus) | Buffs, recovery |
| 17 | **Special Attacks** | Backstab, Ambush, Poisons, Stunning Blows | Rogue/Monk techniques |
| 18 | **Spells** *(per realm)* | Essence Lists, Channeling Lists, Mentalism Lists | Spellcasting — see §5 |
| 19 | **Subterfuge / Stealth** | Lockpicking, Pickpocketing, Sneaking, Hiding, Trap Setting | Thievery, adventures |
| 20 | **Technical / Trade** | Bartering, Appraisal, Engineering (siege/traps) | Economy, guild siege |
| 21 | **Urban** | Streetwise, Gambling, Carousing, Black Market (fencing) | Inn, Lower City, Harbor |
> Mappers to existing design: categories 8 & 9 = the 5 gathering + 7 crafting professions already defined. Category 19 = the Thievery tree. Category 21 = social/inn activities. Category 18 = the magic system in §5.
### 2.2 Stat Linkage
Each skill rolls **1–3 relevant stats**. Stat bonus is derived from the BIGINT stat via a **logarithmic bonus function** (so billions-scale stats still produce a bounded, meaningful bonus):
```
stat_bonus(value) = floor( 10 * log2( value / 10 ) ) // bounded, grows slowly
// Example: 10 → 0, 20 → +10, 80 → +30, 10K → +100, 1B → ~+200
```
(Exact curve TBD in tuning — the point is **slow, diminishing** growth so that a character with 1B Intelligence isn't auto-winning every lore check, but is meaningfully better than one with 10K.)
| Sample skills | Linked Stats |
|---|---|
| 1H Edged | Str, Agi |
| Bow | Agi |
| Stealth / Sneaking | Agi |
| Lockpicking | Agi, Int |
| Blacksmithing | Str, Int |
| Alchemy | Int, Wis |
| Persuasion | Cha |
| Tracking | Wis, Int |
| Meditation | Wis, Con |
| Unarmed / Martial Arts | Str, Con, Agi |
| Runereading | Int |
---
## 3. Skill Ranks — Practice + Development (Hybrid)
### 3.1 Two Tracks, One Bonus
A skill's effectiveness is driven by its **total ranks**, which come from two sources:
1. **Practice Ranks** — earned automatically by using the skill (use-based XP → rank thresholds). *This is the core loop.* Each skill has its own XP bar. Offline apprentice workers grant practice XP at 50% (existing design).
2. **Development Ranks** — purchased with **Development Points (DP)**. Lets a player boost a skill they aren't actively grinding, or push past a practice plateau.
```
total_ranks(skill) = practice_ranks + development_ranks
skill_bonus(skill) = rank_bonus(total_ranks)
+ Σ stat_bonus(linked_stats)
+ profession_bonus(class, category)
+ equipment_bonus
+ situational_modifiers
```
### 3.2 Rank Bonus — Diminishing Returns (Rolemaster Formula, Adapted)
| Rank Band | Bonus per Rank | Cumulative at Band End |
|---|---|---|
| Ranks 1–10 | +5 each | +50 |
| Ranks 11–20 | +3 each | +80 |
| Ranks 21–30 | +2 each | +100 |
| Ranks 31–50 | +1 each | +120 |
| Ranks 51+ | +0.5 each (rounded) | slow creep |
This mirrors Rolemaster's "first rank is worth a lot, then diminishing." It keeps use-based grinding rewarding early and makes Development Points meaningful for pushing high-end skills. **Caps** per skill can be set per tuning (e.g., max 50 ranks for non-combat, higher for weapons/spells).
### 3.3 Development Points
- **DP per character level** = `5 + stat_bonus(Intelligence)` (Intelligence = learning aptitude). Patrons may get +2.
- **DP cost to buy a rank** depends on the skill's category and the character's profession:
| Profession Modifier | DP per Rank | Meaning |
|---|---|---|
| Favored | 1 | Class's core competencies |
| Normal | 2 | Secondary skills |
| Unfavored | 4 | Outside the class's wheelhouse |
| Restricted | 8 (or disallowed) | E.g., heavy spellcasting for a Warrior |
| Class | Favored Categories (examples) | Unfavored |
|---|---|---|
| **Warrior** | Armor, Weapon-Melee, Weapon-Ranged, Body Dev, Combat Maneuvers | Spells, Mental |
| **Rogue** | Subterfuge/Stealth, Special Attacks, Urban, Awareness, Weapon-Melee | Spells (closed), Self Control |
| **Mage** | Spells (Essence), Lore, Magic Lore, Directed Spells, Craft (Enchant/Alchemy) | Armor, Weapon-Melee, Subterfuge |
| **Bard** | Spells (Mentalism), Influence, Lore, Urban, Self Control | Armor (heavy), Body Dev |
| **Cleric** | Spells (Channeling), Influence, Self Control, Lore | Weapon-Ranged, Subterfuge |
| **Ranger** | Weapon-Ranged, Outdoor/Envir, Awareness, Gathering, minor Channeling | Urban, Influence |
| **Paladin** | Armor, Weapon-Melee, Spells (minor Channeling), Self Control, Influence | Subterfuge, Mental |
| **Monk** | Unarmed/Martial Arts, Athletic, Self Control, Body Dev | Armor (heavy), Spells |
### 3.4 Classless Cross-Training
Because any class *can* buy any (non-restricted) skill at higher DP cost, a Warrior *can* learn a basic Fire Bolt — but it costs 8 DP/rank and caps low. This is pure Rolemaster flexibility and rewards hybrid builds, while keeping class identity strong.
---
## 4. Skill Resolution — The Maneuver Roll (Generalized d100)
Every non-trivial skill action resolves with the same engine as combat: an **open-ended d100 maneuver**.
### 4.1 Difficulty Modifiers
| Difficulty | Modifier | Example in Skara Brae |
|---|---|---|
| Routine | +30 | Pick an easy lock (tavern cellar) |
| Easy | +20 | Track a fresh trail in snow |
| Light | +10 | Brew a basic healing potion |
| Medium | 0 | Pickpocket a sober merchant |
| Hard | −10 | Pickpocket a guard; scale a city wall |
| Very Hard | −20 | Defuse a dungeon trap; fence rare goods |
| Extremely Hard | −30 | Pick a vault lock in the Noble Quarter |
| Sheer Folly | −50 | Climb a sheer cliff in a storm |
| Absurd | −70 | Pickpocket Mangar's lieutenant |
### 4.2 Resolution
```
maneuver_total = d100_open_ended() + skill_bonus(skill) + difficulty_modifier
```
Open-ended: 96–100 rolls again and adds; 01–05 rolls again and subtracts (downward open-ended, per Rolemaster).
### 4.3 Result Table
| maneuver_total | Outcome | Effect |
|---|---|---|
| ≥ +80 | **Absolute Success** | Best result + bonus (e.g., +50% yield, bonus loot) |
| +21 to +79 | **Complete Success** | Full intended effect |
| 0 to +20 | **Partial Success** | Effect at reduced value / longer time |
| −20 to −1 | **Failure** | No effect; small chance of minor mishap |
| −80 to −21 | **Absolute Failure** | Failure + complication (broken pick, alarm, wasted materials) |
| ≤ −81 | **Spectacular Failure** | Severe consequence (injury, aggro, lost materials, trap sprung) |
Downward open-ended rolls (01–05) feed the lower bands → the "fumble" tension that makes Rolemaster feel alive.
### 4.4 Why This Matters
- **Adventures** (pickpocketing, burglary, fencing) now use real skill checks with difficulty tiers — replacing a flat success chance.
- **Crafting** quality rolls (Common→Legendary) can be driven off the maneuver table instead of a separate d100.
- **Dungeon puzzles** (lore checks, riddles, lockpicking, trap disarming) become skill encounters.
- **Social** actions (persuade the Beggar King, bluff the City Watch) use Influence skills.
- Consistent with the combat crit table already designed — **one unified resolution engine**.
---
## 5. The Magic System — Spell Lists per Realm
### 5.1 Realms & Primary Stat (Power Points)
| Realm | Casters | Primary Stat (PP) | Flavor |
|---|---|---|---|
| **Essence** | Mages | Intelligence | Raw magical energy woven from the world |
| **Channeling** | Clerics, Paladins (minor) | Wisdom | Power granted by the Old Gods |
| **Mentalism** | Bards | Charisma | Power drawn from mind and will |
**Power Points (PP)** = the spell-casting resource (replaces/generates the `mana` BIGINT pool). PP-per-level scales with the realm stat bonus:
```
max_pp = base_pp(class) + realm_stat_bonus * pp_multiplier(class)
```
PP regenerates over time, boosted by **Meditation** skill (Self Control) and blessings. Spells cost PP to cast; higher-tier spells on a list cost more.
### 5.2 Spell Lists — Open, Closed, Base
A **spell list** is an ordered progression: spell #1 is the weakest, spell #N is the strongest. You must learn a list **in order** — you can't learn spell #10 without #1–#9. This is core Rolemaster.
| List Class | Availability | Example |
|---|---|---|
| **Open** | Available to *all* casters of that realm (favored DP cost) | Essence Hand (utility) for all Essence users |
| **Closed** | Restricted to specific professions of that realm (normal/normal+ cost) | Life Mastery (healing) closed to Clerics |
| **Base** | The profession's signature lists (cheapest, defines the class) | Fire Law as a Mage base list |
You **rank up a spell list** like a skill (practice by casting + DP). Your **list rank** determines the highest spell number you can cast from that list. E.g., Fire Law rank 12 lets you cast Fire Law spells 1–12.
### 5.3 Curated Spell Lists per Realm
*(Target: ~20 lists per realm, ~10–15 spells each. Below is the launch set — expandable.)*
#### Essence (Mages)
| List | Class | Highlights |
|---|---|---|
| **Fire Law** | Base (Mage) | Spark → Fire Bolt → Wall of Fire → Fire Ball → Inferno |
| **Ice Law** | Base (Mage) | Frost → Ice Bolt → Freeze → Blizzard |
| **Light Law** | Base (Mage) | Glow → Light Bolt → Blinding Flash → Sun Bolt |
| **Earth Law** | Closed | Stone Bolt → Entangle → Earthquake |
| **Water Law** | Closed | Water Bolt → Wave → Tidal Surge |
| **Illusions** | Closed | Phantasmal Force → Blur → Invisibility |
| **Living Change** | Closed | Enhance Stat → Shrink → Polymorph |
| **Lofty Bridge** | Closed | Leap → Long Step → Gate → Teleport |
| **Essence Hand** | Open | Light → Unseen Hand → Lock Lore → Dispel |
| **Essence Ways** | Open | Detect Magic → Aura Reading → Sense Essence |
| **Spell Wall** | Open | Minor Shield → Barrier → Wall of Force |
| **Essence Perceptions** | Open | Detect Essence → Analyze Magic |
> **BT1 School Mapping**: The four Bard's Tale schools are *focuses within Essence*:
> - **Magician** (offensive) → Fire/Ice/Light Law base lists
> - **Conjurer** (summoning) → summoning sub-lists + Earth Law
> - **Sorcerer** (debilitating) → Illusions + Living Change
> - **Wizard** (utility) → Lofty Bridge + Essence Hand + Spell Wall
>
> Switching "school" at the Review Board = reprioritizing which base lists you rank. **Master all four = Archmage** (all Essence lists learned).
#### Channeling (Clerics)
| List | Class | Highlights |
|---|---|---|
| **Life Mastery** | Base (Cleric) | Minor Heal → Major Heal → Regeneration → Resurrection |
| **Repulse / Undead Mastery** | Base (Cleric) | Turn Undead → Hold Undead → Control Undead |
| **Protections** | Base (Cleric) | Sanctuary → Holy Shield → Consecration |
| **Detections** | Closed | Detect Evil → Detect Undead → Detect Trap |
| **Creations** | Closed | Create Light → Create Food → Create Water |
| **Weather Ways** | Closed | Calm Weather → Fair Winds → Storm Call |
| **Communal Ways** | Open | Sense Deity → Commune → Divine Guidance |
| **Channeling Perceptions** | Open | Detect Aura → Sense Danger |
#### Mentalism (Bards)
| List | Class | Highlights |
|---|---|---|
| **Mind Mastery** | Base (Bard) | Daze → Confusion → Mental Stun → Dominate |
| **Song / Sound** | Base (Bard) | Valor (atk buff) → Hope (morale) → Fear (debuff) → Charm → Lullaby (sleep). *Long-duration bard songs.* |
| **Self Healing** | Closed | Mend → Recover → Revitalize |
| **Mind's Door** | Closed | Telepathy → Mind Speech → Mind Store |
| **Body Control** | Closed | Adrenal Speed → Adrenal Strength → Prowess |
| **Mental Illusions** | Closed | Mirage → Phantasm → Mirage Illusion |
| **Mind's Eye** | Open | Sense Thoughts → Detect Motive |
| **Mental Defenses** | Open | Mind Barrier → Mental Shield → Iron Will |
### 5.4 Spell Classification (Combat Integration)
| Type | Resolution | Notes |
|---|---|---|
| **Bolt** (directed) | Attack roll = d100 open-ended + Directed Spells skill vs. target's defense (like a missile) | Fire Bolt, Ice Bolt. Can trigger crit tables (elemental crit). |
| **Ball / Area** (non-directed) | Target makes **Resistance Roll**: d100 + Will bonus + level vs. spell level | Fire Ball, Blizzard. Failed RR = full effect; partial = reduced. |
| **Defensive / Utility** | Auto-cast (costs PP); resisted only where noted | Shields, teleports, detections, healing. |
This slots directly into the existing **Resistance Roll** design (d100 + Will vs. spell difficulty) and the **d100 open-ended crit tables**. Elemental crit tables (burn, frost, shock) extend the slash/crush/puncture/unarmed tables already defined.
### 5.5 Spell Acquisition — The Review Board
Per existing design, the **Adventurers' Guild (Review Board)** is where you learn magic:
- Increase a spell-list rank by paying gold + meeting the level/practice prerequisite.
- Casters must visit to gain access to new spell numbers on a list.
- **Magical exam** (lore check) for spellcasters (existing design) — now a real *Magical Lore* maneuver.
- Mages switch Essence-school focus here (reprioritize base lists).
- **Archmage**: a Mage who has maxed all four BT1 schools' base lists → cosmetic title + achievement + small global casting bonus.
### 5.6 Spell Scrolls & Items
- **Scrolls** (Directed Spells → Scrolls skill): one-use spell from any list; lets non-casters cast minor spells (Torn-like consumable). Found in dungeons, crafted by Enchanting.
- **Staves & Wands** (Directed Spells → Staves & Wands): rechargeable PP-cost items casting a fixed spell. Crafted/bound via Enchanting.
- **Runes** (Magic Lore → Runereading): permanent magical inscriptions on gear; activated by Runereading skill.
---
## 6. Integration With Existing Systems
| Existing System | Change / Enhancement |
|---|---|
| **Combat (crit tables)** | Elemental crit tables added (burn, frost, shock). Bolts roll like missiles; balls use RR. Maneuver roll unified with combat. |
| **BIGINT stats** | `stat_bonus()` log function feeds skills. Stats keep growing to billions; bonuses grow slowly (bounded). |
| **Adventures** | Success now computed via maneuver roll + skill bonus + difficulty tier. Time-of-day & skill synergies become modifiers. |
| **Crafting (5 gather + 7 craft)** | These are skills in categories 8 & 9. Quality roll driven by maneuver table; crafting crits = upward open-ended success. |
| **Thievery** | Lives in Subterfuge/Stealth category (Lockpicking, Pickpocketing, Sneaking, Hiding). Adventures use these directly. |
| **Education courses** | Completing a course grants **DP** (development points) — a second DP source beyond leveling. Makes education feel impactful. |
| **Blessings** | Could grant temporary +skill bonus or +DP regen instead of flat multipliers. |
| **Workers (apprentice)** | Apprentice grants *practice XP* to a chosen skill at 50% — unchanged, now feeds practice ranks. |
| **Database** | New tables needed: `skill_categories`, `character_skill_ranks` (split practice/dev), `spell_lists`, `character_spell_list_ranks`, `spell_definitions`. See §7. |
---
## 7. Database Additions (Draft)
```sql
-- Skill ranks (practice + development split)
CREATE TABLE character_skills (
character_id UUID NOT NULL REFERENCES characters(id),
skill_name VARCHAR(48) NOT NULL,
category VARCHAR(32) NOT NULL,
practice_ranks INT NOT NULL DEFAULT 0,
development_ranks INT NOT NULL DEFAULT 0,
experience BIGINT NOT NULL DEFAULT 0, -- feeds practice_ranks
PRIMARY KEY (character_id, skill_name)
);
-- Development point pool per character
ALTER TABLE characters ADD COLUMN unspent_dp INT NOT NULL DEFAULT 0;
-- Spell lists
CREATE TABLE spell_lists (
id VARCHAR(64) PRIMARY KEY, -- e.g. 'fire_law'
realm VARCHAR(16) NOT NULL, -- essence | channeling | mentalism
list_class VARCHAR(16) NOT NULL, -- open | closed | base
name VARCHAR(64) NOT NULL,
description TEXT
);
-- Spell definitions (ordered within a list)
CREATE TABLE spells (
id VARCHAR(64) PRIMARY KEY, -- e.g. 'fire_law_3'
list_id VARCHAR(64) NOT NULL REFERENCES spell_lists(id),
spell_number INT NOT NULL, -- position in list (1..N)
name VARCHAR(64) NOT NULL,
spell_type VARCHAR(16) NOT NULL, -- bolt | ball | defensive | utility
pp_cost INT NOT NULL,
effect_json JSONB NOT NULL, -- damage, duration, modifiers
description TEXT,
UNIQUE (list_id, spell_number)
);
-- Character spell-list ranks
CREATE TABLE character_spell_lists (
character_id UUID NOT NULL REFERENCES characters(id),
list_id VARCHAR(64) NOT NULL REFERENCES spell_lists(id),
rank INT NOT NULL DEFAULT 0, -- highest spell_number accessible
experience BIGINT NOT NULL DEFAULT 0,
PRIMARY KEY (character_id, list_id)
);
```
---
## 8. Open Design Questions
- [ ] **Stat bonus curve**: exact `stat_bonus()` function shape — log2 base? Per-stat caps?
- [ ] **Rank caps**: hard cap per skill (50? 100?) or soft cap via DP scarcity?
- [ ] **PP vs. existing `mana` BIGINT column**: unify into PP, or keep mana as the raw pool and PP as derived? Recommend: rename `mana`→PP conceptually, derive max from formula.
- [ ] **Elemental crit tables**: how many (burn/frost/shock/sonic/poison)? Where stored (`skara-brae-common/crit-tables/`)?
- [ ] **Scroll/wand crafting**: which Enchanting recipes produce scrolls? List-restricted or universal?
- [ ] **DP from education**: how many DP per completed course? Balance against per-level DP.
- [ ] **Multi-realm casters**: should any class get a *second* realm at reduced effectiveness (e.g., Ranger = Essence + Channeling minor)? Rolemaster has semi/hybrid casters.
- [ ] **Archmage bonus**: cosmetic only, or small global casting bonus?
---
## Related Notes
- [Game Concept Overview](joplin://9cf8a2e701654ffbbd6512cc837c7e2f) — Skills, classes, stats, spell schools, education
- [Combat System & Stat Scaling Design](joplin://0ef630db4e3e4d6dab18ccaefccaaa5a) — d100 open-ended crit tables (this system generalizes them)
- [Mechanics Source Mapping](joplin://87a0f70b45c4453caae0fa2b5b8a96f9) — RoleMaster source mapping (expanded here)
- [Lore & World Building](joplin://867bdc9845624908a90928887a71c4c9) — Adventurers' Guild / Review Board, districts for learning
- [Tech Stack & Architecture](joplin://cecd2ef2690d4d1fba3450342aa63953) — DB schema, crate structure (skills.rs, spell engine)
- [Project Plan](joplin://d243ae57778343fca997d46b73d0ee3b) — Roadmap, MVP scope
- [Medals & Honours System](joplin://4877acc671ed4bfcb0d6bf2c5323c94a) — Skill/magic mastery feeds medals