CS_REVIVESTATION

Allows players to revive at designated stations, even if there are no medics available. The system is fully configurable with custom NPCs, job restrictions, licenses, prices.


Installation

start cs_revivestation

Configuration

Config.lua

This configuration file controls revivestation stations, NPCs, job restrictions, deathcause fees, markers, blips, and notifications.

General Settings
  • Locale – Language setting. Example: "EN".

  • reviveButtonBaseWidth – Width of the revive button. Example: 3.5.

Station Settings

Each station can be fully customized:

  • Position – vector3 coordinates of the station.

  • spawnPed – true / false – Spawn an NPC.

  • pedModel – NPC model. Example: "s_m_m_doctor_01".

  • pedPosition – vector4 coordinates & heading for the NPC.

Settings Table
  • maxDeadPlayerDistance – Maximum distance to revive a player.

  • onlyForJob – Table of job restrictions with minimum rank. Example: { police = {minrank = 5} }.

  • onlyWithLicense – true / false – Restrict access to players with a license.

  • maxMedics – Maximum number of medics online before station is unavailable.

  • medicJobs – Jobs considered as medics. Example: { "ambulance", "police" }.

  • price – Base price for reviving a player. Example: 50.

  • feeForEachMedic – Additional fee per medic online. Example: 500.

  • account – Accepted accounts. Example: { "money", "bank" }.

  • deathReasonPrices – Prices per death cause. Example: { ["Fire"]=600, ["Pistol"]=150 }.

Markers & Blips
  • Marker – Customize the 3D marker for each station (type, scale, color, distance).

  • blip – Customize the map blip (label, sprite, color, scale).

  • GeneralMarker / GeneralBlip – Defaults used if station-specific settings are not configured.

Functions & Exports

Server Functions

cs_revivestation.checkIsPlayerDead(pedId, serverId) -- Returns true if the player is dead
cs_revivestation.Revive(serverId) -- Revives a player

Client Functions

cs_revivestation.afterRevive(playerPedId) -- Triggered after a player is revived
cs_revivestation.ShowUI() -- Opens revivestation UI
cs_revivestation.HideUI() -- Closes revivestation UI

Notifications

Notification(title, msg, type) -- HUD notification
HelpNotification(msg) -- ESX help notification

Notification Types

NotifyTypes = { ["info"]="info", ["error"]="error", ["success"]="success", ["warning"]="warning" }

Exports

exports['cs_revivestation']:Revive(serverId) -- Revive a player
exports['cs_revivestation']:checkIsPlayerDead(pedId, serverId) -- Check if player is dead

Both functions are also available as events with the same names.


Webhook Configuration

webhooks.lua
WebhookRevivestation = {
    Colors = { ["Main"] = 43775 },
    Main = "https://discord.com/api/webhooks/xxxxxxxxxxxxxxxxxxxx",
}
  • Sends a message when a player is revived, including medic name, price, and deathcause.

Tip: Leave the URL as an empty string "" if you do not want the webhook to trigger for that event.


Death Causes
  • The list of death causes defines pricing per cause:

deathcauses = {
    [joaat('WEAPON_PISTOL')] = 'Pistol',
    [joaat('WEAPON_FIRE')] = 'Fire',
    [joaat('WEAPON_KNIFE')] = 'Knife',
    [joaat('WEAPON_ASSAULTRIFLE')] = 'Assault Rifle',
    [joaat('WEAPON_SNIPERRIFLE')] = 'Sniper Rifle',
    [joaat('WEAPON_EXPLOSION')] = 'Explosion',
    [joaat('WEAPON_RUN_OVER_BY_CAR')] = 'Ranover by Vehicle',
    [joaat('WEAPON_DROWNING')] = 'Drowned',
    [joaat('WEAPON_FALL')] = 'Falling',
    -- ... add all other relevant causes
}

Notes
  • Multiple revivestation stations are supported.

  • NPCs, markers, and blips are fully configurable.

  • Prices can vary per deathcause and per medic online.

  • Works with both old and new ESX versions.

  • UI colors can be changed in: html/assets/css/config.css.

  • Locales included: English (EN) and German (DE).


Support

If you have any further questions, open a ticket on our discord server: discord.gg/core-services

Last updated

Was this helpful?