First Problem
There isn't anything indicating to players where my stats are. Their XP or their Level. This functionality is broken in so many ways (doesn't notify players have empty levels to fill, doesn't show them their current standings).
L 03/12/2021 - 21:52:10: [SM] Exception reported: Could not send a usermessage
L 03/12/2021 - 21:52:10: [SM] Blaming: superheromod.smx
L 03/12/2021 - 21:52:10: [SM] Call stack trace:
L 03/12/2021 - 21:52:10: [SM] [0] PrintToChat
L 03/12/2021 - 21:52:10: [SM] [1] Line 2306, superheromod.sp::DisplayPowers
L 03/12/2021 - 21:52:10: [SM] [2] Line 1031, superheromod.sp::Event_PlayerDeath
...
L 03/12/2021 - 21:55:56: [SM] Exception reported: Could not send a usermessage
L 03/12/2021 - 21:55:56: [SM] Blaming: superheromod.smx
L 03/12/2021 - 21:55:56: [SM] Call stack trace:
L 03/12/2021 - 21:55:56: [SM] [0] PrintToChat
L 03/12/2021 - 21:55:56: [SM] [1] Line 2306, superheromod.sp::DisplayPowers
L 03/12/2021 - 21:55:56: [SM] [2] Line 948, superheromod.sp::Event_PlayerSpawn
And if we compile locally, the superheromod.smx files is only about 49.0 - 49.9 KB unlike the 56K original as locally compiled version DO NOT function as expected with SourceMod Version: 1.10.0.6502.
Second Problem
Thought the following is just a warning, it still needs to be addressed ASAP before 1.11 is released.
[4/15/2021 12:57:36 PM] (snipped)\superheromod.sp(25) : warning 241: Array-based enum structs will be removed in 1.11. See https://wiki.alliedmods.net/SourcePawn_Transitional_Syntax#Enum_Structs
Third Problem
The server shows the heroes and the core running, but I should be level 8 not level 7. There seems to be a database connection issue causing inconsistency with players levels and skills. As they seem to saved to /data/sqllite/superheromod.sq3 file but the data differs from the database.
Database (weather local .sq3 or remote database using MySQL) show the following error message in the console at every map start.
L 04/18/2021 - 11:00:23: [SM] Exception reported: Invalid database handle 0 (error: 4)
L 04/18/2021 - 11:00:23: [SM] Blaming: superheromod.smx
L 04/18/2021 - 11:00:23: [SM] Call stack trace:
L 04/18/2021 - 11:00:23: [SM] [0] Database.Execute
L 04/18/2021 - 11:00:23: [SM] [1] Line 74, superheromod-sql.sp::CreateTables
L 04/18/2021 - 11:00:23: [SM] [2] Line 1813, superheromod.sp::OnMapStart
This error is throwing MEGS of data into our logs, and for all of us who use this would like this to be a clean as possible. I am in the process of learning Python for SM coding but I have a long way to go. I am wrapping up PHP coding as I see similarities in the two.
I had to remove the 'superheromod' database connection because the data from the local file superheromod.sq3 file differed from the data within the database. Unable to tell is SHM is actually using the database or using just a local file. This is the cause of inconsistency within SHM. The database had not been updated since 28.3.2021 and the local file was updated "Yesterday." As I think this inconsistency caused players to stay away as they think their heroes and skills are not saving. I myself have lost XP into a database that has me a level 7 when the superheromods.sq3 file shows me at level 8. It would have been nice if there was a command to sync the two like there is in the SHM for HL1. These issues are also posted at https://forums.alliedmods.net/showthread.php?t=300914&page=8 where nothing is getting addressed?
Finally, I have made this know in SHM for HL1 engines. This was a change which happened with Database back in 2014. Databases no longer use TYPES, they use ENGINE now. So the copy and paste method used in the superheromod-sql.sp at the top needs to read:
//Use these to create the tables manually if necessary
/*
CREATE TABLE sh_savexp (
SH_KEY varchar(32) binary NOT NULL default '',
PLAYER_NAME varchar(32) binary NOT NULL default '',
LAST_PLAY_DATE timestamp(6) NOT NULL,
XP int(10) NOT NULL default '0',
HUDHELP tinyint(3) unsigned NOT NULL default '1',
SKILL_COUNT tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (SH_KEY)
) ENGINE=MYISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='SUPERHERO XP Saving Table';
There appears to be three problems going on here.
First Problem There isn't anything indicating to players where my stats are. Their XP or their Level. This functionality is broken in so many ways (doesn't notify players have empty levels to fill, doesn't show them their current standings).
And if we compile locally, the superheromod.smx files is only about 49.0 - 49.9 KB unlike the 56K original as locally compiled version DO NOT function as expected with SourceMod Version: 1.10.0.6502.
Second Problem Thought the following is just a warning, it still needs to be addressed ASAP before 1.11 is released.
[4/15/2021 12:57:36 PM] (snipped)\superheromod.sp(25) : warning 241: Array-based enum structs will be removed in 1.11. See https://wiki.alliedmods.net/SourcePawn_Transitional_Syntax#Enum_Structs
Third Problem The server shows the heroes and the core running, but I should be level 8 not level 7. There seems to be a database connection issue causing inconsistency with players levels and skills. As they seem to saved to /data/sqllite/superheromod.sq3 file but the data differs from the database.
Database (weather local .sq3 or remote database using MySQL) show the following error message in the console at every map start.
This error is throwing MEGS of data into our logs, and for all of us who use this would like this to be a clean as possible. I am in the process of learning Python for SM coding but I have a long way to go. I am wrapping up PHP coding as I see similarities in the two.
I had to remove the 'superheromod' database connection because the data from the local file superheromod.sq3 file differed from the data within the database. Unable to tell is SHM is actually using the database or using just a local file. This is the cause of inconsistency within SHM. The database had not been updated since 28.3.2021 and the local file was updated "Yesterday." As I think this inconsistency caused players to stay away as they think their heroes and skills are not saving. I myself have lost XP into a database that has me a level 7 when the superheromods.sq3 file shows me at level 8. It would have been nice if there was a command to sync the two like there is in the SHM for HL1. These issues are also posted at https://forums.alliedmods.net/showthread.php?t=300914&page=8 where nothing is getting addressed?
Finally, I have made this know in SHM for HL1 engines. This was a change which happened with Database back in 2014. Databases no longer use TYPES, they use ENGINE now. So the copy and paste method used in the superheromod-sql.sp at the top needs to read:
After looking and actually reading this code, this was just copied over from AMXModx HL1 by vittu/batman (It works for CS and CZ - HL1 engine games).
If there is anything more you need from me or my servers, please feel free to let me know.
-Krillin