These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
 

Char ID, Corp ID and Allaince ID diffrances.

First post
Author
Louis Vitton
Viziam
Amarr Empire
#1 - 2012-01-24 12:29:05 UTC
Hey guys,

The subject of this thread may be a little miss leading sorry for that.

I am trying to see if there is a notable difference in the Integer for charID, corpID and AllianceID so that i can isolate them.

The idea is taking the contactList then allow a hyperlink with a get request so that if you click on one of the charaters if will take you to a page with a get request up i the url and allow me to pull the details for that chatater i would like this to also work for corp and alliance.

So the theory i have is to isolate them based on there ID numbers, As i mean there is prob a range where they are corpID or CharIDs.

after i isolated them based on this ID then i would use a separate call for there details as character and corps require diff calls for details.

Thanks for the help and sorry if this isnt clear it is a little late at night.
Desmont McCallock
#2 - 2012-01-24 13:04:36 UTC  |  Edited by: Desmont McCallock
Let me see how we do it in EVEMon....hmmmm... yes...yes....that's it.....now I remember....

Every CharacterID is of DB typeID between 1373 (CharacterAmarr) and 1386 (CharacterVherokior).
Every CorporationID is of DB typeID 2 (Corporation).
Every AllianceID is of DB typeID 16159 (Alliance).

* DB reference is invTypes table.

So we check the typeID and create the appropriate link.

Hope this helps.

Edit: I just realized that you are getting your data from the contactList API call which doesn't provide the typeID, in contrast of the data provided by a "showInfo'" link.
So my answer is rather irrelevant. Sorry.
Pinky Attor
#3 - 2012-01-24 18:08:11 UTC
Louis Vitton wrote:

So the theory i have is to isolate them based on there ID numbers, As i mean there is prob a range where they are corpID or CharIDs.


I *think* the ID's are unique between corporation, character, and NPC corps. This is my guess based on the wallet API's where the clientID and ownerIDx values seem to be unique across the three groups. I don't know if there are specific ranges for each type though.
Louis Vitton
Viziam
Amarr Empire
#4 - 2012-01-27 01:24:56 UTC
Thank you for replying. I have submitted a petition to ask the answer to this question.
Captain Thunk
Explode. Now. Please.
Alliance. Now. Please.
#5 - 2012-01-27 01:50:00 UTC
Originally they were within different ranges and could be isolated, however since they went 64-bit they all draw from the same pool.
Louis Vitton
Viziam
Amarr Empire
#6 - 2012-01-27 01:58:02 UTC
Captain Thunk wrote:
Originally they were within different ranges and could be isolated, however since they went 64-bit they all draw from the same pool.


Thank you for the info mate. I thought this might be the case :( i will just work around what i want to do another way.

Cheers for the help boys.
Painkillaz
Caldari Provisions
Caldari State
#7 - 2012-01-27 12:09:33 UTC
I havent looked that deep into ContactList, but itsnt it only the playersid being provided?

To see if they are part of Corp or Alliance is type checking the attributes of the rowset

(dont know what your poison is, but here is a PHP example)

$xml = new SimpleXMLElement(file_get_contents('xmlcache/corp/ContactList.xml.aspx'));

foreach($xml->result->rowset as $rowset) {

if($rowset['corporateContactList'] !="") {
echo $rowset['corporateContactList']

foreach($rowset->row as $row) {

echo $xml->xpath("contactID");
echo $xml->xpath("contactName");
echo $xml->xpath("standing");

###insert code for saving the IDs or turning them into whatever you want ####
}

###Do another loop here for alliancedata ###


}
}


Desmont McCallock
#8 - 2012-01-27 12:13:04 UTC
Painkillaz wrote:
I havent looked that deep into ContactList, but itsnt it only the playersid being provided?

To see if they are part of Corp or Alliance is type checking the attributes of the rowset

(dont know what your poison is, but here is a PHP example)

$xml = new SimpleXMLElement(file_get_contents('xmlcache/corp/ContactList.xml.aspx'));

foreach($xml->result->rowset as $rowset) {

if($rowset['corporateContactList'] !="") {
echo $rowset['corporateContactList']

foreach($rowset->row as $row) {

echo $xml->xpath("contactID");
echo $xml->xpath("contactName");
echo $xml->xpath("standing");

###insert code for saving the IDs or turning them into whatever you want ####
}

###Do another loop here for alliancedata ###


}
}


ContactList can contain charIDs, corpIDs and allianceIDs. So, it's no easy task to check what is what.
Painkillaz
Caldari Provisions
Caldari State
#9 - 2012-01-27 12:25:18 UTC
oh ok! time to abuse the image server for the correct id ! :D
CCP Prism X
C C P
C C P Alliance
#10 - 2012-01-27 13:07:10 UTC
Captain Thunk wrote:
Originally they were within different ranges and could be isolated, however since they went 64-bit they all draw from the same pool.


That's actually backwards. Originally the only defining attribute of any ownerID was that it was above 100 million. Now, with the 64bit change, they are fitted on different ID ranges. Blink
Shirley C
Guardians Incorporated
Cynosural Field Theory.
#11 - 2012-01-27 13:21:47 UTC
If this is truly the case, can we be told what these ranges are as we can then simply check what range the contact id is within and determin if its a corp alliance or pilot?

This would greatly simplify what im doing to produce our alliance standings page at present using your image server :P
CCP Prism X
C C P
C C P Alliance
#12 - 2012-01-27 13:47:36 UTC
I see little harm in that:
Characters: ]90000000, 98000000[
Corporations: ]98000000, 99000000[
Alliances: ]99000000, 100000000[

However, this sadly only applies to owners created after the 64 bit move. Don't worry, that fact also makes me a sad panda.
Painkillaz
Caldari Provisions
Caldari State
#13 - 2012-01-27 13:51:30 UTC
CCP Prism X wrote:
I see little harm in that:
Characters: ]90000000, 98000000[
Corporations: ]98000000, 99000000[
Alliances: ]99000000, 100000000[

However, this sadly only applies to owners created after the 64 bit move. Don't worry, that fact also makes me a sad panda.


Good info! Well a new streamlining project awaits you guys! ;)
Shirley C
Guardians Incorporated
Cynosural Field Theory.
#14 - 2012-01-27 14:23:55 UTC
Then can we get a simple identifier in the contacts xml that tells us if it is a pilot / corp or alliance id - a simple integer will do. Being unable to indentify which one a character refers to is extremely annoying.
Captain Thunk
Explode. Now. Please.
Alliance. Now. Please.
#15 - 2012-01-27 14:54:37 UTC
Shirley C wrote:
Then can we get a simple identifier in the contacts xml that tells us if it is a pilot / corp or alliance id - a simple integer will do. Being unable to indentify which one a character refers to is extremely annoying.


if you deal with alliances then you will have the alliance xml somewhere. Test against that to determine if alliance. you can test against corp and player using the public limited info sheets as they both have them. If you have a db, store the IDs and you won't have to call the xml again.
Louis Vitton
Viziam
Amarr Empire
#16 - 2012-01-27 22:51:48 UTC
CCP Prism X wrote:
I see little harm in that:
Characters: ]90000000, 98000000[
Corporations: ]98000000, 99000000[
Alliances: ]99000000, 100000000[

However, this sadly only applies to owners created after the 64 bit move. Don't worry, that fact also makes me a sad panda.



Thank you ccp Prism X :) You are by far the best CCPer :)
Callean Drevus
Perkone
Caldari State
#17 - 2012-01-28 08:40:00 UTC
Louis Vitton wrote:
Thank you ccp Prism X :) You are by far the best CCPer :)

At least one from whom we generally hear good things Cool

Developer/Creator of EVE Marketeer

Matalok
Slackers and Nihilists
#18 - 2012-01-30 11:44:11 UTC
CCP Prism X wrote:
I see little harm in that:
Characters: ]90000000, 98000000[
Corporations: ]98000000, 99000000[
Alliances: ]99000000, 100000000[

However, this sadly only applies to owners created after the 64 bit move. Don't worry, that fact also makes me a sad panda.


This man is going to make me very poor with the amount of beer I owe him at Fanfest
Louis Vitton
Viziam
Amarr Empire
#19 - 2012-01-31 09:04:36 UTC
Also are string names different for all or can they be shared eg,

alliance name: eveHottie
corp name: eveHottie
player name: eveHottie

And have the same name across them or is it like the ID and indivdual to that 1 ?
Squizz Caphinator
The Wormhole Police
#20 - 2012-02-01 19:09:05 UTC
Louis Vitton wrote:
Also are string names different for all or can they be shared eg,

alliance name: eveHottie
corp name: eveHottie
player name: eveHottie

And have the same name across them or is it like the ID and indivdual to that 1 ?


Names are unique across pilot/corp/alliances.

Various projects I enjoy putting my free time into:

https://zkillboard.com | https://evewho.com