Jump to content

[OFFERING] Scripter [Paid]


Recommended Posts

Hey!
Are you in need of a experienced scripter? Then you have opened the right topic!

What can you do?

I have 3 years experience of scripting and i have done many systems, maybe the biggest one is a gang system with gang ranks, gang rights and all that stuff. My goal is that my scripts are optimized and running smoothly without eating lot of resources and are also player-friendly. Do you have a ready server but it's resources needs fixing due to they being messy, having bugs or lagging the server? I can do that too!

Sounds awesome, what is the price then?

Scripting price depends on many things and it needs to be talked about before starting the project! There are a lot of possibilities. There are few examples:

Project-specific pricing: We do a plan about server needs, resources needed and all that stuff and i script the server and you pay X amount of money for it.
Resource-specific pricing: You pay for resources, not for whole server.


How can i pay?
I accept few payment methods listed here:

  • Paypal
  • Paysafecard*

 

I am interested. How to contact me?

You can contact me via Skype: tunturihuvila or send me email: [email protected]

 

*When paying with paysafecard, the price includes 25% fee

Edited by Dutchman101
added info on request of TS
Link to comment
  • 2 weeks later...

Hi!
My Skype is "tunturihuvila". You can contact me directly via Skype.
If you like to see some of my work live, visit this server
mtasa://212.66.193.182:22003

Not all stuff there are made by me, but for example the gangsystem i mentioned is running there. Welcome!

Link to comment

Hi!
You asked for some show about my previous works:

Here is screenshot of that gangpanel with almost all of windows included on it opened:

Here is to see my coding in a script which cleans default spawnzones of vehicles:

Spoiler

local destroyTime = 60000 --Time in milliseconds to destroy abandoned vehicles in spawnzones 

local spawnzones =
{
    {x = 2467.42, y = -1686.06, z = 12, width = 37, depth = 36, height = 15}, -- Grove Street
    {x = 1987.69, y = 1503.08, z = 8, width = 40, depth = 70, height = 25}, -- LV Pirate ship
    {x = -727.38, y = 930.76, z = 11, width = 60, depth = 60, height = 25}, -- Wooden house thing
    {x = -2420, y = -626.2, z = 125, width = 60, depth = 60, height = 30}, -- San Fierro antenna
}

local eventsWhenShouldUnhandle =
{
    ["onPlayerVehicleEnter"] = true,
    ["onPlayerVehicleExit"] = true,
    ["onPlayerWasted"] = true,
}
local vehicleDestroyTimers = {}
local handledElements = {}
local deadPlayerVehicles = {}

local function checkElement(element,colshapeToCompare)

    local occupants = {}
    local ret = true
    
    if not isElement(element) then ret = false end
    if element.type ~= "vehicle" then ret = false end
    if element.dimension ~= colshapeToCompare.dimension then ret = false end
    if element.interior ~= colshapeToCompare.interior then ret = false end
    
    if ret then occupants = getVehicleOccupants(element) end
    
    return ret,(next(occupants) == nil),occupants

end

local function destroyVehicle(vehicle)

    if isElement(vehicle) then
        destroyElement(vehicle)
        vehicleDestroyTimers[vehicle] = nil
    end

end

local function unhandlePlayer(player)

    player = (isElement(player) and player or source)

    if handledElements[player] then
        removeEventHandler("onPlayerVehicleExit",player,setVehicleDestroyTimer)
        removeEventHandler("onPlayerWasted",player,setVehicleDestroyTimer)
        removeEventHandler("onPlayerQuit",player,unhandlePlayer)
        deadPlayerVehicles[player] = nil
        handledElements[player] = nil
    end

end

local function handlePlayer(player)

    if not handledElements[player] then
        addEventHandler("onPlayerVehicleExit",player,setVehicleDestroyTimer)
        addEventHandler("onPlayerWasted",player,setVehicleDestroyTimer)
        addEventHandler("onPlayerQuit",player,unhandlePlayer)
        unsetVehicleDestroyTimer(source)
        deadPlayerVehicles[player] = source
        handledElements[player] = true
    end

end

local function handleVehicle(vehicle)

    if not handledElements[vehicle] then
        addEventHandler("onVehicleEnter",vehicle,handlePlayer)
        handledElements[vehicle] = true
    end

end

local function unhandleVehicle(vehicle)

    if handledElements[vehicle] then
        removeEventHandler("onVehicleEnter",vehicle,handlePlayer)
        handledElements[vehicle] = nil
    end

end

function unsetVehicleDestroyTimer(element)

    local isValid,isEmpty,occupants = checkElement(element,source)
    
    if not isValid then return end

    local timer = vehicleDestroyTimers[element]
    if timer then
        if isTimer(timer) then killTimer(timer) end 
        vehicleDestroyTimers[element] = nil
    end
    
    if not isEmpty then
        for seat,occupant in pairs(occupants) do
            unhandlePlayer(occupant)
        end
    end

end

function setVehicleDestroyTimer(element)
    
    if eventName == "onPlayerWasted" and deadPlayerVehicles[source] then
        element = deadPlayerVehicles[source]
    end
    
    local isValid,isEmpty,occupants = checkElement(element,source)
    
    if not isValid then return end
    
    if isEmpty then 
        if not (vehicleDestroyTimers[element] or isTimer(vehicleDestroyTimers[element])) then vehicleDestroyTimers[element] = setTimer(destroyVehicle,destroyTime,1,element) end
        handleVehicle(element)
    else
        unhandleVehicle(element)
        for seat,occupant in pairs(occupants) do
            handlePlayer(occupant)
        end
    end
    
    if eventsWhenShouldUnhandle[eventName] then
        unhandlePlayer(source)
    end

end

local function initScript()

    for _,zone in pairs(spawnzones) do
        local colshape = createColCuboid(zone.x,zone.y,zone.z,zone.width,zone.depth,zone.height)
        local vehiclesInColshape = getElementsWithinColShape(colshape,"vehicle")
        for _,vehicle in ipairs(vehiclesInColshape) do
            setVehicleDestroyTimer(vehicle)
        end
        addEventHandler("onColShapeHit",colshape,setVehicleDestroyTimer)
        addEventHandler("onColShapeLeave",colshape,unsetVehicleDestroyTimer)
    end

end

addEventHandler("onResourceStart",resourceRoot,initScript)

 

 

Link to comment
On 12.6.2017 at 08:14, Anubhav said:

If I wanted you to make that script, how much would you cost? (Your customers who need an price, can assume and estimate if it is in your budget, from this pricing)

Thanks for your question and sorry for late reply! That greenzone cleaner script would be something about 4-5€ probably. And that gangsystem is kinda big one to describe any standard price. Maybe something like 30-50€. I really cant say any accurate price. Pricing of bigger systems needed to be discussed and thinked.

Edited by Jirppa
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...