Page 1 of 4

only 1 free account allowed on a PC

Posted: Tue Nov 12, 2019 4:48 pm
by light
Tried to log in 2 Endless Conquests accounts (free accounts) today and I got the message above. That means no PvE macro teams unless things change?

Great program btw!

Re: only 1 free account allowed on a PC

Posted: Tue Nov 12, 2019 9:56 pm
by Rob
Thanks for the kind words.

Re: only 1 free account allowed on a PC

Posted: Thu Nov 14, 2019 10:18 am
by alnmike
Interesting. I decided to come back to DAOC for the EC, didnt know about the 1 account requirement lol. Just tried this on my two main accounts and got the same error lol. Are my dreams of a 3FG pve zerg gone so quickly? :D

Side note: Fantastic work Rob, been reading up on all the changes in the last year and change. Might have to finally stop using HKN lol. I see theres even a move window command which would really help. (can almost perfectly get 16 (4x4) 800x600 windows on a 4k screen) I was also going to try and find a way to find some way to automate setting each daoc instance to a single cpu thread as well, but might not bother if Broadswords just gonna insta-ban me lol.

Re: only 1 free account allowed on a PC

Posted: Thu Nov 14, 2019 5:53 pm
by LtGab
I'm curious to know this too, does it involve creating a virtual machine ?

Re: only 1 free account allowed on a PC

Posted: Fri Nov 15, 2019 2:32 am
by alnmike
Oh God I hope not. I wanted to specifically build a 16thread ryzen 3 computer and run 2fg on it lol. I can't imagine the terrible performance of running 16 copies of windows on top of daoc lol. And $1k was hard enough to swallow for the lulz, I don't want to triple it and get a threadripper that can actually do this...

Re: only 1 free account allowed on a PC

Posted: Fri Nov 15, 2019 10:53 am
by Rob
alnmike wrote:
Thu Nov 14, 2019 10:18 am
Fantastic work Rob, been reading up on all the changes in the last year and change. Might have to finally stop using HKN lol.
Thanks Mike. I think the biggest improvement over HKN is that ordinary hotkeys (that send keystrokes) always just simply work. Stick never breaks, you can use any combo of keys for the trigger, send any combo of keys -- it all just always works.
alnmike wrote:
Thu Nov 14, 2019 10:18 am
I see theres even a move window command which would really help.
HKN has that too (SetWinPos).
alnmike wrote:
Thu Nov 14, 2019 10:18 am
I was also going to try and find a way to find some way to automate setting each daoc instance to a single cpu thread as well, but might not bother if Broadswords just gonna insta-ban me lol.
You can do that with HotkeyNet (SetAffinity). I don't think I've gotten around to putting a similar feature in Mojo but I can't remember and I'm away from home without a PC so I can't look.

Re: only 1 free account allowed on a PC

Posted: Fri Nov 15, 2019 11:14 am
by Rob
LtGab wrote:
Thu Nov 14, 2019 5:53 pm
I'm curious to know this too, does it involve creating a virtual machine ?
In order to implement the one-EC limit, Broadsword has to be looking at one or more pieces of client-side information that identify you. The clients are on players' computers, so if players experiment a bit, I think they will figure out which piece(s) of info Broadsword is using.

Some possible things that Broadsword might be looking at: the accounts themselves; IP addresses; GUIDs that the clients put in the registry; mutexes; data in shared memory; named pipes; temporary files; etc.

Most of these things are easy to check without being a programmer or violating the EUALA. You just need to think like a detective and do simple experiments to check one thing at a time.

Re: only 1 free account allowed on a PC

Posted: Fri Nov 15, 2019 11:24 am
by Rob
alnmike wrote:
Fri Nov 15, 2019 2:32 am
Oh God I hope not. I wanted to specifically build a 16thread ryzen 3 computer and run 2fg on it lol. I can't imagine the terrible performance of running 16 copies of windows on top of daoc lol. And $1k was hard enough to swallow for the lulz, I don't want to triple it and get a threadripper that can actually do this...
You may be able to rule out that VMs would help by running two ECs each on a different PC connected to the same router. If that doesn't work I think probably VMs also won't work.

I'm ordering parts this week for a new Ryzen PC mainly for programming. The total cost so far is $1900 with a 3900x and Asus Prime Pro not including the monitor. I'm skimping on the disk drives and even so this is the most expensive PC I ever built by far.

Re: only 1 free account allowed on a PC

Posted: Sat Nov 16, 2019 6:23 pm
by alnmike
Rob wrote:
Fri Nov 15, 2019 11:14 am
Most of these things are easy to check without being a programmer or violating the EUALA. You just need to think like a detective and do simple experiments to check one thing at a time.
Sounds like the "curse of knowledge" there lol :P.

So, I decided to learn how to use VM's to test this. and it does work... kinda..
https://pasteboard.co/IH1bl0O.jpg
Heres a screenshot of the VM account logged in. Im assuming it looks like garbage because the VM doesnt have a video card assigned to it, probably not a big deal in the long run, but it basically maxed out 2 of my cores (threads) and ate about 1 gig of ram for just this 1 VM. Rams not really the issue, can just buy more easily enough, daoc is maxxed out with 2gb anyway. The textures however, and being able to actually see doorways, ect.....

As far as testing mutex's, I loaded my HKN script and did the killmutex hotkey. But HKN said the mutex's couldnt be found. Im assuming because Mojo already killed them. Tried to log into the second one outside the VM, denied.

Cant be IP based, since it worked on the VM. Dont know anything about GUID's, shared memory and pipes. The VM I believe doesnt share memory or the registry, I just dont know enough to figure it out.

To test temp files, I used Mojo's virtual folder and tried to open on two different ones, denied.
In case it was writing to the install directory, I copied the whole 5Gb and tried opening from the new folder. Denied.
I dont know what kind of temp files show up elsewhere.


Edit: Just donated $50 because you still seem to care against all sanity :P
(Guess im also insane because I dont really see myself playing daoc haha)

Re: only 1 free account allowed on a PC

Posted: Sat Nov 16, 2019 10:28 pm
by Rob
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
Sounds like the "curse of knowledge" there lol :P.
Lol. I guess I'm lucky that at my age, every day I forget a few more things and know less. :) I just realized I've been calling you Mike for years and maybe your name means Al 'n' Mike.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
So, I decided to learn how to use VM's to test this. and it does work... kinda..
That's a great piece of info. That makes it pretty certain that Broadsword is using a piece of info on the user's machine such as a piece of shared memory.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
but it basically maxed out 2 of my cores (threads) and ate about 1 gig of ram for just this 1 VM.
Something you might want to be aware of is that the DAOC client's main thread will always use as much CPU time as it can get up to 100% of a core even when it doesn't need it.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm

As far as testing mutex's, I loaded my HKN script and did the killmutex hotkey. But HKN said the mutex's couldnt be found. Im assuming because Mojo already killed them. Tried to log into the second one outside the VM, denied.
Yeah that’s why. By the way, the mutexes that HKN and Mojo delete are different from the one(s) that Broadsword would be using for this new purpose. Mutexes are like files in the sense that apps can create as many as they like and can give them names.

I think we can probably rule out mutexes and some other kernel objects because another player told me today that Process Explorer shows the same list of handles for the client regardless of whether it's running a paid account or EC account (but see below for more about this).
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
Cant be IP based, since it worked on the VM.
Right.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
Dont know anything about GUID's, shared memory and pipes. The VM I believe doesnt share memory or the registry, I just dont know enough to figure it out.
Putting together what you've discovered and what the other guy discovered (I'm away from home without a PC so I'm just chatting about these things with you guys), (1) VMs defeat the mechanism so it's something on individual machines but (2) it's not an object that remains on Process Explorer's handle window after the program initializes. That narrows down the possibilities tremendously. I can't remember all the types of handles shown by Process Explorer, but I don't think it shows shared memory and if it shows a registry handle, the handle would appear on screen for just a fraction of a second (therefore the guy who checked Process Explorer wouldn't have seen a registry handle). And if Broadsword is using a file for this purpose, the file handle would also appear on screen for just a fraction of a second. So those three things (shared memory, registry, file) are my main guesses at the moment.

I'm trying to think how nonprogrammers could check those three things. There might be ways with Windows event logging, maybe also requiring group policy settings or other settings, but that's the sort of thing that sys admins do and requires some effort.

I'm wondering if the programmer at Broadsword who wrote this code is reading this and if so, what he or she is thinking.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
To test temp files, I used Mojo's virtual folder and tried to open on two different ones, denied.
In case it was writing to the install directory, I copied the whole 5Gb and tried opening from the new folder. Denied.
I dont know what kind of temp files show up elsewhere.
That was a good try, very sensible, but DAOC runs as admin so it can create, read, and write files in any folder on any hard disk.
alnmike wrote:
Sat Nov 16, 2019 6:23 pm
Edit: Just donated $50 because you still seem to care against all sanity :P
(Guess im also insane because I dont really see myself playing daoc haha)
Thank you sir. Welcome to the asylum. :)

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 5:29 am
by alnmike
Can't imagine them writing files outside their own folders. (install/app data)

Did windows properties of the install folder, the app data folder and the documents folder. All show the exact same amount of files.


Ohhh. Interesting. Checked out the bytes and there's something in the documents folder that is about 50KB bigger. False alarm... Delve.txt updates when you log out.

New edit: there appears to be a conhost.exe opening and closing for a split second (sometimes) when I open the second daoc instance.

Last edit before I goto sleep. Yeah its Mike.

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 12:38 pm
by Rob
alnmike wrote:
Sun Nov 17, 2019 5:29 am
Can't imagine them writing files outside their own folders. (install/app data)
Programs do that sometimes. Microsoft discourages it (except for TEMP folders) but it can be done without messing anything up on the user's PC. Were your folders set to show all files (hidden, system, etc)? Did you look in the two temp folders? I don't think this file, if it exists, is likely to be in the install folders because Broadsword would need multiple installed DAOC's to see the same file.
alnmike wrote:
Sun Nov 17, 2019 5:29 am
New edit: there appears to be a conhost.exe opening and closing for a split second (sometimes) when I open the second daoc instance.
Great catch. Is the second instance the only EC instance? Conhost.exe is the process that runs when a command prompt window opens. This means the second instance is opening a command prompt window (which may be invisible), and this is probably happening because the instance is running a .bat file (it could also be an .exe, see next post), and if so, that .bat file may be doing the work of checking for other EC instances. (You might want to check the .bat files in the install folder (you can look inside them with a text editor like NotePad). They may show creation dates, too, in which case you'd be looking for a recent one.

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 1:08 pm
by Rob
Rob wrote:
Sun Nov 17, 2019 12:38 pm
... this is probably happening because the instance is running a .bat file...
The instance may also be running a certain kind of executable file (a so-called console application). If so the executable file is probably in the install folder with a file extension "exe". However this executable file, if it exists, can be named anything, and in fact, as I'll explain in a moment, it doesn't even need to be stored on disk as a file. If it's a file It may not have an .exe extension. (Game.dll is an executable file but Mythic named it "dll" for some bizarre reason.)

If the executable file exists, during the time conhost.exe is visible on Process Explorer, a new separate process will also open briefly on Process Explorer. IT will have the same name as the executable file in the install folder.

If the Broadsword programmer wanted to be tricky he or she might have embedded the executable inside some other file as data (this is often done as a "resource") and might save it as a file temporarily in order to run it, but if that's the case, you could probably see game.dll on Process Explorer creating and deleting the temporary file.

By the way I think you can suspend (temporarily freeze) processes with Process Explorer by right clicking the process name and clicking "suspend" on the menu. This might help you slow things down to see better what's going on. But if you do this, do it only with accounts you don't care about, because the "suspend" feature is probably implemented with the Windows debugging API and Broadsword may think you're debugging the game (you aren't, you are only looking at lists of Windows processes) and may terminate the account.

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 3:04 pm
by alnmike
Hmm, I checked the temp folders (all that i can find) for anything with a modified date of <now>, nada. However, "C:\Users\M\AppData\Local" has a temp and crashdump folder that shows modified timestamps that line up with one of my denied attempts. But there's no files inside with the timestamp, so must have been deleted. Cant replicate now for some reason (timestamp not updating).

What do you mean by process explorer? Im using task manager, details tab. Dont see a suspend option.

Ive got hidden folders shown. I also dont see any .bat files in install folder.

Delve.txt definitely updates every time I log in or out, I just cant decipher it. Tried overwriting it with a copy from when no instances were running, got denied on the 2nd account still lol.

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 6:25 pm
by alnmike
Forgot to add: no subbed accounts, just EC

Re: only 1 free account allowed on a PC

Posted: Sun Nov 17, 2019 7:58 pm
by Rob
Oh, sorry, I thought you said you were using Process Explorer or maybe I just assumed it. Process Explorer is a free program published by Microsoft. It's like TaskManager but more powerful with additional features. To find it, look for "sysinternals process explorer" in a search engine.

If you click a process on Process Explorer and open the handle view, you can see all the "things" that the process is opening and closing including mutexes, files, etc. Then you can right-click any of those things and delete them, etc.

It may be the case that the file (if Broadsword is using one) exists only while DAOC-EC is running.

Re: only 1 free account allowed on a PC

Posted: Mon Nov 18, 2019 3:32 am
by Rob
P.S. If you use Process Explorer you might want to try to identify the process (if any) that's getting hosted by conhost.exe and then watch that process and see what it's doing. If that process exists it probably comes and goes in a flash on Process Explorer when DAOC-EC launches so this may be hard. If I were doing this myself I wouldn't use Process Explorer for this purpose but maybe you can do it.

Re: only 1 free account allowed on a PC

Posted: Mon Nov 18, 2019 5:42 pm
by alnmike
Is there a program that records everything over a time period?
Opened windows event viewer and don't know enough to navigate all the errors that are always there.

Re: only 1 free account allowed on a PC

Posted: Mon Nov 18, 2019 6:33 pm
by alnmike
Downloaded process explorer, ran a couple more tests.

Found the conhost, but its under mojo, ive been using mojo to quickly open the daoc instances (go figure) until now. Used the patcher to see if anything was different, timed the "prt scr" button to get these two pictures.
https://imggmi.com/full/2019/11/19/f9db ... l.png.html

Also did a copy/paste test for login.dll, no luck.

Re: only 1 free account allowed on a PC

Posted: Mon Nov 18, 2019 7:35 pm
by Rob
alnmike wrote:
Mon Nov 18, 2019 6:33 pm
Found the conhost, but its under mojo....
Oh, okay, we can ignore it then. Thanks for the screenshot, it makes the situation clear. The login.dll that runs when you launch with Mojo is part of Mojo and it's not the same login.dll as the one in DAOC's install folder.