• Content count

  • Joined

  • Last visited

  • Raffle Tickets


Everything posted by Chalwk

  1. This script provides a simple set of timer functions for use in other scripts. Simply require this script in your script to use the following functions: timer:new() timer:start() timer:stop() timer:pause() timer:resume() timer:get() Place this script in the server's root directory. See 'Example-Script' for demo usage. Example-Script.lua sapp-timer-library.lua Edit: In the description for the example script, it says that it prints the elapsed time a player has been alive. Just to clarify, what it's actually doing is calculating the total time someone has spent alive for the lifetime of that game.
  2. Bug fix - This will now work on PC (retail)
  3. Script: Name Replacer Description: Change blacklisted names into something funny! During pre-join, a player's name is cross-checked against a blacklist table. If a match is made, their name will be changed to a random one from a table called "random_names". As random names get assigned, they become marked as "used" until the player quits the server. This is to prevent someone else from being assigned the same random name. UPDATED 18/09/2022 - Bug fix - This will now work on PC (retail) Name Replacer.lua
  4. A ping kicker with limits based on player count. See the settings below for more. -- config starts -- local PingKicker = { -- How often to check player pings (in seconds): -- Default: 5s -- check_interval = 5, -- Players will be warned this many times before being kicked: -- Default: 5 -- warnings = 5, -- Reset a player's warnings if their ping has been below the current limit for this many seconds: -- Default: 20s -- grace_period = 20, -- Default ping limit: -- Default: 1000 -- default_limit = 1000, -- Exclude admins from ping kicking? -- Default: true -- admin_immunity = true, -- Admins with a level >= this level will be excluded from ping kicking. -- Default: 1 -- admin_level = 1, -- Dynamic ping limit based on player count: -- Min Players, Max Players, Ping Limit: -- limits = { { 1, 4, 750 }, -- 1 to 4 players (if 750+ ping) { 5, 8, 450 }, -- 5 to 8 players (if 450+ ping) { 9, 12, 375 }, -- 9 to 12 players (if 375+ ping) { 13, 16, 200 } -- 13 to 16 players (if 200+ ping) }, -- This message will be sent to the player when kicked: -- kick_message = 'Ping is too high! Limit: $limit (ms), Your Ping: $ping (ms).', -- This message will be sent to the player if their ping has been -- below the current limit for the grace period: -- grace_period_expired = 'Grace period expired. Ping warnings reset.', -- Send this multi-line message to the player when they're warned: -- warning_message = { '--- [ HIGH PING WARNING ] ---', 'Ping is too high! Limit: $limit (ms), Your Ping: $ping (ms).', 'Please try to lower it if possible.', 'Warnings Left: $strikes/$max_warnings' } } -- config ends -- Dynamic Ping Kicker.lua
  5. Vote to kick disruptive players from the server. Vote command syntax: /votekick (player id) Vote list command syntax: /votelist Settings: -- config starts -- local VoteKick = { -- Command used to initiate a vote kick: -- vote_command = 'votekick', -- Command used to view a list of players who can be voted out: -- vote_list_command = 'votelist', -- Minimum number of players required to initiate a vote kick: -- Default: 2 players -- minimum_players = 2, -- Percentage of online players needed to vote yes to kick a player: -- Default: 60% -- vote_percentage = 60, -- A players votes will be reset if they're not voted out within this time (in seconds): -- Default: 30s -- vote_grace_period = 30, -- If a player quits and returns to the server within this time (in seconds), -- their vote will remain in vote kick tally: -- Default: 30s -- quit_grace_period = 30, -- If true, players will be able to vote anonymously: -- Default: false -- anonymous_votes = false, -- If true, a message will be displayed when a new vote kick has been initiated: -- Default: true -- announce_on_initiate = true, -- If true, admins will be immune: -- Default: true -- admin_immunity = true, -- A message relay function temporarily removes the msg_prefix and restores -- it to this when done: -- Default: **SAPP** -- prefix = '**SAPP**' } -- config ends -- Vote Kick.lua
  6. Yes.
  7. A custom vehicle spawner that works on any game mode. This script will spawn vehicles at pre-defined coordinates. If a vehicle has moved from its original position and isn't occupied, it will be moved back to its original position after a delay. This script was designed to fix a problem with vehicles that are created using spawn_object() or execute_command("spawn ... ") on race game types - they do not respawn at the origin x,y,z. NOTE: If you're using this on any RACE game type, you must set the game type flag "VEHICLE RESPAWN TIME" to NEVER. Custom Vehicle Spawner.lua
  8. Completely rewrote this script from scratch.
  9. This script automatically loads scripts on a per map, per game mode basis. See script config for more. Script Manager.lua
  10. Yeah, it's basically oddball, except you have more control over where the objective spawns, and how long until it respawns if dropped. Some additional features will be added in a future update.
  11. Hunter-Prey is a custom FFA game inspired by COD: Nintendo DS variant. The flag is placed in the middle of the map. Survive for as long as possible with the flag. When the time is up or when the kill limit is reached, the player that had the flag for the longest time wins. If both time and kill limit are set to infinity, the winner is the player that had the flag for the longest time upon ending the game. Hunter-Prey.lua
  12. A simple script to prevent other players from impersonating your community members. Settings: local settings = { ------------------- -- config starts -- ------------------- -- Default action to take against people who are caught impersonating: -- Valid actions are 'kick' & 'ban' -- action = 'kick', -- Default ban time against impersonators: -- ban_time = 10, -- (In Minutes) -- Set to zero to ban permanently -- Punish reason: -- reason = 'Impersonating', -- -- Add your community members here: -- users = { -- Example: -- If a player joins the server with the name "ExampleGamerTag" and they are not on this list, -- they will be kicked or banned (depending on the action you set above). -- They must also join with the same IP address or hash as the one you have listed here. -- Each entry can have multiple IP addresses or hashes. ['ExampleGamerTag'] = { [''] = true, [''] = true, ['xxxxxxxxxxxxxxxxxxxxxxxxxxxx01'] = true, ['xxxxxxxxxxxxxxxxxxxxxxxxxxxx02'] = true, }, -- repeat the structure to add more entries ['name_here'] = { ['ip 1'] = true, ['ip 2'] = true, ['hash1'] = true, ['hash2'] = true, ['hash3'] = true, ['etc...'] = true, } } ----------------- -- config ends -- ----------------- } Anti Impersonator.lua
  13. In Sabotage, a bomb spawns in the middle of the map. Both teams have to try to destroy the opposing team's base simultaneously. The team that destroys the opposing team's base wins. The team who planted the bomb has to defend it. The opposing team has to defuse it. * Hold the crouch key while standing on the flag podium to plant or defuse the bomb. See this game in action on Halo: PC (retail) IP: Server name: Little NZ #7 | Sabotage Video Demonstrations: Sabotage.lua
  14. Account passwords can now contain spaces.
  15. A fully integrated Halo 3 style ranking system for SAPP servers. Players earn credits for killing, scoring and achievements, such as sprees, kill-combos and more! Stats are permanently saved to a local database called ranks.json. Players are required to create a service record (account) in-game to use this mod. See the command syntax section on the release page for more information. RELEASE PAGE
  16. The version of Market with an account-creation system now supports spaces in passwords.
  17. Script Name: Market, for SAPP (PC & CE) Description: Earn money for killing and scoring. Use your money to buy the following: Type Command Price Catalogue Message Camouflage m1 $60 Duration: 30 seconds God Mode m2 $200 Duration: 30 seconds Grenades m3 $30 2x of each Overshield m4 $60 Shield Percentage: Full Shield Health m5 $100 Health Percentage: Full Speed Boost m6 $60 1.3x Teleport m7 $350 Teleport with flashlight key. Damage Boost m8 $500 1.3x damage infliction All purchase commands (including teleport) have a cooldown. Default: 60 seconds each. Command to view available items for purchase: /market Command to view current balance: /money Two available admin-override commands: 1. /deposit <pid> <amount> 2. /withdraw <pid> <amount> There are two versions of this script. -------------------------------------------------------------------------------------------------------------------------------- Version 1. Balances are permanently saved to a local database. Players are required to create an account (in-game) to use this script Account Management Commands: 1. /account create <username> <password> 2. /account login <username> <password> If you have an existing account, your balance will be restored when you log into your account. Some data is cached for a period of time, based on your IP address. If your IP changes or the server is restarted, you will have to log in again. If a user doesn't log into an account after 30 days, it's considered stale and will be deleted. This script requires that the following JSON library be installed on your server. Place in the same location as strings.dll & sapp.dll: -------------------------------------------------------------------------------------------------------------------------------- Version 2. Stats are reset at the beginning of each game and there is no account creation system. This version does not require the JSON library mentioned above. -------------------------------------------------------------------------------------------------------------------------------- PICK YOUR FLAVOUR: Download Page More features are planned for this script. Keep an eye out for regular updates on the GitHub.
  18. Set your next spawn point with a custom command (COD inspired). * Set the command (default: /ti) * Change the number of uses (per game) - default 5 Tactical Insertion.lua
  19. Make frags and plasmas behave like stun grenades. When someone is damaged by a grenade, their speed is reduced to 0.5% for 5-10 seconds (depending on damage type). Plasma explosion = 5 seconds Plasma sticky = 10 seconds Frag explosion = 5 seconds Stun Grenades.lua
  20. Description: Force a player to say something. Command syntax: /fc <player> <message> Example: /fc 1 Hello World! Output: Player 1 will say "Chalwk: Hello World!" Note: For players using Chimera, fake chat messages will appear as server messages, thus will be obvious they're fake. Force-Chat.lua
  21. Rewrote this script from scratch and added a couple of new settings.
  22. Frag Nation: A grenade mini-game. Each player is given two of each grenade and an empty plasma pistol. Every time you kill a player (with a grenade), you will be rewarded with a grenade. If you have no grenades, you will be limited to melee combat. Features: - Set the number of kills required to win the game. - Set the number number of grenades each player starts with. - Set the number of grenades each player is rewarded with for each kill. - Define the player's primary weapon (Default: Empty plasma pistol) * Without a weapon, you cannot throw grenades! - Set the starting ammo for the player's primary weapon. - Enable or disable object interaction for weapons, vehicles and equipment. [!] NOTE [!] This script is intended for use on STOCK maps only. Frag Nation.lua
  23. Players spawn with a sniper rifle and pistol, headshots only, 25 to win. * Other weapons & vehicles do not spawn. * You can use powerups (i.e, camo, os). * Optional infinite ammo, bottomless clip and ability to disable grenades. * Set the default score limit. Swat.lua
  24. GAME MODE ADDITIVE: Players are limited to the use of needlers. * Other weapons & vehicles do not spawn. * You can use equipment (i.e, grenades & powerups). * Optional infinite ammo and bottomless clip Needlers-Galore.lua
  25. GAME MODE ADDITIVE: Players are limited to the use of shotguns & snipers. * Other weapons & vehicles do not spawn. * You can use equipment (i.e, grenades & powerups). * Optional infinite ammo and bottomless clip Shotty-Snipes.lua