Adjusted HP, Max HP, SP, and Max SP SQL defines (#2389)
* Fixes #2387. * Adjusted column define from mediumint to unsigned int. * Synchronized default values to 0. * Adjusted the parser format specifier * Adjusted the specifiers to support unsigned. Thanks to @M45T3Ryu and @Lemongrass3110!
This commit is contained in:
parent
b19325b842
commit
fc115b85a1
@ -208,10 +208,10 @@ CREATE TABLE IF NOT EXISTS `char` (
|
||||
`int` smallint(4) unsigned NOT NULL default '0',
|
||||
`dex` smallint(4) unsigned NOT NULL default '0',
|
||||
`luk` smallint(4) unsigned NOT NULL default '0',
|
||||
`max_hp` mediumint(8) unsigned NOT NULL default '0',
|
||||
`hp` mediumint(8) unsigned NOT NULL default '0',
|
||||
`max_sp` mediumint(6) unsigned NOT NULL default '0',
|
||||
`sp` mediumint(6) unsigned NOT NULL default '0',
|
||||
`max_hp` int(11) unsigned NOT NULL default '0',
|
||||
`hp` int(11) unsigned NOT NULL default '0',
|
||||
`max_sp` int(11) unsigned NOT NULL default '0',
|
||||
`sp` int(11) unsigned NOT NULL default '0',
|
||||
`status_point` int(11) unsigned NOT NULL default '0',
|
||||
`skill_point` int(11) unsigned NOT NULL default '0',
|
||||
`option` int(11) NOT NULL default '0',
|
||||
@ -363,10 +363,10 @@ CREATE TABLE IF NOT EXISTS `elemental` (
|
||||
`char_id` int(11) NOT NULL,
|
||||
`class` mediumint(9) unsigned NOT NULL default '0',
|
||||
`mode` int(11) unsigned NOT NULL default '1',
|
||||
`hp` int(12) NOT NULL default '1',
|
||||
`sp` int(12) NOT NULL default '1',
|
||||
`max_hp` mediumint(8) unsigned NOT NULL default '0',
|
||||
`max_sp` mediumint(6) unsigned NOT NULL default '0',
|
||||
`hp` int(11) unsigned NOT NULL default '0',
|
||||
`sp` int(11) unsigned NOT NULL default '0',
|
||||
`max_hp` int(11) unsigned NOT NULL default '0',
|
||||
`max_sp` int(11) unsigned NOT NULL default '0',
|
||||
`atk1` MEDIUMINT(6) unsigned NOT NULL default '0',
|
||||
`atk2` MEDIUMINT(6) unsigned NOT NULL default '0',
|
||||
`matk` MEDIUMINT(6) unsigned NOT NULL default '0',
|
||||
@ -600,10 +600,10 @@ CREATE TABLE IF NOT EXISTS `homunculus` (
|
||||
`int` smallint(4) unsigned NOT NULL default '0',
|
||||
`dex` smallint(4) unsigned NOT NULL default '0',
|
||||
`luk` smallint(4) unsigned NOT NULL default '0',
|
||||
`hp` int(12) NOT NULL default '1',
|
||||
`max_hp` int(12) NOT NULL default '1',
|
||||
`sp` int(12) NOT NULL default '1',
|
||||
`max_sp` int(12) NOT NULL default '1',
|
||||
`hp` int(11) unsigned NOT NULL default '0',
|
||||
`max_hp` int(11) unsigned NOT NULL default '0',
|
||||
`sp` int(11) NOT NULL default '0',
|
||||
`max_sp` int(11) NOT NULL default '0',
|
||||
`skill_point` smallint(4) unsigned NOT NULL default '0',
|
||||
`alive` tinyint(2) NOT NULL default '1',
|
||||
`rename_flag` tinyint(2) NOT NULL default '0',
|
||||
@ -828,8 +828,8 @@ CREATE TABLE IF NOT EXISTS `mercenary` (
|
||||
`mer_id` int(11) unsigned NOT NULL auto_increment,
|
||||
`char_id` int(11) NOT NULL,
|
||||
`class` mediumint(9) unsigned NOT NULL default '0',
|
||||
`hp` int(12) NOT NULL default '1',
|
||||
`sp` int(12) NOT NULL default '1',
|
||||
`hp` int(11) unsigned NOT NULL default '0',
|
||||
`sp` int(11) unsigned NOT NULL default '0',
|
||||
`kill_counter` int(11) NOT NULL,
|
||||
`life_time` int(11) NOT NULL default '0',
|
||||
PRIMARY KEY (`mer_id`)
|
||||
|
21
sql-files/upgrades/upgrade_20170830.sql
Normal file
21
sql-files/upgrades/upgrade_20170830.sql
Normal file
@ -0,0 +1,21 @@
|
||||
ALTER TABLE `char`
|
||||
MODIFY `max_hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `max_sp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `sp` int(11) unsigned NOT NULL default '0';
|
||||
|
||||
ALTER TABLE `elemental`
|
||||
MODIFY `hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `sp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `max_hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `max_sp` int(11) unsigned NOT NULL default '0';
|
||||
|
||||
ALTER TABLE `homunculus`
|
||||
MODIFY `hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `max_hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `sp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `max_sp` int(11) unsigned NOT NULL default '0';
|
||||
|
||||
ALTER TABLE `mercenary`
|
||||
MODIFY `hp` int(11) unsigned NOT NULL default '0',
|
||||
MODIFY `sp` int(11) unsigned NOT NULL default '0';
|
@ -306,7 +306,7 @@ int char_mmo_char_tosql(uint32 char_id, struct mmo_charstatus* p){
|
||||
{ //Save status
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `base_level`='%d', `job_level`='%d',"
|
||||
"`base_exp`='%u', `job_exp`='%u', `zeny`='%d',"
|
||||
"`max_hp`='%d',`hp`='%d',`max_sp`='%d',`sp`='%d',`status_point`='%d',`skill_point`='%d',"
|
||||
"`max_hp`='%u',`hp`='%u',`max_sp`='%u',`sp`='%u',`status_point`='%d',`skill_point`='%d',"
|
||||
"`str`='%d',`agi`='%d',`vit`='%d',`int`='%d',`dex`='%d',`luk`='%d',"
|
||||
"`option`='%d',`party_id`='%d',`guild_id`='%d',`pet_id`='%d',`homun_id`='%d',`elemental_id`='%d',"
|
||||
"`weapon`='%d',`shield`='%d',`head_top`='%d',`head_mid`='%d',`head_bottom`='%d',"
|
||||
@ -936,10 +936,10 @@ int char_mmo_chars_fromsql(struct char_session_data* sd, uint8* buf) {
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 12, SQLDT_SHORT, &p.int_, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 13, SQLDT_SHORT, &p.dex, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 14, SQLDT_SHORT, &p.luk, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 15, SQLDT_INT, &p.max_hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 16, SQLDT_INT, &p.hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 17, SQLDT_INT, &p.max_sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 18, SQLDT_INT, &p.sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 15, SQLDT_UINT, &p.max_hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 16, SQLDT_UINT, &p.hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 17, SQLDT_UINT, &p.max_sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 18, SQLDT_UINT, &p.sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 19, SQLDT_UINT, &p.status_point, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 20, SQLDT_UINT, &p.skill_point, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 21, SQLDT_UINT, &p.option, 0, NULL, NULL)
|
||||
@ -1049,10 +1049,10 @@ int char_mmo_char_fromsql(uint32 char_id, struct mmo_charstatus* p, bool load_ev
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 13, SQLDT_SHORT, &p->int_, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 14, SQLDT_SHORT, &p->dex, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 15, SQLDT_SHORT, &p->luk, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 16, SQLDT_INT, &p->max_hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 17, SQLDT_INT, &p->hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 18, SQLDT_INT, &p->max_sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 19, SQLDT_INT, &p->sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 16, SQLDT_UINT, &p->max_hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 17, SQLDT_UINT, &p->hp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 18, SQLDT_UINT, &p->max_sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 19, SQLDT_UINT, &p->sp, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 20, SQLDT_UINT, &p->status_point, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 21, SQLDT_UINT, &p->skill_point, 0, NULL, NULL)
|
||||
|| SQL_ERROR == SqlStmt_BindColumn(stmt, 22, SQLDT_UINT, &p->option, 0, NULL, NULL)
|
||||
@ -1471,21 +1471,21 @@ int char_make_new_char_sql(struct char_session_data* sd, char* name_, int str, i
|
||||
#if PACKETVER >= 20151001
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "INSERT INTO `%s` (`account_id`, `char_num`, `name`, `class`, `zeny`, `status_point`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `max_hp`, `hp`,"
|
||||
"`max_sp`, `sp`, `hair`, `hair_color`, `last_map`, `last_x`, `last_y`, `save_map`, `save_x`, `save_y`, `sex`) VALUES ("
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d', '%c')",
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%u', '%u', '%u', '%u', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d', '%c')",
|
||||
schema_config.char_db, sd->account_id , slot, esc_name, start_job, charserv_config.start_zeny, 48, str, agi, vit, int_, dex, luk,
|
||||
(40 * (100 + vit)/100) , (40 * (100 + vit)/100 ), (11 * (100 + int_)/100), (11 * (100 + int_)/100), hair_style, hair_color,
|
||||
mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y, mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y, sex) )
|
||||
#elif PACKETVER >= 20120307
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "INSERT INTO `%s` (`account_id`, `char_num`, `name`, `zeny`, `status_point`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `max_hp`, `hp`,"
|
||||
"`max_sp`, `sp`, `hair`, `hair_color`, `last_map`, `last_x`, `last_y`, `save_map`, `save_x`, `save_y`) VALUES ("
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d')",
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%u', '%u', '%u', '%u', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d')",
|
||||
schema_config.char_db, sd->account_id , slot, esc_name, charserv_config.start_zeny, 48, str, agi, vit, int_, dex, luk,
|
||||
(40 * (100 + vit)/100) , (40 * (100 + vit)/100 ), (11 * (100 + int_)/100), (11 * (100 + int_)/100), hair_style, hair_color,
|
||||
mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y, mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y) )
|
||||
#else
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "INSERT INTO `%s` (`account_id`, `char_num`, `name`, `zeny`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `max_hp`, `hp`,"
|
||||
"`max_sp`, `sp`, `hair`, `hair_color`, `last_map`, `last_x`, `last_y`, `save_map`, `save_x`, `save_y`) VALUES ("
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d')",
|
||||
"'%d', '%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%u', '%u', '%u', '%u', '%d', '%d', '%s', '%d', '%d', '%s', '%d', '%d')",
|
||||
schema_config.char_db, sd->account_id , slot, esc_name, charserv_config.start_zeny, str, agi, vit, int_, dex, luk,
|
||||
(40 * (100 + vit)/100) , (40 * (100 + vit)/100 ), (11 * (100 + int_)/100), (11 * (100 + int_)/100), hair_style, hair_color,
|
||||
mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y, mapindex_id2name(tmp_start_point[start_point_idx].map), tmp_start_point[start_point_idx].x, tmp_start_point[start_point_idx].y) )
|
||||
|
@ -17,7 +17,7 @@ bool mapif_elemental_save(struct s_elemental* ele) {
|
||||
if( ele->elemental_id == 0 ) { // Create new DB entry
|
||||
if( SQL_ERROR == Sql_Query(sql_handle,
|
||||
"INSERT INTO `%s` (`char_id`,`class`,`mode`,`hp`,`sp`,`max_hp`,`max_sp`,`atk1`,`atk2`,`matk`,`aspd`,`def`,`mdef`,`flee`,`hit`,`life_time`)"
|
||||
"VALUES ('%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%u')",
|
||||
"VALUES ('%d','%d','%d','%u','%u','%u','%u','%d','%d','%d','%d','%d','%d','%d','%d','%u')",
|
||||
schema_config.elemental_db, ele->char_id, ele->class_, ele->mode, ele->hp, ele->sp, ele->max_hp, ele->max_sp, ele->atk, ele->atk2, ele->matk, ele->amotion, ele->def, ele->mdef, ele->flee, ele->hit, ele->life_time) )
|
||||
{
|
||||
Sql_ShowDebug(sql_handle);
|
||||
@ -26,8 +26,8 @@ bool mapif_elemental_save(struct s_elemental* ele) {
|
||||
else
|
||||
ele->elemental_id = (int)Sql_LastInsertId(sql_handle);
|
||||
} else if( SQL_ERROR == Sql_Query(sql_handle,
|
||||
"UPDATE `%s` SET `char_id` = '%d', `class` = '%d', `mode` = '%d', `hp` = '%d', `sp` = '%d',"
|
||||
"`max_hp` = '%d', `max_sp` = '%d', `atk1` = '%d', `atk2` = '%d', `matk` = '%d', `aspd` = '%d', `def` = '%d',"
|
||||
"UPDATE `%s` SET `char_id` = '%d', `class` = '%d', `mode` = '%d', `hp` = '%u', `sp` = '%u',"
|
||||
"`max_hp` = '%u', `max_sp` = '%u', `atk1` = '%d', `atk2` = '%d', `matk` = '%d', `aspd` = '%d', `def` = '%d',"
|
||||
"`mdef` = '%d', `flee` = '%d', `hit` = '%d', `life_time` = '%u' WHERE `ele_id` = '%d'", schema_config.elemental_db,
|
||||
ele->char_id, ele->class_, ele->mode, ele->hp, ele->sp, ele->max_hp, ele->max_sp, ele->atk, ele->atk2,
|
||||
ele->matk, ele->amotion, ele->def, ele->mdef, ele->flee, ele->hit, ele->life_time, ele->elemental_id) )
|
||||
|
@ -91,7 +91,7 @@ bool mapif_homunculus_save(struct s_homunculus* hd)
|
||||
{// new homunculus
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "INSERT INTO `%s` "
|
||||
"(`char_id`, `class`,`prev_class`,`name`,`level`,`exp`,`intimacy`,`hunger`, `str`, `agi`, `vit`, `int`, `dex`, `luk`, `hp`,`max_hp`,`sp`,`max_sp`,`skill_point`, `rename_flag`, `vaporize`) "
|
||||
"VALUES ('%d', '%d', '%d', '%s', '%d', '%u', '%u', '%d', '%d', %d, '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d', '%d')",
|
||||
"VALUES ('%d', '%d', '%d', '%s', '%d', '%u', '%u', '%d', '%d', %d, '%d', '%d', '%d', '%d', '%u', '%u', '%u', '%u', '%d', '%d', '%d')",
|
||||
schema_config.homunculus_db, hd->char_id, hd->class_, hd->prev_class, esc_name, hd->level, hd->exp, hd->intimacy, hd->hunger, hd->str, hd->agi, hd->vit, hd->int_, hd->dex, hd->luk,
|
||||
hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize) )
|
||||
{
|
||||
@ -105,7 +105,7 @@ bool mapif_homunculus_save(struct s_homunculus* hd)
|
||||
}
|
||||
else
|
||||
{
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `char_id`='%d', `class`='%d',`prev_class`='%d',`name`='%s',`level`='%d',`exp`='%u',`intimacy`='%u',`hunger`='%d', `str`='%d', `agi`='%d', `vit`='%d', `int`='%d', `dex`='%d', `luk`='%d', `hp`='%d',`max_hp`='%d',`sp`='%d',`max_sp`='%d',`skill_point`='%d', `rename_flag`='%d', `vaporize`='%d' WHERE `homun_id`='%d'",
|
||||
if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `char_id`='%d', `class`='%d',`prev_class`='%d',`name`='%s',`level`='%d',`exp`='%u',`intimacy`='%u',`hunger`='%d', `str`='%d', `agi`='%d', `vit`='%d', `int`='%d', `dex`='%d', `luk`='%d', `hp`='%u',`max_hp`='%u',`sp`='%u',`max_sp`='%u',`skill_point`='%d', `rename_flag`='%d', `vaporize`='%d' WHERE `homun_id`='%d'",
|
||||
schema_config.homunculus_db, hd->char_id, hd->class_, hd->prev_class, esc_name, hd->level, hd->exp, hd->intimacy, hd->hunger, hd->str, hd->agi, hd->vit, hd->int_, hd->dex, hd->luk,
|
||||
hd->hp, hd->max_hp, hd->sp, hd->max_sp, hd->skillpts, hd->rename_flag, hd->vaporize, hd->hom_id) )
|
||||
{
|
||||
|
@ -69,7 +69,7 @@ bool mapif_mercenary_save(struct s_mercenary* merc)
|
||||
if( merc->mercenary_id == 0 )
|
||||
{ // Create new DB entry
|
||||
if( SQL_ERROR == Sql_Query(sql_handle,
|
||||
"INSERT INTO `%s` (`char_id`,`class`,`hp`,`sp`,`kill_counter`,`life_time`) VALUES ('%d','%d','%d','%d','%u','%u')",
|
||||
"INSERT INTO `%s` (`char_id`,`class`,`hp`,`sp`,`kill_counter`,`life_time`) VALUES ('%d','%d','%u','%u','%u','%u')",
|
||||
schema_config.mercenary_db, merc->char_id, merc->class_, merc->hp, merc->sp, merc->kill_count, merc->life_time) )
|
||||
{
|
||||
Sql_ShowDebug(sql_handle);
|
||||
@ -79,7 +79,7 @@ bool mapif_mercenary_save(struct s_mercenary* merc)
|
||||
merc->mercenary_id = (int)Sql_LastInsertId(sql_handle);
|
||||
}
|
||||
else if( SQL_ERROR == Sql_Query(sql_handle,
|
||||
"UPDATE `%s` SET `char_id` = '%d', `class` = '%d', `hp` = '%d', `sp` = '%d', `kill_counter` = '%u', `life_time` = '%u' WHERE `mer_id` = '%d'",
|
||||
"UPDATE `%s` SET `char_id` = '%d', `class` = '%d', `hp` = '%u', `sp` = '%u', `kill_counter` = '%u', `life_time` = '%u' WHERE `mer_id` = '%d'",
|
||||
schema_config.mercenary_db, merc->char_id, merc->class_, merc->hp, merc->sp, merc->kill_count, merc->life_time, merc->mercenary_id) )
|
||||
{ // Update DB entry
|
||||
Sql_ShowDebug(sql_handle);
|
||||
|
Loading…
x
Reference in New Issue
Block a user