147 lines
5.9 KiB
Plaintext
147 lines
5.9 KiB
Plaintext
// $Id: forSQLdev.txt,v 1.1 2004/09/19 09:18:32 Akaru Exp $
|
||
|
||
This file is to informe SQL dev about all modifications on TXT version.
|
||
|
||
When a modification is done, TXT dev try to add it here with some explanations.
|
||
When a modification is added in SQL version, SQL dev remove it from this file.
|
||
|
||
|
||
********* 9th september
|
||
------------------------------------
|
||
changed:
|
||
sd->newauth (map.h/clif.c) by sd->packet_ver (look all function where was newauth)
|
||
value become // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 30aug04 (by [Yor])
|
||
instead of // 0: old 0x72 (19 b), 3: new 0x72 7july04 (22 b), 20: new 0x72 13july04 (39 b), 0: old 0x7E (6 b - not for auth), 27: new 0x7E 26july04 (33 b), 31: new 0x7E 30aug04 (37 b) (by [Yor])
|
||
note: local variable 'newauth' not changed in clif_parse_WantToConnection
|
||
|
||
------------------------------------
|
||
Added
|
||
if (sd->packet_ver == 8) { // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 30aug04 (by [Yor])
|
||
clif_displaymessage(sd->fd, "This client version (of 26 jul 2004) is not actually supported by this server.");
|
||
} else if (sd->packet_ver == 9) { // 5: old, 6: 7july04, 7: 13july04, 8: 26july04, 9: 30aug04 (by [Yor])
|
||
clif_displaymessage(sd->fd, "This client version (of 30 august 2004) is not actually supported by this server.");
|
||
}
|
||
at end of 'pc_authok' function (pc.c)
|
||
|
||
------------------------------------
|
||
Changed
|
||
in 'atcommand_effect' function, set the correct message in back of:
|
||
clif_displaymessage(fd, msg_table[229]); // Your effect has changed.
|
||
|
||
------------------------------------
|
||
Changed
|
||
in 'atcommand_servertime' function, replace permanent message by msg_table and put them in msg_athena.conf
|
||
|
||
------------------------------------
|
||
Changed to reduce (a little) lag
|
||
in char.c, commented printf about auth:
|
||
case 0x2afc:
|
||
if (RFIFOREST(fd) < 22)
|
||
return 0;
|
||
//printf("auth_fifo search: account: %d, char: %d, secure: %08x-%08x\n", RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOL(fd,14));
|
||
for(i = 0; i < AUTH_FIFO_SIZE; i++) {
|
||
-
|
||
case 0x2b02:
|
||
if (RFIFOREST(fd) < 18)
|
||
return 0;
|
||
if (auth_fifo_pos >= AUTH_FIFO_SIZE)
|
||
auth_fifo_pos = 0;
|
||
//printf("auth_fifo set (auth #%d) - account: %d, secure: %08x-%08x\n", auth_fifo_pos, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10));
|
||
auth_fifo[auth_fifo_pos].account_id = RFIFOL(fd,2);
|
||
-
|
||
case 0x2b05:
|
||
if (RFIFOREST(fd) < 49)
|
||
return 0;
|
||
if (auth_fifo_pos >= AUTH_FIFO_SIZE)
|
||
auth_fifo_pos = 0;
|
||
WFIFOW(fd,0) = 0x2b06;
|
||
memcpy(WFIFOP(fd,2), RFIFOP(fd,2), 42);
|
||
//printf("auth_fifo set (auth#%d) - account: %d, secure: 0x%08x-0x%08x\n", auth_fifo_pos, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10));
|
||
auth_fifo[auth_fifo_pos].account_id = RFIFOL(fd,2);
|
||
-
|
||
in case 0x66: // <20>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49>
|
||
if (auth_fifo_pos >= AUTH_FIFO_SIZE)
|
||
auth_fifo_pos = 0;
|
||
//printf("auth_fifo set #%d - account %d, char: %d, secure: %08x-%08x\n", auth_fifo_pos, sd->account_id, char_dat[sd->found_char[ch]].char_id, sd->login_id1, sd->login_id2);
|
||
auth_fifo[auth_fifo_pos].account_id = sd->account_id;
|
||
-
|
||
commented printf about searching map server (in 'search_mapserver' function)
|
||
|
||
------------------------------------
|
||
Improved At_command about monsters spawn (atcommand_spawn and atcommand_monster):
|
||
modified message 39:
|
||
//39: All monster summoned!
|
||
Added message 240:
|
||
//240: %d monster(s) summoned!
|
||
Added variables (output, j and k):
|
||
char output[200];
|
||
int i, j, k;
|
||
memset(output, '\0', sizeof(output));
|
||
Changed loop to check at least 8 times (to try to spawn in closed area):
|
||
count = 0;
|
||
for (i = 0; i < number; i++) {
|
||
j = 0;
|
||
k = 0;
|
||
while(j++ < 8 && k == 0) { // try 8 times to spawn the monster (needed for close area)
|
||
if (x <= 0)
|
||
mx = sd->bl.x + (rand() % 11 - 5);
|
||
else
|
||
mx = x;
|
||
if (y <= 0)
|
||
my = sd->bl.y + (rand() % 11 - 5);
|
||
else
|
||
my = y;
|
||
k = mob_once_spawn((struct map_session_data*)sd, "this", mx, my, name, mob_id, 1, "");
|
||
}
|
||
count += (k != 0) ? 1 : 0;
|
||
}
|
||
Changed last message display (to add number != count):
|
||
if (count != 0)
|
||
if (number == count)
|
||
clif_displaymessage(fd, msg_table[39]); // All monster summoned!
|
||
else {
|
||
sprintf(output, msg_table[240], count); // %d monster(s) summoned!
|
||
clif_displaymessage(fd, output);
|
||
}
|
||
else {
|
||
|
||
********* 10th september
|
||
------------------------------------
|
||
Correction of an error in char.c in 'char_config_read' function:
|
||
replace 'wisp_server_name' by 'w2' in the test of the lenght:
|
||
} else if (strcmpi(w1, "wisp_server_name") == 0) {
|
||
if (strlen(w2) >= 4) {
|
||
memcpy(wisp_server_name, w2, sizeof(wisp_server_name));
|
||
wisp_server_name[sizeof(wisp_server_name) - 1] = '\0';
|
||
}
|
||
|
||
------------------------------------
|
||
Added a better id control of monster id in @spawn/@monster... GM commands:
|
||
added in mob.h:
|
||
int mobdb_checkid(const int id);
|
||
Added in mob.c:
|
||
/*==========================================
|
||
* Id Mob is checked.
|
||
*------------------------------------------
|
||
*/
|
||
int mobdb_checkid(const int id) {
|
||
if (id <= 0 || id >= (sizeof(mob_db) / sizeof(mob_db[0])) || mob_db[id].name[0] == '\0')
|
||
return 0;
|
||
|
||
return id;
|
||
}
|
||
Changed in at_command.c ('atcommand_monster' and 'atcommand_spawn' functions) (only second line is modified):
|
||
if ((mob_id = mobdb_searchname(monster)) == 0) // check name first (to avoid possible name begining by a number)
|
||
mob_id = atoi(monster);
|
||
by:
|
||
if ((mob_id = mobdb_searchname(monster)) == 0) // check name first (to avoid possible name begining by a number)
|
||
mob_id = mobdb_checkid(atoi(monster));
|
||
|
||
********* 11th september
|
||
------------------------------------
|
||
Changed @effect from level 60 to level 40.
|
||
|
||
------------------------------------
|
||
Added 3 new commands: @charitemlist, @charstoragelist, @charcarlist
|
||
modified file: atcommand.c/h, atcommand_athena.conf, all help.txt, and gmcommands.html
|