How to log match results to text file in MUGEN 1.1?
#1
Question 
Helllo everyone! I have been looking for the answer of the question about HOW it is possible to fix or use logging match results from fights to a text file. The reason why I ask this even though 1.0 and older have a function for that, 1.1 for some reason broke the command to do so, which means you can't use the log match command. However, one of the ideas I have thought to get match results would be using LUA support for MUGEN 1.1 and create a external script that gets the match results or values from each match and logs it on a text file like the older versions. However, I don't really know how to do this myself; and I came here to ask since someone told me that somebody here could know or does know a way to get match result log working in 1.1. Thanks for any answers!
Reply
#2
Hello! Apologies for the slow reply.

I'm afraid I can't really help you here though. SpriteClub is run by reading the memory of the program with C#.
I've honestly never even looked into other ways of recording match history, as the memory reading approach also prevents any false positives.
If you're a programmer I can help you out by giving you the memory addresses and stuff, but that's about all I can do (and note that these memory addresses probably only work for 1.1a4, in all likelihood you'll need to re-find them using e.g. cheat engine for other versions).
Reply
#3
(07-04-2018, 01:44 AM)Arxos Wrote: Hello! Apologies for the slow reply.

I'm afraid I can't really help you here though. SpriteClub is run by reading the memory of the program with C#.
I've honestly never even looked into other ways of recording match history, as the memory reading approach also prevents any false positives.
If you're a programmer I can help you out by giving you the memory addresses and stuff, but that's about all I can do (and note that these memory addresses probably only work for 1.1a4, in all likelihood you'll need to re-find them using e.g. cheat engine for other versions).

Hello there! First of all, thanks for replying to my message. Sadly I don't know a lot about programming, but IDK if you can share (if it's not a bother) about how or what you use to do this.
Reply
#4
I suppose I should ask, how exactly are you planning on using this? It wouldn't be much work for me to write a simple program that monitors a mugen match and logs the outcome to a file, but if you're interested in a larger program that can automatically run tournaments or such then the complexity pretty quickly starts to go up.
Reply
#5
(11-04-2018, 11:02 PM)Arxos Wrote: I suppose I should ask, how exactly are you planning on using this? It wouldn't be much work for me to write a simple program that monitors a mugen match and logs the outcome to a file, but if you're interested in a larger program that can automatically run tournaments or such then the complexity pretty quickly starts to go up.

I would EXACTLY need that what you said: A program that monitors the mugen match and logs the outcome to a file (similar to what 1.0 log does), since I could be able to make this frontend I'm creating compatible with 1.1:
https://www.youtube.com/watch?v=7bBAcJHyTfQ
The reason is pretty simple: I make the frontend read the results from the match log given by mugen to get the right actions (eg: Next battle if won, continue screen if lost, get time and health values, etc); and said frontend intends to expand MUGEN possibilities to a more console-like game (and in the case of the video above, creating a arcade version of MUGEN; that video showcases a alternate build made for that). I just would need the function of having the outcomes on a log; I could just adjust the code to read the lines from that file, so don't worry if your file is not 1:1 to what would 1.0 export.

tl;dr: If you can create a program that logs the results of a match on a text file, that would be ALL l need, and I would be eternally grateful with you if you do. Thanks!
EDIT: BTW I use MUGEN 1.1beta1 and not 1.1a4, so I hope that difference doesn't end up causing too many troubles.
Reply
#6
Hmm, I see.

I'll make something for you, hopefully the 1.1b1 addresses are the same. I have an exam tomorrow though so I'll probably get around to it on Tuesday.
Reply
#7
Thanks! I really appreciate your effort and helpfulness.
I wonder what I gonna do for my birthday tomorrow :p
Reply
#8
Sorry this thing had totally slipped my mind. I have time again on Monday and Tuesday so I'll be aiming for that.
Reply
#9
Sorry for the wait. Download: https://mega.nz/#!qpxUVYhD!rdnI_9bKp0X0o...U89b2NczpY
This includes both the .exe and the source files, in case you're scared of executing a random .exe file. You could compile it in Visual Studio if you want.
You'll need Microsoft .NET Framework 4.5 or higher to run this, but you will most likely already have this installed on your PC anyway as a lot of stuff installs these frameworks for you.

Please read the instructions in the .bat file (just right click and open with notepad or such).
To launch I recommend just double clicking the .bat file. You can also just use the .exe, but using the .bat will have it output some extra stuff and you can customise the .bat a little.

Please tell me if it works on MUGEN 1.1b and how this works for you. It currently logs the results in a MugenWatcher.log file with some really basic information, as I'm not sure exactly how detailed the information that you're after is.

I hope I didn't get too techno mumbo jumble on you and you could follow it all. If you have any further questions, feel free to ask.
Reply
#10
(05-05-2018, 04:26 AM)Arxos Wrote: Sorry for the wait. Download: https://mega.nz/#!qpxUVYhD!rdnI_9bKp0X0o...U89b2NczpY
This includes both the .exe and the source files, in case you're scared of executing a random .exe file. You could compile it in Visual Studio if you want.
You'll need Microsoft .NET Framework 4.5 or higher to run this, but you will most likely already have this installed on your PC anyway as a lot of stuff installs these frameworks for you.

Please read the instructions in the .bat file (just right click and open with notepad or such).
To launch I recommend just double clicking the .bat file. You can also just use the .exe, but using the .bat will have it output some extra stuff and you can customise the .bat a little.

Please tell me if it works on MUGEN 1.1b and how this works for you. It currently logs the results in a MugenWatcher.log file with some really basic information, as I'm not sure exactly how detailed the information that you're after is.

I hope I didn't get too techno mumbo jumble on you and you could follow it all. If you have any further questions, feel free to ask.
You are the absolute best man!! Tested it in Mugen 1.1b, works perfectly! (Though IDK if the time output is normal). Don't worry about that "techno jumble" you talk; you'd be surprised about the interest and knowledge I have for this stuff, just that I don't know coding programs :P
I may peek at the source to see if I could understand the code, but from what I can gather, the watcher works pretty well! (and the options are nice) Some things I used for possible implementation of stuff like perfects or know if the health is over/under a value were in the original mugen log, as well as the power and time for each match. Practically it showed the following:
-The winner team, name, both players life and power values, and the time left using 2 decimals.

The usage of a simple "X-X" score will be pretty useful and I like it like that. But it could be useful to have a total time displayed in seconds (I'm not sure if the time output given is proper since it's by miliseconds) or the time for each round in a match; and I could assume that the time logged is actually the real hour/time instead of the match ones (using time could allow determining time ups, total time in arcade, etc). Life values could be useful to determine perfects or certain life conditions; not sure what the power values could be used for :P
I apologize if this looks like a testament and feels hard to follow, but I'm hugely amazed and grateful about this! To sum up above, guess I could also have good use of life and time values per round to put it simply. Anyways, thanks a lot!
Reply