Possible New Tool

For sooper seekrit League of Legends, <s>UO</s> <s>EVE</s> talk <s>and Diplomacy</s>.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

Well, I got it to bulk delete some reports today. But the method wasn't what I was hoping for.

I was hoping to inject/create a new request, but that hasn't worked for some reason. So instead I overwrote a poll request that was being sent by the browser. It works, but isn't exactly smooth.
It's not me, it's someone else.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

OK, while doing other things I had a brainstorm, that appears to have worked.

Booyah. OK, so now I can make my own requests do whatever I want.
It's not me, it's someone else.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

Today I built 2 moonstones using the program I developed.

So I can build moonstones and delete reports. Small progress, but progress.

I also found out they do their math a funky way for resource tracking. Basically, they store a base time (in our case, 4/10/10 9:47am), and then use a seconds offset (like unix time, but I guess they wanted to work with smaller numbers?). But, they only update the system's record of resources when events happen, like building a moonstone, or accepting a trade, etc. Then they snapshot the time, and whenever the client asks for the # of RUs a city has, it says "Well, it had X at Y offset" and the GUI does the math.

So I have to replicate that math, but I'm almost there.

Once I get that smoothed out, I'm going to try "Navigation to another city."
It's not me, it's someone else.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

Hehe... today I wired up a routine that iterates through every city in order to collect all the RU and queue and production data.

I made a mistake in my timing algorithm to set a delay between each city... It was like a 1-second slideshow of all my cities.

At any rate, I can now iterate through cities to choose where I want it to go. The UI does update in reaction to the commands, but the in-game drop-down doesn't show what city you are on correctly.




Edited By TheCatt on 1278985332
It's not me, it's someone else.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

Right now it's iterating through my cities and building moonstones for the ones I selected. (about 30)... It appeared to work OK. Lots of the moonstones didn't get built. Not sure why. But for several cities it went perfectly. I put a 1 second thread sleep between moonstone requests, i might try a larger one.

*EDIT* On further review, it was perfect. The data in the program didn't update quickly enough though, because the game wasn't sending the info back fast enough. But when I had the program rescan all cities, every one of the moonstones that could have been built was built.




Edited By TheCatt on 1279065814
It's not me, it's someone else.
User avatar
Cakedaddy
Posts: 8869
Joined: Thu May 20, 2004 6:52 pm

Post by Cakedaddy »

Careful with the speed. One of the rules for extensions is that they tool does not send data/requests faster than the actual client does. If you are sending commands too fast, you might get flagged. I say flagged, because I don't know the consequences of building a violating tool.

Ya, I said "a violating tool".
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

I do the current timeouts:
4 seconds when moving cities
1 second when building a moonstone.

Since you can just mash the build moonstone button, that's definitely slower than the client can send.
It's not me, it's someone else.
TheCatt
Site Admin
Posts: 54004
Joined: Thu May 20, 2004 11:15 pm
Location: Cary, NC

Post by TheCatt »

Made a breakthrough in how the city plots are done with IDs, which should make it easier to automate. Basically, each cell in the city has a unique ID. But, depending on whether it's a building, resource tile, or barren, it has 3 versions.

But they're all the exact same for every single city. So once I figure out all the possible values, then I'll have a way to access any cell in the city to program it.

then I just need to come up with model cities, queues, buildings, compariosn, yadda yadda yadda.
It's not me, it's someone else.
Post Reply