-
Posts
810 -
Joined
-
Quote:Which was exactly my point. I think the reason C++ lacks them is that it's harder to distribute and integrate well-crafted services than in Java because of design decisions around memory management.C++ still lacks the amount of standard (but poorly implemented as you said) things that Java has, allowing fast prototyping.
Anyway, I'm letting the thread get back to its original, intended tangent at this point. :P -
Quote:I disagree. C *only* has malloc/calloc/realloc/free; those are the standards. C++ has new and delete, but also many different varieties of wrappers on top of them (and of course malloc/free themselves). In many cases, when integrating frameworks, you have to disentangle the thing that was built on top of new/delete and then rewrap it for the benefit of the next layer in the stack. C++ operator overloading is a bit of a double edged sword here because it's possible and very tempting to make your own syntactic sugar that is almost, but not quite, entirely unlike the one your neighbor made.It's *exactly* the same problem in C, and yet C is used for large projects. new() and delete() are just encapsulation of malloc and free with init clean functions. Plus you have STL containers that do help you to properly implement standard features such as Maps, Lists and Dynamic arrays.
The STL containers are neat, but asking everyone to be as smart as Stroustrup in order to make rational re-usable classes is unrealistic to say the least. One of Java's biggest successes is that it assumes the average implementor is much, much more naive than the language designers.**
Automatic Reference Counting. It's a language feature built on top of notational conventions in Objective-C that allow the toolset to automatically generate the appropriate retain/release semantics, so the developer doesn't have to do any explicit memory management but you still get deterministic object lifetime semantics. It advertises being both headache-free and GC-pause-free at the same time, which is a huge win for mobile development.
** Which bothers to no end those implementors who are actually smarter than the language designers. -
Quote:Try replacing the period at the end of Arcanaville's sentence with a question mark. Or, here:Oh yeah, I'll can what I do... in a zip file !
(nice typo ^^ produce a few more and you'll end up the subject of a Zero Wing video. As a tribute, of course.)
"Can X even move the needle much at all?" where X is "what you do in any number of hours on a weekend"
On the subject of C++, I love the language; it's still the only OOP implementation I know where I can "feel" how the code I write will be represented on the machine. (Java is close, but the lack of determinism in object life cycles hurts.)
But C++ has a huge Achilles' heel when it comes to large projects, and that is the lack of a standard mechanism for managing heap objects. Smart pointer? std::auto_ptr? Manual new/delete with clear ownership? Something custom? While it's obviously a solvable problem locally, when you start to integrate large systems with different ideas of "standard" you get messy interfaces, difficult bugs, and general lack of developer efficiency. Because of this, frameworks become difficult both to write and to integrate, and you end up with C++ seeming very support-poor when it comes to modern application development.
I want to learn more about ARC because it seems like something of that nature could be applied to C++ also, and if it were adopted broadly and incorporated into all the tooling, it could really go a long way toward solving this issue. But I don't know enough about ARC yet to say for sure, and of course filtering something like that through the C++ specs would take considerably longer than Apple just declaring it by fiat.
Sorry for the thread-jack, BillZ. -
Quote:I used to dislike Obj-C for its syntactical confusion between function calls and method calls, but once I got over that, I started to see quite a bit of inner beauty to the language architecture. It seems to neatly sidestep a lot of Java's heaviness in reflection, for example.PS: writing the engine in Objective-C would also be a very interesting experiment, albeit mostly for the potential for meta architectural novelty than anything else.
I'm not aware of any projects running Objective-C server side though. Is there a language implementation that would run on Linux? Xserve got the axe a few years ago, so I'm not sure what hardware you would run. (I once asked what Apple uses internally to run automated tests that require server side OS X, and was told that they use HP racks running custom, non-public OS builds.) -
Quote:Actually, I wasn't quite sure whether you were referring to cases in the data where values were interpreted differently depending on context, i.e. "fooBar:1" when you are fighting in Grandville means you do a backflip animation while "fooBar:1" when on the last map of the first villain respec trial means you do a double-twirl and end by planting a kiss on your current target's forehead.Assuming I'm an idiot will only cause me to conclude you're one. Because every *other* programmer in this thread that has worked on something larger than "Hello World!" I'm pretty sure understood what I meant, which was that every data element in the power schema represents a data field which is processed by the game engine, each in a completely different way. Especially within the context of everything else I've said in the thread.
I don't know if such cases exist (I no longer have much more than passing knowledge of how the game's internal mechanics work) but I've definitely seen real world cases of it. Mostly they seem to happen because people don't want to change a database schema when they add new functionality, so they take parts of the parameter-space that are currently unused and make them mean something different. -
Quote:While I agree with you, I have a great deal of personal sympathy for the devs on this one. Having now tried to implement a game of my own, I'm very aware of my own limitations, and giving players direct access to (potentially quite flawed) mechanics can feel a little like letting the mike boom drop into the camera frame in a movie.The actual answer to the question is that the original game designers believed as a matter of game design philosophy that it was harmful for players to understand the game mechanics, because it was felt that this would lead them to focus on game mechanics themselves instead of playing the game as presented. They wanted us to enjoy the game for its qualitative features instead of its quantitative ones.
Personally, I think this was terribly misguided.
Put another way: if you look at CoH as a strategy game, then failing to reveal mechanics seems like a huge blunder, but if you look at it as an interactive story-telling experience, it starts to make more sense. -
Quote:Back in 2000, I was tasked with implementing security for a micro feature within a larger software application. I put in a basic authentication handshaking protocol, and stubbed out the encryption part of it with a very dumb, very obviously reverse-engineerable algorithm. I won't even repeat it here, it was so ridiculous.Overkill is underrated. I actually implemented a system back in 2000 that used 4096 RSA signed 512 hashes just because, rather than the specified minimum 1024 RSA 128 bit hash, because the system was only intended to be in use for four years. Its still in use today, and will probably pass security audit until sometime around 2100.
Why 4096 RSA and 512 hash? 512 was as high as my libraries went, and 8192 RSA took too long to compute.
Five years later, the stub had still never been replaced with real encryption the way I had intended. That year users found a way to trivially gain access to the micro feature... not by reverse engineering my ridiculous toy algorithm, but by simply swapping versioned components from other installations, defeating the higher level logic that decided whether the encryption handshaking needed to happen at all.
There's probably more than one lesson in there, somewhere. -
Quote:I realized earlier today (and confirmed a few minutes ago) that the wrapper I made for the binary fails if the path has spaces in it. Rookie mistake! Anyway, a fix is forthcoming.Big news: We have a Mac version that is ready for testing. Once we've verified that it's working correctly, we'll update the page on cohtitan.com to reflect its availability.
http://cit.cohtitan.com/downloads/SentinelPlus.tgz
It should be as simple as dragging the app out of that archive into the folder that you want to save your characters into, then double-clicking the app while City of Heroes is running and you have the info window up. The OS should prompt for your credentials as it requires administrator access to run.
Also, due to the way I'm requesting the permissions required to run the program, the output files are written with root ownership. I might be able to find another way to do that, so if this becomes an issue for people, let me know. -
-
The shutdown is three months away. That's more than some players devote to the game at all, if they don't happen to stick around.
-
I suspected as much. You know, I respect NCSoft's right to make product decisions, but this is just a really awful customer experience.
-
Quote:I had heard as much, but I just couldn't believe NCSoft would do such a thing. I managed to re-up for VIP status on Friday; I guess I slipped in under the wire.You can't resubscribe anyways. They shut that down last Friday.
That is just... I have no words. -
Well, perhaps I should explain that what I was trying to do was purchase points, since I don't have any. The market told me there were none for sale.
-
Hi,
I re-upped (paid for VIP status) as soon as I heard the news about the game shutting down. I'd been away from the game for several years, so some of the newer systems, like the Paragon Market, are new to me.
Can someone summarize the current status of options for purchased goods for City of Heroes?
- VIP status upgrades. Can you buy them? If not did I just get lucky when I re-subbed?
- Paragon market. Is any of it working? If not, is there now no way to unlock some of the purchasable content there such as new power sets?
- Any other purchasable good options that I don't know about because I've been gone so long?
Thanks,
- Mind -
It's been so long that I had forgotten that I did most of my posting on this forum under a different name, Protea. Then for a while I was KeepDistance. I changed to Mind Forever Burning when the Mission Architect came out because I thought it was a better pseudonym to write under, but I stopped playing the game not long after that, so... yeah. Some of you were probably wondering who the heck this person was who was getting all misty eyed over a forum they'd never posted in.
-
-
-
I'm in. Hopefully I'll have some time between now and November's end to centralize my wealth.
-
Yeah, I dunno how much good it did. The place felt very empty - there was no one at the front desk; Zwillinger just happened to be nearby when I rang the bell. I didn't see anyone else (though the main part of the office was further back behind a badge door). But I guess I at least fed one person
Also, PPS, I'm sure I missed some names above. It's been three years since I played actively.
Where's EvilRyu? I feel like we should have one last flame war before all the lights go off. -
PS. I went by Paragon Studios this morning with breakfast treats for the team. After a somewhat awkward introduction, I spent a few minutes talking to Zwillinger. Good times. It sounds like they will land on their feet.
-
I re-subbed just so I could post a bit more before everything comes down.
Fulmens, Nethergoat, SwellGuy, TopDoc, and especially Arcanaville, you made the game so much more fun for the five years-ish that I played.
Burn Rate still has 2B inf on him. Not sure what I'll do with it. -
Quote:Can't you just fight in Warburg?If anyone with a few blueside 50s on Virtue wants to try and farm these, drop me a PM
I play redside exclusively, but IIRC the timer's 5 minutes and just cycling through the alts I can get into RV would pretty much cover that.
I thought about trying this with the wife's account, but since we only play redside it'd be a ton of work to set up. -
-
-
I've been 3-boxing crab spiders and so far my results indicate that farming +3 lieutenants is the sweet spot for xp/min. I do believe there are teams that can farm higher levels just as effectively - for example, Smurphy's fire/kin corr + ss/fire brute combo with outside /kin support was farming bosses pretty nicely. But for most teams I agree, +4 bosses are just too slow to be worthwhile.