• Print

Author Topic: Ulx Global Profiling System  (Read 24 times)

0 Members and 1 Guest are viewing this topic.

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Ulx Global Profiling System
« on: October 31, 2009, 06:30:20 pm »
Me and a friend were talking today, and a great idea came to mind.

The Ulx Global Profiling System could do the following:
     - Global Banning
     - Give players a minge rating
     - Restrict players with a minge rating above # based on server settings
     - Show server history
     - Player ratings across servers
So far these are the ideas I've had.

Now for the issues:
     - Requires a centralize database
     - Security issues to allow users servers to read/write to this database

An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Ulx Global Profiling System
« Reply #1 on: October 31, 2009, 08:37:07 pm »
Reasonable idea. I've seen several want to build off of ULib/ULX for multiple servers.
I don't see this as an idea for inclusion into ULib by default, but an extra module for ULib would be a good idea.
Just look into the code used by UBan. Build off of it, make it easy to swap among different SQL solutions (MySQL, MS-SQL, SQLite, X, Y, Z)
I think MrPresident at one time used some sharing across servers for various things. Though I've not seen him in action around here, you may check his forums. A good friend of his, TheBigA, had quite a bit of Lua skill... may know how MrP tied it into SQL too if MrP isn't visiting there as much.
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Re: Ulx Global Profiling System
« Reply #2 on: November 01, 2009, 11:20:03 am »
Connecting to the database isn't the trick, it's the method that has to be done. I need a way to only allow my script to connect to the database without releasing out the password, db name, ip , ect...
An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Ulx Global Profiling System
« Reply #3 on: November 01, 2009, 01:04:31 pm »
OH!
You mean host one master server for all others?
I thought you meant for any who wish to host their own for several.
I no longer like the idea if that's what you meant.

Let each server owner do thier own thing like UBan does.
UBan almost died on Facepunch because people read into it at first that it would become like Source/Valve bans... alll servers one database.
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Re: Ulx Global Profiling System
« Reply #4 on: November 01, 2009, 01:20:08 pm »
This would be like UBan exactly though, users would just have a risk or a minge level and server administrators could base who is allowed in their servers based on that.
An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Ulx Global Profiling System
« Reply #5 on: November 01, 2009, 04:29:36 pm »
Uban variables within the script set ip and password of server.
That's why those that host the SQL server and then share with others must have implicit trust if they allow other servers to use it.
UBan in it's hay-day shared among 3 different "Clan's" so to speak.
Some WCA, BBS(Beast-Build), I think G4P(Gman4President), and of course, UHQ :)
There were about 8 to 10 different servers that shared a UBan database among those.

Are you trying to figure out a way to obscure it anyway to make it more secure?
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Re: Ulx Global Profiling System
« Reply #6 on: November 01, 2009, 11:38:27 pm »
Quote
Are you trying to figure out a way to obscure it anyway to make it more secure?
     - Yeah, that's my only hold up to keep me from starting this. I can't think of anyway of doing this without making our own module for garrysmod and use DLL's to hide the info.
An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly

Offline Megiddo

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 6214
  • Karma: 394
  • Project Lead
Re: Ulx Global Profiling System
« Reply #7 on: November 02, 2009, 08:45:29 am »
The best way to do this would be to run it through a php script on your master server. From there you can run your anti-cheat/anti-hack logic. This would be simple from the lua point of view, since garry added that function to retrieve webpages. You can pass data to the script in the URL using GET. The script can pass data back to the server in the page that it downloads.
Experiencing God's grace one day at a time.

Offline jay209015

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 934
  • Karma: 62
    • Dev-Solutions
Re: Ulx Global Profiling System
« Reply #8 on: November 02, 2009, 09:43:46 am »
I thought about that, but wouldn't it be just as easy for someone to clone the lua script and be able to cause damage to the database?
An error only becomes a mistake when you refuse to correct it. --JFK

"And thus the downfall of the great ULX dynasty was wrought not by another dynasty, but the slow and steady deterioration of the leaders themselves, followed by the deprecation of the great knowledge they possessed." -Gmod, Chapter 28, verse 34 -- Stickly

Offline Megiddo

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 6214
  • Karma: 394
  • Project Lead
Re: Ulx Global Profiling System
« Reply #9 on: November 02, 2009, 01:03:10 pm »
I thought about that, but wouldn't it be just as easy for someone to clone the lua script and be able to cause damage to the database?


No, because your logic for preventing damage is all on the master server, closed source (or open if you so wish).
Experiencing God's grace one day at a time.

Offline JamminR

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 8096
  • Karma: 390
  • Sertafide Ulysses Jenius
    • Team Ulysses [ULib/ULX, other fine releases]
Re: Ulx Global Profiling System
« Reply #10 on: November 02, 2009, 08:27:04 pm »
Master server owner could set up a whitelist of allowed IPs, and only those IPs would be allowed to update information.
This would of course make it more difficult for non-dedicated IP servers to use, but, most 'trusted' servers would I believe be dedicated hosted anyway. , even my cable modem on a non-static IP hasn't changed in over a year...and it's been through several reboots and power outages.
Perhaps set up a password for each 'client' server so that if their IP ever changed, they could send a 'update me' command.
The host would still have the ability on whether to use this or not.
"Though a program be but three lines long, someday it will have to be maintained." -- The Tao of Programming

  • Print