• Problems That Don't Need Their Own Thread v2.0
    5,020 replies, posted
[QUOTE=Scarface3353;46670251]Can I cover a derma button with something so it can't be pressed? for example, if player is usergroup vip then it's clear, but if he's user then it gets blocked[/QUOTE] if LocalPlayer():GetUserGroup == "vip" then Button:SetDisabled(false) else Button:SetDisabled(true) end
[QUOTE=bran92don;46669495]What are the .vmt parameters to make something have black cartoon lines outside of it?[/QUOTE] If you're trying to make something like borderland, you can [URL="https://github.com/CapsAdmin/pac3/blob/b815564eebb5f822d2f9b7a8f89e0883120665a9/lua/pac3/core/client/parts/model.lua#L252"]do that[/URL] [QUOTE=LUModder;46671127]if LocalPlayer():GetUserGroup == "vip" then Button:SetDisabled(false) else Button:SetDisabled(true) end[/QUOTE] you mean [lua] if LocalPlayer():GetUserGroup() == "vip" then Button:SetDisabled(false) else Button:SetDisabled(true) end [/lua] You will also need to protect it on the serverside code, because you should never trust client.
[QUOTE=ExtReMLapin;46675465]If you're trying to make something like borderland, you can [URL="https://github.com/CapsAdmin/pac3/blob/b815564eebb5f822d2f9b7a8f89e0883120665a9/lua/pac3/core/client/parts/model.lua#L252"]do that[/URL] you mean [lua] if LocalPlayer():GetUserGroup() == "vip" then Button:SetDisabled(false) else Button:SetDisabled(true) end [/lua] You will also need to protect it on the serverside code, because you should never trust client.[/QUOTE] In this situation; SHARED FILE: [lua] local PMeta = FindMetaTable( "Player" ) local VIPGroups = { "superadmin", "admin", "moderator", "operator", "vip" } function PMeta:IsVIP() return ( table.HasValue( VIPGroups, string.lower( self:GetUserGroup() ) ) ) end [/lua] Then you can call player:IsVIP() on server or client (And make it a hell of a lot easier if you add new groups in future, you only need add them to the table) Then use: [lua] DButton:SetDisabled( !LocalPlayer():IsVIP() ) [/lua] Would be more ideal as it's cleaner.
[QUOTE=Phoenixf129;46675666] Then you can call player:IsVIP() on server or client (And make it a hell of a lot easier if you add new groups in future, you only need add them to the table) Then use: [lua] DButton:SetDisabled( true ) if LocalPlayer():IsVIP() then DButton:SetDisabled( false ) end [/lua] Would be more ideal as it's cleaner.[/QUOTE] Or just [lua]Button:SetDisabled(!LocalPlayer():IsVIP())[/lua] By the way, i'm wondering what's the point of functions like rawequal(a,b) What's the point if we can use "a == b" EDIT : Did you fucking just remplaced your code by mine EDIT 2 : Oh yeah that's what you did
[QUOTE=ExtReMLapin;46675915]By the way, i'm wondering what's the point of functions like rawequal(a,b) [/QUOTE] raw functions don't call metamethods, they're quite essential sometimes
[QUOTE=ExtReMLapin;46675915]Or just [lua]Button:SetDisabled(!LocalPlayer():IsVIP())[/lua] By the way, i'm wondering what's the point of functions like rawequal(a,b) What's the point if we can use "a == b" EDIT : Did you fucking just remplaced your code by mine EDIT 2 : Oh yeah that's what you did[/QUOTE] [img]http://wiki.garrysmod.com/favicon.ico[/img] [url=http://wiki.garrysmod.com/page/Global/rawequal]Global.rawequal[/url] as you can see in the description it mentions the __eq metafunction, this metafunction basically overrides the == operator if the metatable is the same for both sides of the == sign, it will call getmetatable(obj1).__eq(obj1, obj2) and return it EDIT: brb digging myself a late grave [quote] Jvs: dig yourself a late grave Jvs: here lies meep, he got ninja'd [/quote]
The most important use of rawequal is for a equality checks within your own __eq metamethods without causing an infinite loop. (maybe) [code] function meta:__eq(v) if < some expression > then return true end return rawequal(self, v) end [/code]
Thanks.
-snip-
I made a post [url=http://facepunch.com/showthread.php?t=1441041&p=46675058]here[/url] about my issue but since it's a problem that might not get help quickly, I figured I'd post it here as well. Bots have been messing with my server for a while, and causing random crashes. You can simulate the crash with this code: [code] function GM:PlayerInitialSpawn( ply ) -- We're going to allow ANY player to join, but kick all bots instantly if ply:IsBot() then ply:Kick( "We're testing bots!" ) else -- If the player joins, we will set a timer that will spawn a bot shortly afterwards timer.Simple( 5, function() -- The delay set here doesn't matter RunConsoleCommand( "bot" ) end ) end end [/code] This will cause the server to crash 100% of the times a player joins. Since this is a problem with Garry's Mod Dedicated Server, I can't really do much about the nature of the issue, I don't kick bots, ever, they just join whenever a player joins and sit there until there are no longer any players online when they're automatically punted by the server. STILL, the server crashes at random moments (MOST of the crashes occur when the server just changed level, though). So, what would be a better approach to having bots in-game constantly? OR, if someone knows what the EXACT cause of the issue is, help would be nice ;) Here's the link to a fully prepared gamemode that runs this code: [url]https://cdn.deskpro.com/files/603/48/47330RPCYAKJMPXGCRDQ0-debug_gamemode.zip[/url] Just place it in your gamemodes folder and it should crash upon join.
[QUOTE=Gravious;46677789]I made a post [url=http://facepunch.com/showthread.php?t=1441041&p=46675058]here[/url] about my issue but since it's a problem that might not get help quickly, I figured I'd post it here as well. Bots have been messing with my server for a while, and causing random crashes. You can simulate the crash with this code: [code] function GM:PlayerInitialSpawn( ply ) -- We're going to allow ANY player to join, but kick all bots instantly if ply:IsBot() then ply:Kick( "We're testing bots!" ) else -- If the player joins, we will set a timer that will spawn a bot shortly afterwards timer.Simple( 5, function() -- The delay set here doesn't matter RunConsoleCommand( "bot" ) end ) end end [/code] This will cause the server to crash 100% of the times a player joins. Since this is a problem with Garry's Mod Dedicated Server, I can't really do much about the nature of the issue, I don't kick bots, ever, they just join whenever a player joins and sit there until there are no longer any players online when they're automatically punted by the server. STILL, the server crashes at random moments (MOST of the crashes occur when the server just changed level, though). So, what would be a better approach to having bots in-game constantly? OR, if someone knows what the EXACT cause of the issue is, help would be nice ;) Here's the link to a fully prepared gamemode that runs this code: [url]https://cdn.deskpro.com/files/603/48/47330RPCYAKJMPXGCRDQ0-debug_gamemode.zip[/url] Just place it in your gamemodes folder and it should crash upon join.[/QUOTE] To acheive what you want just track when a player spawns using your current function then you use [url=http://wiki.garrysmod.com/page/player/GetBots]player.GetBots()[/url] to get a table of the bots and kick all of them by looping through the table [editline]9th December 2014[/editline] Wait on reading that post again you do mean that bots join when a player joins and you don't want that to happen right? If so that is pretty weird
[QUOTE=ZombieWizzard;46677869]To acheive what you want just track when a player spawns using your current function then you use [url=http://wiki.garrysmod.com/page/player/GetBots]player.GetBots()[/url] to get a table of the bots and kick all of them by looping through the table [editline]9th December 2014[/editline] Wait on reading that post again you do mean that bots join when a player joins and you don't want that to happen right? If so that is pretty weird[/QUOTE] I don't want the server to crash :p The server does it at random moments, but that code will always crash it using bots.
How can I change to position of the default chatbox?
Where am I failing on this? [code]function GM:ShowSpare1(ply) if GAMEMODE:InRound() && LocalPlayer():Alive() then local PanelBase = vgui.Create( "DFrame" ) PanelBase:SetPos( ScrH() / 2, ScrW() / 2) PanelBase:SetSize( 400, 200) PanelBase:SetTitle( "test0" ) PanelBase:SetVisible( true ) PanelBase:SetDraggable( true ) PanelBase:ShowCloseButton( true ) PanelBase:MakePopup() local button1 = vgui.Create( "DButton" ) button1:SetParent( PanelBase ) button1:SetText( "test1" ) button1:SetPos( 25, 50 ) button1:SetSize( 150, 40 ) button1.DoClick = function() RunConsoleCommand( "say", "yes, it works" ) end local button2 = vgui.Create( "DButton" ) button2:SetParent( PanelBase ) button2:SetText( "test2" ) button2:SetPos( 225, 50 ) button2:SetSize( 150, 40 ) button2.DoClick = function() RunConsoleCommand( "say", "stop pressing buttons") end local button3 = vgui.Create( "DButton" ) button3:SetParent( PanelBase ) button3:SetText( "test3" ) button3:SetPos( 25, 100 ) button3:SetSize( 150, 40 ) button3.DoClick = function() RunConsoleCommand( "say", "STOP. PRESSING. THOSE. BUTTONS") end end[/code] It's on init.lua Whenever i try to play on the gamemode where this function is, it just sends me to the base gamemode Just found that missing "end" for the "if"
[QUOTE=Robotboy655;46657153]Did you bother to open the link? Did you bother to read what the hook does? Do you know how to code?[/QUOTE] I feel bad for you if you call GLua "coding" It's Scripting... Rate Dumb if Glua is the only language you know.
I have no idea what's going on [sp](like towelie from southpark when he's high)[/sp] [URL="http://pastebin.com/beuzMhb6"]Here's my relevant code[/URL] When it tries to switch from "spray" to "auto" it INSTANTLY switches to "burst" where as all other switches work flawlessly. Thusly, I can not achieve a switch to "auto" [B]EDIT:[/B] Haha whoops, the first link I posted, it was deleted... new one is good tho!
[QUOTE=WalkingZombie;46680607]I have no idea what's going on [sp](like towelie from southpark when he's high)[/sp] [URL="http://pastebin.com/beuzMhb6"]Here's my relevant code[/URL] When it tries to switch from "spray" to "auto" it INSTANTLY switches to "burst" where as all other switches work flawlessly. Thusly, I can not achieve a switch to "auto" [B]EDIT:[/B] Haha whoops, the first link I posted, it was deleted... new one is good tho![/QUOTE] That's too complicated... You should just have a table with enumerations such as: [code] // // Next Fire-Mode // GM:RegisterBind( "Next Fire-Mode", BIND_CATEGORY_WEAPON, BIND_TYPE_TAP, KEY_B, function( _p ,_w ) if ( !_w.NextFireMode ) then return; end _w:NextFireMode( ); end ); // // SWEP Stuff // // // Enumeration // WEAPON_FIREMODES = { }; WEAPON_FIREMODE_SAFE = 0; WEAPON_FIREMODE_MELEE = 1; WEAPON_FIREMODE_THROW = 2; WEAPON_FIREMODE_SEMI = 3; WEAPON_FIREMODE_BURST = 4; WEAPON_FIREMODE_BURST2 = 5; WEAPON_FIREMODE_AUTO = 6; WEAPON_FIREMODES[ WEAPON_FIREMODE_SAFE ] = "Safe"; WEAPON_FIREMODES[ WEAPON_FIREMODE_MELEE ] = "Melee"; WEAPON_FIREMODES[ WEAPON_FIREMODE_THROW ] = "Throw"; WEAPON_FIREMODES[ WEAPON_FIREMODE_SEMI ] = "Semi-Automatic"; WEAPON_FIREMODES[ WEAPON_FIREMODE_BURST ] = "3-Round Burst"; WEAPON_FIREMODES[ WEAPON_FIREMODE_BURST2 ] = "2-Round Burst"; WEAPON_FIREMODES[ WEAPON_FIREMODE_AUTO ] = "Fully-Automatic"; // // Default SWEP Vars // SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE }; SWEP.SelectedFireMode = WEAPON_FIREMODE_SAFE; // // Helper function // function SWEP:NextFireMode( ) local _k = table.KeyFromValue( self:GetFireModes( ), self:GetFireMode( ) ); if ( !_k ) then return; end local _newindex = ( ( _k + 1 ) % ( table.Count( self:GetFireModes( ) ) ) ); if ( _newindex == 0 ) then _newindex = 1; end // Hack -- don't like it... self:SetFireMode( self:GetFireModes( )[ _newindex ] ); self:EmitSound( Sound("Default.Zoom") )// "Weapon_Pistol.Empty" ) // Sound("Default.Zoom") end // Example HK G36 fire-modes: SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_BURST, WEAPON_FIREMODE_AUTO }; // Example HK UMP fire-modes: SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_BURST2, WEAPON_FIREMODE_AUTO };[/code] Burst = 3 round, Burst2 = 2 round.. Old code, will be changed... but the idea is to have enumeration for all available firemodes, then to have the current weapon have a table of firemodes it has and uses; and a var with the current firemode. I'm going to change it so the current fire-mode is the key instead of the value because value can be just tablecontainingweaponfiremodes[ key ] and it'd avoid needing KeyFromValue... In short, simplify the code... You don't need to repeat the setter, it could be done after you switch if you keep the current code ( which would remove a few lines ). If you choose to change, using enumeration helps identify and easily read weapon modes / code... [editline]10th December 2014[/editline] [QUOTE=SwikCoder;46680513]I feel bad for you if you call GLua "coding" It's Scripting...[/QUOTE] Logic is universal; anything anyone picks up from Lua can be applied to other languages provided they know other languages... A lot of the systems I've written in Lua have come from other things I've written in PHP, C++ and Java... [editline]10th December 2014[/editline] [QUOTE=Scarface3353;46679804]Where am I failing on this? [code]function GM:ShowSpare1(ply) end[/code] It's on init.lua Whenever i try to play on the gamemode where this function is, it just sends me to the base gamemode Just found that missing "end" for the "if"[/QUOTE] That's a server-side function. You'd need to either network the data or use a clientside hook. Examples: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/vgui/open_vgui_based_on_keypress.lua.html[/url]
-snip easy joke-
-snip Nevermind, not relevant.
[QUOTE=Acecool;46681425]That's too complicated... You should just have a table with enumerations such as: [code] // // Next Fire-Mode // GM:RegisterBind( "Next Fire-Mode", BIND_CATEGORY_WEAPON, BIND_TYPE_TAP, KEY_B, function( _p ,_w ) if ( !_w.NextFireMode ) then return; end _w:NextFireMode( ); end ); // // SWEP Stuff // // // Enumeration // WEAPON_FIREMODES = { }; WEAPON_FIREMODE_SAFE = 0; WEAPON_FIREMODE_MELEE = 1; WEAPON_FIREMODE_THROW = 2; WEAPON_FIREMODE_SEMI = 3; WEAPON_FIREMODE_BURST = 4; WEAPON_FIREMODE_BURST2 = 5; WEAPON_FIREMODE_AUTO = 6; WEAPON_FIREMODES[ WEAPON_FIREMODE_SAFE ] = "Safe"; WEAPON_FIREMODES[ WEAPON_FIREMODE_MELEE ] = "Melee"; WEAPON_FIREMODES[ WEAPON_FIREMODE_THROW ] = "Throw"; WEAPON_FIREMODES[ WEAPON_FIREMODE_SEMI ] = "Semi-Automatic"; WEAPON_FIREMODES[ WEAPON_FIREMODE_BURST ] = "3-Round Burst"; WEAPON_FIREMODES[ WEAPON_FIREMODE_BURST2 ] = "2-Round Burst"; WEAPON_FIREMODES[ WEAPON_FIREMODE_AUTO ] = "Fully-Automatic"; // // Default SWEP Vars // SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE }; SWEP.SelectedFireMode = WEAPON_FIREMODE_SAFE; // // Helper function // function SWEP:NextFireMode( ) local _k = table.KeyFromValue( self:GetFireModes( ), self:GetFireMode( ) ); if ( !_k ) then return; end local _newindex = ( ( _k + 1 ) % ( table.Count( self:GetFireModes( ) ) ) ); if ( _newindex == 0 ) then _newindex = 1; end // Hack -- don't like it... self:SetFireMode( self:GetFireModes( )[ _newindex ] ); self:EmitSound( Sound("Default.Zoom") )// "Weapon_Pistol.Empty" ) // Sound("Default.Zoom") end // Example HK G36 fire-modes: SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_BURST, WEAPON_FIREMODE_AUTO }; // Example HK UMP fire-modes: SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_BURST2, WEAPON_FIREMODE_AUTO };[/code] Burst = 3 round, Burst2 = 2 round.. Old code, will be changed... but the idea is to have enumeration for all available firemodes, then to have the current weapon have a table of firemodes it has and uses; and a var with the current firemode. I'm going to change it so the current fire-mode is the key instead of the value because value can be just tablecontainingweaponfiremodes[ key ] and it'd avoid needing KeyFromValue... In short, simplify the code... You don't need to repeat the setter, it could be done after you switch if you keep the current code ( which would remove a few lines ). If you choose to change, using enumeration helps identify and easily read weapon modes / code... [editline]10th December 2014[/editline] Logic is universal; anything anyone picks up from Lua can be applied to other languages provided they know other languages... A lot of the systems I've written in Lua have come from other things I've written in PHP, C++ and Java... [editline]10th December 2014[/editline] That's a server-side function. You'd need to either network the data or use a clientside hook. Examples: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/vgui/open_vgui_based_on_keypress.lua.html[/url][/QUOTE] It is complicated for just one, but I have support for several different fire mode switching schemes. That's the 8th scheme (I know it says 9) but each scheme features a different set of firing modes to switch through. One might be semi - auto - repeat, while another is semi - burst - repeat, and another is semi - shotgun - repeat... someone else recommended just using a table, but when I explained in more detail, well, they never told me another solution. He also had trouble at first, trying to understand what I'm saying [editline]10th December 2014[/editline] In short, that wont work, cus I need to be able to cycle through more than just 1 set of options. [editline]10th December 2014[/editline] Or maybe it can work like that, I just reviewed it more closely.
Ok, my example allows unlimited options.. Here are my swep fire modes ( I should've shown these to start, I see where the confusion is thinking mine only supported one set because BURST and BURST2 are close and both weapons had the same number of options ): [code]Taser ( no safety ): SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS } SWEP.SelectFireModes = { WEAPON_FIREMODE_SEMI } AK47: SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS } SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_AUTO } M4A1 SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS, WEAPON_SUPPRESSOR } SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_BURST, WEAPON_FIREMODE_AUTO } five-seven: SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS } SWEP.SelectFireModes = { WEAPON_FIREMODE_SAFE, WEAPON_FIREMODE_SEMI } Glock 17 SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS } SWEP.SelectFireModes = { WEAPON_FIREMODE_SEMI } Glock 18 SWEP.WeaponAccessories = { WEAPON_IRONSIGHTS } SWEP.SelectFireModes = { WEAPON_FIREMODE_SEMI, WEAPON_FIREMODE_AUTO }[/code] Etc... By making it modular you don't need to set up complicated if auto then next is safe/semi type systems for each weapon. You can create a table of modes available ( with mine the first one in the list is the default setting which is used when the player picks up the weapon, if a player changes it and drops it the next person sees the fire-mode the previous player selected ). So, not all fire-modes are used for each of my weapons... The knife has: [code]SWEP.SelectFireModes = { WEAPON_FIREMODE_MELEE, WEAPON_FIREMODE_THROW }[/code] So... Instead of 10 or more lines per swep with a switching feature, you could have 1 line for fire-modes; I showed accessories because some have built in scopes / red-dots which can also be added to that list. Then my base allows the user to switch seamlessly between them. I don't know what you mean by different switching schemes... If you mean order, then my system works with that; can go in forward or reverse based on the function. You can also set it to any one of the available selections with 1 click ( available in my binds system to select a fire-mode instantly )... I read what you meant by schemes, and my system allows it to start from the beginning and go through the modes, and repeat ( circular table by using % ) unless I didn't understand. If that's the case, please explain what you mean by schemes and I may be able to help you simplify. Feel free to add me on Steam if you want.
Not Lua-related, but hopefully someone here can help me. If you think this is the wrong place to ask, just rate [img]http://www.facepunch.com/fp/ratings/cross.png[/img] and I'll happily snip my question. Is there a way to run two instances of srcds using only one garrysmod folder? i.e. run two servers using one installation? I'm using FireDaemon on a Windows 2008 R2 dedi. I'm running different server.cfgs for both servers (server-terrortown.cfg & server-murder.cfg) but they both keep running the default hostname with sandbox on gm_construct.
[QUOTE=zeaga;46685475]Not Lua-related, but hopefully someone here can help me. If you think this is the wrong place to ask, just rate [img]http://www.facepunch.com/fp/ratings/cross.png[/img] and I'll happily snip my question. Is there a way to run two instances of srcds using only one garrysmod folder? i.e. run two servers using one installation? I'm using FireDaemon on a Windows 2008 R2 dedi. I'm running different server.cfgs for both servers (server-terrortown.cfg & server-murder.cfg) but they both keep running the default hostname with sandbox on gm_construct.[/QUOTE] Possibly. One server will fail to open files it wants to write to such as server.db for SQLite so I'd recommend just having separate installations.
[QUOTE=Willox;46685500]Possibly. One server will fail to open files it wants to write to such as server.db for SQLite so I'd recommend just having separate installations.[/QUOTE] Damn. That's the exact reason I wanted to do it this way. (Easier way of synchronizing UTime databases) Guess I should have expected that, anyhow. Thanks for the info.
[QUOTE=Acecool;46683071]Awesome help[/quote] Thanks. Uh, I'm not sure how to work with the weapon accessories, but actually I was planning on having support for both. As for controls, I'm gonna find something that works nicely, and I don't want to use the USE key. Don't suggest anything for that, please, the controls. Heck, if I find a way, maybe I could make it possible to change the accessories while aiming down sights. [editline]10th December 2014[/editline] I just need to make sure the weapons base is aware of the right animations to use for the specific model. That's no biggy tho.
Found on wiki that VEHICLE/GetPassenger is a function, but there is no function or even ability to get into a vehicle as a passenger using prop_vehicle_jeep, what do I need to do to allow players to get into passenger seats of cars like the ones in LoneWolfies?
-snip- Found the answer
A few months ago someone released a bootstrap gmod server list, i don't suppose any of you still have a copy of this they could upload? Can't find the thread through google and fp search is near useless.
[QUOTE=zeaga;46685475]Not Lua-related, but hopefully someone here can help me. If you think this is the wrong place to ask, just rate [img]http://www.facepunch.com/fp/ratings/cross.png[/img] and I'll happily snip my question. Is there a way to run two instances of srcds using only one garrysmod folder? i.e. run two servers using one installation? I'm using FireDaemon on a Windows 2008 R2 dedi. I'm running different server.cfgs for both servers (server-terrortown.cfg & server-murder.cfg) but they both keep running the default hostname with sandbox on gm_construct.[/QUOTE] I run more than one when testing. Just set it to run on a different port and you should be fine ( aside from if one of them locks files; but if a file is locked you could open another, or just have each "server" open a file based on the current port ). [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/server_srcds_steamcmd/setting_up_a_server_with_steamcmd.lua.html[/url]
[QUOTE=Acecool;46686819]I run more than one when testing. Just set it to run on a different port and you should be fine ( aside from if one of them locks files; but if a file is locked you could open another, or just have each "server" open a file based on the current port ). [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/server_srcds_steamcmd/setting_up_a_server_with_steamcmd.lua.html[/url][/QUOTE] I had terrortown on 27015 and murder on 27016 and it still wouldn't work. I think I'll just write a script to sync the databases for me. Wish me luck. :suicide: On an unrelated note, does anyone have the link to that site with the code snippets of different methods of easing in and out? [editline]edit[/editline] [url=http://gizma.com/easing/]Found it[/url]
Sorry, you need to Log In to post a reply to this thread.