Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Thomas

#1
I usually don't login to vc-mp now a days, my last login was long ago.

I came here to encourage you to learn more about app development, whatever you did is good but is not usable today because world has moved to web based applications, just like Xenon said.

You reminded me of myself from old days i was so eager to do things in vc-mp community at your age.

Keep it up and investigate what players really need, if you can work on that. That'll be great achievement.

Good luck.

-BIG[H] aka Thomas
#2
Off-Topic General / Re: No Please!
Apr 01, 2020, 07:55 PM
Quote from: Gitobaloch on Apr 01, 2020, 02:46 PMGood Explained. vcmp dev's need to Make new vcmp browser like 0.3z it was very cool browser. and Pakistani Lag. i am pakistani but i saw every pakistani player has 150+ Ping why? and other players from other countries having 2mb service and getting 60-70ping i'm having 6mb service but i get 160+ ping even no one use my internet why i get high ping? and yes i'm interested in vcmp i like DM only i don't like rp servers as you said,  another problem is that vcmp bbrowser when i click Masterlist it shows many mixed up server i mean Locked server and Unlocked server shows together Locked server need to have seprate button like: Favourites -masterList - Officials - History - Locked Server. i hope you understand what im trying to say. and vcmp comunity is very bad i don't like even my cousins and friends don't like  this comunity they ask for help and they block them this is why players are not interested i was having a friend  1 year ago named: imran he was begginer in the game he ask for help train me dm teach me game alot of players ignored him i teached him how to play and senior players ignored him now he become a pro and my best friend i know little bit scripting i taught him scripting little bit like fps ping id ip commands.

help me get drunk after reading this.
oh good lord what the fuck did i just read.
#3
I'm still waiting for NPC feature.

#4
General Discussion / Exploit in SQLite
Dec 18, 2018, 02:28 PM
Read this Article:
https://blade.tencent.com/magellan/index_en.html

Magellan is a remote code execution vulnerability discovered by Tencent Blade Team that exists in SQLite. As a well-known database, SQLite is widely used in all modern mainstream operating systems and software, so this vulnerability has a wide range of influence. After testing Chromium was also affected by this vulnerability, Google has confirmed and fixed this vulnerability. We will not disclose any details of the vulnerability at this time, and we are pushing other vendors to fix this vulnerability as soon as possible.

       
Q & A

(1) Am I affected by the vulnerability?

If you use a device or software that uses SQLite or Chromium. It may be affected, depending on whether there is a suitable attack surface.

(2) What is the danger of this vulnerability?

Remote code execution, leaking program memory or causing program crashes.

(3) Does this vulnerability have exploit code?

Yes, we successfully exploited Google Home with this vulnerability, and we currently have no plans to disclose exploit code.

(4) What are the conditions for exploiting the vulnerability?

This vulnerability can be triggered remotely, such as accessing a particular web page in a browser,Or any scenario that can execute SQL statements.

(5) Has "Magellan" been abused in the wild?

We have not seen the case yet.

(6) Is there a workaround/fix?

We have reported all the details of the vulnerability to Google and they have fixed the vulnerability ( commit ). If your product uses Chromium, please update to the official stable version 71.0.3578.80( Release updates). If your product uses SQLite, please update to 3.26.0 ( Release updates).The CVE number is pending.
#5
for f sakes, use switch(player.Skin) where possible.
#6
database <- ConnectSQL( "data_base.db" );
 QuerySQL( database, "CREATE TABLE IF NOT EXISTS account ( player VARCHAR(32), password VARCHAR(255), uid VARCHAR(255), kills INTEGER, deaths INTEGER, headshots INTEGER, joins INTEGER, cash INTEGER )" );
Quotedatabase <- ConnectSQL( "data_base.db" );

QuoteQuerySQL(db, "CREATE TABLE IF NOT EXISTS Stats( Name TEXT, KILLS NUMERIC, DEATHS NUMERIC, CASH NUMERIC, Level NUMERIC ); // semi-colon

change db to database.
#7
Quote from: Xenon on Sep 05, 2018, 12:25 PMhttp://wiki.vc-mp.org/wiki/OnPlayerCommand

Quoteclass PlayerStats
   {
      constructor(){
      // do something here for default values.
      }
      level = 0;
   }

   function onScriptload()
   {
      db <- ConnectSQL( "DataBase.db" );
      /* to avoid confusion, i set this global variable to pstats instead of stats
                 to differentiate between table name and variable.*/
      pstats <- array( GetMaxPlayers(), null ); // semi-colon
      QuerySQL(db, "CREATE TABLE IF NOT EXISTS Stats( Name TEXT, KILLS NUMERIC, DEATHS NUMERIC, CASH NUMERIC, Level NUMERIC ); // semi-colon
      /* table name is always case sensitive 'Stats' != 'stats', remember to use lower case for less mistakes.*/
   }
   function OnPlayerJoin( player )]
   {
   /* We will set default value for newly joined player so that scirpt won't crash if something is not in squirrel root table*/
   
      pstats[player.ID] = PlayerStats();
      // Give them shiny new welcome!
      MessagePlayer("Welcome to the shittest server of VC:MP",player);
      /*
      Do some stuff here like registration, ban check etc.
      */
      LoadStats(player);
   }
   function LoadStats(player)
   {   
      // Load some data if player exists!
      local q = QuerySQL( "SELECT * FROM Stats WHERE Name = '"+player.Name+"'" )
      if ( q )
      {
         pstats[player.ID].Level = GetSQLColumnData( q, 4);
      }
   }
   function onPlayerCommand( player, cmd, text )
   {
      /* we'll be using switch statement instead of old tragic if else if.
                since the player only changes value of same variable for different cmds, switch is in this case is essential and most efficent way to work with */
         // reference: https://www.programiz.com/cpp-programming/switch-case
         switch( cmd )
         {
            // start of our case.
            case "level": {
            /* we will be using if / else if / else condition statement if only if we're comparing values logically ( most preferable )*/
            local plrLevel = pstats[player.ID].level;
               if(plrLevel >= 7) {
                  MessagePlayer("Woah there! you're admin with level " + plrLevel ,player);
               }
               else {
                  MessagePlayer("hmm, you do not have level" ,player);
               }
            }
            break;
            // end of our case.
         }
   
   }
p.s using quote instead of code, because code fucks up indentation.
Code is untested, might have some missing links or bugs
#8
Everything in VC is rendered as Object, so basically roads are objects, it has property of collision etc.
The flag is itself an object which is rendered at client side, the custom object would have property to attach itself to some object, try to include the flag and work on client side script.
( I've been away for so long that i almost forgot how 0.4 works lol )