• Welcome to Valhalla Legends Archive.
 

In Game Messaging

Started by Don Cullen, June 15, 2005, 03:27 PM

Previous topic - Next topic
|

Don Cullen

Is there a way to do in-game messaging for Starcraft, like BWCoach does? In the game, it displays messages using SC's text engine- as if someone on bnet had typed a message to you ingame. If you download BWCoach, and try it- you'll see what I mean. You can get it at www.bwchart.com.

I've searched this site's forums, and haven't found anything in reference to this as of yet, so any input would be appreciated.
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

QwertyMonster

Yes you can do it.

COnnect to battle.net, send the correct packets to join the game, and then send more correct packets to send a message, and just have it be displayed.

Try looking on Bnetdocs for all the correct packets and information.

Don Cullen

I'm referring to outside of bnet, in single player.
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

QwertyMonster

Oh sorry, you didnt say that.

Sending text to single player, try asking Adron he does that kind of stuff.

Blaze

Hes not building a bot that connects to the game, hes building a program that displays messages ingame.  I was working on one last night.
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

Don Cullen

Ah, and did you get it to work, Blaze? Hopefully Adron will read this thread and reply... :-P
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

hismajesty


Warrior

You can use DirectDraw and find a pointer to the backbuffer then just blit whatever you need to the screen afaik
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

MyndFyre

Quote from: Warrior on June 15, 2005, 05:45 PM
You can use DirectDraw and find a pointer to the backbuffer then just blit whatever you need to the screen afaik

But then Starcraft would draw over it, most likely.

Easiest way would be to disassemble and try to find the offset of the function that displays text.
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Blaze

I did that last night, the only function I saw that looked like it had something to do with drawing was DrawTextA in storm.dll.  Its also in your user32.dll.


Public Declare Function DrawText Lib "user32.dll" Alias "DrawTextA" (hDC As Long, lpString As String, nCount As Integer, lpRect As RECT, uFormat As Long) As Long

Public Type RECT
     Left As Long
     Top As Long
     Right As Long
     Bottom As Long
End Type
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

Warrior

Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

Blaze

No, but thats not the point. :P  I was hoping somebody would correct me on something.
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

MyndFyre

Quote from: Blaze on June 15, 2005, 07:33 PM
I did that last night, the only function I saw that looked like it had something to do with drawing was DrawTextA in storm.dll.  Its also in your user32.dll.


Public Declare Function DrawText Lib "user32.dll" Alias "DrawTextA" (hDC As Long, lpString As String, nCount As Integer, lpRect As RECT, uFormat As Long) As Long

Public Type RECT
     Left As Long
     Top As Long
     Right As Long
     Bottom As Long
End Type


DrawTextA is an imported function.  Storm's own exported functions will not be named with a name that would say what they do.
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Don Cullen

BWCoach's text display works pretty well by interfacing with SC- so I think the program author solved that issue already. Maybe if someone downloaded BWCoach, and had it run- that someone'd be able to break (bp) the second BWCoach told SC to display something. Personally, I have no experience in reverse engineering, so I'd not be able to look into this potential venue... But perhaps someone else with the experience can?
Regards,
Don
-------

Don't wonder why people suddenly are hostile when you treat them the way they shouldn't be- it's called 'Mutual Respect'.

Warrior

It might be easier to reverse BWCoach as opposed to Starcraft.exe
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

|