Freemode Teams (anti-godmode-abuse)

Here’s a quick resource to disallow people using common trainer godmode functionality from killing other players.

__resource.lua

description 'Sets friendly fire values for freemode sessions'
version '0.1.0'
resource_manifest_version '44febabe-d386-4d18-afbe-5e627f4af937'

client_script 'freemodeteams_client.lua'

freemodeteams_client.lua

CreateThread(function()
    -- relationship setup
    AddRelationshipGroup('freemode_god')
    AddRelationshipGroup('freemode_regular')

    SetRelationshipBetweenGroups(1, 'freemode_god', 'freemode_regular')
    SetRelationshipBetweenGroups(1, 'freemode_regular', 'freemode_god')
    SetRelationshipBetweenGroups(1, 'freemode_god', 'freemode_god')
    SetRelationshipBetweenGroups(5, 'freemode_regular', 'freemode_regular')

    while true do
        Wait(0)

        NetworkSetFriendlyFireOption(false)

        local pedId = PlayerPedId()
        local targetGroup

        if GetPlayerInvincible(PlayerId()) then
            targetGroup = 'freemode_god'
        else
            targetGroup = 'freemode_regular'
        end

        SetPedRelationshipGroupHash(pedId, targetGroup)
    end
end)

Exercise to the reader: cooldowns so that people can’t quickly toggle freemode on/off whenever they’re ‘safe’, perhaps some kind of better indicator.

13 Likes

Thank you for this! :slight_smile:

When I read:

Freemode Teams (anti-godmode-abuse)

I was just happy as fuckt that there was a guy that created this
So one question more, This will be working for every mod menu with Godmode option?

Cheers, Timo N.

Very Nice


+1