nss_pinboard

nss_pinboard

€59.99

Add to Basket

DESCRIPTION

Create bulletin boards where players can pin messages.

  • Configurable...
    • Locations (prepared locations and ymap are included)
    • Discord webhook
      • Optional: anonymous notifications (author of new pinboard post or remover of pinboard posts is hidden in Discord notification).
      • Optional: Discord notifications about new and removed pinboard posts can be posted in separate Discord channels. (In combination with anonymous notifications you can notify your Discord users about new and/or removed pinboard posts anonymously if you want to inform you users OOC.)
      • Optional: Discord webhooks are configurable each board (overwrites the global configuration for Discord webhooks).
    • Map blip
      • If no blip is set no blips are shown on the map
      • You can configure each pinboard if blip is visible or not
    • Prompt radius
    • Optional automatic expiration duration
    • Prompt open key
    • Global admin group permissions
      • Admins can use special command to unpin all notices at once (for all locations or specific locations)
      • Admins can always unpin notices
    • Global job group permissions for removing (e.g. the sherif can unpin notices)
    • Job group permissions per board for adding (e.g. only the sherif can pin notices) 
    • Job group permissions per board for access (if restricted to sherifs only sherifs can use prompt to open board and see blip on map)
    • Callbacks for permission to view a board and/or create posts on specific boards (e.g. for taxed based access).
    • Languages
    • Sorting of pinned notices
    • Pin everywhere at once feature (persmissions configurable for single characters and persmission groups)
      • Boards are groupable so the "pin everywhere at once" consider the board group to prevent posting in hidden boards of other board groups.
      • Post "everywhere" for normal users if they pay a fee. Configurable per board group.
  • Different notice types: text or image
    • Lighweight text editor for text based notices
    • Multiple backgrounds for text based notices
    • Disable text or image creation globally or per board.
  • Two board styles (outdoor and indoor)
  • Optional "auto close on combat or damage" feature
  • Day/night mode
  • Full responsive design

VIDEO

DEPENDENCIES

  • VorpCore

SUPPORT & INFO

  • Discord
  • Read the README.md for setup instructions.
  • This script is encrypted.

CHANGELOG

  • v1.5.0 (2026-03-08)
    • Add in-game admin board management. Admins can place, edit, delete, reposition and teleport to boards directly in-game via a configurable chat command (`Config.AdminBoardCommand`, default: `boardadmin`).
    • Boards created via the admin panel are stored in the database (`nss_pinboard_boards` table) and merged with `config.lua` boards on startup. Database boards take precedence over config.lua boards with the same city name.
    • Add live placement preview with walk/fine mode and position/heading sliders.
    • Add board reposition: move an existing board to a new position via placement mode from the board list.
    • Add "Migrate Config Boards" button to copy all `config.lua` boards into the database (callbacks are not migrated).
    • Add proximity-based prop spawning for database boards (chunk system, configurable via `Config.BoardViewDistance`).
    • Add Lua callback support for database boards (stored as source text, compiled at runtime via `load()`).
    • Add configurable prompt offset for database boards (`Config.DbBoardPromptOffset`, default: `0.5`).
    • Fix blip cleanup on resource stop: blips were not removed because the wrong handle was stored.
    • Block admin panel while a pinboard is open.
    • UI improvements: icon buttons, scrollable dialogs, side-by-side job restriction columns, consistent title styling.
    • Add freestanding board prop toggle (`has_foot`). Boards can use the freestanding prop model with feet (`mp005_p_mp_bountyboard02x`). Toggle via G-key during placement or via the foot checkbox in the placement UI.
    • Add two board types: **Board with Prop** (spawns a bounty board prop) and **Trigger Point Only** (no prop, just a trigger location). New boards prompt for type selection. Config-migrated boards are automatically set to trigger-only. Board type is shown as icon in the board list.- Add admin audit log for board management. All board create, edit, delete and import actions are now logged with character name, Steam ID and timestamp. Edit actions include a detailed diff of changed fields. Logs can be viewed via a global log button or per-board log icon in the admin panel. Infinite scrolling loads entries in batches of 50.
    •  Add `Config.BoardLogRetentionDays` (default: `90`). Board log entries older than this many days are automatically deleted on resource start. Set to `nil` to keep log entries forever.
  • v1.4.1 (2026-02-15)
    • Fix support for webp images.
  • v1.4.0 (2025-11-22)
    • Add `restrict_view_by_callback` to poster config to allow custom view restrictions via callback function, e.g. for subscriptions.
    • Add `restrict_create_by_callback` to poster config to allow custom creation restrictions via callback function, e.g. for subscriptions.
    • Add `nss_pinboard:reInitialize` client event to re-initialize pinboard data without reloading the resource, e.g. if subscription status changed.
  • v1.3.5 (2025-11-17)
    • Move discord webhooks from `config.lua` to a server readonly config file `secure.lua` to hide webhook urls from clients.
    • `Config.DiscordWebhook` is now in `secure.lua`.
    • Individual webhooks for posters are now in `secure.lua` as well, see `Config.PosterIndividualDiscordWebhooks`.
  • v1.3.4 (2025-02-17)
    • Add events to open/close pinboard (see README.MD for more information).
  • v1.3.3 (2025-01-14)
    • Fix `RemoveBlip` error if no number is given (since client artefact 12295).
  • v1.3.2 (2024-11-10)
    • Add optional `Config.UseZAxisForOpenPromptRadius` to enable z axis check for open prompt. See `config.demo.lua` for  more information.
  • v1.3.1 (2024-03-13)
    • Add `Config.ImageServerBlacklist` to block specific image servers. See `config.demo.lua` for more information.
    • Add FAQ to `README.md`.
  • v1.3.0 (2024-03-07)
    • Extend comments of `config.demo.lua` for more clarity.
    • Add some debug prints to `actions.lua` because in newer versions of `vorp_core` sometimes (especially on many players) no char data available if should.
    • Add torn sheet for broken image (e.g. that can no longer be found).
    • Add alternative style of bulletin board. See examples in `config.demo.lua` with new poster configuration attribute `alternative_style`.
    • Add new optional "close bulletin board on damage or combat" feature. See `Config.HideOnCombatOrDamage` in `config.demo.lua`.
  • v1.2.2 (2024-02-07)
    • Image urls with search params like `https://example.com/image.jpg?xyz=123` are now supported, too.
  • v1.2.1 (2024-01-18)
    • Update example `map/bulletin_boards_config.lua` and add missing `group` property.
  • v1.2.0 (2023-07-13)
    • Add option to disable creation of text or image posts (globally or per board).
    • Add prev/next buttons to poster details for better navigation.
    • Add "pinboard service". Players can pay a fee to post everywhere at once in a pinboard group.
  • v1.1.9 (2023-07-05)
    • Fix `jpeg` support for images (currently `jpg`, `jpeg`, `png` and `webm` are supported).
  • v1.1.8 (2023-03-23)
    • Add new required board property `group`. Restricts "post to all" feature to specific board groups.
    • Add new optional board property `restrict_view_by_jobs`. Restricts the access to view a board (and blip) to one or more specific jobs.
  • v1.1.7 (2023-03-17)
    • Webhooks can now optionally configured each board. 
  • v1.1.6
    • `Config.JobRemovePermissions` now checks correctly if job grade is equal or higher than the required grade.
  • v1.1.5
    • Add new `restrict_create_by_jobs` in `Config.Posters` to restrict the creation of new posters to one or more specific jobs. See `config.demo.lua` for more information.
  • v1.1.4
    • Remove unnecessary print output.
  • v1.1.3
    • Add optional new config attribute `Config.DiscordWebhook.webhook_url_new` for only new pinboard notifications.
    • Add optional new config attribute `Config.DiscordWebhook.anonymous_new` which hides the character name  for webhook_url_new notifications. This have no effect to webhook_url notifications.
    • Add optional new config attribute `Config.DiscordWebhook.webhook_url_removed` for only removed pinboard  notifications.
    • Add optional new config attribute `Config.DiscordWebhook.anonymous_remover` which hides the character name  for webhook_url_removed notifications. This have no effect to webhook_url notifications.
    • Change config attribute `Config.DiscordWebhook.webhook_url` to be optional. It still sends all types of  notifications to the same webhook but all authors and removers are not anonymous.
    • Add new translation discord_anonymous_user for anonymous characters for `webhook_url_new` and `webhook_url_removed`  notifications.
    • Moved changelog from README.md to CHANGELOG.md.
  • v1.1.2
    • Add `hide_blip` property for `Config.Posters`. If set to `true` no blip is shown on the map for the related pinboard.
  • v1.1.1
    • Bugfix: Order of text sections are now correct if inserted between two existing sections.
  • v1.1.0
    • Add possibility to pin a new note everywhere at once.
    • Permissions of new feature is configurable for groups and character names (full names).
    • Add new language keys `discord_location_everywhere`, `post_everywhere_at_once`, `post_everywhere_at_once_every_where`  and `post_everywhere_at_once_only_here`.
    • Update discord webhook to show as location "everwhere" if someone uses the new feature.
    • Admins always have the permission to use the new feature.
  • v1.0.2
    • Results of automated processes are shown in discord more clear, e.g. "System" instead of character name.
    • Results of console commands are shown in discord more clear, e.g. "Marti McFly (via Console)".
    • Add `Config.DiscordWebhook.system_user_alias` to config file, see example in `config.demo.lua`.
    • Add key `discord_console_command` to languages.
    • Fix to many linebreaks in poster text.
  • v1.0.1
    • Add sorting of notices (configurable: ascending/descending).