Log Server and Message Server

Mu online season 21 - grand opening

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,969
118
290
Stoke, UK
This is probably the same as the ones in Mir 2 so I dunno if someone from there can answer... but.. (Kaori probably knows.. plzzz :))

How can I get the info from the Log Server, and how does the Message Server work?

What I want.. is..

Logs that can interact with the server, and that can send and recieve messages via the Message server..

So.. (as per the other thread)..

Player Kills Player
Program Intercepts the Log Entry (instead of using the LogDataSvr)
Program Sends a Message via Message Server back into Game to Shout it
Program interacts with SQL to Give player bonus's etc

Or numerous other situations..

I have made a VB program that SHOULD have connected to Port 10000 using UDP, but it doesn't connect.. so is this a port that should be connected to.. or is always sending Data (If that can happen) and you just have to listen to it?

P.S. The program connects fine to Port 3000 TCP and retrieves the Player count info.

Any information would be appreciated.

Oh.. and with the message server, what protocols are used to send Messages back and forth.. and what messages are sent?
 

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,969
118
290
Stoke, UK
Bumpage for this Question.. someone from Mir 2 or 3 must know something about it.. the Private Server scene has been going for years..

/Mick
 
Upvote 0

Coly

LOMCN Developer
Developer
Mar 31, 2005
1,401
36
275
Germany
I have work on the list Server for long Time, have write my own. Yes all you get is the same like Mir2... the Game Server send the information to this UDP Port Queue and the List Server go and read this Information. To understand this better look at the Mir2 Server Sources, on this you find all the Information. (Mir2 Server Source : ObjBase.pas and here look for AddUserLog(...)) ;-)

If you search for a DB Player check, then use this :

Select TOP 1 FLD_COUNT FROM TBL_COUNTLOGS ORDER BY FLD_TIME DESC
 
Last edited:
Upvote 0

Coly

LOMCN Developer
Developer
Mar 31, 2005
1,401
36
275
Germany
Here a littel Excemple from my work, it show you some things.
My Log looks like this ;-) :

Code:
 4 - Action: Pickup         	Map: Stone-TempelB4(D714)	X: 73 	Y: 69 	Cloroen             	Gold                        	2000      	1	0                   		2007-03-06 02:08:28
 4 - Action: Pickup         	Map: Stone-TempelB4(D714)	X: 76 	Y: 48 	Cloroen             	Gold                        	557       	1	0                   		2007-03-06 02:08:28
 7 - Action: Drop           	Map: Snow-PalaceS1(D2101)	X: 69 	Y: 188	WhiteTao            	TaoStone(1015)              	162373782 	1	0                   		2007-03-06 02:08:28
 8 - Action: Trade with     	Map: Snow-Town(32)       	X: 49 	Y: 327	WhiteTao            	MysteryApple(1177)          	162620003 	1	Aaskereia           		2007-03-06 02:08:28
 9 - Action: Buy at         	Map: Snow-Town(32)       	X: 102	Y: 157	WhiteTao            	MysteryApple(1177)          	162620002 	1	-                   		2007-03-06 02:08:28
15 - Action: Drop on Die    	Map: Stone-TempelB4(D714)	X: 54 	Y: 74 	RedEvilBoar         	HealerArmor(M)(506)         	162620047 	0	0                   		2007-03-06 02:08:28
15 - Action: Drop on Die    	Map: Stone-TempelB4(D714)	X: 75 	Y: 49 	BlackEvilBoar       	Tooth(1044)                 	162620061 	0	0                   		2007-03-06 02:08:28
19 - Action: Killet by      	Map: Snow-PalaceS1(D2101)	X: 67 	Y: 170	WhiteTao            	0                           	0         	0	GMKaito             		2007-03-06 02:08:28
 
Last edited:
Upvote 0

Coly

LOMCN Developer
Developer
Mar 31, 2005
1,401
36
275
Germany
Ahh I have found my old things, not Finished but I hope it helps a bit...
Here the Action ID List with things I have allready :

ID_0=Get (TAKE BACK STORAGE ITEM)
ID_1=Store (STORAGE)
ID_2=Make Drug Item
ID_3=Damgae Weapon
ID_4=Pickup
ID_5=Make
ID_6=Destroy
ID_7=Drop
ID_8=Trade with
ID_9=Buy at
ID_10=Pay or Sell
ID_11=Unbind Items
ID_12=LevelUP
ID_13=Delete Gold
ID_14=Add Gold
ID_15=Drop on Die
ID_16=Use Item
ID_17=Man Level Change
ID_18=Man Exp Change
ID_19=Killet by
ID_20=Upgrade Successfull Weapon
ID_21=Upgrade Break Weapon
ID_22=Dec Castle Gold
ID_23=Inc Castle Gold
ID_24=Refine Get Back
ID_25=Refine Take Weapon
ID_26=Refine Take Items
ID_27=Change Sabuk Owner
ID_28=Use WarGodOil
ID_29=(Make Weapon Good Lock)
ID_30=(Upgrade Item)
ID_31=(Upgrade Item)
ID_32=(Sell User Market)
ID_33=(Buy User Market)
ID_34=(Cancel User Market)
ID_35=(Get Pay User Market)
ID_36= -
ID_37=(Guild Agit Registration)
ID_38=(Guild Agit Extend Time)
ID_39=(Guild Agit Sale)
ID_40=PlayerShop Sell
ID_41=(Server Get Deal End)
ID_42=PlayerShop Bay
ID_43=PlayerShop Cancel
ID_44=PlayerShop
ID_45= -
ID_46=(Guild Agit Donate)
ID_47=(Break Lover Relation)
ID_48= -
ID_49= -
ID_50=-
ID_51=-
ID_52=-
ID_53=-
ID_54=-
ID_55=(Store)
ID_56=-
ID_57=(Store)
ID_58=-
ID_59=(Store)
ID_60=
 
Upvote 0

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,969
118
290
Stoke, UK
I have the Standard LogServer that comes with the EI files, and that works fine, I also have LeoCrasher's Log Viewer but it crashes when I load the logs so I was writing my own.. which is when I thought it would be nicer to simply incorporate the 2, and ouput what I want, including alerts and whatever.

That ID list is excellent Coly, thanks for that :) I have down to 30 (you posted them before :) but I didn't know the ones afterwards :))

------------------

I suppose this is more of a technical question than a Mir question.. I am not very into the whole port reading stuff.. .so.. can you explain this in a little more detail?

the Game Server send the information to this UDP Port Queue and the List Server go and read this Information.
I have a VB program that connects to (I think) the UDP Port 10000 on my Server PC, but it doesn't return anything. When I connect to TCP 3000 I get the Server Count back.

My VB6 Code does this..

Code:
    Winsock1.Protocol = sckUDPProtocol
    Winsock1.Connect 192.168.0.25, 10000
Code:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Dim temp As String

temp = String(bytesTotal, "10")
Winsock1.GetData temp, vbString, bytesTotal
List1.AddItem (temp)

I am not sure what these 2 lines below are doing, I am assuming its something to restrict the data coming from the Server Count port, but I don't know what piece to change to make it work with the Log Server..

temp = String(bytesTotal, "10")
Winsock1.GetData temp, vbString, bytesTotal

Any help would be appreciated.

Thanks in Advance

Mick


P.S.

Anyone know anything about the MessageServer on port 4900?
 
Upvote 0

Damian

LOMCN Developer
Developer
Ravagers
Game Master
Jun 13, 2003
1,184
154
290
you need to listen on port 10000 not connect to it, but if you
do this you will then be putting your logserver out of business,
you cant have 2 servers listening on port 10000, so you may
have to assign logserver a new port number and get your program
to forward the data to it, hope that helps.
 
Upvote 0

Kaori

LOMCN MiR3 Queen!
VIP
Jun 3, 2004
3,584
38
265
Canada
Anyone know anything about the MessageServer on port 4900?

I know a little bit about this one.
This one tells you
Admin Chat
Guild chat
login
logout
maybe wars (not sure how yet)
maybe more... can't think...

you have my msn? catch me there...
 
Upvote 0

idaBigA

Holley Mir 3!!
VIP
Oct 28, 2003
1,969
118
290
Stoke, UK
you need to listen on port 10000 not connect to it, but if you
do this you will then be putting your logserver out of business,
you cant have 2 servers listening on port 10000, so you may
have to assign logserver a new port number and get your program
to forward the data to it, hope that helps.
I want to put it out of busines.. I want to customize what happens when it receives a message, and have a bunch of stuff it can do with it.
I know a little bit about this one.
This one tells you
Admin Chat
Guild chat
login
logout
maybe wars (not sure how yet)
maybe more... can't think...

you have my msn? catch me there...
Sure will :)
 
Upvote 0