Page 1 of 1

Increase number of starting jobs in Create Character Menu

Posted: Tue Dec 12, 2017 2:35 pm
by Bronio
So from what I have found, this section mentions jobs 1 - 6 are available at character creation screen. I have changed below the jobs "createchar.m_mjob = dsp_cap(mjob, 1, 6);" to 22 for all jobs but still only shows 6 jobs on the character creation screen. There is a validation somewhere checking to see if the jobs are even "starting jobs" but I have yet to find where the checks are. I'm probably just bind as a bat but its almost to yanking hair out point lol. Hopefully somebody knows how to sort this out. In the mean time I will continue to sift through files until I can find wtf all these checks are.

int32 lobby_createchar(login_session_data_t *loginsd, char *buf)
{
// инициализируем генератор случайных чисел
srand(clock());
char_mini createchar;

memcpy(createchar.m_name, loginsd->charname, 16);
memset(&createchar.m_look, 0, sizeof(look_t));

createchar.m_look.race = RBUFB(buf, 48);
createchar.m_look.size = RBUFB(buf, 57);
createchar.m_look.face = RBUFB(buf, 60);

// Validate that the job is a starting job.
uint8 mjob = RBUFB(buf, 50);
createchar.m_mjob = dsp_cap(mjob, 1, 6); <-- jobs 1 -6.

// Log that the character attempting to create a non-starting job.
if (mjob != createchar.m_mjob) {
ShowInfo(
CL_WHITE"lobby_createchar" CL_RESET": "
CL_WHITE"%s" CL_RESET" attempted to create invalid starting job "
CL_WHITE"%d" CL_RESET" substituting "
CL_WHITE"%d" CL_RESET"\n",
loginsd->charname,
mjob,
createchar.m_mjob);
}


All in all just trying to make it so when you click create character, all the jobs are shown in the list instead of only 6. Yes I know you can change settings.lua and enable jobs/subjobs however that just makes them available to CHANGE jobs to those jobs after creating a character. I am trying to create the option to be able to have all the jobs available to choose from on the character creation screen. I know its possible, just a matter of finding where the codes located to list that information ><.

Re: Increase number of starting jobs in Create Character Men

Posted: Wed Dec 13, 2017 10:52 am
by whasf
Can the client even do that? I would think it's hardcoded into the client, I don't think you can expand that list...
You're looking at the code that lobby is reading the response from the client (RBUFB)

Also, please use code tags! :)

Re: Increase number of starting jobs in Create Character Men

Posted: Thu Dec 14, 2017 3:16 pm
by Bronio
So hey funny thing on this, I was browsing PoLUtils and I found that the string tables for character creation are in Roms/171/6.DAT.

It shows this -

String Table Entry 00000 World 1
String Table Entry 00001 Race 1
String Table Entry 00002 Job 1
String Table Entry 00003 Level 1
String Table Entry 00004 Area 1
String Table Entry 00005 Face %c 1
String Table Entry 00006 Hair %s 1
String Table Entry 00007 Size %s 1
String Table Entry 00008 S 1
String Table Entry 00009 M 1
String Table Entry 00010 L 1
String Table Entry 00011 A 1
String Table Entry 00012 B 1

Any relation to the data stored to determine said "Job" choice?

I havn't been able to extract the data from that dat yet to look inside. "ChangeText" tool doesn't read it being there no "images" in the dat and of course VRS loads the dat but theres no Models or Skeletons involved so thats pointless. I'm sure theres a way, just a matter of how.

Re: Increase number of starting jobs in Create Character Men

Posted: Sat Dec 30, 2017 10:42 am
by Bronio
We'll ive made progress in locating this questionable feat and heres what I know so far -


This is where the data is stored at least so far that I know of. I've made several changes here and seen various results. Not the results I am after, but the clients defiantly responding to changes -
Image

moved the menu down
Image


not sure why but this actually removed the cursor when selecting BLM and RDM
Image

This change actually removed MNK altogether lol
Image


although I'm not quite sure yet where what needs to be added to increase the size its in there somewhere..


Here's a few more changes I was messing with to try and get reactions


This section controls all the slash commands. So changing these changes the slash command in game to whatever you put here. So if you change /attack to /killthemotherfer in game you would have to type /killthemotherfer for it to "attack" with command.
Image

This section right here has to do with the menu that pops up when you engage.
Image

Making it smaller just essentially moved the list down, as you can see the words going into the chat box that used to be in that box, not it just highlights attack and pushes the rest down.
Image

Changing the values in this section to a higher number seemed to increase the # of slots available for that menu but not sure yet where to add to that menu.
Image

Theres a lot in this file that I still have yet to look over and experiment with but its the destination for anyone wanting to poke around and make client changes. At least one of em :D