FIFA 13 Ultimate Team AutoBuyer Project

ADDZ Oct 2, 2012

  1. AD

    ADDZ Guest

    FIFA 13 Ultimate Team AutoBuyer

    This has been started by Rob McGhee, wonder if anyone wants to have a go of making a program from it?!

    This first portion allows you to search for players and staff:

    Code:
    <?PHP
    /**
    * @llygoden
    * @author - Rob McGhee
    * @URL - www.robmcghee.com
    * @date - 24/09/12
    * @version - 1.0
    **/
    class Searchor {
    
    	private $EASW_KEY;
    	private $EASF_SESS;
    	private $PHISHKEY;
    	private $XSID;
    
    	//initialise the class
    	public function __construct($EASW_KEY, $EASF_SESS, $PHISHKEY, $XSID) {
    		$this->EASW_KEY  = $EASW_KEY;
    		$this->EASF_SESS	 = $EASF_SESS;
    		$this->PHISHKEY  = $PHISHKEY;
    		$this->XSID	  = $XSID;
    	}
    
    	public function playersearch($start = 0,$count = 15,$level,$formation,$position,$nationality,$league,$team,$minBid,$maxBid,$minBIN,$maxBIN){
    		//URL to search for items
    		$searchurl = "https://utas.fut.ea.com/ut/game/fifa13/auctionhouse?";
    		//String that holds our search variables
    		$searchstring = "";
    
    		//Add to the search string based on the variables passed
    		if ($level != "" && $level != "any"){
    			$searchstring .= "&lev=$level";
    		}
    
    		if ($formation != "" && $formation != "any"){
    			$searchstring .= "&form=$formation";
    		}
    
    		if ($position != "" && $position != "any"){
    			if ($position == "defense" || $position == "midfield" || $position == "attacker"){
    				$searchstring .= "&zone=$position";
    			}else{
    				$searchstring .= "&pos=$position";
    			}
    		}
    
    		if ($nationality > 0){
    			$searchstring .= "&nat=$nationality";
    		}
    
    		if ($league > 0){
    			$searchstring .= "&leag=$league";
    		}
    
    		if ($team > 0){
    			$searchstring .= "&team=$team";
    		}
    
    		if ($minBid > 0){
    			$searchstring .= "&micr=$minBid";
    		}
    
    		if ($maxBid > 0){
    			$searchstring .= "&macr=$maxBid";
    		}
    
    		if ($minBIN > 0){
    			$searchstring .= "&minb=$minBid";
    		}
    
    		if ($maxBIN > 0){
    			$searchstring .= "&maxb=$maxBid";
    		}
    
    		//create the final search string
    		$search = $searchurl . "type=player&start=$start&num=$count" . $searchstring;
    		//Set the cookie data
    		$cookie_string = $this->EASW_KEY."; ".$this->EASF_SESS ."; ".$this->PHISHKEY;
    		//Setup cURL HTTP request
    		$ch = curl_init($search);
    		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    		curl_setopt($ch, CURLOPT_COOKIE, $cookie_string);
    		curl_setopt($ch, CURLOPT_HEADER, false);
    		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    			'Content-Type: application/json',
    			'x-http-method-override: GET',
    			$this->XSID)
    		);
    
    		//Contains the JSON file returned from EA
    		$EAPSEARCH = curl_exec($ch);
    		curl_close($ch);
    
    		unset ($start,$count,$level,$formation,$position,$nationality,$league,$team,$minBid,$maxBid,$minBIN,$maxBIN, $ch, $cookie_string, $search, $searchstring);
    
    		return $EAPSEARCH;
    	}
    
    	public function staffsearch($start = 0,$count = 15, $level, $cat, $minBid, $maxBid, $minBIN, $maxBIN){
    		//URL to search for items
    		$searchurl = "https://utas.fut.ea.com/ut/game/fifa13/auctionhouse?";
    		//String that holds our search variables
    		$searchstring = "";
    
    		//Add to the search string based on the variables passed
    		if ($level != "" && $level != "any"){
    			$searchstring .= "&lev=$level";
    		}
    
    		if ($cat != "" && $cat != "any"){
    			$searchstring .= "&cat=$cat";
    		}
    
    		if ($minBid > 0){
    			$searchstring .= "&micr=$minBid";
    		}
    
    		if ($maxBid > 0){
    			$searchstring .= "&macr=$maxBid";
    		}
    
    		if ($minBIN > 0){
    			$searchstring .= "&minb=$minBid";
    		}
    
    		if ($maxBIN > 0){
    			$searchstring .= "&maxb=$maxBid";
    		}
    
    		//create the final search string
    		$search = $searchurl . "type=staff&blank=10&start=$start&num=$count" . $searchstring;
    		//Set the cookie data
    		$cookie_string = $this->EASW_KEY."; ".$this->EASF_SESS ."; ".$this->PHISHKEY;
    		//Setup cURL HTTP request
    		$ch = curl_init($search);
    		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    		curl_setopt($ch, CURLOPT_COOKIE, $cookie_string);
    		curl_setopt($ch, CURLOPT_HEADER, false);
    		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    			'Content-Type: application/json',
    			'x-http-method-override: GET',
    			$this->XSID)
    		);
    
    		//Contains the JSON file returned from EA
    		$EASSEARCH = curl_exec($ch);
    		curl_close($ch);
    
    		unset ($start,$count,$level,$cat,$minBid,$maxBid,$minBIN,$maxBIN, $ch, $cookie_string, $search, $searchstring);
    
    		return $EASSEARCH;
    	}
    }
    ?>
    
    This next portion allows you to get trade information and bid on an item:

    Code:
    <?PHP
    /**
    * @llygoden
    * @author - Rob McGhee
    * @URL - www.robmcghee.com
    * @date - 24/09/12
    * @version - 1.0
    **/
    class Tradeor {
    
    	private $EASW_KEY;
    	private $EASF_SESS;
    	private $PHISHKEY;
    	private $XSID;
    
    	//initialise the class
    	public function __construct($EASW_KEY, $EASF_SESS, $PHISHKEY, $XSID) {
    		$this->EASW_KEY  = $EASW_KEY;
    		$this->EASF_SESS	 = $EASF_SESS;
    		$this->PHISHKEY  = $PHISHKEY;
    		$this->XSID	  = $XSID;
    	}
    
    	//$trade is the tradeID for the item you want
    	//$value is the value in FIFA coins that you want to BID
    	public function bid($trade, $value){
    		//URL to bid on trade items
    		$bidurl = "https://utas.fut.ea.com/ut/game/fifa13/trade/". $trade ."/bid";
    
    		//JSON data to send as a POST item
    		$data = array("bid" => $value);
    		$data_string = json_encode($data);
    		//Set the cookie data
    		$cookie_string = $this->EASW_KEY."; ".$this->EASF_SESS ."; ".$this->PHISHKEY;
    		//Setup cURL HTTP request
    		$ch = curl_init($bidurl);
    		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    		curl_setopt($ch, CURLOPT_COOKIE, $cookie_string);
    		curl_setopt($ch, CURLOPT_HEADER, false);
    		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    			'Content-Type: application/json',
    			'x-http-method-override: PUT',
    			$this->XSID)
    		);
    
    		//Contains the JSON file returned from EA
    		$EABID = curl_exec($ch);
    		curl_close($ch);
    
    		unset ($ch, $cookie_string, $data_string, $data, $trade, $bidurl, $value);
    
    		return $EABID;
    	}
    
    	public function trade($trade){
    		//URL to view trade details
    		$tradeurl = "https://utas.fut.ea.com/ut/game/fifa13/trade?tradeIds=". $trade;
    
    		//Set the cookie data
    		$cookie_string = $this->EASW_KEY."; ".$this->EASF_SESS ."; ".$this->PHISHKEY;
    		//Setup cURL HTTP request
    		$ch = curl_init($tradeurl);
    		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    		curl_setopt($ch, CURLOPT_COOKIE, $cookie_string);
    		curl_setopt($ch, CURLOPT_HEADER, false);
    		curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    			'Content-Type: application/json',
    			'x-http-method-override: GET',
    			$this->XSID)
    		);
    
    		//Contains the JSON file returned from EA
    		$EATRADE = curl_exec($ch);
    		curl_close($ch);
    
    		unset($ch, $cookie_string $trade, $tradeurl);
    
    		return $EATRADE;
    	}
    }
    ?>
    
    And finally is a general functions class that allows you to retrieve trivial bits of information about a player.

    Code:
    <?PHP
    /**
    * @llygoden
    * @author - Rob McGhee
    * @URL - www.robmcghee.com
    * @date - 23/09/12
    * @version - 1.0
    **/
    
    //returns the base ID of a player from the resource ID provided
    public function baseID($resourceid){
    	$rid = $resourceid;
    	$version = 0;
    
    	WHILE ($rid > 16777216){
    		$version++;
    		if ($version == 1){
    			//the constant applied to all items
    			$rid -= 1342177280;
    		}elseif ($version == 2){
    			//the value added to the first updated version
    			$rid -= 50331648;
    		}else{
    			//the value added on all subsequent versions
    			$rid -= 16777216;
    		}
    	}
    
    	$returnable = array('baseID'=>$rid,'version'=>$version);
    	return $returnable;
    }
    
    //returns the JSON file containing the players information
    public function playerinfo($baseID){
    	$playerurl = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/web/". $baseID .".json";
    	$EAPLAYER = file_get_contents($playerurl, false);
    
    	return $EAPLAYER;
    }
    
    //returns the URL of the players image
    public function playerimage($baseID){
    	$EAPIMAGE = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/images/players/web/". $baseID .".png";
    
    	return $EAPIMAGE;
    }
    
    //returns the JSON file containing the managers information
    public function managerinfo($assetID){
    	$managerurl = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/web/". $assetID .".json";
    	$EAMANAGER = file_get_contents($managerurl, false);
    
    	return $EAMANAGER;
    }
    
    //returns the URL of the managers image
    public function managerimage($assetID){
    	$EAMIMAGE = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/images/players/web/heads_staff_". $assetID .".png";
    
    	return $EAMIMAGE;
    }
    
    //returns the URL of the countries flag
    public function flagimage($assetID){
    	$EAMIMAGE = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/images/cardflags/web/". $assetID .".png";
    
    	return $EAMIMAGE;
    }
    
    //returns the URL of the countries flag
    public function flagswfimage($assetID){
    	$EAMIMAGE = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/images/cardflagssmall/web/Flag_". $assetID .".swf";
    
    	return $EAMIMAGE;
    }
    
    //returns the URL of the clubs badge
    public function clubimage($assetID){
    	$EAMIMAGE = "http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/images/clubbadges/web/s". $assetID .".png";
    
    	return $EAMIMAGE;
    }
    
    //returns the JSON file containing how many coins your account has to spend
    public function credits($EASW_KEY, $EASF_SESS, $PHISHKEY, $XSID){
    	//URL to retrieve credits
    	$creditsurl = "https://utas.fut.ea.com/ut/game/fifa13/user/credits";
    
    	//Set the cookie data
    	$cookie_string = $EASW_KEY."; ".$EASF_SESS ."; ".$PHISHKEY;																	  
    	//Setup cURL HTTP request
    	$ch = curl_init($creditsurl);																	
    	curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");																																	
    	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    	curl_setopt($ch, CURLOPT_COOKIE, $cookie_string);
    	curl_setopt($ch, CURLOPT_HEADER, false);
    	curl_setopt($ch, CURLOPT_HTTPHEADER, array(																		
    		'Content-Type: application/json',																			  
    		'x-http-method-override: GET',
    		$XSID)																	  
    	);
    
    	//Contains the JSON file returned from EA
    	$EACREDITS = curl_exec($ch);
    	curl_close($ch);
    
    	unset ($ch, $cookie_string, $trade, $tradeurl, $value);
    
    	return $EACREDITS;
    }
    
    //Return the type of card we have
    public function cardtype($rating, $rare){
    
    	$type = "Gold";
    	//Set the Colour based on the player rating
    	if ($rating <= 64){
    		$type = "Bronze";
    	}elseif ($rating <= 74){
    		$type = "Silver";
    	}
    
    	//Set the Catagory based on the player rareity
    	switch($rare):
    		case 1:
    			$type .= " Shiny";
    			break;
    		case 3:
    			$type .= " InForm";
    			break;
    		case 5:
    			$type .= " TOTY";
    			break;
    		case 6:
    			$type .= " TOTY";
    			break;
    		case 8:
    			$type .= " MOTM";
    	endswitch;
    
    	//Return the Card Type
    	return $type;
    }
    ?>
    

    [​IMG]


    Files
    Connector.php = Creates a connection to the EA Web App Server.
    Searchor.php = Searches the database for the players/staff requested.
    Tradeor.php = Bid on items and view Trade details.
    Functionor.php = Random functions used to return player/staff info and other things.
    Eahashor.php = Returns the hash value of the secret question answer supplied

    External Files
    pmzipko = The original code for the FIFA 11 FUT that my code is based from.
    ea = The original JavaScript copied from the EA website for hashing your secret question answer.

    Download:

    Thanks to Rob McGhee for these codes.
     
  2. Rotomboy

    Rotomboy Member
    5/47

    Joined:
    May 4, 2012
    Messages:
    299
    Likes Received:
    27
    Trophy Points:
    25
    Gender:
    Male
    Location:
    Netherlands
    Console:
    Playstation 4
    If I could, I would do it but sadly enough I cant :(
     
  3. Ghosti

    Ghosti Royal Pro-ness Gold Subscriber XPG Developer
    105/188

    Joined:
    Jul 16, 2009
    Messages:
    1,722
    Likes Received:
    38
    Trophy Points:
    105
    Gender:
    Male
    Location:
    Belfast
    Console:
    Xbox
    you just need to create forms to send information to the end simple job really.
     
  4. AD

    ADDZ Guest

    If you get time to have a bash you could be loved by millions of FIFA noobs Ghosti, the GUI to go with it got me scratching my head!!

    There isn'ta public FIFA 13 Autobuyer out there yet...
     
  5. Borgmans

    Borgmans Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    13
    Likes Received:
    3
    Trophy Points:
    0
    Gender:
    Male
    Location:
    Belgium
    Console:
    Playstation 3
    I also did a try to get this together. First time with php so I'm struggling my way into it (have been programming asp.net/vb.net whole my life). I've been busy with this for like 2 days now & I don't have anything yet. I understand what the code does, but I have no idea how to call for the code (functions).

    So if anyone can make this (would be great if I can have the code, will learn a lot from this) it would be awesome!

    Thanks anyway

    EDIT: You forgot the connector.php & eahashor.php

    All files are in here: https://github.com/mousey/FIFA13-Ultimate-Team-Search/tree/master/code
     
  6. no

    noveron Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    0
    Console:
    Xbox
    Does anyone have a bunch of working second accounts they are not using for testing ?
     
  7. omegaultimo2

    omegaultimo2 Lifetime Gold Lifetime Gold
    125/188

    Joined:
    Jul 17, 2012
    Messages:
    1,637
    Likes Received:
    362
    Trophy Points:
    125
    Console:
    Xbox
    like how many?
     
  8. JT

    JTAGBAZZ Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    0
    Console:
    Xbox
    Anyone up for making a team to build this auto buyer i have had previous work with c++ so should be able to work this out?
     
  9. Borgmans

    Borgmans Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    13
    Likes Received:
    3
    Trophy Points:
    0
    Gender:
    Male
    Location:
    Belgium
    Console:
    Playstation 3
    I programmed some ASP.NET but never worked with PHP. But if I can help I will do it.
     
  10. omegaultimo2

    omegaultimo2 Lifetime Gold Lifetime Gold
    125/188

    Joined:
    Jul 17, 2012
    Messages:
    1,637
    Likes Received:
    362
    Trophy Points:
    125
    Console:
    Xbox
    im advanced in php,just to lazy to even try even thou i want it.Give me an incentive and ill have a look or present it to my Lab class in Uni
     
  11. Borgmans

    Borgmans Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    13
    Likes Received:
    3
    Trophy Points:
    0
    Gender:
    Male
    Location:
    Belgium
    Console:
    Playstation 3
    Well, you will help alot of us. & I'd really like to see the code as I'm struggling with this **** for the past 3 days ...
     
  12. no

    noveron Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    0
    Console:
    Xbox
    How many you got right now
    PM me
    and i will add you on skype
     
  13. omegaultimo2

    omegaultimo2 Lifetime Gold Lifetime Gold
    125/188

    Joined:
    Jul 17, 2012
    Messages:
    1,637
    Likes Received:
    362
    Trophy Points:
    125
    Console:
    Xbox
    PM sent
     
  14. Borgmans

    Borgmans Newbie
    0/47

    Joined:
    Oct 3, 2012
    Messages:
    13
    Likes Received:
    3
    Trophy Points:
    0
    Gender:
    Male
    Location:
    Belgium
    Console:
    Playstation 3
    Any updates on this ?
     
  15. Zo

    Zontharius Newbie
    0/47

    Joined:
    Oct 5, 2012
    Messages:
    3
    Likes Received:
    0
    Trophy Points:
    0
    Gender:
    Male
    Console:
    Xbox
    Out of curiosty - are you guys for real or is this some kind of prank? I mean, if by any chance you'll be able to make such a program (which/what(?), unfortunately, i have no idea how to do, just to be clear) and release it for public usage, i'd definitely regain my faith in man kind ;P
     
  16. NaCLy AF

    NaCLy AF Lifetime Gold Lifetime Gold
    235/282

    Joined:
    Jun 12, 2011
    Messages:
    6,540
    Likes Received:
    2,025
    Trophy Points:
    235
    Gender:
    Male
    Console:
    Xbox One
    there was one for fifa 12 .. wouldn't be surprised if they come out with a new one for 13
     
  17. st

    steggers Newbie
    0/47

    Joined:
    Sep 21, 2012
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    0
    Console:
    Xbox
    Dude its no prank , there was many available for FUT12 . And there's defiantly people using them in FUT13 right now . no human is this quick :to_pick_ones_nose3:
     
  18. SYE

    SYE Newbie
    5/47

    Joined:
    Oct 3, 2012
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    5
    Console:
    Xbox
    How would you even use the code?
     
  19. Zo

    Zontharius Newbie
    0/47

    Joined:
    Oct 5, 2012
    Messages:
    3
    Likes Received:
    0
    Trophy Points:
    0
    Gender:
    Male
    Console:
    Xbox
    I'm aware of that, but still, everything that is available out there (at least for now) has "a(n) ultimate goal" of stealing/cleaning your account. That's why it would be great to see a clean tool of this kind made out of pure kindness of heart ;P
    What's true is true, or something like that xD
     
  20. omegaultimo2

    omegaultimo2 Lifetime Gold Lifetime Gold
    125/188

    Joined:
    Jul 17, 2012
    Messages:
    1,637
    Likes Received:
    362
    Trophy Points:
    125
    Console:
    Xbox
    There is a autobuyer,ive seen it with my own eyes.Except the guy paid a large amount of money for it.
    So hes not leaking it but yea there are out there.i have a few Screenshots if i can find them
     

Share This Page

Close