Skip to content

Magazines and Newspapers - #5538

Merged
walksanatora merged 4 commits into
ss14Starlight:starlight-devfrom
Conflee:newspapers-and-magazines
Aug 10, 2026
Merged

Magazines and Newspapers#5538
walksanatora merged 4 commits into
ss14Starlight:starlight-devfrom
Conflee:newspapers-and-magazines

Conversation

@Conflee

@Conflee Conflee commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Short description

Ports Magazines and Newspapers from Ephemeral Space, with a number of edits to names and descriptions to work within Starlight's lore.

There are a total of 11 Newspapers, 21 Magazines, and 14 'Zines'. Newspapers and Magazines are more 'legit', while 'Zines' are conspiracy theories and revolutionary content.

Why we need to add this

A new avenue to introduce lore and worldbuilding to players mid-round. They are very immersive and fun decorations as well, for waiting rooms in Medical etc.

The Newspapers specifically can be periodically cycled out with new dates and news if we feel like it, or we can just say there's a bunch of old papers laying around.

Media (Video/Screenshots)

image

Checks

  • I do not require assistance to complete the PR.
  • Before posting/requesting review of a PR, I have verified that the changes work.
  • I have added screenshots/videos of the changes, or this PR does not change in-game mechanics.
  • I affirm that my changes are licensed under the MIT License and grant permission for use in this repository under its conditions.

Changelog

🆑 Conflee, Flareguy

  • add: Added Newspapers and Magazines, newpropr with worldbuilding and lore for mappers to decorate with. 11 Newspapers, 21 'legit' Magazines, and 14 'disreputable' 'Zines are implemented currently.

@Conflee
Conflee requested a review from a team August 6, 2026 04:54
@github-actions github-actions Bot added S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. Changes: Sprites Changes: No C# Changes: Prototypes size/M and removed S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 6, 2026
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Summary

Adds 11 newspapers, 21 magazines, and 14 revolutionary or conspiracy “Zines” ported from Ephemeral Space and adapted to Starlight lore.

Gameplay and user impact

  • Adds lore and worldbuilding items for rounds.
  • Adds decorative periodicals for locations such as Medical waiting rooms.
  • Adds edible, flammable paper items with in-hand representations.
  • Adds random spawners for all, legitimate, contraband, newspaper, puzzle, space-people, and fashion periodicals.
  • Adds dated Galaxy NOW issues from October 2525 through January 2526.
  • Adds 46 periodical entries to the uncommon MaintFluffTable loot group.

Notable implementation changes

  • Adds shared BaseMagazine and BaseNewspaper prototypes.
  • Adds periodical prototypes under Resources/Prototypes/_ES/.
  • Adds combined, legitimate-only, contraband-only, and category-specific random spawners.
  • Adds magazine, newspaper, and legitimate spawner marker states.
  • Adds texture metadata, licensing information, and Ephemeral Space asset attribution.
  • Credits Conflee and Flareguy in the PR description.

Risk areas

  • The large prototype catalog increases the risk of incorrect inheritance, sprite-state references, names, descriptions, and item categorization.
  • Random spawner tables could produce unintended frequency or contraband distribution.
  • Newspaper dates and lore references could become stale without future maintenance.
  • Texture metadata and sprite states could become inconsistent with prototype references.
  • The available context provides no automated test, validation command, or test result.

Guideline gaps

  • No localization entries are visible for the new names and descriptions.
  • No explanatory documentation describes the periodical content, update process, or spawner usage.
  • No validation evidence is included.
  • The available file summary does not show Shared-first placement rationale or Starlight ownership comments.
  • The listed changed files do not include a changelog file, so changelog formatting and inclusion cannot be verified.

Walkthrough

Added newspaper and magazine prototypes, texture metadata, categorized random spawners, and uncommon maintenance-fluff loot entries.

Changes

Periodical content and spawning

Layer / File(s) Summary
Publication prototypes and assets
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml, Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml, Resources/Textures/_ES/Objects/Misc/magazines.rsi/meta.json
Added shared newspaper and magazine prototypes, issue variants, and magazine texture metadata.
Random periodical spawners
Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals.yml, Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals_specific.yml, Resources/Textures/_ES/Markers/spawners.rsi/meta.json
Added combined, legitimate-only, contraband-only, newspaper, puzzle, space-people, and fashion random spawners with marker texture metadata.
Maintenance loot integration
Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml
Added 46 newspaper and magazine entries to the uncommon maintenance-fluff loot group.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Suggested labels: S: Needs Review

Suggested reviewers: redmushie

Sequence Diagram(s)

sequenceDiagram
  participant RandomSpawner
  participant PeriodicalPool
  participant PeriodicalEntity
  RandomSpawner->>PeriodicalPool: Select configured prototype
  PeriodicalPool->>PeriodicalEntity: Spawn newspaper or magazine
Loading
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly and concisely identifies the primary change: adding magazines and newspapers.
Description check ✅ Passed The description directly explains the added newspapers, magazines, zines, lore integration, and intended decorative use.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals.yml`:
- Around line 26-59: Add MagazineFirearms to each regular periodical selector:
ESSpawnerRandomPeriodicals in
Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals.yml lines
26-59, ESSpawnerRandomPeriodicalsLegit in the same file lines 85-105, and the
maintenance periodical selector in
Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml lines
175-223.

In `@Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml`:
- Around line 5-6: Localize every player-facing publication name, description,
issue name, and headline description using the repository’s Fluent localization
pattern. Update Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml at
lines 5-6 and 22-23, and
Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml at lines 5-6 and
20-21; add the corresponding Fluent entries and replace each raw value with its
localization key.
- Line 23: Correct the player-visible spelling errors in the descriptions near
the shown entries: change “Perservence” to “Perseverance,” “Vunerabilities” to
“Vulnerabilities,” “Vigiliant” to “Vigilant,” “orchastrated” to “orchestrated,”
and “competitior” to “competitor.”

In `@Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml`:
- Around line 2-6: Mark the BaseNewspaper prototype as abstract while preserving
its existing parent, name, and description so it remains available for
inheritance but cannot be spawned as a standalone entity.

In `@Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml`:
- Line 223: Remove the trailing whitespace from the comment line containing
“Starlight End” in the maintenance prototype, leaving the comment text
unchanged.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 9a9c9e06-0997-4f79-b539-d1b911b33f0a

📥 Commits

Reviewing files that changed from the base of the PR and between bb198f1 and 2a57b1b.

⛔ Files ignored due to path filters (16)
  • Resources/Textures/_ES/Markers/spawners.rsi/legit.png is excluded by !**/*.png
  • Resources/Textures/_ES/Markers/spawners.rsi/magazine.png is excluded by !**/*.png
  • Resources/Textures/_ES/Markers/spawners.rsi/newspaper.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/cognitowood.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/cooking.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/crossword.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/earth_news.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/fashion.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/guns.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/medical.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/newspaper.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/popular_spacepeople.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/space.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/wordsearch.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/zine_conspiracy.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/zine_revolutionary.png is excluded by !**/*.png
📒 Files selected for processing (7)
  • Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml
  • Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals.yml
  • Resources/Prototypes/_ES/Entities/Markers/Spawners/Random/periodicals_specific.yml
  • Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml
  • Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml
  • Resources/Textures/_ES/Markers/spawners.rsi/meta.json
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/meta.json

Comment thread Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml
Comment thread Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml Outdated
Comment thread Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml
Comment thread Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml Outdated
@Conflee
Conflee marked this pull request as draft August 6, 2026 15:34
@Conflee
Conflee marked this pull request as ready for review August 6, 2026 15:56
@Conflee

Conflee commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

github services are down, rerun tests later

@Conflee Conflee closed this Aug 6, 2026
@Conflee Conflee reopened this Aug 6, 2026
@Conflee

Conflee commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

Adding in-hands since the tests are stalling due to github issues anyway and I have time to kill.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml (2)

94-101: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Remove repeated inherited size values.

Each prototype inherits size: Small from BaseMagazine. Keep the Item component for inhandVisuals, but remove its repeated size: Small field.

As per path instructions, flag redundant state updates.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml` around lines 94
- 101, Remove the redundant inherited size: Small field while preserving each
prototype’s Item component and inhandVisuals entries. Apply this in
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml at lines 94-101,
114-121, 134-141, 154-161, 174-181, 194-201, 214-221, 259-266, 321-328, 366-373,
and 428-435; each site requires the same removal.

Source: Path instructions


58-60: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Use explicit units for edible delays.

Change both delay: 7 and forceFeedDelay: 7 to 7s. This makes the duration unit explicit.

  • Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml#L58-L60: use 7s for both delay fields.
  • Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml#L58-L60: use 7s for both delay fields.

As per path instructions, use explicit units such as 5s where the field supports them.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml` around lines 58
- 60, Use explicit seconds units for both edible delay fields: change delay and
forceFeedDelay to 7s in
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml lines 58-60 and
Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml lines 58-60.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml`:
- Around line 13-78: Move the Starlight-specific in-hand visuals and related
prototype changes from
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml:13-78 and
Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml:15-78 into
matching _Starlight prototypes, updating all references so the _ES files retain
only upstream content. Move the Starlight-owned magazine states from
Resources/Textures/_ES/Objects/Misc/magazines.rsi/meta.json:11-30 into a
dedicated _Starlight RSI and update prototype references; retain them in the
shared RSI only with a concrete technical justification.

---

Nitpick comments:
In `@Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml`:
- Around line 94-101: Remove the redundant inherited size: Small field while
preserving each prototype’s Item component and inhandVisuals entries. Apply this
in Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml at lines 94-101,
114-121, 134-141, 154-161, 174-181, 194-201, 214-221, 259-266, 321-328, 366-373,
and 428-435; each site requires the same removal.
- Around line 58-60: Use explicit seconds units for both edible delay fields:
change delay and forceFeedDelay to 7s in
Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml lines 58-60 and
Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml lines 58-60.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: bcade0fd-9993-4f64-83c3-b93b805a2398

📥 Commits

Reviewing files that changed from the base of the PR and between aea94ff and c1bca7e.

⛔ Files ignored due to path filters (4)
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/magazine-inhand-left.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/magazine-inhand-right.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/newspaper-inhand-left.png is excluded by !**/*.png
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/newspaper-inhand-right.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml
  • Resources/Prototypes/_ES/Entities/Objects/Misc/newspapers.yml
  • Resources/Textures/_ES/Objects/Misc/magazines.rsi/meta.json

Comment thread Resources/Prototypes/_ES/Entities/Objects/Misc/magazines.yml
@Conflee Conflee closed this Aug 6, 2026
@Conflee Conflee reopened this Aug 6, 2026
@Conflee Conflee closed this Aug 6, 2026
@Conflee Conflee reopened this Aug 6, 2026
@Conflee Conflee added the S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. label Aug 7, 2026
@Conflee Conflee closed this Aug 7, 2026
@Conflee Conflee reopened this Aug 7, 2026
@starlightgithub starlightgithub Bot added S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 10, 2026
@walksanatora
walksanatora added this pull request to the merge queue Aug 10, 2026
Merged via the queue into ss14Starlight:starlight-dev with commit 8b1d60a Aug 10, 2026
24 checks passed
starlightgithub Bot added a commit that referenced this pull request Aug 10, 2026
@sowelipililimute

Copy link
Copy Markdown
Contributor

glad to see ephemeral space's parasites integrated into the lore. can't wait until the full gamemode is ported as well! love seeing cool things get ported :]

@Conflee

Conflee commented Aug 28, 2026

Copy link
Copy Markdown
Contributor Author

glad to see ephemeral space's parasites integrated into the lore. can't wait until the full gamemode is ported as well! love seeing cool things get ported :]

I'd love to at some point yea, porting roles from ES is always a bit scary looking though considering they redid their entire role selection system. One day though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: No C# Changes: Prototypes Changes: Sprites S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. size/M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants