[Non-Mini Release] Rewriting Client Notification Handler

09/03/2020 20:04 #HB#1
Hey there,

Been a while since I released anything, and I was planning to release this once I'm done with it.

After my last [Only registered and activated users can see links. Click Here To Register...] about similar topic, I wasn't really satisfied, so I decided to re-write the whole notification handler, aka fyll 0x300C | AGENT_GAME_NOTIFY

This personally took me a while, since the function isn't that small and I was kinda lazy about it too.

[Only registered and activated users can see links. Click Here To Register...]

TF IS THIS: This is a re-written handler for in-game notifications, you can use this to customize a lot of things like unique notifications.

You can make notifications for new uniques, change the color, do whatever you want with it or any other notifications, you can even create new types.

Code Snippets:

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

Copyrights: Feel free to do tf you want with it.
Download: Attached below.

NOTE: Any addresses given above were found on VSRO 1.88 sro_client, so they are most likely different on any other version.
NOTE: Structures found in the files are for VC80 libs, back when strings were 28 bytes. You'll face errors, if you work with any later compiler.
NOTE: Always compile on Release!

NOTE: This handler is missing a single type case, I'm not sure what the type was, but anyways if you face a crash and the dump file ends with a detail like:
Code:
ASSERT("(CPSMission) MSGID:0x300C,R(?),W(?),(덜뺏음)"), ?, d:\vss-od\silkroad\client\client\MsgStreamBuffer.h
then thats because of the missing type.

I'll update it with the missing type as soon as I have some free time.

Good luck.
09/03/2020 20:11 Laag#82#2
I was doing this idea to a page uniques active & dead :)

good job
09/03/2020 20:55 thaidu0ngpr0#3
Quote:
Originally Posted by khaleed2010 View Post
I was doing this idea to a page uniques active & dead :)

good job

His release caused me to rewrite the project. it was great

Quote:
Originally Posted by #HB View Post
Hey there,

Been a while since I released anything, and I was planning to release this once I'm done with it.

After my last [Only registered and activated users can see links. Click Here To Register...] about similar topic, I wasn't really satisfied, so I decided to re-write the whole notification handler, aka fyll 0x300C | AGENT_GAME_NOTIFY

This personally took me a while, since the function isn't that small and I was kinda lazy about it too.

TF IS THIS: This is a re-written handler for in-game notifications, you can use this to customize a lot of things like unique notifications.

You can make notifications for new uniques, change the color, do whatever you want with it or any other notifications, you can even create new types.

Code Snippets:

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

Copyrights: Feel free to do tf you want with it.
Download: Attached below.

NOTE: Any addresses given above were found on VSRO 1.88 sro_client, so they are most likely different on any other version.
NOTE: Structures found in the files are for VC80 libs, back when strings were 28 bytes. You'll face errors, if you work with any later compiler.
NOTE: Always compile on Release!

NOTE: This handler is missing a single type case, I'm not sure what the type was, but anyways if you face a crash and the dump file ends with a detail like:
Code:
ASSERT("(CPSMission) MSGID:0x300C,R(?),W(?),(덜뺏음)"), ?, d:\vss-od\silkroad\client\client\MsgStreamBuffer.h
then thats because of the missing type.

I'll update it with the missing type as soon as I have some free time.

Good luck.

expect the next release to change the title color
thanks so much :D
09/03/2020 22:15 irockalone#4
awesome as always!
thanks for sharing buddy.
09/04/2020 00:46 mudik#5
Thank you. One question why you not work with def_kit I mean why you not add this all on def kit for not spam silkroad folder with dll‘s. just ask out of curiosity
09/05/2020 02:40 .Network#6
Sro Client not started once i inject dll in it
I think there's an error in dll
09/07/2020 08:37 NorseGodTyr#7
if i kill a unique this error appear
[Only registered and activated users can see links. Click Here To Register...]
09/07/2020 11:42 *Deadly#8
Amazing as always, works prefectly.
09/10/2020 15:43 gmhasan13#9
Please sro_dev where add?
09/11/2020 09:29 #HB#10
Quote:
Originally Posted by GameRPoP View Post
[Only registered and activated users can see links. Click Here To Register...]
??

Quote:
Originally Posted by NorseGodTyr View Post
if i kill a unique this error appear
[Only registered and activated users can see links. Click Here To Register...]
Well, the message says "stack around the variable 'buffer' is corrupted", so you can check that variable.

My guess is that your message is too long that it exceeds buffer limit, IDK.
09/11/2020 10:42 NorseGodTyr#11
Quote:
Originally Posted by #HB View Post
??



Well, the message says "stack around the variable 'buffer' is corrupted", so you can check that variable.

My guess is that your message is too long that it exceeds buffer limit, IDK.
for TG/Uru/Isy/Lord using the original code

UIIT_MSG_ANYONE_DEAD_TIGER_GIRL
UIIT_MSG_ANYONE_DEAD_URRUCHI
UIIT_MSG_ANYONE_DEAD_IYUTARU
UIIT_MSG_ANYONE_DEAD_BONELORD
UIIT_MSG_ANYONE_DEAD_TAHOMET

the normal spawn message work fine only if a player kill a unique get this error msg

[Only registered and activated users can see links. Click Here To Register...]
09/11/2020 15:10 #HB#12
Hmmm works fine for me.

Your problem is here anyways:
Code:
if (chat = g_notificationhandler.GetKillNotify(uqdata->ObjNameStrID))
{
	swprintf_s(buffer, sizeof(buffer), g_textmanager->GetStringTextByCode(chat)->c_str(), KillerName.c_str());
	g_interface->ShowBlueNotify(buffer);
	sysmsg->Write(UNIQUE_KILL_SYSTEM_COLOR, buffer);
}
You have to be exceeding the buffer size or messing up arguments, ex: [Only registered and activated users can see links. Click Here To Register...]
09/11/2020 15:23 irockalone#13
Quote:
Originally Posted by NorseGodTyr View Post
for TG/Uru/Isy/Lord using the original code

UIIT_MSG_ANYONE_DEAD_TIGER_GIRL
UIIT_MSG_ANYONE_DEAD_URRUCHI
UIIT_MSG_ANYONE_DEAD_IYUTARU
UIIT_MSG_ANYONE_DEAD_BONELORD
UIIT_MSG_ANYONE_DEAD_TAHOMET

the normal spawn message work fine only if a player kill a unique get this error msg

[Only registered and activated users can see links. Click Here To Register...]
what vs you're using?
09/11/2020 17:50 Goosxc#14
My game stuck after i load monster the unique

also after i killed the unique i got the same error @norsegodtyr
09/11/2020 18:16 *Deadly#15
Is it possible to use some other color like the Pink, Green and Blue notifications on the middle of the screen? when I tried to change the hex color of ShowBlueNotify or Pink to something else and build, it started crashing my client the unique appears.