Overall Game Perfomance state - and why GGG is in silenced mode about it?
In my last project, we develop a simulator from scratch and was the fastest in the industry, it was done in plain ANSI C. Then, the managers wanted more capabilities, an interface, they didn't want something simple like FLTK, no, must be Qt for who knows.
Also, incorporate the development of other research teams to "unify platforms", managers might read in some book of strategies. It became a behemoth of C, C++, fortran, .net and python scrips it took 8 hours to compile during the night and cross the fingers there is not a syntax error. In that conditions development was so painfully hard and slow and it was always broken and something to fix. But that was a good thing. We intentionally broke it from time to time to justify our budget. Last edited by Frostball73#2220 on Apr 13, 2024, 5:18:11 PM
|
|
" By the way, the code generated from the both examples are completely identical on gcc and clang. So the form of using or not using multiple returns is defined by the code convention, standards and guidlines in your team / company. " Exactly! This was just a reply to the dude with the similar message posted in his srceenshot. "GGG-style code" (LOL) was added on purpose to make it less readable and understandable. And I warned about that right in my message directly. Someone else gaslighted on it. In addition to the DoNothing() code, the string encoded as BASE64 with decrement applied on all values so even if you convert hex to ascii you can't see the original BASE64 string. Just a trick. " Anyway it was offtop I guess. Fortunately GGG edited a lot of messages in this topic and I hope we won't turn on the road of hateness again. Just be polite to each other. Keep in mind PoE is just a videogame. Last edited by cursorTarget#1174 on Apr 14, 2024, 4:29:56 AM
|
|
" https://stackoverflow.com/a/4192249 https://en.wikipedia.org/wiki/Coding_conventions https://en.wikipedia.org/wiki/Naming_convention_(programming) Last edited by Silverpelt#6095 on Apr 14, 2024, 6:51:20 AM
|
|
" Everyone knows that and it's not the point. While if's may be slightly easier for noobs who are not familiar with the language, any oversimplification is just an extra layer of bloat for experienced programmers that can even lead to unnecessary complexity. The super inefficient strchr scanning is a different story. That code could be replaced with one single instruction. However, the worst offender was the printf which was essentially exploitable code and one of the primary concepts you're taught to avoid. That's my perspective after reviewing, and it's pretty much all I can share without risking being reported again, and as I demonstrated earlier, it was clearly easy to resolve without needing a reveal. Overall, a good example on how you can turbocharge software without a trip to the hardware store. |
|
" *function call (puts()), not instruction. I see you still don't understand the reason I posted that shit there. Nobody asked the way to print C-string on the srceen in the single line. Last edited by cursorTarget#1174 on Apr 14, 2024, 9:02:40 PM
|
|
" Nope, you got it wrong. Take another look at my post as I clearly talked about strchr. That's like using 30-ish steps when you could just use one. And the part about printing was just to point out that you wrote exploitable code. |
|
You must be trolling, aren't you? This code is INTENDED to be inconvinient, slow, badly readable, unsafe and breaking conventions. I warned about that right from the start. It was NOT intended just to print a single line in stdout or create usable BASE64 codec.
The whole concept of that piece is: DoNothing(DoSlow(DoBadly(DoUnsafe))); puts("S...."); Is it so hard do understand? You clearly cut the piece of text out of the context and started to discuss how bad the bad code is. Thanks. Last edited by cursorTarget#1174 on Apr 14, 2024, 10:02:06 PM
|
|
" You missed the point entirely. Go back to his original post and read past the link you keep commenting on. The argument was that just like the provided code example is a bunch of bloat, so is Unreal Engine. The engine GGG uses for PoE is tailor-made for the needs of the game whereas with UE you'd have to adjust the game to fit into the confines of the engine. It's not that hard. The opposite of knowledge is not illiteracy, but the illusion of knowledge.
|
|
This...this thread is going places. What place, I dunno, but it certainly is going places.
As to placing blame on the players because they don't know wtf they are doing, I dunno man. Software is fickle. Sometimes you make a rig that just works, all the parts work well, and you have very few problems, like mine. It's old as dirt (9 years), yet it can play almost everything at 1440p/60 (thanks to a newer 3080). And that is the key. Once you try to up the resolution to 4k, all bets are off for any hardware config at holding a stable framerate, especially if you go over 60 fps. Wo Long was a good example of this. People were having problems left and right, and it seemed to me that most were due to folks trying to play in 4k. The engine simply sucked and couldn't handle 4k very well, regardless of specs. Anyhow, carry on, carry on, as if nothing really matters... Last edited by jdp29#1389 on Apr 14, 2024, 10:37:55 PM
|
|
" That's quite a story! Crystal clear naming of functions and variables but somehow the code was bad because it was obfuscated? Well, you can refute to that now if you want, I don't mind, and maybe with some luck it could be a candidate for the IOCCC? " Nope, but you missed the thread entirely before it was nuked by support. " That's also quite a story! " So what exactly are you saying? That GGG's engine is superior to UE and that it's impossible to create a POE clone in UE? |
|