Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Brother Jonathan posted:

From Bioware's Star Wars: The Old Republic, a problem with the character scripting:

https://www.youtube.com/watch?v=PiczLzXRIjQ

I kept expecting her to suddenly vomit a stream of rancid whiskey. Seriously, she looks like she's drunk and trying desperately not to vomit.

Adbot
ADBOT LOVES YOU

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Lord Lambeth posted:

Both Skyrim and New Vegas were pretty solid but then again I always install those unofficial patches that the community pops out.

I have no idea what caused it but New Vegas would do some...unusual things on certain computers. And some of the bugs weren't replicable.

I always encountered bugs where things would get caught in the scenery. Like, I'd see a deathclaw's head and hands sticking out of the side of a cliff and he would just kind of run around, trying to get at me. I could shoot its arms but nothing else and its body would just kind of fall forever if I killed it or something. I don't really understand what was going on. A few Mr. Gutsy things got stuck too and sometimes bark scorpions would inexplicably fall half through the ground. It was adorable to watch them run impotently in place, trying to get to me to murder my face off.

I had that happen less after I upgraded to windows 7, but for whatever reason, now the NPCs will sometimes really, really gently caress up their pathing at random. They'll decided that I'm on the opposite end of the world and suddenly turn around and chase "away" from me. It isn't retreating either, I've seen things with full health do it. A few times I've seen them just kind of run around totally at random as their pathing went insane.

I tried using the cowboy repeater and it would do...odd things. The reload animation would start BEFORE I fired it, so it will look like I randomly just decided to blast a bullet randomly off into the sky. Stupidest thing is that sometimes it hits the target I was aiming at anyway.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Farbtoner posted:

The XCOM remake has a randomized naming system for missions, Operation Dark Darkness amused me way more than it should have.

It doesn't really count as a bug, but yeah, the naming system is really what makes the game special, I think.

I had a heavy named Dong Song. The nickname he earned? Boom-boom.

Think about that for a moment and the piles of sexual slang it contains.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Robert Denby posted:

Judging by this video of "Forza 4", things didn't get much better with the sequel.

I almost want to buy this just to watch the physics system poo poo itself for hours on end.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug
I don't think things like that are things that they deliberately meant to happen but just kind of started happening during development. But they left them in because it doesn't exactly hurt anything, especially in a game like San Andreas. That game wasn't exactly the most grimdark superserious game in the world.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Haruharuharuko posted:

Hah! Everytime I play that fight Snake gets shot in the dick repeatedly and nowhere else I have no idea.

That reminds me of playing Oblivion on a really really hard difficulty and going up against archers. You'd need to wail on them so long you'd end up having like 50 arrows sticking out of you. 1/3 of them would be at odd angles in random places, 2/3 of them would be in your dick.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug
The best Dwarf Fortress bug will always be geese laying iron thrones.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Lumberjack Bonanza posted:

I'm surprised there aren't more people calling out EA on using such small memory spaces for scores yet. Sure, you won't see them break too often, but you can't tell me Jon Bois is the only man on the planet who buys sports games to gently caress with them.

Generally speaking from a programming standpoint it's always best to use the smallest amount of memory possible, especially in complex programs like games. The AAA industry really does constantly try to wring every last bit of performance out of a computer as possible. Which is, of course, part of why edge cases cause games to gently caress up. Under most normal use you'll never see a score over 255. Deliberately breaking the game leads to those edge cases.

Though I can understand why such things happen I personally hope that game programmers never stop programming the way they do because even games that function 99.9% of the time still can produce hilarious glitches when somebody looks hard enough.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Wiggles Von Huggins posted:

I just have trouble understanding how a controller can get in. I understand that once you are in you can program stuff, but I imagine controller input as just button mashing and my mind can't make sense of it (because a computer accomplishes it).

So I guess I am just gonna have to watch Hackers again and let Zero Cool show me the way.

OK, some super technical explanation because I'm studying computer science and am supposed to know this poo poo.

Everything in computers is nothing but zeros and ones. Absolutely everything. Older consoles did not have RAM (random access memory) like your computer ultimately has. Not really, anyway. This is because there was a severely limited amount of memory available so programmers not only had tighter control of it by necessity but tightly controlled it in general. Now, mind that the game's code as well as the game's data are loaded into memory. This is just how computers work; everything exists in memory from the program's code to its data to even where the program is. You can access all of it. A program is basically just a long set of instructions. Everything in a program ultimately boils down to machine code, which is a rather small set of explicit commands that a processor can actually do, which is once again just zeros and ones. Computers are really just stupid machines that do whatever you tell them.

Now, remember that I said "the entire program." That includes how to process input. When you push a particular button an electronic signal ultimately lands in the program which then sees that and goes "OK, do this." That is stored in memory somewhere. However, as memory is severely limited the control of where crap was stored was very tight. During that era of programming the limitations on space were extreme so there was hard limits put on lots of things, up to and including where instructions were stored. Basically what they're doing to get access to rewriting the memory is flooding the program with too many things going on at once to process. This is less of an issue with current consoles. Now, the Super Nintendo had memory measured in kilobytes. This is the most important thing to consider. kB are tiny now that we have memory in the gigabytes. That ran out fast so programmers had to tightly control what went where and plan for anything that could possibly happen "within regular use."

Note "within regular use;" these are things that would never happen within regular play. However, people deliberately breaking the game using sufficient technical know how can figure out where exactly the input is stored to be processed and then figure out the sequence of actions to break it. Once again, these are sets of actions that will just flat out not ever happen in regular play and it's why you see them doing absolutely ridiculous poo poo when trying to do this sort of thing. Much of it relies heavily on examining the code of the game. Once again there were severe size limitations and the games themselves were ultimately fairly small. If memory serves they were also generally written using raw machine code even up to the SNES area to make the programs even more compact. This also makes it much easier to analyze the code as anybody with enough knowledge of how the SNES works and machine code could figure out exactly what happens and where.

Now that is the key part; once the code has been analyzed you can figure out how to break it. It looks like magic but what they're doing is planned out very specifically ahead of time to force the program into a state that they can use to overwrite the game within memory. Remember that I said every program is a set of instructions that exists in memory. Once they have the pointer that writes controller instructions into memory pointing toward the game code they can input a crap load of ones and zeros in and write a totally new program. They aren't forcing the game to do something unusual they are literally rewriting its code.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

President Ark posted:

It also helps that early consoles really didn't have any sanity checking. More recent consoles have some stuff that keeps an eye on everything and goes "Woah, hey, what the gently caress is going on here, this poo poo ain't right" and either backs out or force-ends (crashes) the program if it starts doing really wacky poo poo. But because early consoles had so little memory as ToxicSlurpee says, they couldn't affort to have that sort of sanity checking in place so if you could figure out how to crash them just so they basically had to accept whatever happened after that and couldn't say "This poo poo ain't right."

This was especially prevalent in the Pokemon games because on top of being on the Gameboy (which was extremely limited in terms of memory), they also had a shitload of stuff going on at once and things that needed to be loaded into memory at once - the "you have to manually switch PC boxes when one fills up" thing wasn't just bad UI design, it literally had to be done like that because having free access to all the boxes all the time was too much for the gameboy. So they have a lot of weird poo poo going on in order to make sure that it can all run, and as a result are a lot more vulnerable to things happening in even slightly the wrong order, and then there's no sanity checking so you wind up with poo poo like item duping and missingno and rewriting the game.

Actually this reminds me of one thing I meant to mention but totally forgot to that's actually a major, major component of this. The severe limitations on memory meant that various chunks of memory were generally used for more than one purpose. Typically in current programs memory isn't freed up until the program knows that it's totally done with it. However, when you're working with a few KB of memory you very frequently will need to anticipate what all can possibly be happening and, more importantly, what will not be happening. Notice that glitches like in that video almost always involve riding Yoshi with something in his mouth while holding a block and then other stuff like dropping shells at very specific X coordinates. What this ultimately does is shoves the memory pointers out of whack by forcing the game to track more things that would normally happen under typical circumstances. Of course another major difference now is that when you have billions of bytes you're tracking it's effectively impossible to tightly control all of it. It's easier to tightly control everything and keep track of what is going on when you're dealing with KB. So, the same chunk of memory that tracks the thing in Yoshi's mouth might be getting used for something totally different when there isn't even a Yoshi on the level.

So when you have people using timing and glitches to force the game to have Mario holding a block while Yoshi is holding something in his mouth you can screw up memory pointers. You would not under normal circumstances, for example, need to track the item Mario is holding, the item in Yoshi's mouth, what Yoshi is currently swallowing, and the egg Yoshi is making GBS threads. It is unlikely the game was actually programmed to handle that situation so when it happens poo poo can go wrong but the program is so simple and the memory control so tight the poo poo that is going wrong will go wrong in very predictable ways that can be used in all sorts of crazy ways. That's also part of why you see these sorts of things happening on older consoles. Newer consoles are basically just differently-shaped computers.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Esroc posted:

Seems kind of stupid now, but back when I was a kid I was considered magic by the other kids for figuring out how to do that.

"Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clark

That's the funny thing about computers; if you have enough technical know how you can do all sorts of mind bending things with computers. It looks like sorcery to onlookers but those that know computers go "well you see..." The really great thing though is that it's still impressive no matter which side of that fence you happen to be on.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

CzarChasm posted:

I think, for me at least, hearing/reading the stories is so much better than playing SS13 or DF because my mind makes such a vivid picture that frankly, the games themselves are far too simple graphically to convey. Like the stories about the robot butts that kept screaming butts (or was it FART?) over the PA. Or the horrors or The Cluwne. I might be mixing stories.

The Cluwne was part of the butt bot story. They said butt not fart but you have the idea right.

The problem with SS13 and DF is that the stories they generate are fantastic but sometimes you could play them for dozens of hours and see nothing all that interesting happen. In the case of DF the thing that made the stories interesting was the imagination of the person writing them and how the details got filled in. Most of the time not much interesting happens. Other times a farmer punches a gigantic sand monster in half and immediately goes back to planting mushrooms.

Or, you know, an engraver creating a carving of a carving of a square.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Testekill posted:

Or you get Planepacked. It includes 73 images of itself and is made out of 14 different materials.



http://dwarffortresswiki.org/index.php/Planepacked

The most surreal thing I ever had happen was when my engravers decided to engrave absolutely nothing except carvings of this one time an elf had its tooth broken by a giant. I looked up the elf in the history and he did literally nothing else important except fighting the giant. Neither of them won; they just bashed on each other a bit and then wandered off apparently but the giant did manage to smash the elf's tooth out of his head.

Fast forward in history until you get to my fort and the entire thing was just covered in engravings dedicated to that one incident. I got kind of sick of it so I decided to decorate with statues instead. The first one? The same goddamned fight. I have no idea why my dwarves were so incredibly fixated on that elf's tooth but there you have it.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Haruharuharuko posted:

Dwarf Fortress is the loving best.:allears:

Now that I think about it, and this serves as more of a glitch, one time the merchants showed up with a Large. It wasn't a large anything, just a regular ol' Large. I bought it and built a fancy meeting hall around it. It was a pretty good Large.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Lord Lambeth posted:

At this point wouldn't it be more sensible to say "I'm gonna blow up if this and only this touches me" or does programming not work that way.

All code is terrible. All programming is nothing but duct tape and bubblegum that barely works. Nobody can plan for all the possible things that can go wrong.

Really you just get poo poo functional and then fix the crap that inevitably goes wrong as best you can.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Shady Amish Terror posted:

People in Japan to this day have a deep cultural stigma against morticians; people who handle the dead are still sometimes seen as being subhuman. At one time gravediggers and morticians had entire small villages away from regular society because they were considered contemptible and unclean and unfit to exist in society...except everybody eventually dies someday and then SOMEONE has to deal with it. It's a necessary job that people are very grateful to have taken care of, it's just that historically people tended to hate and fear the everloving gently caress out of anybody who would actually do it for them.

Eh, that isn't exactly unique to Japan. I've heard stories of things like the child of a mortician having trouble finding a date in high school because "hey, come over to my house! I live above a funeral home" creeps people right the gently caress out. For the most part people don't like to be reminded that they're going to die and "that guy literally puts dead people in the ground for a living" is a reminder that you too will some day be a corpse. The local gravedigger being a creepy weirdo that everybody avoids is a pretty common thing in a lot of literature.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug
It's actually boots attached to a subway hat.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Cardiovorax posted:

And we're never going to, either. Software engineering on that scale is 50% art, 10% black magic and maybe 40% a matter of actual technological skill. You can't really formalize the process of hand-crafting an essentially unique product almost entirely from scratch every single time.

That's a tragically low percentage of black magic for any program at all, ever.

rodbeard posted:

Microsoft Windows has more than 100 times as many lines of code as the space shuttle. Engineering software is relatively simple because from a software perspective going into space is mostly just a lot of repeated calculations and device I/O, exactly what computers are designed to do. Video games are the result of somebody bastardizing a scientific device into pretending to play tennis. It's a lot more complex but it doesn't kill anyone if you screw up.

The biggest snag in games is that you have to keep to a frame rate that doesn't look choppy. You can do the number crunching in parallel in the background but parallel processing is its own bastard entirely. For stuff like going to space all you really need is for somebody to be able to just go "machine, I need this number" and for the machine to puke it out in a reasonable amount of time. What is "reasonable" varies a lot but on the space shuttle they can probably wait 20 seconds pretty much always. All that matters is that the right number comes out.

A major problem with any dev at all right now is that it's cheaper to just go "meh, hack it together and make it work" than it is to take the time and effort to actually do it properly. Software architecture is really really boring and takes time and planning to do properly. Far as I can tell the AAA games industry is openly hostile to that kind of thing as the shareholders demand cash. Granted the games industry also has a totally different dev cycle than a lot of software engineering; in traditional engineering you have companies that have been using the same software from the same company since 1978 because it loving works. A game's lifecycle is far, far shorter and will probably be totally abandoned in a few years. Games made 20 years ago that people still play are really the exception rather than the rule.

It also doesn't help that developers have a really bad tendency to bike shed.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug
It's been going around for a while but this article is pretty much the most true thing ever written.

https://www.stilldrinking.org/programming-sucks

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

The Merkinman posted:

Dealing with people not in your field is terrible, but you're the expert.

As funny as that was it made me scream inside pretty much the entire time. I've had basically that conversation far too many times.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Zoig posted:

Yeah, its more like, you have (45 + 40 + 37 + 30)/4 as your average power level. Removing the Item gives you (45 + 40 + 37)/3 which increases the average by a significant amount.

A friend explained to me that mostly its done this way because it is easier to program than doing it so that it calculates a empty slot properly. Perhaps its because you have to write a exception for when a slot is empty so you don't get divide by zero? I dunno.

A null check isn't hard. Count the number of item slots and use that as the divider. If there is no item add zero. Or have a placeholder item that represents "no item equipped" that always returns zero when you're adding up an average power level. That sort of thing is actually stupidly easy.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

HaB posted:

Bioware posted a blog, apparently in response to that article, or more accurately- what they thought the article was going to be about (since they hadn't seen it before posting), defending their company culture, etc. but reading that article and knowing a few game devs personally, their company culture pretty much sounds like par for the course across the industry. I do fintech development and was pondering a move into games, but I'm WAY too old for 80 hour / week crunch times at this point in my life.

I had to explain to a couple of interviewers why, despite making games in my spare time sometimes, I don't even bother applying to game dev jobs. It's simple really; I don't want to work for beans 80 hours a week in places with a high cost of living. From what I've read developers are vacating the industry like crazy because they can make twice the money for half the hours in places with a quarter the cost of living. Most of the skills transfer over and the core skill for programming is raw math and logic anyway no matter what you're programming. Not game dev has a bottomless appetite for competent developers while game dev has increasingly ended up running on fresh graduates with few responsibilities going OH MY GOD I CAN MAKE GAMES FOR A LIVING OH WOW THIS IS SOOO COOOOOOOL. Then a few years in they realize it sucks and they can have a much better, less stressful, but more boring life literally anywhere else.

But instead of thinking hey maybe we could change this the mainstream industry is still nonstop death marches for garbage salaries. I think that's part of why indie games are on the rise and new ones keep going viral. They're actually good and part of that is because they probably aren't made by a stressed out 22 year old being forced to work 90 hours a week.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Facebook Aunt posted:

Games are weird. I remember brand new AAA games being like $60 in the late 90s. And they are still about $60 now. The games today are usually made with a much bigger staff, better art, and just generally better production values. (Only the manuals are much, much worse than they were back in the day.)

I guess the relatively low inflation can partly be explained by higher sales volume, and they probably save a bundle not including cool printed manuals anymore, but some of it is on the backs of employee mistreatment.

Artists are far cheaper than programmers and tend to be specialized to things specific to game art if they're game art devs. But yeah it's really weird that the cost of a game hasn't kept up with inflation. Then again this is also a time when two guys in a garage can make a game that goes viral and makes a few million.

I think that a lot of the budget of AAA games is also in marketing, community engagement whatever the gently caress that is, and advertising. Even so you can get a horde of artists on the cheap but programmers are expensive if you want good ones so you have really pretty games that are so broken they are only technically playable coming out on the reg. But yeah selling games increasingly digitally has reduce the cost of actually producing copies. Physical distribution will probably vanish before too long.

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Jeza posted:

Yeah, it is pretty cool how game prices have basically remained static for 20 years. And taking into account inflation and whatnot, they've actually gone down semi-significantly, to the tune of almost 50%. And now with digital distribution and big seasonal sales and such, the price of gaming is waaaaaaay down. Part of the reason piracy has really declined I guess.

Piracy of games is down because things like Steam and GOG make it stupidly easy to get the game. Steam even applies updates for you. More importantly it doesn't come with any viruses or anything. Downloading something from a torrent can be kind of a crapshoot. It might also not even be a recent version or what the file says on the tin. Who the gently caress knows? Of course there are big companies trying to gently caress it up to increase their profits but so far Steam and GOG have so far proven immovably solid. They're massively convenient and they just work.

Compare that to streaming of TV shows and movies where every loving company wants to have their own service and stuff appears and vanishes on the main ones so often you have no clue what's even available at any given moment. No way in hell you'll pay for a subscription to all of them especially when you don't even know if you'll be able to watch what you want to see at any random moment. Then sometimes stuff will just plain not be available anywhere for streaming even if it's popular. Piracy of that stuff is up massively last I heard specifically because it can be so difficult to find legitimately people get frustrated, give up, and roll the dice with torrents.

Adbot
ADBOT LOVES YOU

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

Booourns posted:

My favorite thing in Red Alert was changing the V2 rocket attack to have infinite range then giving the dogs that attack so the instant they spawned they turned into a rocket and flew across the map to the nearest infantry to maul them
Tesla dogs were pretty fun too, they just turn into lightning as soon as they get close to something

You know, I think now I want a game where completely insane things like that are just what the game is all about.

Defending your base with lightning dogs? Seems reasonable.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply