Editing International Cricket Captain (General Thread)

I have it already. If I could get the source code then I can make it work for ICC09, we have all the data required except batting/bowling form, and you can't really change that cos it's based on previous form.

We just need to figure out how to locate the players now.
 
Yea but that's because in your version of the editor, you manually enter the player's birthdates

In the most recent version of the editor you just have to have the player's page open and it automatically loads that player.

Fe, there's a divide by zero error occuring in this part of the code:
private void codesToDOB()
{
int numDays = 0;
DateTime startDate = new DateTime(1944, 11, 8, 0, 0, 0);

int xOffset = 0;
int yOffset = 0;
int zOffset = 0;
int multiplier = 0;
int startZ = 0;

if ((playerRecord[cDOB + 2] >= 208) && (playerRecord[cDOB + 2] <= 223))
{
startDate = new DateTime(1944, 11, 8, 0, 0, 0);
multiplier = 1;
startZ = 208;
}
else if ((playerRecord[cDOB + 2] >= 224) && (playerRecord[cDOB + 2] <= 239))
{
startDate = new DateTime(1989, 9, 17, 0, 0, 0);
multiplier = 2;
startZ = 224;
}
else if ((playerRecord[cDOB + 2] >= 240) && (playerRecord[cDOB + 2] <= 255))
{
startDate = new DateTime(2079, 6, 5, 0, 0, 0);
multiplier = 4;
startZ = 240;
}

xOffset = playerRecord[cDOB] / (64 / multiplier);
yOffset = playerRecord[cDOB + 1] * (4 * multiplier);
zOffset = (playerRecord[cDOB + 2] - startZ) * 1024 * multiplier;

numDays = xOffset + yOffset + zOffset;
startDate = startDate.AddDays(numDays);
dobBox.Value = startDate;



The three either/ors are all false, and so the multiplier is zero and then the program divides by zero and crashes. The cDOB + 2 value is 0...PlayerRecord is taking 1416 but there are more bytes in ICC09 for each player...I think there are 1816 but i'm not 100%
 
Last edited:
Ok i've created an artmoney table that you can use to edit the players in the meantime. You need to understand what each value means though.

Fe's instructions for using an artmoney table:

Fe said:
Start Artmoney
Select Process (ICC 2009)
Table Menu -> Load -> Select the table file
Do a search as you normally would have done using the codes (e.g. 24-12-1975 corresponds to 192 160 223 64).
When the results pop up, make sure DOB Code 1 is highlighted on the right hand side (this is imperative). Click on an address on the left, press Alt-A and voila! Hope you like what you see.

Anarchy666's guide to editing:

Anarchy666 said:
NATIONALITIES
The following values represents the following nationalities:

TEST NATIONS..... ...ONE DAY NATIONS.......... KOLPAK PLAYERS
43 = Australia....... ...168 = Kenya.................. 178 = Australia
44 = England........ ...169 = Namibia................ 179 = New Zealand
45 = India............ ...170 = Netherlands........... 180 = South Africa
46 = New Zealand. ...171 = Canada................ 181 = Zimbabwe
47 = Pakistan....... ...172 = USA
48 = South Africa.. ...173 = Bermuda
49 = Sri Lanka...... ...174 = Ireland
50 = West Indies.. ...175 = UAE
51 = Bangladesh... ...176 = Scotland
52 = Zimbabwe..... ...177 = Italy


Basically you can only edit the domestic teams purely for cosmetic purposes only. The domestic team value can be found directly above the nationality value.

Although you can change an Ireland CC or Scotland CC player team value to 185 (AVAILABLE), you may also need to temporarily edit the nationality to English. This should make them available to sign as a free agent in the offseason.
__________________________________________________ __________________________________

CONTRACTS
Maximum length is 6 years. The following values represents the contract lengths.
16-31 = None
32-47 = 1 year
48-63 = 2 years
64-79 = 3 years
80-95 = 4 years
96-111 = 5 years
112-127 = 6 years


The salary value is simply SALARY*2.
So for example you want to give someone a salary of ?50,000.
You would enter the value for salary as ?100?, as 50*2=100. Fairly simple really.
Salary Demands is only useful during the offseason stage, although you could use this value to adjust a player?s actual salary.


England Central Contracts. If you want a player to have an England Contract, the value to enter is ?1?. If you do not want a player to have an England Contract, enter ?0? as the value. I think the CPU will award contracts at the end of each season as it sees fit. This value could very well also represent the number of years a player keeps an England Contract
__________________________________________________ __________________________________

BATTING
Batting Ability. The number in column 4 is the level a batsman has reached. This is automatic since this number is the square root minus 1 of the number in column 3.

Level 0 = 160-255.............. Awful.
Level 1 = 256-511.............. Tail-end batsman.
Level 2 = 512-767.............. Number 8 batsman.
Level 3 = 768-1023............ Bowling all-rounder/traditional wicketkeeper.
Level 4 = 1024-1279.......... Lower-Middle order/Super aggressive hitters.
Level 5 = 1280-1535.......... Excellent batsman
Level 6 = 1536-1791.......... World Class batsman
Level 7 = 1792-2047.......... Very few reach Level 7. Best in the world.

Technically you can set the ability to 65535 (Level 255). Usually can only be run out. But that just wouldn?t be fun so I advocate to anyone who can come up with a simplified editor to insert a limit to 2000.

Batting Preferences. Yes that?s right, preferences are not grouped together. Now you may have read in previous tutorials by yours truly that it was a case of trial and error. Now I?m in position to tell you how this works, they did their best to make this as difficult as they could, but in the end I prevail in sussing it out .
Now read carefully.

Offside/Legside preference.
0-31 = Strong Legside preference
32-63 = Slight Legside preference
64-95 = None
96-127 = Slight Offside preference
128-159 = Strong Offside preference
Basically this cycle repeats itself, often you?ll see a 5 digit number and stratch your head at what it translates as, don?t worry, this is the case for a lot of attributes, the 5 digit number is simply the original number multiplied by the number of cycles the CPU decides to multiply it by. Don?t ask why it does that, probably a lousy form of ?encryption?.

As for all other batting preferences, this one is a bit more complicated. A calculator would come in handy

AGGRESSION
This is how this this cell is organised. The values are the starting points.
0 = Very Defensive
64 = Defensive
128 = Normal
192 = Aggressive
256 = Very Aggressive

PACE/SPIN BOWLING and FRONT/BACK FOOT preferences
This is where the calculator comes in handy if your editing a batsman whose aggression is to be anything other than very defensive. Just add the required starting point of the desired aggression (i.e. Aggressive preference starts at 192 and + the following value to reach the desired preferences)

0 = Strong Back Foot preference & Spin Specialist
1 = Strong Back Foot preference & Slight Spin preference
2 = Strong Back Foot preference & No Pace/Spin preference
3 = Strong Back Foot preference & Slight Pace preference
4 = Strong Back Foot preference & Strong Pace preference

8 = Slight Back Foot preference & Spin Specialist
9 = Slight Back Foot preference & Slight Spin preference
10 = Slight Back Foot preference & No Pace/Spin preference
11 = Slight Back Foot preference & Slight Pace preference
12 = Slight Back Foot preference & Strong Pace preference

16 = No Foot preference & Spin Specialist
17 = No Foot preference & Slight Spin preference
18 = No Foot preference & No Pace/Spin preference
19 = No Foot preference & Slight Pace preference
20 = No Foot preference & Strong Pace preference

24 = Slight Front Foot preference & Spin Specialist
25 = Slight Front Foot preference & Slight Spin preference
26 = Slight Front Foot preference & No Pace/Spin preference
27 = Slight Front Foot preference & Slight Pace preference
28 = Slight Front Foot preference & Strong Pace preference

32 = Strong Front Foot preference & Spin Specialist
33 = Strong Front Foot preference & Slight Spin preference
34 = Strong Front Foot preference & No Pace/Spin preference
35 = Strong Front Foot preference & Slight Pace preference
36 = Strong Front Foot preference & Strong Pace preference
Now you can see why a calculator is quite handy!


Right/Left Hand and Wicketkeeper status. The following values will determine Left/Right Hand and ?keeper status.
0-31/0-15 = LHB
32-63/16-31 = RHB
64-95/32-47 = LHB wicketkeeper
96-127/48-63 = RHB wicketkeeper
128-159/64-79 = LHB part-time keeper
160-191/80-95 = RHB part-time keeper
192-223/96-111 = LHB part-time keeper
224-255/112-127 = RHB part-time keeper

Some players may have a higher value. This means nothing as the cycle of values just repeat themselves as mentioned earlier, just purely a case of 256 or 128 being added to the value. I don?t think there is such a thing as a keeper-batsman. Otherwise they would?ve given Adam Gilchrist and Brendon McCullum this status. Batting ability is the important value anyway. I also don?t think there is a catching ability. I?ve found Monty Panesar catches most things (particularly caught & bowleds).


__________________________________________________ __________________________________

PLAYER TYPE
0 = opening batsman
1 = batsman
2 = all-rounder
3 = bowler
__________________________________________________ __________________________________

BOWLING

Unlike batting ability, the lower the value, the better the bowler.

Level 1 = 320-511.............. World Class bowler.
Level 2 = 512-767.............. Excellent
Level 3 = 768-1023............ all-rounder
Level 4 = 1024-1279.......... Part-Time/Occasional Bowler
Level 5 = 1280-1535.......... Poor, use in emergencies only.
Level 6 = 1536-1791.......... Awful.

Bowling Style. The values for both columns determine what type of bowler a player will be.
0,0 = SLA............ 128,0 = LS
0,1 = LM............. 128,1 = LFM
0,2 = LMF............ 128,2 = LF

0,4 = OS............. 128,4 = LS
0,5 = RM............. 128,5 = RFM
0,6 = RMF............ 128,6 = RF

For the first value, it can range from 0-127 and again from 128-255. The second value it?s a 8 number sequence from 0-7. So if the second value is 38, that?ll translate as either a RMF or a RF (depending on the first value).

__________________________________________________ __________________________________

INJURIES
Injury type: The following injuries values are as follows, obviously ?0? is someone who is Fit to Play
0 = Fit to Play................... 7 = bruising
1 = broken leg................... 8 = bruising
2 = broken arm.................. 9 = broken finger
3 = fracture...................... 10 = knee injury
4 = cold........................... 11 = muscle strain
5 = stomach bug............... 12 = back injury
6 = hamstring injury........... 13 = foot injury
...................................... 14 = broken rib

Yes bruising appears twice. Quite possibly it is for different parts of the body.

Injury length . The value is simply the number of days the injury will keep a player out for. An injury can last for longer than 255 days, ignore the players in-game personal profile that it may say he is only out for a few days.

What would be helpful is if people could have a look for appearance hexes. There may be 3 or they could be grouped (skin colour, hair colour and hair type I think are three possible variables)

I've also included the DOB to Code converter if anyone was stuck using the excel spreadsheet.
 

Attachments

  • DOB to Code Converter.zip
    3.9 KB · Views: 338
  • International Cricket Captain 2009.rar
    496 bytes · Views: 415
Last edited:
When you make these changes how are they saved in the actual game?
 
The first time I did a search using the DOB code I got results to pop up. But now I'm trying other codes (found using the DOB converter) and no results are showing up. Where could the issue be?
 
Oh you've got a different version of the editor. It's rather interesting that that one can load the players...I doubt that Fe still has the source code for that one but if he did we could edit it so that it can change some more stuff...

It shows that the pointer things are different though. The editor still works if it searches through everyones DOB to find people

I'm not sure if I do. I don't have Visual C# installed at the moment so I can't really mess around with things. Maybe you might find what you want somewhere in here (not too sure though).

I only just saw this post, so maybe you don't need it anymore but just in case...
 

Attachments

  • ICC 2008 Editor [Before New Load Process].rar
    169.2 KB · Views: 172
Last edited:
Here is the First Class stats that you can edit.

Batting:
First Class
Row 19 collumn 1: Number of first class matches (Interger 1 byte)
Row 18 collumn 9: Number of first class innings (Interger 1 byte)
Row 18 collumn 10: Number of first class No?s (Interger 1 byte)
Row 18 collumn 13: Number of first class runs (Interger 2 bytes)
Row 19 collumn 13: Number of first class 50?s (Interger 1 byte)
Row 18 collumn 15: Number of first class 100?s (Interger 1 byte)
Row 18 collumn 5: Number of first class stumpings (Interger 2 bytes)
 
I'm not sure if I do. I don't have Visual C# installed at the moment so I can't really mess around with things. Maybe you might find what you want somewhere in here (not too sure though).

I only just saw this post, so maybe you don't need it anymore but just in case...

It still appears that the changing codes to DOB part divides by zero. I don't know C# so I'm just going on what I think I know about programming (though I did start teaching myself BASIC before)

I think the easiest way to edit at the moment would be to use the artmoney tables
 
I give up. Anyone working on a stand alone editor?
 
Last edited:
Nope, we don't know how to get the pointer working.

Artmoney works perfectly fine though.
 
can some1 please explain how to use artmoney to edit ICC09
i tried understanding the editing tutorial but i just dont get it :crying
 
what do i do after i got the table open in artmoney?
 

Users who are viewing this thread

Top