PCM.daily banner
21-11-2024 14:59
PCM.daily
Users Online
· Guests Online: 105

· Members Online: 1
Nemolito

· Total Members: 161,770
· Newest Member: ComCASH24wonee
View Thread
PCM.daily » Pro Cycling Manager 2006-2020 » Pro Cycling Manager 2011
 Print Thread
calendar update PCMDaily2012
TankNL
I seen a number of discussions about not wanting to change the race dates because this creates a problem in the race programs and you end up with strange race participation.

So i want to redo that part of the database also. For the experts here, to your knowledge, how do these files correlate to each other

i see several columns in DYN_cyclist, but i which can be pre set and which are filled when a new game is started.

STA_program
STA_fitness_program
STA_racefavorite_list

STA_type_leader
STA_type_leader_specialisation

STA_type_rider

I have done some test in order to see what the purpose is of those files, but i'm still somewhat in the dark. I'm hoping that a couple of wizzkids here can enlighten me.
Edited by TankNL on 08-03-2012 20:51
 
Lachi
As far as I know, the race programs have nothing to do with the DYN_cyclist.
But I know for sure that the columns you mentioned are used for totally different things.
 
TankNL
@lachi

to my understanding the favorite race column is used to show that in the rider info screen. in the older PCM version this was used in combination with morale. Passing over a rider would lead to a morale decrease. I was also rumored to influence the form of the day, but i don't know if it still does anything (other than a graphical reference).

for a number of riders this column is pre filled, but others are filled upon startup, so the game calculates (according to rider typ?) what the favorite races could be. So no link, but it touches the subject.
 
TankNL
When start a new season en sim to the next day, the LeaderType and Specialization is filled. Still trying to figure out how the game comes to those categories? is that a number of roles per team? Anybody?
 
lluuiiggii
Edit: uff, little bit more than an hour on this answer I think. It'll be a fun read for you Pfft

Beforehand, it should be said that I'm no 'expert' in this (editing program_infos, etc). I haven't (yet?) explored much these tables, never ran tests or anything, but I do have some ideas of how it works. Also it should be said that it can be very complicated, and honestly I don't think the effort is worth the final result, but since you want to give it a go...

If you're only changing race dates there's no need to change favorite races, since the IDs of the races will be kept. Therefore there's no edit to be done in DYN_cyclist as well.

The pre filled favorite races ones are in 'special cases' - when a rider has actually got a favorite race (e.g. Schleck with LBL and Tour). For the riders which haven't got pre filled favorite races they'll be defined based on STA_racefavorite_list. In this table there's a big list relating type of rider, country and several options for the 3 favorite races. The table is quite self-explanatory, but anyway, just mentioning this since you talk about it in your second post, since as I said, you won't need to change it in order to correct the calendar.

From the other tables you posted, the easier is STA_type_rider. It's the 7 different types of riders on the game. What the game does is calculate the AVG of the stats which are important for that type of rider (you can see them in the table), the one with the highest AVG will be the type of rider of that rider.

STA_type_leader I've never understood it very well. I don't know how the game defines which rider becomes which, but then again I right now I can't remember seeing it in any place other than DYN_cyclist (where they'll be calculated automatically when you start a career) and STA_program (where if you know what the leader 15 is, it's enough).

STA_type_leader_specialisation seems a bit clearer. The constant tells you about what you need to know about that leader specialisation (concerning the races he'll target), then adding if that type of rider will go to which GT, what will be his target races and what fitness calendars can he use.

This brings us to STA_fitness_program, which has the 'list' of fitness calendars in the game. Then in STA_fitness_program_week is the 'description' of each of these calendars: for each calendar in STA_fitness_program, there is the corresponding 43 weeks + their fitness levels in STA_fitness_program_week.

The last and (apparently) hardest - and maybe the only ones you need to change in order to change race dates, unless a major race like the Paris Nice had moved to September - is STA_program and STA_program_info.

STA_program contains the 12 months of the year for each type of leader (STA_type_leader), and gives, for each month of the year, several different programs of races - STA_program_info. Now in this table, there's basically the list of races the type of leader would enter in certain month, most of the time also specifying what leader specialisation would that program fit better.

So, now, let me try to relate them all in one example: a rider who will target Paris Nice and the Ardennes.
He's likely to be a rider with good values in HIL and TT, since that's the type of tour of PN (STA_race -> fkIDtype_tour; STA_type_tour). And then obviously good in HIL for the Ardennes.
We can assume his type_leader would be 21 - cya_class_val (hilly classics), and his leader specialisation could be 94 - POLY_PARISNICE_ARDENNAISES. So he would also take part at the Tour, target PN + 3 ardennes + Tour and his fitness schedules could be 34 or 35, that is, CLASSICS 07 or CLASSICS 08 (STA_fitness_program). Supposing he would go with the schedule 34 (classics 07), we can see in STA_fitness_program_week that in week 10 (Paris Nice) he would have a level 5 fitness form, and in weeks 16 and 17 (Ardennes) he would have lvls 5 and 6 fitness. He would also peak later in the Tour (weeks 27-29; lvls 5,5,6). Moving back to STA_program, he's a 21 type of leader, so he would be using STA_program_info(s) starting with ID 2xx (Cyanide's organization here - but it could be any number, as long as it's set properly in STA_program). Moreover he's a 94 leader_specialisation, so we'd also need to look out for that. And well, there's no 94 type_leader_specialisation in the 2xx STA_program_infos, so already something is not right. So let me change his type_leader, let's pretend he's a 14 instead (cya_polyvalent). So we've got ID program_info 421, suitable for leader_specialisation 94, corresponding to one of the March program infos os type_leader 14. This means he would go to 3 races in March: 133 (PN), 77 (MSR) and 91 (Catalunya). And that's basically it.

You see quite some things went wrong there, but anyway.. I don't know if STA_program_info contains only top races in fkIDraces that have leader_specialisations defined.. maybe (and likely) these are filled by the program infos that do not have a leader specialisation defined.

With all this said, I think that, in order to change race dates and not mess up the game, you don't need to go through the whole process, only STA_program_info (unfortunately the hardest). Unless, as I said, a major race had drastically changed it's date - like the example I gave, Paris Nice moving to September - in which case I think you'd also need to modify STA_type_leader_specialisation (for example, the leader specialisation 94, PN Ardennes and Tour would be messed up in that case).

If you were to correct the dates, for example, you'd need to remove Tour of Langkawi from all its appearances in STA_program_info, since the race has changed its month, from January to February. Maybe you'd also need to re-add it to other programs, but now in February programs, or maybe you could just leave it outside STA_program_info (like happens with the races added in Daily DBs). But then you'd be lowering the number of races in STA_program_info, while the Daily DBs do not do that.

So I think the 'only' things you'd need to take care of is to not overlap any races, and to the races which change its month. A lot of work, if you ask me, and as I said earlier - and in my opinion not worth the final result, which also will almost surely not be as good as the original, so you'll already lose some gameplay.

Well that's what I know. Btw, sometimes I write 'good luck' in the end of a (simple) DB answer, like how to add a team or a rider. If we were to keep it proportional, I'd need to write a lot of good lucks here, but that will be wasting lines so here you go (only one): good luck Pfft
 
TankNL
whow lluuiiggii, thanks for the reply. i was hoping for something like this.
It gives me somewhat more insight. I have a question about the part starting with "So, now, let me try to relate them all in one example:"

How does the game decide which program should be used, so you decide which program is suitable for his goal, but in general the game makes that for every rider. I trying to grasp the concept, because if I know how that works.

Can I create new programs? so now or are the STA_tables static and not to be messed with?
 
lluuiiggii
TankNL wrote:
How does the game decide which program should be used, so you decide which program is suitable for his goal, but in general the game makes that for every rider. I trying to grasp the concept, because if I know how that works.

I don't know.. maybe depending on the stats, the game calculates which type of rider a certain rider is, based on that give him a type of leader, which gives a leader specialisation which also defines his fitness program. And together with that defines the programs he'll be using, and so make all the subscriptions to races when you start the career. How the game decides this all? I'd say it is random, quite the same that happens with favorite races (there are several options on the 'list' - the game will randomly choose one). I think and hope though that some factors play a role as well - for an example if he's the best GC rider in the world, his chances of going to the Tour will be much higher than trying a Giro-Vuelta double for example, or also the game will look for specialisations which contain as a target some of the rider's favorite races..

TankNL wrote:
Can I create new programs? so now or are the STA_tables static and not to be messed with?

I'm not sure you can add something in STA_program, at least. Because that seems to be an 'exact' table - it's 12 lines (12 months) for the 'selected' type of leaders. If you were to add something there, you would add another 12 lines, for another type of leader. But there might be a reason why only those 7 type of leaders appear there.

As for STA_program_info, I think you can add new lines there. You'd also need to include them in gene_ilist_fkID_program_info in STA_program, but I don't think adding more lines would create a problem (technically-wise; maybe it would though gameplay-wise). But I don't think adding a few (only a few though) lines would also cause gameplay problems (by gameplay, I mean startlists, etc).

You can also try talking to Johan92 or who else worked on the DB files for PCM Norge's 1998 DB. They did change STA_program_info in order to make possible to have the Vuelta a Catalunya, for example, in June (apparently they also added a line to it), so they might have 'studied' these tables more.

Btw, I'm not sure if I made it clear, but (I think) you only need to change STA_program_info to correct the dates in the DB. I explained what I know about the others since you showed interest in knowing what were they for Wink
 
Ad Bot
Posted on 21-11-2024 14:59
Bot Agent

Posts: Countless
Joined: 23.11.09

IP: None  
TankNL
Yes you are helping allot.
It becomes clearer to me. but now i'm almost certain that the best thing to do is create a whole new STA_program.xml and STA_program_info.xml

Will make a mapping in my files so that i can see what is happening in the current files and try to grasp the concept. with the concept I will generate new files. the way I see it is that I need to have a logical buildup per month.

You also said that a number of races are kept out of the files... but if nobody has them on the program how come there are participants... because of the teams that are assigned through STA_stage?
 
lluuiiggii
Creating a whole new STA_program and STA_program_info seems basically impossible for me. There are about 500 lines there (in STA_program_info - the hardest of these two), with a lot of variations. We barely know how it works. We don't know how many time each race appears to keep the balance, and several other things.. imo it's impossible to create these tables from 0. As I said, it wouldn't be as good as the original, and all that effort for what? In a few months PCM 12 is released and bump; we change game and that's it. What you can try doing is, as I said, correct the race dates and do some modifications in STA_program_info. That would be the 'normal' procedure if anybody tried to place race dates as 2012.

As for the 'number' of races kept out of files, I've no idea how many. I know that the ones added with the custom DBs, like the Daily, are normally kept out (at least in the PCM Daily DB - it's better to avoid modifying these tables). But on the races that comes with the game, I don't know if they're all there or not.

As for how they have participants, it's simple. On the beginning of the career, each race is assigned teams. Then these teams automatically need to enter riders to the races. However they'll likely go for 'crappy' riders. That's why even if you add a race and make it PT and force PT teams in and everything else, it won't have a good startlist.

And btw, you can assign teams to races in STA_race, not STA_stage, but that only counts for single player mode.
 
Fishbone
lluuiiggii wrote:
But on the races that comes with the game, I don't know if they're all there or not.


I guess they are not. If I recall correctly, there were even race id's listed that were no longer in STA_race...
 
TankNL
Oh man, I know why most of the DB makers left the calendar in tact. Hard tables to grasp, but I think i'm getting there. 1 thing is for sure, the current setup has flaws in them;

STA_type_leader has 18 leader types.


14   cya_polyvalent
15   cya_giro
16   cya_tdf
17   cya_vuelta
18   cya_suisse
19   cya_espagnols
20   cya_francais
21   cya_clas_val
22   cya_clas_pav
23   cya_sprinters
25   cya_eq_tours
26   cya_eq_clas
28   pro_sprinters
29   pro_francais
30   pro_italiens
31   pro_espagnols
32   pro_benelux
33   pro_eq


But only 9 have actual program's in STA_program (14, 15, 16, 17, 21, 22, 23)
Yet in the DYN_cyclist all the types are used. Non of the (pro) continental riders have a program? only the top riders with a leader specialization? I will look into that.

The connections I now see are the following;
1. At the start of a season, the rider_type is determined by a calculation with STA_rider_type and the stats from DYN_cyclist. the best calculation becomes the rider_type. (I don't know if the rider type can evolve per season?)
2. The leader type is determined. My guess is that the game uses the riders country and the rank_f_orientation_xxx for the calculation. However there is a randomness to it, because it isn't always the same. (Nibali and Basso are excellent test subjects... there type does change allot). The cya_country (suiss, francais, etc), are also used, hence the usage of the country parameter
3. The leader specialization type is determined. this is also somewhat random, but my guess is that it takes in account the same parameters as mentioned above. The top riders all have this field filled, but smaller (less important?) riders on continental team have this filled with blank.
4. The fitness program is determined. For the riders with a leader specialization, the choice is narrow to a number of linked programs. My guess is that the rest is somewhat random.

My first conclusion is that the game can be steered far more, but that due to the lack of interest in these tables (time consuming I know), there's a lot of potential balancing unused.
 
TankNL
I've done several tests with the v1 database of PCMDaily and only 115 riders out of about 3200 riders get a race program assigned ...

looks like there is room for improvement Smile
 
TankNL
ok, I created 2 files in my exploration

1. the mapping of the UCI calendar with STA_Race and STA_Stage
https://dl.dropbox...endar.xlsx

Allot of races have their own profile, but I'm not sure if it changes every year. I somebody could walk through the list and comment on that, that would be much appreciated.

2. The work mentioned above with STA_program and STA_program_info
https://dl.dropbox...ation.xlsx

They are free for usage, since I just want to contribute to the community.
Edited by TankNL on 27-02-2012 20:39
 
TankNL
In which files are race ID's used?

my list so far;
DYN_cyclist (favorite races) => does it do anything?
DYN_palmares
DYN_team (favorite races) => does it do anything?
DYN_variant_stage
STA_program
STA_program_info
STA_stage
STA_racefavorite_list => if anybody has an understandig of you this ends up in DYN_cyclist,,, please fill us in.
STA_type_leader_specialisation => does it do anything?

help is much appreciated.
 
TankNL
TankNL wrote:
STA_racefavorite_list => if anybody has an understandig of you this ends up in DYN_cyclist,,, please fill us in.


I've done some more research. and it seems that i primarily uses the Italian favorite lists... don't know why yet... more testing needs to be done Smile
 
ruben
bladiebladiebla

only thing that is important is:

DYN_leader_type, DYN_leader_specialization in which the programs are defined -> STA_program which again links to STA_program_info which goes on a monthly basis with the races in it.

I'm adjusting this for weeks already since the PCM Daily beta came out, and I'm continuing it on the PCM daily v1.
It's really an arduous task and it will probably never turn out perfect. But better than the original (which the PCM Daily makers already adjusted btw!).

STA_race_favoritelist is not important at all. Well maybe for moral or defining what type leader_specialization they chose for that season (it dffers per season, specially for stage racers), but not more than that. It doesn't have a huge impact.

Most important is, in the end, sta_program_info.
Edited by ruben on 27-02-2012 23:50
 
TankNL
@Ruben;

Did you take a look at my Excel file? the calendar and the program_info exploration? I think I can create the progam info file from the Excel file, but first I want to figure out what it does, before I begin pushing out the race programs.
 
lluuiiggii
That's a lot to answer, but here we go:

TankNL wrote:
Oh man, I know why most of the DB makers left the calendar in tact. Hard tables to grasp, but I think i'm getting there. 1 thing is for sure, the current setup has flaws in them;

Flaws? How can we know that these are flaws? All our knowledge comes from analyzing the tables Cyanide gave us and giving some guesses, while Cyanide's knowledge comes from.. well.. creating it all.

TankNL wrote:
STA_type_leader has 18 leader types.
(code)
But only 9 have actual program's in STA_program (14, 15, 16, 17, 21, 22, 23)
Yet in the DYN_cyclist all the types are used. Non of the (pro) continental riders have a program? only the top riders with a leader specialization? I will look into that.

That's actually 7 with programs in STA_program Wink I already talked about this in post #7:
lluuiiggii wrote:
I'm not sure you can add something in STA_program, at least. Because that seems to be an 'exact' table - it's 12 lines (12 months) for the 'selected' type of leaders. If you were to add something there, you would add another 12 lines, for another type of leader. But there might be a reason why only those 7 type of leaders appear there.

Cyanide obviously knows what they're coding. If there are only 7 types of leaders there, there's gotta be a reason for it. Maybe it'll work to add more, but if it was 'needed' or 'better' why wouldn't the producers have done it?

All the leader types have to be used in DYN_cyclist, otherwise it'd be useless (to have something never used). But not necessarily they need to 'have' a STA_program. Which also makes a lot of sense: the main riders (irl I'm talking) carefully prepare for the main events, keeping track of race days, effort, etc, thus making a preparation program interesting in the game (so they appear in top races in top shape). However, the Conti riders haven't got one and only specific goal, like a GT. They just go picking up races and wins. Besides, it's much more important for gameplay if the favorites are in good form for the Giro or Tour; while it's much less important if the main favorite is in good form for the Giro dell'Appennino (besides being much more common irl that the 'main' riders aren't in good form on these races).

TankNL wrote:
1. At the start of a season, the rider_type is determined by a calculation with STA_rider_type and the stats from DYN_cyclist. the best calculation becomes the rider_type. (I don't know if the rider type can evolve per season?)

Yes, rider type is re-calculated in the beginning of each season (if I recall correctly).
And I agree with points 2, 3 and 4.

TankNL wrote:
My first conclusion is that the game can be steered far more, but that due to the lack of interest in these tables (time consuming I know), there's a lot of potential balancing unused.

Lack of interest? Definitely not by Cyanide, since they get paid for selling a good game and thus want to do it as good as possible. And it's definitely works good. And as I said above, there shouldn't be a race program to prepare for the... Settimana Coppi e Bartali, or any other small race you want to put in here. This same answer applies to post #12 as well. The game is set to work good (good = similar to real life) in the current way; who says that there should be a schedule for most riders and most races?

Post #13: I didn't understand much of the files. I see more sense in doing a file like the second, but not sure what's the point of the first file. On a quick look I took on it, some races have 3 days in PCM and 2 irl because they have 2 stages in a day, something impossible in PCM.

I don't know what is 'aantal' in specialisation usage in the second file. Plus I'm not sure why did you put the other tables (other than STA_program_info and variations) there. Btw nice formulas, although the Fast Editor with lists on would have done that as well Wink
Allot of races have their own profile, but I'm not sure if it changes every year.

Are you talking about variants? The races with 'their own' profile means some stage maker has made it. The few races that (by now) haven't got their own profile will use stages from other races. The races with 2012 profiles means somebody has created the 2012 stages for them.

Finally, race's IDs are likely to be found in other tables (for example, DYN_team_race, only in a career though). But I'm not sure why would you want to know every table where race IDs appear. And how STA_racefavorite_list works seems quite simple: it's a big list with the possible favorite races for riders who haven't got them specified in DYN_cyclist. So for example, riders from Country 8 (Spain) of type 1 (tour) can have any of those options (IDs 1-30 in this case) as favorite races, like ID 1 (18,133,58 - Vuelta, Paris Nice and Vuelta a Mallorca). But again I don't know why this would be of any importance to re-doing/modifying STA_program_info.

Edit: good to see someone else talking (or better, writing), and apparently with a lot more knowledge on these tables than me Smile
Edited by lluuiiggii on 28-02-2012 00:18
 
TankNL
Thanks for the answer lluuiiggii !

lluuiiggii wrote:

TankNL wrote:
Oh man, I know why most of the DB makers left the calendar in tact. Hard tables to grasp, but I think i'm getting there. 1 thing is for sure, the current setup has flaws in them;


Flaws? How can we know that these are flaws? All our knowledge comes from analyzing the tables Cyanide gave us and giving some guesses, while Cyanide's knowledge comes from.. well.. creating it all.

By flaws i mean obvious errors to me. So the usage of a race_id that is not in STA_Race or the usage of a race in 2 different months. For example: program_info 41 and 591 both have race_id 157 (Coppa Placci) in them. 41 is for juli and 591 is for oktober. the new UCI date according to their calendar is 28-07-2012, so juli is correct.

lluuiiggii wrote:
TankNL wrote:
My first conclusion is that the game can be steered far more, but that due to the lack of interest in these tables (time consuming I know), there's a lot of potential balancing unused.


Lack of interest? Definitely not by Cyanide, since they get paid for selling a good game and thus want to do it as good as possible. And it's definitely works good. And as I said above, there shouldn't be a race program to prepare for the... Settimana Coppi e Bartali, or any other small race you want to put in here. This same answer applies to post #12 as well. The game is set to work good (good = similar to real life) in the current way; who says that there should be a schedule for most riders and most races?

I'm a bit more sceptical then you are. I haven't seen many updates of these parts in the database over the last few years. In my view the only do a minimal setup and I think theres more to gain from these tables.

I'm thinking of redoing them like Ruben does and will post them here for comment and directions Smile
 
TankNL
I've got the sta_program_info matched and checked with the UCI calendar. also got the STA_stage modified to the new calendar. build a check to highlight errors that need to be corrected in the program_info file. It will be some work, but the tools will help me.

Feel free to join me in discussing the actual editing of the race program.

as said, all is shared, so new Excel file is available;
https://dl.dropbox...ation.xlsx
 
Jump to Forum:
Login
Username

Password



Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
Latest content
Screenshots
Best climbers
Best climbers
PCM 07: PCM-Spain DB
Fantasy Betting
Current bets:
No bets available.
Best gamblers:
bullet fighti... 18,376 PCM$
bullet df_Trek 17,374 PCM$
bullet Marcovdw 15,345 PCM$
bullet jseadog1 13,552 PCM$
bullet baseba... 10,439 PCM$

bullet Main Fantasy Betting page
bullet Rankings: Top 100
ManGame Betting
Current bets:
No bets available.
Best gamblers:
bullet Ollfardh 21,890 PCM$
bullet df_Trek 15,520 PCM$
bullet Marcovdw 14,800 PCM$
bullet jseadog1 13,500 PCM$
bullet baseball... 7,332 PCM$

bullet Main MG Betting page
bullet Get weekly MG PCM$
bullet Rankings: Top 100
Render time: 0.27 seconds