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.
 
Thoatse
Feb 29, 2016

Lol said the scorpion, lmao

Toops posted:

Look I don't wanna crosswords with you, a greed to diss a greed, kay?


I don't want to be an rear end soul either so I'll let buy gones be buy gones and we can forget a bow tit.




https://i.imgur.com/9iZkoPG.gifv

Adbot
ADBOT LOVES YOU

CrazyTolradi
Oct 2, 2011

It feels so good to be so bad.....at posting.

In regards to the whole idea that SC is about emergent gameplay, emergent gameplay is only as good as the gameplay mechanics that are in place that allow it. Star Citizen 3.0 is like putting a bunch of kids in a room that only has gameboards with all the pieces missing and toys that are either broken or just not complete.

Jobbo_Fett
Mar 7, 2014

Slava Ukrayini

Clapping Larry

ManofManyAliases posted:

Amazon bought the whole 3.4 (or 3.5 ... whichever it was) tree free and clear. It's not Crytek's anymore.

But CIG signed a document stating they would only use Crytek's engine.

SPERMCUBE.ORG
Nov 3, 2011

Space commies are th' biggest threat t' red-blooded American Freedom we got in th' future. So me and my boys got to talking over a few hot dogs the other day and this is what we came up with...

CrazyTolradi posted:

In regards to the whole idea that SC is about emergent gameplay, emergent gameplay is only as good as the gameplay mechanics that are in place that allow it. Star Citizen 3.0 is like putting a bunch of kids in a room that only has gameboards with all the pieces missing and toys that are either broken or just not complete.

Chris Roberts is pioneering emergent development. It will emerge soon. Soon.

Ubik_Lives
Nov 16, 2012

G0RF posted:

Also, it only just fully hit me today the irony of CIG’s plight with respect to Squadron’s relationship to Crytek and Coutts. CIG must have made explicit declarations to Coutts about Squadron as a discreet standalone game, considering that Squadron alone was used as collateral for the loan. Yet to Crytek and elsewhere, Squadron is part of Star Citizen.

Is the Coutts loan still outstanding? Would we know if they have paid it off? I thought that was a pay-day loan to get them to the convention period, and the UK gaming tax credit was part of the collateral, which they were supposed to get in the fall.

If that loan is still around, and CIG have taken the tax credit without paying the loan off, Coutts must have a pretty itchy trigger finger about now.

boviscopophobic
Feb 5, 2016

Ubik_Lives posted:

Is the Coutts loan still outstanding? Would we know if they have paid it off? I thought that was a pay-day loan to get them to the convention period, and the UK gaming tax credit was part of the collateral, which they were supposed to get in the fall.

If that loan is still around, and CIG have taken the tax credit without paying the loan off, Coutts must have a pretty itchy trigger finger about now.

boviscopophobic posted:

The charge is not satisfied according to Companies House, and F42 UK also altered their accounting period to conveniently add an additional 6 month delay before they have to release any financial statements including the loan. :laffo:

Ubik_Lives
Nov 16, 2012

Deep down I knew the answer before I'd even asked the question, but yet, as with all things related to Star Citizen, I can't understand how they can keep failing at everything they do.

EmesiS
Feb 5, 2016

Ubik_Lives posted:

Deep down I knew the answer before I'd even asked the question, but yet, as with all things related to Star Citizen, I can't understand how they can keep failing at everything they do.

yeah, it's kind of exclusive to them.

Toops
Nov 5, 2015

-find mood stabilizers
-also,

kilus aof posted:

I think the key problem here is they tried to make all these crazy designs without any upper management thought on how feasible they were, how they interacted with each other, how much of a network load it would make, the load on a client computer, development time, suitability in the confines of their technology choices and the technology choices themselves. With all of that being excused by 'fidelity', 'no cheating', 'never been done before' and 'no publishers'. And the biggest rationale was the thought if any design didn't work out they could just go for a simpler design. Which is the critical problem with Star Citizen, they have no simpler designs.

A simpler design isn't the consequence of a complex design failure, it's its own design with a host of required considerations. So when their designs fail they have nothing. It's back to the drawing board with multiple years wasted on designs which yielded nothing. And that's is why you get the emphasis on "emergent gameplay" because nothing works and it will years minimum before a system that works is implemented.

Nice post, and I'll just add this: Even if your feature design is simple, such as
code:
{"air": 1.0}
Instead of
code:
 {"nitrogen": 0.7809, "oxygen": 0.2095, "argon": 0.0093, "carbonDioxide": 0.0004}
that in itself doesn't automatically make the code simple. See folks, the hard part of programming isn't writing code that does a thing, it's the code that glues them all together, sends messages between all the different systems, and generally makes them work in concert to form a cohesive system, so that every function knows what to do, when to do it, and has the information it needs when they get called on.

It doesn't take programming experience to know that SC's code is a colossal goat-gently caress in this regard. You can feel it. Your intuition knows something is wrong down in the guts. Overall low framerates, massive game locks on the order of seconds, ridiculous collision/clipping issues, unresponsive UI, unresponsive actions (ahem doors, ramps), poor maintenance of state (doors and ramps again), etc. The engine is choking and sputtering like an old lawnmower that sat out in the yard naked all winter, because the information is poorly manicured, and the inter-system messaging is hosed.

If you're interacting with a system in SC, chances are 1 of 2 things are true:
1. That system doesn't have the info it needs and locks up waiting for someone to kindly send it along
2. The opposite; That system gets loving HADOKEN'd with a poo poo-heap of data, most of it totally superfluous, and has to dig through it with a fine-toothed comb to pull out a couple params

In my experience writing game code, this is much harder to get right than most other types of applications, for two reasons, which form a deadly binity:
1. Game code is inherently stateful
2. That state needs to be analyzed, compared with player input, altered, and bundled up into a frame that the video card won't choke on, as fast as loving possible.

You can't wait. If you do, you block the main update loop and boom, the game locks up, chugs, and the hapless player thinks "the gently caress is this poo poo?" Every compute cycle is precious.

A good SC example is when a ship spawns on the pad I'm standing on. Literal megabytes of unfathomably complex data structures describing every nuance of every component of the overdesigned fidelity chariot blast into your game client like the loving Kool-Aid Man, sending waves of panic and abject terror through every corner of your operating system.

Now, let's think about what happens here. This is massively over-simplified, and I added some details to help explain how this data is used, but when some rear end in a top hat spawns an Idris, the server will send you a hulking data structure that looks something like this:
code:
{
  entityType: ship,
  name: Idris,
  model: models\ships\idris\chassis\idrisChassisModel.dat,
  position: {x: 2910, y: 99, z: 194729},
  positionType: world,
  components: [
    {
      entityType: mainEngine,
      name: idrisMainEngine01,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: -20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: rcsThruster,
      name: idrisMainEngine,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: 20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor001,
      model: models\ships\doors\idris\idrisOuterDoorModel.dat,
      position: {x: -150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor002,
      model: models\ships\idris\doors\idrisOuterDoorModel.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: ramp,
      name: idrisMainRamp,
      model: models\ships\idris\ramps\idrisMainRamp.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
... etc

Every one of those "components" are separate entities with their own 3d model. Each one has to be unraveled and loaded into objects (unmarshalled), their 3d model information retrieved from disk and loaded into ram/videoram, assembled according to their relative position, and plonked down into the game world at so-and-so position. As you can imagine, the more poo poo you have to unravel and load, the longer it takes. This is what pisses me off so much about Chris Roberts and his "FIDELETY" obsession. There is a very clear point where there's just too much information to process and your game locks up, the servers poo poo themselves, and the whole thing collapses under its own weight.

So what do you do? Well, you can make the ships simpler, which ain't gonna happen in a million hand-waving lifetimes, or you can defer the processing in order to unblock the main update loop. But that adds complexity, and now you have a state problem. Is the ship there or isn't it? Do I load each entity in its own thread? Well, how do I know when the ship is "assembled?" Surely some will load faster than others which means each ship component will "pop in" when it's good and god drat ready. And do you really think that'll fly in The Chris Robert Fidelity Funhouse? OK, so do I wait for every component's model to load in memory before it's allowed to visually spawn? Well if so, now every component has to report its state to some main-brain statekeeper who stands there with a clipboard checking boxes, then says yep, everyone is present and accounted for, let's glue all these 3d models together and start rendering it. What if we need to add a Hairy Roberts Drinkblaster 8000 to the bridge? How many lines of code will that touch?

This is why SC is getting worse, not better. They barely know what each system will do, and they' haven't even considered how they will communicate. Chris and his ramshackle crew of "game designers" are jamming panicky, poorly-conceived features down the devs' throats, who are forced to plop brittle, rushed //TODO: Fix This code into this witch's steaming poo poo cauldron. And man, I don't need to tell you, it's boiling over.

And so Star Citizen the computer program is just getting worse, and worse, and slower, and buggier, and choppier, and crashier as the bloated, abominable kludge slowly grinds to a halt and eats itself like Pizza the Hut.

This all happened because CIG did it full-on gently caress backwards. Your game designers need to have a really solid idea of not only what the systems are, but how the systems logically interact in order to build a gamified, cohesive logical flow that results in a fluid, contiguous causal map that resembles a game. You need to strip your features of all fluff, avoid details like the plague, keeping them simple, stark, and easy to understand. You need to build and assemble them as quickly as possible so you can prove your concept, and adjust the design when your assumptions don't all come true. Then you iterate, redesign, re-write, and hopefully, if you kept things simple, this isn't a massive undertaking. Code has to be designed to be flexible, but only flexible in the right ways. Too much flexibility kills your code because it's easier/cleaner to write something concrete. Death by a thousand ifs. And it really, really helps when you can do this without having to waste time on premature minutiae, trillions of polygons, sizzle-reel polish, drink machines, jacket layering, loving ARGON, etc.

Now the final coup-de-grace, which brings it home to my original point: Even if you do all this right and keep it simple, things that look simple on paper often blow up when you start coding. Simple components (in this case, "game systems") can fall apart at the seams when they have to start playing with others. But CIG doesn't have this problem, because they've never done anything simple. They still don't even know what their game systems are supposed to do, let alone how to code them individually, let alone how to assemble them into a working game, let alone how to make that game fun.

In closing, Star Citizen is not good, it's not bad. It's nothing. A huge. loving. Nothingburger.

Toops fucked around with this message at 07:27 on Jan 12, 2018

G0RF
Mar 19, 2015

Some galactic defender you are, Space Cadet.

CrazyTolradi posted:

In regards to the whole idea that SC is about emergent gameplay, emergent gameplay is only as good as the gameplay mechanics that are in place that allow it. Star Citizen 3.0 is like putting a bunch of kids in a room that only has gameboards with all the pieces missing and toys that are either broken or just not complete.

“Emergent Gameplay” is just another way to spell a “Plenty Meager Game”.

(Or “My Elegant Pregame”, “Game Empty, Enlarge”, “Lame Gyp Agreement”, “Me Empty, Gal Enrage”, “Lame Gem, Neater Gyp”, “Lamer Man, Get Ye Peg”, or “Let Enema Gyp Gamer”. There’s all kinds of warning signs, really.)

G0RF fucked around with this message at 07:31 on Jan 12, 2018

Dusty Lens
Jul 1, 2015

All Glory unto the Stimpire. Give up your arms and legs and embrace the beautiful agony of electricity that doubles in pain every second.

CrazyTolradi posted:

In regards to the whole idea that SC is about emergent gameplay, emergent gameplay is only as good as the gameplay mechanics that are in place that allow it. Star Citizen 3.0 is like putting a bunch of kids in a room that only has gameboards with all the pieces missing and toys that are either broken or just not complete.

The boxart of Breath of the Wild and the gameplay a torn up corner from someones moldy old Chutes and Ladders.

Virtual Captain
Feb 20, 2017

Archive Priest of the Stimperial Order

Star Citizen Good, in all things forevermore. Amen.
:pray:
I need that old gif/mp4 of the commando(s) dancing on the exploding starter ship.

Bootcha posted:

WANT

Gimmie your favorite physics moments in SC, in video/gifphy formats.

Solarin
Nov 15, 2007

Toops posted:

Nice post, and I'll just add this: Even if your feature design is simple, such as
code:
{"air": 1.0}
Instead of
code:
 {"nitrogen": 0.7809, "oxygen": 0.2095, "argon": 0.0093, "carbonDioxide": 0.0004}
that in itself doesn't automatically make the code simple. See folks, the hard part of programming isn't writing code that does a thing, it's the code that glues them all together, sends messages between all the different systems, and generally makes them work in concert to form a cohesive system, so that every function knows what to do, when to do it, and has the information it needs when they get called on.

It doesn't take programming experience to know that SC's code is a colossal goat-gently caress in this regard. You can feel it. Your intuition knows something is wrong down in the guts. Overall low framerates, massive game locks on the order of seconds, ridiculous collision/clipping issues, unresponsive UI, unresponsive actions (ahem doors, ramps), poor maintenance of state (doors and ramps again), etc. The engine is choking and sputtering like an old lawnmower that sat out in the yard naked all winter, because the information is poorly manicured, and the inter-system messaging is hosed.

If you're interacting with a system in SC, chances are 1 of 2 things are true:
1. That system doesn't have the info it needs and locks up waiting for someone to kindly send it along
2. The opposite; That system gets loving HADOKEN'd with a poo poo-heap of data, most of it totally superfluous, and has to dig through it with a fine-toothed comb to pull out a couple params

In my experience writing game code, this is much harder to get right than most other types of applications, for two reasons, which form a deadly binity:
1. Game code is inherently stateful
2. That state needs to be analyzed, compared with player input, altered, and bundled up into a frame that the video card won't choke on, as fast as loving possible.

You can't wait. If you do, you block the main update loop and boom, the game locks up, chugs, and the hapless player thinks "the gently caress is this poo poo?" Every compute cycle is precious.

A good SC example is when a ship spawns on the pad I'm standing on. Literal megabytes of unfathomably complex data structures describing every nuance of every component of the overdesigned fidelity chariot blast into your game client like the loving Kool-Aid Man, sending waves of panic and abject terror through every corner of your operating system.

Now, let's think about what happens here. This is massively over-simplified, and I added some details to help explain how this data is used, but when some rear end in a top hat spawns an Idris, the server will send you a hulking data structure that looks something like this:
code:
{
  entityType: ship,
  name: Idris,
  model: models\ships\idris\chassis\idrisChassisModel.dat,
  position: {x: 2910, y: 99, z: 194729},
  positionType: world,
  components: [
    {
      entityType: mainEngine,
      name: idrisMainEngine01,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: -20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: rcsThruster,
      name: idrisMainEngine,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: 20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor001,
      model: models\ships\doors\idris\idrisOuterDoorModel.dat,
      position: {x: -150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor002,
      model: models\ships\idris\doors\idrisOuterDoorModel.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: ramp,
      name: idrisMainRamp,
      model: models\ships\idris\ramps\idrisMainRamp.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
... etc

Every one of those "components" are separate entities with their own 3d model. Each one has to be unraveled and loaded into objects (unmarshalled), their 3d model information retrieved from disk and loaded into ram/videoram, assembled according to their relative position, and plonked down into the game world at so-and-so position. As you can imagine, the more poo poo you have to unravel and load, the longer it takes. This is what pisses me off so much about Chris Roberts and his "FIDELETY" obsession. There is a very clear point where there's just too much information to process and your game locks up, the servers poo poo themselves, and the whole thing collapses under its own weight.

So what do you do? Well, you can make the ships simpler, which ain't gonna happen in a million hand-waving lifetimes, or you can defer the processing in order to unblock the main update loop. But that adds complexity, and now you have a state problem. Is the ship there or isn't it? Do I load each entity in its own thread? Well, how do I know when the ship is "assembled?" Surely some will load faster than others which means each ship component will "pop in" when it's good and god drat ready. And do you really think that'll fly in The Chris Robert Fidelity Funhouse? OK, so do I wait for every component's model to load in memory before it's allowed to visually spawn? Well if so, now every component has to report its state to some main-brain statekeeper who stands there with a clipboard checking boxes, then says yep, everyone is present and accounted for, let's glue all these 3d models together and start rendering it. What if we need to add a Hairy Roberts Drinkblaster 8000 to the bridge? How many lines of code will that touch?

This is why SC is getting worse, not better. They barely know what each system will do, and they' haven't even considered how they will communicate. Chris and his ramshackle crew of "game designers" are jamming panicky, poorly-conceived features down the devs' throats, who are forced to plop brittle, rushed //TODO: Fix This code into this witch's steaming poo poo cauldron. And man, I don't need to tell you, it's boiling over.

And so Star Citizen the computer program is just getting worse, and worse, and slower, and buggier, and choppier, and crashier as the bloated, abominable kludge slowly grinds to a halt and eats itself like Pizza the Hut.

This all happened because CIG did it full-on gently caress backwards. Your game designers need to have a really solid idea of not only what the systems are, but how the systems logically interact in order to build a gamified, cohesive logical flow that results in a fluid, contiguous causal map that resembles a game. You need to strip your features of all fluff, avoid details like the plague, keeping them simple, stark, and easy to understand. You need to build and assemble them as quickly as possible so you can prove your concept, and adjust the design when your assumptions don't all come true. Then you iterate, redesign, re-write, and hopefully, if you kept things simple, this isn't a massive undertaking. Code has to be designed to be flexible, but only flexible in the right ways. Too much flexibility kills your code because it's easier/cleaner to write something concrete. Death by a thousand ifs. And it really, really helps when you can do this without having to waste time on premature minutiae, trillions of polygons, sizzle-reel polish, drink machines, jacket layering, loving ARGON, etc.

Now the final coup-de-grace, which brings it home to my original point: Even if you do all this right and keep it simple, things that look simple on paper often blow up when you start coding. Simple components (in this case, "game systems") can fall apart at the seams when they have to start playing with others. But CIG doesn't have this problem, because they've never done anything simple. They still don't even know what their game systems are supposed to do, let alone how to code them individually, let alone how to assemble them into a working game, let alone how to make that game fun.

In closing, Star Citizen is not good, it's not bad. It's nothing. A huge. loving. Nothingburger.

drat good post. They need to poo poo can this project already, it isn't gonna get better and is suffering needlessly

Solarin
Nov 15, 2007

Thanks Chris for helping me better understand a publishers POV when they cancel a project that's in a death spiral

alf_pogs
Feb 15, 2012



isnt this guy who built the time machine from DARK

Awesome!
Oct 17, 2008

Ready for adventure!


gently caress off with your claw im trying to sleep here

ewe2
Jul 1, 2009

Toops posted:

Now the final coup-de-grace, which brings it home to my original point: Even if you do all this right and keep it simple, things that look simple on paper often blow up when you start coding. Simple components (in this case, "game systems") can fall apart at the seams when they have to start playing with others. But CIG doesn't have this problem, because they've never done anything simple. They still don't even know what their game systems are supposed to do, let alone how to code them individually, let alone how to assemble them into a working game, let alone how to make that game fun.

In closing, Star Citizen is not good, it's not bad. It's nothing. A huge. loving. Nothingburger.

:five: Spelling it out like that is a devastating critique.

Mangoose
Dec 11, 2007

Come out with your pants down!

Toops posted:


A good SC example is when a ship spawns on the pad I'm standing on. Literal megabytes of unfathomably complex data structures describing every nuance of every component of the overdesigned fidelity chariot blast into your game client like the loving Kool-Aid Man, sending waves of panic and abject terror through every corner of your operating system.


Your entire post is amazing, but I wanted to highlight this part. Almost pissed myself laughing.

Mangoose
Dec 11, 2007

Come out with your pants down!

Streetroller posted:

Man I gotta be honest.
I don't even think I can take the hate of this poo poo.

It's not that it surprises me or that I can't handle it on a personal level, but it's that those sick individuals are a surrounded by the disabled in their real lives.

This is how they really think? It's disgusting to think about because I've met angels and saints compared to me with disabilities -- and I've seen those people get taken advantage of by assholes like that.

I dropped literal tears for those people. Not trolling, it makes me want to vomit.

Can you even imagine how bad these people must feel about themselves already when comments like theirs don't even make a blip on their emotional radar? Imagining their vast depression is MY snuggie.

Or they could just be idiots, I guess. Hateful, lovely sociopaths, but in that case we can always take comfort in the fact that they're getting scammed out of all their money by a loving thumb

Truga
May 4, 2014
Lipstick Apathy

Toops posted:

code:
 {"nitrogen": 0.7809, "oxygen": 0.2095, "orgone": 0.0093, "carbonDioxide": 0.0004}

Fixed your air composition, you're welcome

Truga
May 4, 2014
Lipstick Apathy
Also, I'm glad we live in an age of 4-5ghz cpus, but chris roberts' games still have the same fps they had on a 286!

Ponzi
Feb 21, 2016


DEPORTED FROM FLAVOR TOWN

ICSA 67 LOSER
Fun Shoe

Brazilianpeanutwar posted:

Brian may's let himself go.....

Fun fact - Brian May has a Phd in Astrophysics, so technically he IS a scientist, as well as a drat fine musician.

And he's married to Angie Watts (sorry - is that doxxing?)

Streetroller
Jun 11, 2016

Mangoose posted:

Can you even imagine how bad these people must feel about themselves already when comments like theirs don't even make a blip on their emotional radar? Imagining their vast depression is MY snuggie.

Or they could just be idiots, I guess. Hateful, lovely sociopaths, but in that case we can always take comfort in the fact that they're getting scammed out of all their money by a loving thumb

Got depressed, went bar hopping... Picked a fight with a local.

I got footage.
https://www.youtube.com/watch?v=llVGO-os2s4

SomethingJones
Mar 6, 2016

<3

Streetroller posted:

Man I gotta be honest.
I don't even think I can take the hate of this poo poo.

It's not that it surprises me or that I can't handle it on a personal level, but it's that those sick individuals are a surrounded by the disabled in their real lives.

This is how they really think? It's disgusting to think about because I've met angels and saints compared to me with disabilities -- and I've seen those people get taken advantage of by assholes like that.

I dropped literal tears for those people. Not trolling, it makes me want to vomit.

They aren't lashing out at you, they are lashing out at the world. You just happen to be the thing representing the real, harsh world to them right now.

trucutru
Jul 9, 2003

by Fluffdaddy

Toops posted:

Nice post, and I'll just add this: Even if your feature design is simple, such as
code:
{"air": 1.0}
Instead of
code:
 {"nitrogen": 0.7809, "oxygen": 0.2095, "argon": 0.0093, "carbonDioxide": 0.0004}
that in itself doesn't automatically make the code simple. See folks, the hard part of programming isn't writing code that does a thing, it's the code that glues them all together, sends messages between all the different systems, and generally makes them work in concert to form a cohesive system, so that every function knows what to do, when to do it, and has the information it needs when they get called on.

It doesn't take programming experience to know that SC's code is a colossal goat-gently caress in this regard. You can feel it. Your intuition knows something is wrong down in the guts. Overall low framerates, massive game locks on the order of seconds, ridiculous collision/clipping issues, unresponsive UI, unresponsive actions (ahem doors, ramps), poor maintenance of state (doors and ramps again), etc. The engine is choking and sputtering like an old lawnmower that sat out in the yard naked all winter, because the information is poorly manicured, and the inter-system messaging is hosed.

If you're interacting with a system in SC, chances are 1 of 2 things are true:
1. That system doesn't have the info it needs and locks up waiting for someone to kindly send it along
2. The opposite; That system gets loving HADOKEN'd with a poo poo-heap of data, most of it totally superfluous, and has to dig through it with a fine-toothed comb to pull out a couple params

In my experience writing game code, this is much harder to get right than most other types of applications, for two reasons, which form a deadly binity:
1. Game code is inherently stateful
2. That state needs to be analyzed, compared with player input, altered, and bundled up into a frame that the video card won't choke on, as fast as loving possible.

You can't wait. If you do, you block the main update loop and boom, the game locks up, chugs, and the hapless player thinks "the gently caress is this poo poo?" Every compute cycle is precious.

A good SC example is when a ship spawns on the pad I'm standing on. Literal megabytes of unfathomably complex data structures describing every nuance of every component of the overdesigned fidelity chariot blast into your game client like the loving Kool-Aid Man, sending waves of panic and abject terror through every corner of your operating system.

Now, let's think about what happens here. This is massively over-simplified, and I added some details to help explain how this data is used, but when some rear end in a top hat spawns an Idris, the server will send you a hulking data structure that looks something like this:
code:
{
  entityType: ship,
  name: Idris,
  model: models\ships\idris\chassis\idrisChassisModel.dat,
  position: {x: 2910, y: 99, z: 194729},
  positionType: world,
  components: [
    {
      entityType: mainEngine,
      name: idrisMainEngine01,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: -20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: rcsThruster,
      name: idrisMainEngine,
      model: models\ships\idris\engines\idrisMainEngineModel.dat,
      position: {x: 20, y: 0, z: -500},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor001,
      model: models\ships\doors\idris\idrisOuterDoorModel.dat,
      position: {x: -150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: outerDoor,
      name: idrisOuterDoor002,
      model: models\ships\idris\doors\idrisOuterDoorModel.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
    {
      entityType: ramp,
      name: idrisMainRamp,
      model: models\ships\idris\ramps\idrisMainRamp.dat,
      position: {x: 150, y: 20, z: 200},
      positionType: rel
    },
... etc

Every one of those "components" are separate entities with their own 3d model. Each one has to be unraveled and loaded into objects (unmarshalled), their 3d model information retrieved from disk and loaded into ram/videoram, assembled according to their relative position, and plonked down into the game world at so-and-so position. As you can imagine, the more poo poo you have to unravel and load, the longer it takes. This is what pisses me off so much about Chris Roberts and his "FIDELETY" obsession. There is a very clear point where there's just too much information to process and your game locks up, the servers poo poo themselves, and the whole thing collapses under its own weight.

So what do you do? Well, you can make the ships simpler, which ain't gonna happen in a million hand-waving lifetimes, or you can defer the processing in order to unblock the main update loop. But that adds complexity, and now you have a state problem. Is the ship there or isn't it? Do I load each entity in its own thread? Well, how do I know when the ship is "assembled?" Surely some will load faster than others which means each ship component will "pop in" when it's good and god drat ready. And do you really think that'll fly in The Chris Robert Fidelity Funhouse? OK, so do I wait for every component's model to load in memory before it's allowed to visually spawn? Well if so, now every component has to report its state to some main-brain statekeeper who stands there with a clipboard checking boxes, then says yep, everyone is present and accounted for, let's glue all these 3d models together and start rendering it. What if we need to add a Hairy Roberts Drinkblaster 8000 to the bridge? How many lines of code will that touch?

This is why SC is getting worse, not better. They barely know what each system will do, and they' haven't even considered how they will communicate. Chris and his ramshackle crew of "game designers" are jamming panicky, poorly-conceived features down the devs' throats, who are forced to plop brittle, rushed //TODO: Fix This code into this witch's steaming poo poo cauldron. And man, I don't need to tell you, it's boiling over.

And so Star Citizen the computer program is just getting worse, and worse, and slower, and buggier, and choppier, and crashier as the bloated, abominable kludge slowly grinds to a halt and eats itself like Pizza the Hut.

This all happened because CIG did it full-on gently caress backwards. Your game designers need to have a really solid idea of not only what the systems are, but how the systems logically interact in order to build a gamified, cohesive logical flow that results in a fluid, contiguous causal map that resembles a game. You need to strip your features of all fluff, avoid details like the plague, keeping them simple, stark, and easy to understand. You need to build and assemble them as quickly as possible so you can prove your concept, and adjust the design when your assumptions don't all come true. Then you iterate, redesign, re-write, and hopefully, if you kept things simple, this isn't a massive undertaking. Code has to be designed to be flexible, but only flexible in the right ways. Too much flexibility kills your code because it's easier/cleaner to write something concrete. Death by a thousand ifs. And it really, really helps when you can do this without having to waste time on premature minutiae, trillions of polygons, sizzle-reel polish, drink machines, jacket layering, loving ARGON, etc.

Now the final coup-de-grace, which brings it home to my original point: Even if you do all this right and keep it simple, things that look simple on paper often blow up when you start coding. Simple components (in this case, "game systems") can fall apart at the seams when they have to start playing with others. But CIG doesn't have this problem, because they've never done anything simple. They still don't even know what their game systems are supposed to do, let alone how to code them individually, let alone how to assemble them into a working game, let alone how to make that game fun.

In closing, Star Citizen is not good, it's not bad. It's nothing. A huge. loving. Nothingburger.

All those words to say that you don't anything about game development.

Here is a hint Einstein: you layer the code on top.

trucutru fucked around with this message at 09:08 on Jan 12, 2018

Ghostlight
Sep 25, 2009

maybe for one second you can pause; try to step into another person's perspective, and understand that a watermelon is cursing me



Streetroller posted:

Got depressed, went bar hopping... Picked a fight with a local.

I got footage.
https://www.youtube.com/watch?v=llVGO-os2s4
this is what life is about

PederP
Nov 20, 2009

Ugh. JSON. I feel grief.

SomethingJones
Mar 6, 2016

<3

Streetroller posted:

Got depressed, went bar hopping... Picked a fight with a local.

I got footage.
https://www.youtube.com/watch?v=llVGO-os2s4

lol

Either he knew that you were a totally cool guy or that you had some secret controls to dispense electricity at him

Abuminable
Mar 30, 2017

Now, aside from the Abuminable, business goes on as usual.

SomethingJones posted:

lol

Either he knew that you were a totally cool guy or that you had some secret controls to dispense electricity at him

I think it's because he heard about the scorched earth lawsuit SR is dishing out and he don't want none of that. You mess with Roller, you gonna get a beat down.

SomethingJones
Mar 6, 2016

<3

Hav posted:

For fork's sake.



I suck at matting.

lmao

Mangoose
Dec 11, 2007

Come out with your pants down!

Streetroller posted:

Got depressed, went bar hopping... Picked a fight with a local.

I got footage.
https://www.youtube.com/watch?v=llVGO-os2s4

You say "piece of poo poo" like it's a bad thing in that video, but that makes no sense because my mom called me that my entire childhood and SHE LOVES ME OK!? YOU CAN'T EVEN PLAY BASEBALL

tuo
Jun 17, 2016

1st Rule of Thumb: You do not talk about Derek Smart

2nd Rule of Thumb: You DO NOT talk about Derek Smart

3rd Rule of Thumb: If anyone says "stop" or goes limp, that doesn't mean the crunch is over!

4th Rule of Thumb: Only two releases per year

5th Rule of Thumb: Actually, gently caress that, only one release per year

6th Rule of Thumb: No consoles

7th Rule of Thumb: A sale goes on as long as it has to, to pay next months fees and wages

8th Rule of Thumb: If it's your first day at the cult, you have to pledge!

no_recall
Aug 17, 2015

Lipstick Apathy

Nice meltdown. :smuggo:

Palpek
Dec 27, 2008


Do you feel it, Zach?
My coffee warned me about it.


So how's that Crytek lawsuit going? Are they still developing SC? Is it out yet?

Toops
Nov 5, 2015

-find mood stabilizers
-also,

PederP posted:

Ugh. JSON. I feel grief.

Ok so I have a theory about this, let's test it out.

If you don't like json, you're either a neckbeard brogrammer and prefer yml, or a dusty old-timer who still thinks xml wasn't a huge mistake.

Semi-serious follow-up question, is there a node framework for properties files yet?

Truga
May 4, 2014
Lipstick Apathy

Palpek posted:

So how's that Crytek lawsuit going? Are they still developing SC? Is it out yet?

2 4 weeks. They haven't really started yet. Yes, 3.0 is the best AAA game since she was a little girl

NVB
Jan 23, 2010

Grimey Drawer

Streetroller posted:



So Here's The Deal: I'm suing Chris Roberts for consumer fraud in small claims court.
Everything he's ever said will be used against him as a public figure, and his litany of LLC shell companies don't protect him.
He either comes to Jersey to defend himself, or get's a default judgment of being a fraud.

loving blow me.

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

Caught up with teh thread, man S R you got dem brass balls. Good luck with pwning chrisco roberto and exposing him for what he is. The end part of the vid had me thinking of the scene from the movie Due Date at the western union. You gonna give thumbface a good ol' fashioned beat down.

https://www.youtube.com/watch?v=If9Q_s2onCk&t=164s

no_recall
Aug 17, 2015

Lipstick Apathy
This popped up on my YouTube randomly and I believe it's a tell all.

https://www.youtube.com/watch?v=dndx4OnfXaY&t=388s

Also, nobody at CIG is gonna say no to Chris Almighty.

e:

no_recall fucked around with this message at 10:39 on Jan 12, 2018

Mr.Tophat
Apr 7, 2007

You clearly don't understand joke development :justpost:

Thoatse posted:

Allow me to play doubles advocate here for a moment. For all intensive purposes I think you are wrong. In an age where false morals are a diamond dozen, true virtues are a blessing in the skies. We often put our false morality on a petal stool like a bunch of pre-Madonnas, but you all seem to be taking something very valuable for granite. So I ask of you to mustard up all the strength you can because it is a doggy dog world out there. Although there is some merit to what you are saying it seems like you have a huge ship on your shoulder. In your argument you seem to throw everything in but the kids Nsync, and even though you are having a feel day with this I am here to bring you back into reality. I have a sick sense when it comes to these types of things. It is almost spooky, because I cannot turn a blonde eye to these glaring flaws in your rhetoric. I have zero taller ants when it comes to people spouting out hate in the name of moral righteousness. You just need to remember what comes around is all around, and when supply and command fails you will be the first to go.

Make my words, when you get down to brass stacks it doesn't take rocket appliances to get two birds stoned at once. It's clear who makes the pants in this relationship, and sometimes you just have to swallow your prize and accept the facts. You might have to come to this conclusion through denial and error but I swear on my mother's mating name that when you put the petal to the medal you will pass with flying carpets like it’s a peach of cake.

tl;dr: don't lick a gift horse in the mouth

This is a twine roast.

Adbot
ADBOT LOVES YOU

Mr.Tophat
Apr 7, 2007

You clearly don't understand joke development :justpost:

AP posted:

It sad it ends with a bunch of suicides.

3

  • 1
  • 2
  • 3
  • 4
  • 5