Project Perfect Mod Forums
:: Home :: Get Hosted :: PPM FAQ :: Forum FAQ :: Privacy Policy :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in ::


The time now is Thu Mar 28, 2024 11:43 pm
All times are UTC + 0
What versions of YR gamemd.exe does Ares 0.A supports ?
Moderators: Ares Support Team at PPM, Global Moderators, Red Alert 2 Moderators
Post new topic   Reply to topic Page 1 of 1 [12 Posts] Mark the topic unread ::  View previous topic :: View next topic
Author Message
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Mon Nov 30, 2020 3:15 pm    Post subject:  What versions of YR gamemd.exe does Ares 0.A supports ? Reply with quote  Mark this post and the followings unread

I compiled an unmodified Ares 0.A dll, and I run syringe with this result:

Code:
[22:31:10] Syringe 0.7.2.0
[22:31:10] ===============

[22:31:10] WinMain: arguments = ""gamemd.exe"  -cd -win"
[22:31:10] WinMain: Trying to load executable file "gamemd.exe"...

[22:31:10] SyringeDebugger::RetrieveInfo: Retrieving info from the executable file...
[22:31:10] SyringeDebugger::RetrieveInfo: Executable information successfully retrieved.
[22:31:10]    exe = gamemd.exe
[22:31:10]    pImLoadLibrary = 0x007E1220
[22:31:10]    pImGetProcAddress = 0x007E1250
[22:31:10]    pcEntryPoint = 0x007CD80F
[22:31:10]    dwExeSize = 0x00497110
[22:31:10]    dwExeCRC = 0x098465B3
[22:31:10]    dwTimestamp = 0x3BDF544E

[22:31:10] SyringeDebugger::RetrieveInfo: Opening gamemd.exe to determine imports.
[22:31:10] WinMain: SyringeDebugger::FindDLLs();

[22:31:10] SyringeDebugger::FindDLLs: Recognized DLL: "Ares.dll"
[22:31:10] SyringeDebugger::Handshake: Calling "Ares.dll" ...
[22:31:10] SyringeDebugger::Handshake: Answers "Found Yuri's Revenge 1.001 (CD). Applying Ares 16.2.813." (0)
[22:31:10] SyringeDebugger::FindDLLs: Done (1166 hooks added).

[22:31:10] WinMain: SyringeDebugger::Run("-cd -win");

[22:31:10] SyringeDebugger::Run: Running process to debug. cmd = "gamemd.exe -cd -win"
[22:31:16] SyringeDebugger::Run: Allocating 0x584 bytes...
[22:31:16] SyringeDebugger::Run: pAlloc = 0x001C0000
[22:31:16] SyringeDebugger::Run: Writing DLL loader & caller code...
[22:31:16] SyringeDebugger::Run: pcLoadLibrary = 0x001C0000
[22:31:16] SyringeDebugger::Run: Entering debug loop...
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_CTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_DTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_Save_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - AbstractClass_Load_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - HouseClass_FindFirstBuildableBuildingTypeFromArray_SWAllowed
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_CTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_DTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_Load_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - InfantryClass_Save_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_CTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_Load_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_SaveLoad_Prefix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_Save_Suffix
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TActionClass_SDDTOR
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TechnoClass_SelectWeapon
[22:31:16] SyringeDebugger::HandleException: Could not retrieve ProcAddress for: Ares.dll - TechnoClass_Update_SkipSelfHeal
[22:31:16] SyringeDebugger::HandleException: Finished retrieving proc addresses.
[22:31:16] SyringeDebugger::HandleException: Creating code hooks.
[22:31:16] SyringeDebugger::HandleException: Exception (Code: 0xC0000005 at 0x0052ACEF)!
[22:31:16]    The process tried to write to 0x6F60537E.

[22:31:16] Registers:
[22:31:16]    EAX = 0x6F605376   ECX = 0x00000000   EDX = 0x6F605386
[22:31:16]    EBX = 0x07106DF0   ESP = 0x0019EF08   EBP = 0x0019EF38
[22:31:16]    ESI = 0x6F60537A   EDI = 0x00000003   EIP = 0x0052ACEF



I was told by a senior modder that this is due to unsupported version of YR, if so, what are supported versions of gamemd.exe for Ares 0.A?

This is my src code forked from Zero_Fanker without any change:

https://github.com/AlucardNosferatu/Ares0A

If anyone could tell me any clue whether or not relevant, I will be very very appreciate for it, Thx!!!

Back to top
View user's profile Send private message
TAK02
General


Joined: 28 Jun 2015
Location: It was Damascus.

PostPosted: Mon Nov 30, 2020 4:47 pm    Post subject: Reply with quote  Mark this post and the followings unread

Retail, First Decade and Origin are supported, IIRC. Must be patched to 1.001 tho.

Better question: where did you get your YR from?
I know XWIS' EXE is not supported, altho last time I tried, XWIS+Ares was working great, indistinguishable from retail+Ares.

Back to top
View user's profile Send private message Send e-mail Visit poster's website ModDB Profile ID YouTube User URL Twitter Channel URL Skype Account
E1 Elite
General


Joined: 28 May 2013

PostPosted: Mon Nov 30, 2020 5:25 pm    Post subject: Reply with quote  Mark this post and the followings unread


Back to top
View user's profile Send private message
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Mon Nov 30, 2020 5:34 pm    Post subject: Reply with quote  Mark this post and the followings unread

E1 Elite wrote:
As per the log, your gamemd.exe is fine, as it has found YR 1.001.

Original source - https://github.com/Ares-Developers/Ares
Shocked

So, can I regard it as some kind of logic error that prevent it from running... ?

I mean, is the problem inside the code of Ares...?

Last edited by Scrooge2029 on Mon Nov 30, 2020 5:40 pm; edited 1 time in total

Back to top
View user's profile Send private message
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Mon Nov 30, 2020 5:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

TAK02 wrote:
Retail, First Decade and Origin are supported, IIRC. Must be patched to 1.001 tho.

Better question: where did you get your YR from?
I know XWIS' EXE is not supported, altho last time I tried, XWIS+Ares was working great, indistinguishable from retail+Ares.


I bought a 17th anniversary collection from Origin, but it's too heavy, and I use another copied YR 1.011 with 1.001 patch downloaded from moddb.

I am still confused about 'XWIS', but I will search and find out what it is.  Thank you!

Back to top
View user's profile Send private message
E1 Elite
General


Joined: 28 May 2013

PostPosted: Mon Nov 30, 2020 5:42 pm    Post subject: Reply with quote  Mark this post and the followings unread

Have you tried with the original source code?

Try with released 0.A version, so that you can exclude the gamemd.exe.

Have you put the .inj file also from say released 0.A version?

Back to top
View user's profile Send private message
TAK02
General


Joined: 28 Jun 2015
Location: It was Damascus.

PostPosted: Mon Nov 30, 2020 6:23 pm    Post subject: Reply with quote  Mark this post and the followings unread

Scrooge2029 wrote:
I am still confused about 'XWIS', but I will search and find out what it is.  Thank you!

XWIS is the EA-approved multiplayer/skirmish-only version, from what I heard.
It functions just like the retail versions do, except for not being tested for compatibility with Ares; so if you have the campaign files and movies, it'll use them. They're just not distributed with the XWIS installation and you have to get them another way.

If interested, though you really don't need it, look here: https://xwis.net/forums/index.php/topic/177134-downloads/
and https://web.archive.org/web/20180201142327/http://xwis.net/downloads/Yuris-Revenge-Multiplayer.exe (because Olaf removed the YR download)

Back to top
View user's profile Send private message Send e-mail Visit poster's website ModDB Profile ID YouTube User URL Twitter Channel URL Skype Account
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Tue Dec 01, 2020 12:39 am    Post subject: Reply with quote  Mark this post and the followings unread

E1 Elite wrote:
Have you tried with the original source code?

Try with released 0.A version, so that you can exclude the gamemd.exe.

Have you put the .inj file also from say released 0.A version?


inj is provided by the repo I forked, I haven't change anything yet...

I can only find 0.6 version on GitHub, maybe 0.A is from somewhere else...? Confused

The link below is the src I forked from:

https://github.com/Zero-Fanker/Ares0A/tree/Version0A

I look into the code and find it maybe caused by wrong hook addresses...?

Nah, I downloaded a official 0.A released version from launchpad and it works, there is a 100% probability that the issue is due to src code I use...at least I know the problem is not because of gamemd.exe and I don't need to waste time on changing it, Thank You!

I will use VS to attach to the process and gather further information about the exception...

Last edited by Scrooge2029 on Tue Dec 01, 2020 1:04 am; edited 2 times in total

Back to top
View user's profile Send private message
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Tue Dec 01, 2020 12:40 am    Post subject: Reply with quote  Mark this post and the followings unread

TAK02 wrote:
Scrooge2029 wrote:
I am still confused about 'XWIS', but I will search and find out what it is.  Thank you!

XWIS is the EA-approved multiplayer/skirmish-only version, from what I heard.
It functions just like the retail versions do, except for not being tested for compatibility with Ares; so if you have the campaign files and movies, it'll use them. They're just not distributed with the XWIS installation and you have to get them another way.

If interested, though you really don't need it, look here: https://xwis.net/forums/index.php/topic/177134-downloads/
and https://web.archive.org/web/20180201142327/http://xwis.net/downloads/Yuris-Revenge-Multiplayer.exe (because Olaf removed the YR download)



Wow! Thx a lot! I will give it try!  Very Happy

Back to top
View user's profile Send private message
Scrooge2029
Vehicle Driver


Joined: 21 Nov 2020

PostPosted: Tue Dec 01, 2020 1:25 am    Post subject: Reply with quote  Mark this post and the followings unread

Scrooge2029 wrote:
E1 Elite wrote:
Have you tried with the original source code?

Try with released 0.A version, so that you can exclude the gamemd.exe.

Have you put the .inj file also from say released 0.A version?


inj is provided by the repo I forked, I haven't change anything yet...

I can only find 0.6 version on GitHub, maybe 0.A is from somewhere else...? Confused

The link below is the src I forked from:

https://github.com/Zero-Fanker/Ares0A/tree/Version0A

I look into the code and find it maybe caused by wrong hook addresses...?

Nah, I downloaded a official 0.A released version from launchpad and it works, there is a 100% probability that the issue is due to src code I use...at least I know the problem is not because of gamemd.exe and I don't need to waste time on changing it, Thank You!

I will use VS to attach to the process and gather further information about the exception...



The problem is almost set! I just successfully launched it (but I am not sure whether it will raise any exceptions after that...), hohoho, the very first time!


VS project should not use BufferSecurityCheck and ExceptionHandling (in project properties:C/C++:BufferSecurityCheck\ExceptionHandling).



code in .vcxproj file:

Code:
      <BufferSecurityCheck>false</BufferSecurityCheck>
      <ExceptionHandling>false</ExceptionHandling>


BTW, I found that there is already a debugger attached to the process, is it created by Syringe? can I just link my VS to it and debug it...?

Thx for all topic participants! Very Happy  Very Happy  Very Happy

Back to top
View user's profile Send private message
SteamsDev
Soldier


Joined: 12 Mar 2017

PostPosted: Tue Dec 01, 2020 3:26 am    Post subject: Reply with quote  Mark this post and the followings unread

TAK02 wrote:

Better question: where did you get your YR from?
I know XWIS' EXE is not supported, altho last time I tried, XWIS+Ares was working great, indistinguishable from retail+Ares.


Any version earlier than 0.A (as far as I can tell) used a version of Syringe.exe that completely ignored pre-made patches. That's how I got it to work with the XWIS version of YR. anything beyond that yells at you if you use XWIS edition.

TAK02 wrote:

XWIS is the EA-approved multiplayer/skirmish-only version, from what I heard.
It functions just like the retail versions do, except for not being tested for compatibility with Ares; so if you have the campaign files and movies, it'll use them. They're just not distributed with the XWIS installation and you have to get them another way.


Another note about the XWIS version: If you download the XWIS version of both RA2 and YR, they will work with CnCNet so you can play multiplayer YR. Something I'd recommend doing STRAIGHTAWAY as the XWIS version is not very feature-heavy.

_________________
"I'm grade-A, 100%, prime-cut final boss! I'm going to take over the world any day now!"
-Bowser, Super Paper Mario

Official scripting leader of BR Studios
Check out our ModDB: http://www.moddb.com/company/progen-group
Yuri's Revenge: CnCD2K: http://www.moddb.com/mods/red-alert-2-yuris-revenge-cncd2k-mod

Back to top
View user's profile Send private message
TAK02
General


Joined: 28 Jun 2015
Location: It was Damascus.

PostPosted: Tue Dec 01, 2020 7:00 am    Post subject: Reply with quote  Mark this post and the followings unread

SteamsDev wrote:
Another note about the XWIS version: If you download the XWIS version of both RA2 and YR, they will work with CnCNet so you can play multiplayer YR. Something I'd recommend doing STRAIGHTAWAY as the XWIS version is not very feature-heavy.

I was under the impression "functions just like the retail versions do" would imply that, yes, CnCNet is fully compatible with XWIS.

Come to think of it, must've been why Olaf removed the YR download; he got salty everyone moved to CnCNet using XWIS YR as base.

Does CnCNet work with only RA2? It'd surprise me if it did.

Back to top
View user's profile Send private message Send e-mail Visit poster's website ModDB Profile ID YouTube User URL Twitter Channel URL Skype Account
Display posts from previous:   
Post new topic   Reply to topic Page 1 of 1 [12 Posts] Mark the topic unread ::  View previous topic :: View next topic
 
Share on TwitterShare on FacebookShare on Google+Share on DiggShare on RedditShare on PInterestShare on Del.icio.usShare on Stumble Upon
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © phpBB Group

[ Time: 0.1563s ][ Queries: 11 (0.0078s) ][ Debug on ]