Author Topic: City of Heroes Local Map and Sandbox Mode  (Read 60611 times)

Tiger

  • Underling
  • *
  • Posts: 15
City of Heroes Local Map and Sandbox Mode
« on: December 23, 2012, 12:27:29 AM »
While using Codewalker's ICON to access the Costume Creator, I was able to trick the game into thinking I was logged into the map server, as shown in this screenshot:


I did this by changing the following offset using cheat engine:
0x00E332DC (cityofheroes.exe+A332DC), to the value 0x1D
As soon as this is done, the character is shown in a blank world, and you see the health bar very rapidly going to zero, and a message is displayed, about needing to restart in a hospital. You can however access most menus. What I could not do was move around, which might be because when I go in the options menu, no keys are assigned, and attempting to assign them freezes the game (I see no options file in my COH directory though to load from). Maybe with some work, movement will be possible on loaded maps.

Arachnion

  • Elite Boss
  • *****
  • Posts: 642
  • Professional Cynic
Re: City of Heroes Local Map and Sandbox Mode
« Reply #1 on: December 23, 2012, 12:33:08 AM »
Oh, wow.

Good job man!

Progress is progress!

;D
I'm all dressed up with nowhere to go
Walkin' with a dead man over my shoulder

Waiting for an invitation to arrive
Goin' to a party where no one's still alive

Leandro

  • Elite Boss
  • *****
  • Posts: 310
Re: City of Heroes Local Map and Sandbox Mode
« Reply #2 on: December 23, 2012, 12:36:20 AM »
Tiger, was this on the live or beta client? The memory address will be different for both.

Replying to myself: Issue 23, Live client.
« Last Edit: December 23, 2012, 12:41:28 AM by Leandro »

Arachnion

  • Elite Boss
  • *****
  • Posts: 642
  • Professional Cynic
Re: City of Heroes Local Map and Sandbox Mode
« Reply #3 on: December 23, 2012, 12:41:08 AM »
Tiger, was this on the live or beta client? The memory address will be different for both.

I'm thinking this is the Live client.



Beta client doesn't have a cider folder at all.

;)
« Last Edit: December 23, 2012, 12:47:31 AM by Arachnion »
I'm all dressed up with nowhere to go
Walkin' with a dead man over my shoulder

Waiting for an invitation to arrive
Goin' to a party where no one's still alive

Leandro

  • Elite Boss
  • *****
  • Posts: 310
Re: City of Heroes Local Map and Sandbox Mode
« Reply #4 on: December 23, 2012, 12:48:04 AM »
This is interesting because the game's client has a way to enable collision detection locally, so you might be able to run around a map -- IF a bunch of other conditions are right. Don't get too excited, but there might be something here.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: City of Heroes Local Map and Sandbox Mode
« Reply #5 on: December 23, 2012, 01:02:42 AM »
Yes, that offset is for Issue 23 live.

The corresponding location in the beta client is 00E358B0. You'll need to set it to 0x1e there, however.

Arachnion

  • Elite Boss
  • *****
  • Posts: 642
  • Professional Cynic
Re: City of Heroes Local Map and Sandbox Mode
« Reply #6 on: December 23, 2012, 01:08:22 AM »
Too bad I've never used Cheat Engine.

???
I'm all dressed up with nowhere to go
Walkin' with a dead man over my shoulder

Waiting for an invitation to arrive
Goin' to a party where no one's still alive

Tiger

  • Underling
  • *
  • Posts: 15
Re: City of Heroes Local Map and Sandbox Mode
« Reply #7 on: December 23, 2012, 01:16:11 AM »
Yes, that offset is for Issue 23 live.

The corresponding location in the beta client is 00E358B0. You'll need to set it to 0x1e there, however.

So did you know about this before I mentioned it?

Also my version of City of Heroes is version 2320.201207182341.1  which is the version the other person mentioned.

Arachnion

  • Elite Boss
  • *****
  • Posts: 642
  • Professional Cynic
Re: City of Heroes Local Map and Sandbox Mode
« Reply #8 on: December 23, 2012, 01:19:04 AM »
Also my version of City of Heroes is version 2320.201207182341.1  which is the version the other person mentioned.

My live copy is the very same as well.
I'm all dressed up with nowhere to go
Walkin' with a dead man over my shoulder

Waiting for an invitation to arrive
Goin' to a party where no one's still alive

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: City of Heroes Local Map and Sandbox Mode
« Reply #9 on: December 23, 2012, 01:23:03 AM »
So did you know about this before I mentioned it?

Also my version of City of Heroes is version 2320.201207182341.1  which is the version the other person mentioned.

I didn't know the exact procedure, but assumed something like that would be possible. Hadn't really looked into it, as focusing on the server side of the equation solves several issues at once, whereas client hacks can only go so far.

A good start for loading a map would be demo playback, however that also feeds a bunch of other data into the engine that you probably don't want it to. As Leandro mentioned, the client does have the capability to do motion prediction, world collision, and sequencer prediction (i.e. running and jumping animations) locally, so it should be possible to "run around" an empty map with some trickery.
« Last Edit: December 23, 2012, 01:30:59 AM by Codewalker »

JWBullfrog

  • Elite Boss
  • *****
  • Posts: 605
  • I didn't leave Paragon City. They threw me out!
Re: City of Heroes Local Map and Sandbox Mode
« Reply #10 on: December 23, 2012, 02:56:08 AM »
Awaiting another one of Codewalker's "hey guess what..." posts.
As long as somebody keeps making up stories for it, the City isn't gone.

Timelord Tom

  • RIP Timlord
  • Lieutenant
  • ***
  • Posts: 76
    • Paragon Radio Gallifrey
Re: City of Heroes Local Map and Sandbox Mode
« Reply #11 on: December 23, 2012, 04:13:05 AM »
Just being able to walk around the city again would be a huge boon. Not getting my hopes up, but...

/e crossingfingers

Kistulot

  • Elite Boss
  • *****
  • Posts: 540
  • Argentum Weritas Est!
Re: City of Heroes Local Map and Sandbox Mode
« Reply #12 on: December 23, 2012, 04:20:33 AM »
There's some amazing stuff going on here :)

I can't wait to fly around again - even if its just locally and with no goal but to fly.
Woo! - Argent Girl

Septipheran

  • Guest
Re: City of Heroes Local Map and Sandbox Mode
« Reply #13 on: December 23, 2012, 05:10:49 AM »
Very cool.

wei yau

  • Boss
  • ****
  • Posts: 102
Re: City of Heroes Local Map and Sandbox Mode
« Reply #14 on: December 23, 2012, 05:16:54 AM »
Hell, if this is enough to just trigger powers and demo record, I'd be ecstatic.

Confounded FX commands are confounding.

The Fifth Horseman

  • Elite Boss
  • *****
  • Posts: 961
  • Outside known realities.
Re: City of Heroes Local Map and Sandbox Mode
« Reply #15 on: December 23, 2012, 11:13:27 AM »
Too bad I've never used Cheat Engine.
???
Try. If you have a specific problem or question, feel free to ask. :)
We were heroes. We were villains. At the end of the world we all fought as one. It's what we did that defines us.
The end occurred pretty much as we predicted: all servers redlining until midnight... and then no servers to go around.

Somewhere beyond time and space, if you look hard you might find a flash of silver trailing crimson: a lone lost Spartan on his way home.

Ice Trix

  • Boss
  • ****
  • Posts: 184
Re: City of Heroes Local Map and Sandbox Mode
« Reply #16 on: December 23, 2012, 11:22:17 AM »
Just being able to walk around the city again would be a huge boon. Not getting my hopes up, but...

/e crossingfingers

Indeed

Tiger

  • Underling
  • *
  • Posts: 15
Re: City of Heroes Local Map and Sandbox Mode
« Reply #17 on: December 23, 2012, 11:21:42 PM »
Here are some more updates:
You can do /demorecord by typing it in the chat window. However, you must first type in the chat window:
/textparserdebug  this will also reset your character back to being faceless, so change the offset back to 1, and then go to the registration screen, then change it back to 0x1D. Then /demorecord will work, however it will only make the following demo file:
1   0   Version 2
0   0   Map
0   0   Time 0.000000
0   0   Player
0   0   POS 0 0 0
0   0   PYR 0 0 0
0   CAM POS 0 2 9
0   CAM PYR 0 0 0

Also I was playing around with some offsets (let me know if you want to learn how to do this), and the following offset (set to any value greater then zero) appears to access some type of editor:
0x01678DCC
Here is a screenshot:

Which is strange, but you can hold down the mouse button and drag and it will make the words and the blue boxes, bigger, and the "Effective size" and "scale" will be smaller or bigger. (Only the words as it does not seem to currently make anything bigger or smaller in either the demoplay screen, or in the costume creator. And by changing an offset close to 0x01678DCC (again ask me if you want the full details, it involves using the cheat engine disassembler), adds text, and notes and bounding boxes, to the objects to the demo, as shown in this screenshot:

Notice the word MAP, the text and other things.
I was not able to select anything, but hopefully there will be a way to edit objects and maybe (it is mentioned in comments in cityofheroes.exe) even save changes directly to the .pigg files.

Mister Bison

  • Elite Boss
  • *****
  • Posts: 686
  • *psychotic grin*
Re: City of Heroes Local Map and Sandbox Mode
« Reply #18 on: December 23, 2012, 11:24:50 PM »
NPC Navigation information viewer ? Hell, I didn't know those were on the client (though it could explain some discrepancies I had, if the client was made able to do its own navigation prediction)

How the hell do you find those offsets ??
Edit: ok, Cheat engine disassembler. Neat.
Yeeessss....

Arachnion

  • Elite Boss
  • *****
  • Posts: 642
  • Professional Cynic
Re: City of Heroes Local Map and Sandbox Mode
« Reply #19 on: December 23, 2012, 11:36:43 PM »
Damn, this is good stuff.

Good job Tiger.

:D
I'm all dressed up with nowhere to go
Walkin' with a dead man over my shoulder

Waiting for an invitation to arrive
Goin' to a party where no one's still alive