-
Posts
10683 -
Joined
-
The "my character is exploded into disconnected pieces" issue is something I now recall I fixed a while back. I don't remember precisely how, so I'm taking a look at my configs and notes to see. Stay tuned, but in the meantime here's some things to try:
1. Turn off ultramode and reduce graphics settings to low values. Since we're trying to extract the models, it doesn't matter how well the client renders them.
2. Uncomment out the following lines near the bottom of the gliConfig.ini file:
// ExtensionOverride = ("GLExtOverride/GLExtOverride.dll")
// {
// RemoveExtensions = (GL_ARB_vertex_program, GL_ARB_fragment_program);
// }
What you are seeing are almost certainly the result of the game client using vertex programs, and OGLE doesn't capture them, so objects that are processed by vertex programs to deform and position themselves will end up basically at the origin and "straightened out." Which is basically what a lot of people are seeing.
I remember sometimes the devs would release a build of the game, and this would break for me, and then the next build would fix it. The current test client works for me, so I believe it should work or at least can work with the current client.
There are a couple of other issues that I will describe in more detail when I write up my processing post, but I notice in Blender I basically see the scene, albeit often rotated and offset oddly. In Art of Illusion I see what looks like a giant inverted gemstone shape which is I believe the bounding boxes for the scene, and unless you delete those it will be very difficult to see the scene inside. Again: not a 3D modeller, so not sure why the difference in the two apps.
So there's no confusion, when I do this on my test client and import the .OBJ into Blender, I get this:
Zooming out, I get this:
FYI, I'm standing in the parking lot in Talos: my character is standing with arms crossed to the right of center. To the far right in the second image you can see the Freakshow that have been trying to steal a car from the hospital parking lot for the last eight years. -
-
So I was up last night looking over the moving pieces for this, and rather than try to write one big document for it all, I'm going to just post what I can as I can in the thread.
First: I have a dropbox link to OGLE for those that can't find it on the internet, which is probably all of you at this point because the thing seems to be in witness protection.
Also, this guys seems really interested in my google searches now
https://www.dropbox.com/sh/ysy9hon4f3mf4pe/SA_LZrs-1L
That link should have two things in it: a copy of GLintercept (source and exec) and OGLE. GLintercept is basically the OpenGL shim driver. Running and installing that just makes a directory in Program Files with all its jazz, it doesn't really "install" anything per se. The OGLE binary distribution also creates a directory that puts its stuff in there.
Here's how the magic happens. You take the OpenGL32.DLL file from the GLintercept directory and copy that into your City of Heroes game client directory. Then you take the OGLE binary distribution directory - all of it - and copy that into the plugins subdirectory of where ever GLintercept installed itself. The directory should be renamed to be called OGLE if it isn't already (or you will need to make more config file edits). Finally, you take the gliConfig_OGLE.ini file from the OGLE directory and copy that into your game directory, but you rename it gliconfig.ini and you edit it with what you want.
Here's what's important in that file:
1. Directories. There will be some references to the GLintercept directory created when you installed that above. If you didn't change it, the main thing that you might need to fix is on a 64-bt OS it was probably installed into "Program Files (x86)" and the config file just says "Program Files". You'll need to fix that, depending on what OS you run on.
2. There's a line in the config file called "FrameStartKeys. Its the set of keys you have to press simultaneously to "capture" a frame. By default I think its CTRL+SHIFT+F. Change that if you want that (especially since on most people's default keymaps that will cause you character to start sprinting forward at the same time).
3. In the plugin section there's a setting called FileInFrameDir. I like to set that to True. More on what that does in a minute.
For the technically minded, there is a README for OGLE in its distribution directory under \docs.
All this cannot be done while the client is running. You do all this, and then launch the client. You should see more or less no change, although its possible the shim driver might slow down the client a little. I haven't noticed myself. I have seen the rare occasional crash while the plug in is installed so I don't leave it there all the time. To disable OGLE once you set this all up, just rename the OpenGL32.DLL you copied into the client directory to something like OpenGL32.DLL.DISABLED. When you want it, rename again.
When ready, hit your hotkey combination. The game will freeze. This is normal. Upon hitting that key, the next frame the game tries to render will have all of its OpenGL commands being sent to the video adapter intercepted, processed by OGLE, and then spit out into a set of files. That will of course take time. On my system, a zippy Core i7-860 this takes about two to six seconds depending on geometry complexity, but I've seen it take as long as ten seconds. When your client starts moving again, you have captured that frame.
What you get is a directory called something like Frame_006827 in your game client directory. Within that directory is everything GLintercept and OGLE decided to log. You should have a directory called DisplayLists which I suppose contain display list information but I've never really looked at carefully. There should be another directory called Images that actually should contain little bitmap images of all the textures being sent to the renderers. So those things are actually in there.
Some of it is real obvious:
Some are not obvious textures, but I can guess what might be used for:
But character textures use some projections I should probably recognize but don't:
Head, hands, and boobs. According to Rob Liefeld, I've listed those in ascending order by mass.
And of course, sometimes there's:
There's... uh... Wait. I'm sorry, but W-T-F is that, Art Team? Did you guys actually sneak an x-rated x-ray image into the game? Holy ****.
Anyway, the last two things should be two text files: gliInterceptLog.txt and ogle.obj. gliInterceptLog.txt is some light reading. ogle.obj is the money shot (hey, I wasn't the one that put dick textures into the game). Its a waveform-compatible .OBJ of the entire scene.
Now all you have to do is find you character (or whatever you want to capture) in there somewhere, and get that into something you can print, or alternatively import that into the 3D program of your choice and do whatever you want with it. People who know how to use 3D modelling software correctly, as opposed to the random flailing around technique I use can take it from there mostly: the .OBJ format is supported by basically every 3D modelling software not made in North Korea.
For everyone else, I'll cover that next.
PS: I know you guys think I'm making up the dick texture, but I'm not. Do the capture yourself, its so far shown up in every 3D capture I've done. Whatever it is, its burned into the DNA of the game. -
Quote:Correction: I just reapplied OGLE to my test client just to make sure I remembered how it worked, and it actually does extract textures.Thanks for the headsup on that tool.
Does it extract materials and textures along with the model?
The problem is it doesn't apply them to the model itself. You could, if you knew how to do it right. Particularly those entity textures that look like some weird projection. -
-
Well maybe it was aliens. And until someone at either NCSoft or Perfect World addresses the question of whether or not it was aliens, we'll never know for sure.
-
Quote:I did not explore that. My guess is that OGLE cannot do that, but OGLE is actually an extension of another bit of software called GLintercept. GLintercept is what it sounds like: its an OpenGL shim driver that sees the calls and forwards them to your real OpenGL driver. Which means it sees everything, and could theoretically be programmed to dump anything and everything to a text file. But OGLE never got to that stage as far as I can see before development on it ceased.How about the UV mapping?
Gonna guess no.
Not like that matters for 3D printing.
An enterprising OpenGL programmer could probably add a module to GLintercept to do that, though. -
Quote:Don't see why not. And I've noticed its really hard to find OGLE on the internet now, since its now unsupported software, so I will see what I can do about finding a place to upload my copy, and post some instructions on how to use it. Don't expect that to happen today, I have a rather busy weekend unfortunately, but I will make it a point to get the files and some documentation on not just how to use OGLE but also how I turned OGLE captures into STL files for my Makerbot, which would also work with any 3D printer in existence - although extrusion printers are more forgiving about non-solid geometry with odd normals or holes than other 3D printing technologies.What about demo files and the demo launcher? Could OLGE capture the data from that while the launcher is playing back recorded scenes?
I will post everything in this thread as I have time to make it which will be soon. Like within a week soon: I need to fire up Blender again and remember what I did. As I said, I'm not a 3D modeller any more than understanding Fourier transforms makes me a musician. -
You mean they aren't updating Mids to I24? Heck 99% of the builds ever made with Mids never saw the light of day in-game, what difference will it make now? They should just keep releasing versions like they come from a parallel dimension or something.
-
Confession: I did work with the Paragon team on a game feature, like for-realsies, just before the launch of Going Rogue. That's why I'm listed in the game credits in that edition. But I was never an employee of Paragon Studios or Cryptic, I never had a red name, and I was never issued my own neuralizer.
Quote:Yes:So after everything that has gone on, CoH is closing etc etc, you MUST have some dirty secrets for us!
1. Matt Miller (Positron) believes 7.2 is approximately ten.
2. Matt Stults (Television) had to be given a red name at gunpoint.
3. Floyd Grubb (Castle) didn't actually like all the PvP changes. He didn't make them all. He won't say who did what, and neither will I.
4. Christopher Bruce (BaB) had a problem with honesty. He has too much of it.
5. CW Bennet (pohsyb) snuck Elusivity in the game when none of the data people really wanted to use it. It sat there for over a year before it was used in PvP.
6. Andy Belford (Zwillinger) keeps saying he's Asian, and people keep thinking he means Martian.
And all of the devs shared entirely way too much of their time and thoughts with me, and probably lied about it on their timesheets. For that I will always be grateful. -
-
Quote:Specifically, I'm sure they had to explicitly sign the rights away to those characters and all copyrightable content associated with them.Well, they're safe, because they're not part of the official IP - Positron is written into the IP, and features in the official comics and other promotional material.
As another example, when Jack left, he wouldn't have been allowed to use the name Statesman anymore - and the same goes for BAB.
I signed away no such rights, and so while NCSoft can continue to use my characters indefinitely, they have no legal way to stop me from using them myself. Those authorship rights are baked into US copyright law, and an EULA cannot take them away. -
Quote:At some point a long time from now you'll realise how utterly ludicrous it is to be trying an email campaign to Valve, so they'll use their own money to brawl over City of Heroes with NCSoft because you emailed them a bit.
You're asking them to make a simply colossal effort, which is what this is, for very little return. You know what, I think they're going to do nothing and continue to be mind bogglingly wealthy without the effort.
Fight and you may die; run, and you'll live... at least a while. And dying in your beds, many years from now, would you be willing to trade all of that time from this day to that, for one chance, just one chance, to come back here and tell our enemies that they may take away our lives, but they'll never take our FREEEEDOM! -
Quote:Honestly, it never occurred to me to charge for them myself. As I said, I can do proof of concept, but I don't have a way to do everything consistently yet. Different parts or poses would likely be very problematic until the system was researched fully.I would totally be up for that...what would you charge honestly? My Brute main toon would look amazing as a 3D figure.
What I'm going to do is try to grab OGLE captures of all my characters in a couple of poses, so when the lights go off I have the models at least. I have all the time in the world to figure out how to 3D render them after that.
Anyone who wants to do likewise, I'm available if they have any questions about how to make OGLE work, although all I know really is how to get it to work for me. I'm not an OpenGL expert per se. -
Quote:Well, yes and no. They were not exactly acknowledging a player in the credits, exactly.I think Arcanaville is the only player acknowledged in the GR credits.
Since it no longer matters and the NDA expired a while ago, I was asked to develop the custom critter valuation system for the AE under contract to Paragon Studios. I offered to work with the devs for free but that sort of thing can be dangerous: as a contractor, everything I produced would be covered under work-for-hire. Volunteering it, I could still potentially assert IP rights like copyright.
So there was a short period of time where I wasn't an employee of Paragon Studios, but did work for them and with them on one small project.
There's two funny stories about that which I've never been able to tell until now. The first one is that to test the work we were doing they had to give me access to a server that had a build with those changes. That server was referred to as the Vendor server, which probably means different contractors used it at different times for similar testing. That server eventually became what we call today the Beta server, separate from the Test server.
So I had access to the Beta server before anyone else, and I was seeing stuff from I18/Going Rogue on it. But I didn't really play with any of it: I strictly testing my thing. But the funny part was that because I had access to the I18 beta server for months, no one thought to regrant me access for I18 closed beta. So, the last day I logged into the vendor server was I believe March 27th. On April 2, closed beta testing for I18 started. And no one told me. I didn't find out I18 beta testing was actually running until the third week of April, when a dev asked me a question about something he thought I was testing. Because I was already enabled on the server, no one submitted my name for I18 beta. Which means no notice went out. Which means I didn't get an email. Which also means no one enabled me onto the Beta boards. I basically got into I18 beta late, because none of the devs thought to invite me into it, because they figured I was already there.
This was not the first time I failed to get into a closed beta on day one because everyone assumed I was already in, by the way. It was not the second time, or the third time, or the fourth time, sigh.
The other funny story... I think I'm going to save that one for later. Its not *as* funny right now, but it probably will be later.
One more thing about the credits. Being listed on the Going Rogue credits page is pretty cool. But what's really cool is something else. When I was up there at Paragon Studios for the Freedom focus group preview, Matt Miller (Positron) showed me a wall in their offices. Its the Going Rogue wall and it has a Going Rogue theme painted onto the entire wall. Players who have visited the studios may have seen it. Apparently every developer that contributed to Going Rogue signed that wall, and he asked me to sign it as well. So my signature is on the Going Rogue wall, along with all the other developers at Paragon Studios.
Now that's really cool. The sad part is it completely skipped my mind to take a picture of it when I was there, and at the moment no one has access to the building to take one for me. I hope that changes, before the end. It may sound sappy, but for me, to be told that the devs felt I was, in some small way, a part of the team that helped make this game we all love, meant a lot to me. And The Wall seemed to say that even more strongly than the game credit did. I didn't show it then, but my signature is rather shaky because of that.
Thanks Matt, and pohsyb who I think originally pitched me to Positron and I worked with on the code side, and Castle and Black Scorpion who I worked with on the data side, and everyone else who QAed the thing. The system is precisely the way I laid it out originally except for one thing a QA person suggested (kinda sarcastically, but he was absolutely correct) which was that we should not give full XP to all-melee critters, which was possible even with my melee penalty. The 40% maximum value for all-melee critters is the result of that specific suggestion. That closed an exploit loophole, so thanks to that guy whose name escapes me at the moment and may want to remain anonymous in any case. Nobody can think of everything and that includes me: all MMO development is a collaboration. Also thanks to the producers who oversaw this project, Bruce Harlick, who oversaw it for about eight seconds; Art Min, who oversaw it right up to the point where I actually started to do real work, and Nate Birkholtz aka Second Measure who I had the chance to meet in person and is a great person. Not just great in that he's a really nice guy, but also great in that he's such a ginormous person I was looking straight up to make eye contact. If they added Second Measure as an NPC in the game they would have had to scale the real Second Measure down or the Zeus Titans would be too afraid to engage him. -
Zwillinger has those stored in his hat.
Quote:It's funny how many people think you are.
I think you would've made a pretty good dev, though.
Why would you think I was a shooting victim? -
So a couple years ago the subject of City of Heroes figurines came up. The problem was, apparently, that the models used for CoH were not conducive to making figurines: they aren't actually solid models, and don't form solid structures. So it was basically impossible to make figurines from the models we use in the game. So we were told.
Well, I didn't think it was impossible. I happen to have a Makerbot, and I did experiments last year to see what was possible in terms of extracting 3D information from the game, and then printing it.
Honestly, the results were rather rough:
But over time, I refined both the model clean up process and the printing process, and I now believe it would have been possible with a slightly better printer (the Cupcake I have wasn't quite precise enough in my opinion) and a slightly better Blender jockey (I know the math inside and out, but I'm not a 3D modeler).
It was getting much better:
That's *almost* good enough in my opinion. I think it would have been possible to make professional grade City of Heroes figurines of our characters. However, real life intruded and I had to temporary shelve my Makerbot. I was planning on revisiting this idea with a more advanced printer next year. I may still do that eventually, but with the game shut down the impetus to do so may fade. In either case, whether I figure out the best way to do this, there won't be a Paragon Studios to pitch the idea to anymore.
But I thought I would share anyway. If anyone wants to know how I got the models, I used OGLE. It should be searchable through google, and what it does is extract 3D models from OpenGL software. This isn't a pigg-dive, those two models were basically ripped from the OpenGL driver as the game ran.
It ain't that simple. You end up with your character, and all the geometry surrounding them, and you'd be surprised what invisible geometry is floating around. But sift through it, and you'll see your character there. Probably microscopically small because of the strange scaling that the game does to things. Scale it up, and you have the two models shown above.
I stuck them into Blender, fixed them up a bit, and specifically used some Blender filters to make the cape "thicker" so it would print (the thing is essentially two-dimensional in the game). Ditto the skirt, which is actually a real skirt in that print: its not solid it actually wraps around the legs. Then its just STL convert and send to the 3-D printer of your choice.
And spend a month calibrating the best possible print.
But yeah, if we had survived through 2013, I would probably be bugging Paragon to figure out a way to offer these. That second model took maybe two bucks of ABS to print. Factoring in the cost of my time, and it only cost about twelve thousand dollars to make. -
-
Quote:All incarnates become Freem buffed.By the way, if any of you devs still have any capability to manipulate the in-game world, how about unleashing a little anarchy? Level bumps for everyone, free incarnate content for all, 9999 Empyrean merits (or whatever the maximum number is), maybe make all set IOs purchasable from a vendor for 1 inf apiece... things like that... c'mon, you know it'd be a great way to go out.
-
-
-
I've never actually self-identified as a Scrapper. My main, Lady Arcana, is actually an Energy/Energy blaster. But this forum has always felt like home on the forums. This is the forum where so much testing was done, so much analysis, so much question and answer. More than any other forum, I think this is where we figured out the game, how it worked, how it didn't work, what we could do in it.
My first Scrapper, Violet Rumble, did the journeyman's work for a lot of my analysis of the game. She tested defense powers for me. She tested the streakbreaker. She tested damage mitigation in general. She performed the tests that led to "Arcanatime" and the luck problem Bella mentions above and helped me arrive at the correct formula for tohit (although I was trumped there by Stargazer).
Personally, I've always thought Controllers matured to the strongest archetype in the game. But there always seemed to be a much more visceral pleasure in destroying enemies playing a Scrapper than a Controller. Controllers always felt more "diffuse" in their destruction. Scrappers were always up close and personal, and in your face destruction. And because of that Scrappers always had a special place in my gaming heart.
I remember my "Take the Arcanaville Super Reflexes Challenge" thread involving SR and the Storm Palace, that eventually led to the creation of the Rikti Crash Site challenge, that became the Storm Palace challenge, and then the RWZ challenge. It was always open to anyone and anything, but in all its incarnations it was always known as just "The Scrapper Challenge." That was always the benchmark for performance: what could a well played well built scrapper do.
But what I remember the most about the Scrapper forums is that moreso than any other forum, Scrappers tended to be neither defensive nor superior about their accomplishments. We did not claim to be better than any other player or archetype because of what we could do, and we joyously took it as a challenge to figure out how to do what others could do rather than covet that performance.
There are always exceptions. But what I will remember most is that in my opinion, Scrappers led the way on a lot of fronts both in gameplay and metagaming, but did so in a fun way and not an obnoxious way.
And that's why this forum was always home. -
Quote:They killed internal projects before without shutting down the entire company, although none to my knowledge got to this stage.I wonder if the shutting of Paragon Studios had something to do with the unnamed project that some of the developers etc. had moved over too. NcSoft may have decided they were going to stop putting funds into the project, and instead of just shutting it down, shut down all of PS. (I.E. throwing the baby out with the bath water.) Shear speculation on my part.
-
Quote:I have an alternate theory. There were people within the NCSoft corporate structure that liked CoH, and some that didn't. For a long time we were protected by the ones that liked it, even though we only made a small amount of money for them. With the added stress of NCSoft's current financial numbers, those people couldn't protect the game anymore from the ones that wanted to shutter the game, whether it made money or not, as a distraction from their other products more critical to their bottom line. There is now one less game vying for server resources, bandwidth, admin time, support and maintenance time, and one less game competing with their other games. Even selling the game to a third party might keep a game alive that was diverting players from their other games.My friends and I were contemplating this at dinner tonight. We theorized that perhaps NCSoft is having unexpected cash flow problems just when the CoH license was due for renewal. So the corporate suits decided to shut down Paragon ASAP and channel the money into another project (say, GW2).
It's entirely speculative, but of the theories we've got it seems like the best fit.
-D
Everyone assumes that its ludicrous to shut down a profitable or even break-even business endeavor, but the practical reality is that its not always that simple, and even when it is business decisions are rarely made by singular authoritative figures. They are often ultimately shaped by a large number of people all with their own agendas.
This happens at every scale of a business. I can't tell you how many times a small CoH game change happened that the players blamed on a particular dev, when it turned out to be more the case that eight voted this way and seven voted that way, and the eights won. Some *body* made this decision at NCSoft, but I guarantee there were lots of voices in that guy's ear, and this wasn't entirely as sudden a thing as it appears. It was probably a tipping point thing.
Its easy to want to find singular causes for large events, but often there isn't one. The finances changed. The voices changed. The wind direction changed. And suddenly it seemed obvious today that Paragon Studios should be shuttered when it seemed obvious yesterday that it shouldn't be. That's how these things often happen.
Don't assume everyone at NCSoft wanted us closed down today. Don't assume everyone at NCSoft wanted us to succeed yesterday.