How the fuck did Chris Sawyer program 95% of Rollercoaster Tycoon in x86 assembly?

How the fuck did Chris Sawyer program 95% of Rollercoaster Tycoon in x86 assembly?
What kind of wizard level programming skills are needed?

Attached: starpointe.jpg (3500x1840, 2.15M)

Other urls found in this thread:

prog21.dadgum.com/87.html
geometrian.com/programming/tutorials/write-games-not-engines/
youtube.com/watch?v=-tpLgBprqLI
twitter.com/AnonBabble

Ritalin.

The work of a truly talented and dedicated autist

this

He was born with a brain of raw autism. You literally could not do this with a normal human brain.

Loved this game as a kid.

Some people really love assembly languages
And a few of them are really talented, and think that x86 isn't too much harder than MIPS

you can find a lot of blog posts by old developers maybe he wrote something about it years ago
if you cant find anything we could send him an email asking... programmers are usually cool (specially game developers) to talk about old software

Assembly isn't hard, just tedious.

Macros

this
it got to the point with fancy macros that you would barely recognise the code as assembly

See Chris is from a generation where learning Assembler was the norm for programmers and geeks.

Attached: 1543016946969.jpg (500x496, 76K)

He used some ancient Microsoft macro assembler language. It was basically c tier.

>it's another /v/ idolises a mediocre programmer based on a game he wrote
It's Carmack all over again.

Attached: 1509045019019.png (275x266, 87K)

Post your commits then stupid frog poster

Attached: myshit.png (747x405, 27K)

You shouldn't have posted this.

Why?

lol holy shit

Attached: 4adcfe4bca85b6a7b33a7bc869d4c9e315361b3a7a279fded3a3728fc80a1356.png (500x373, 94K)

>he uses Ruby

Attached: 925DA1E6-56EF-4C09-BA57-341CDE8F346C.gif (220x272, 63K)

pretty sure that's a joke

Show me yours then. Oh wait.

made me chuckle

lol he mad

shit guys hes a nigga

Attached: nigger.png (566x321, 96K)

The US is like 70% black now. How is that surprising?

This
And this
Mostly. But also I think OP is confused because he sees pwetty gwafix and animations and think that's a particularly hard thing to do, especially in assembly language.

programming in assembly is like programming in C except super long and tedious.

It's actually about 13 percent and not really increasing. Spics on the other hand are all fucking over.

>How the fuck did Chris Sawyer program 95% of Rollercoaster Tycoon in x86 assembly?
Very carefully

assembly isn't hard it's just tedious
most snes games were also programmed in assembly

>spend a few years of your life painstakingly developing one of the most popular pc games
>become millionaire and sue atari
>live a comfy life into retirement

Why haven't you started Jow Forums?

Because games are for children.

>tfw he never fixed the swan boats getting stuck randomly after a while

Impressive technical skill and GOAT gameplay.
Is he - dare I say it - the isometric Carmack?

Attached: pussy snorkeling champion.jpg (530x424, 26K)

Yes, highly overrated.

the fact Carmack was brought into a courtroom and asked about stealing tech and he just said he did while not giving a fuck is hilarious.

Attached: drumpf.jpg (720x476, 43K)

Heh, when did that happen?

Zenimax suing facebook (Oculus) because Carmack literally took his work he was doing for them and ran.
Like he literally loaded his files onto a USB and took it to Oculus.
That's why Skyrim, Fallout 4 and Doom VR exist, they had it all in progress and Carmack just left.
He doesn't seem to even care, he openly agreed he broke contract and stole his work to give to a different company.

It's not even that tedious. You certainly could make it tedious though.

That's not what happened at all.
The court didn't even find that he had stolen trade secrets.
Read the fucking case and not stupid videogame news.

Because to get a successful modern game you must either:
- invent a new nickle-and-diming scheme (e.g. pre-alpha paid builds with minecraft)
- spend not years but decades because of the change in quality and software (e.g. no more fixed-function pipeline also means effort is multiplied several times to reach the same level)
All the while you have to shill the shit out of your shit in new and imaginative ways because everyone else is trying the same so your game will be one among a veritable ocean of absolute garbage.
That is, game dev is no longer about the game, it's instead all about the advertisement. Advertisement always used to be important but it wasn't the only aspect that mattered back then.

I find assembly to be significantly easier to work with than C because it is so clean/straightforward and unambiguous, whereas every line of C is strewn with endless undefined behaviors, memory-related bugs (memory management is extremely easy in assembly because it's clear and well-defined in extent and meaning), and ebin le hax0r tricks to try to pretend the language isn't the least powerful and most tedious ever invented.
Barely any tricks need be used in assembly to get reasonably powerful abstractions.

>where learning Assembler was the norm for programmers and geeks
You mean BASIC. Assembly was never the norm.

>every line of C is strewn with endless undefined behaviors
Technically yes. An int introduces UB concerns. Along with a lot of other features.
But I wouldn't say it's that onerous. The UB considerations with an int are small. You rarely actually face the overflow case. Most commonly you see it used as an index. I would say the same for most UB in C. A lot of UB is simply you expressing things you actually never meant to express. Like negative-indexing an array on the stack.

I wouldn't consider memory management hard in C either. It's just that people set different standards for themselves and have ideas about how they should be doing allocation that complicates things.

In summary it's really C programmers that tend to make C hard. I agree that C can absolutely be more tedious than assembly. I think the type system is to blame for that.

in related news parkitect is a straight upgrade from this game, the first ever (though many have tried)

I agree with what you say but I don't think the type system is the issue per se. It's clear, for example, as you explain, that types introduce a series of different issues, but I think that's because the language doesn't have the facilities to work on types or on the issues introduced by types, while at the same time expecting programmers to leave most of the work to the language constructs (as would be expected of any language).

>every line of C is strewn with endless undefined behaviors, memory-related bugs
Stop writing C89 then and defaulting to signed types and using int as a "catch-all" type.
We have size_t, ptrdiff_t, pointer types, fixed width types and other things.

>mediocre programmer
Kek

None of these """types""" actually catch any type errors, actually they easily CAUSE type-related undebuggable errors. Good luck waiting for i = MIN_INT to reach >= 10.

Nigger you have an artificially maintained 13% statistic where people are included even with 1/10th black ancestry just to keep the number relevant because Latinos are giving you the burrito and completely fucking your asses out of existence, with whites coming in 2nd in terms of bleaching you. You are fucking irrelevant.

Attached: 18161160_1281648971954444_4504643815524532224_n.jpg (430x498, 59K)

>i = MIN_INT
>retarded programmer introduces retarded bugs
Why would you compare size_t to MIN_INT (type error btw)?
Not only do these types catch type errors, they also are better defined *and* convey meaning better - ptrdiff_t immediately tells you what you're working with, unlike int, unsigned long or whatever other shit you can encounter in the wild.
Also, indexing by signed int is utterly retarded, and i'd kill you on the spot if you wrote such disgusting thing. This is again the retardedness of an average Cnile showing.

>contradict yourself
>I WIIIIN
ebin as always.

>contradict yourself
If you think so, show where.

prog21.dadgum.com/87.html
geometrian.com/programming/tutorials/write-games-not-engines/

>carmack isnt a genius
ok kid

why are furfags so good at programming?

Attached: cs-damngaylion10-06[1].jpg (595x765, 93K)

>worshiping some eceleb
he's nowhere near genius, but he's a very good programmer

They don't go outside, so they're out of touch with reality.

Good for you for working on shit, fuck them.

assembly isn't much harder than C if you are good at abstraction and use macros heavily.

that too probably

it's hard to optimize without understanding the CPU
majority of handcoded asm is full of pipeline hazards and prone to endless cache misses

With today's free engines available learning asembly code is just stupid.

You are better of polishing your unity or unreal skills and making good games.

t. never tried to use either of these abominations

>invest a year to learn asm
>now a better programmer than 90% of people

>invest a year to learn UE/Unity
>now a slave to a company, and subject to have your project broken at any time
>always afraid to update
>each day that passes, sunk-cost fallacy gets stronger
Anyone that uses an engine is an absolute dummy.

He was fuelled by the merry go round music

youtube.com/watch?v=-tpLgBprqLI

Not the same Sawyer.
Programming Sawyer is a brit, furry Sawyer is american.

>pre-alpha paid builds with minecraft
good god minecraft is such a primitive game. Can you imagine how well it would run if some autist had made it in 1997 instead of some idea-guy with basic java knowledge in 2010?

>stole his work

okay dude

>intellectual property
>property
okay shekelberg

>ptrdiff_t immediately tells you what you're working with, unlike int, unsigned long
can you fucking geezers start naming your god damn variables already instead of relying on the type to give you a rough idea lmao

Attached: 30860466bb.gif (292x376, 2.5M)

MY_MACRO_TYPE_THAT_CAN_MAYBE_CONTAIN_PTRDIFF offset_of_elements = &arr[i] - &arr[j]; // this is nonstandard and possibly wrong

vs
ptrdiff_t offset = &arr[i] - &arr[j]; // guaranteed to be defined, conveys meaning and shorter name

thanks, but i'll stay with the standard

>just code everything in java so we dont' have to think about compatibility, nevermind the performance cost
the programmer mindset

also there's zero reason to use two character abbreviations

spending a year writing shit in assembly does not make you a better programmer in other languages
knowing how your program translates to machine code might but you dont even need to program anything in asm to learn that

they probably fuck like rabbits and have filthy hot sweaty intense sex
fuck he;s a lucky guy

You can see his junk hanging down his leg. Lucky slave girl.