Езици за програмиране – Колко време и какъв тип сложност би участвал в Крис Сойер, който пише по -голямата част от магната на Rollercoaster в асемблера? Софтуерно инженерно обмен? | Pcgamesn
Rollercoaster Tycoon: Най-оптимизираната игра на всички времена
Асамблеята се усложнява, когато правите всички онези оптимизации на MAD (векторизиращи операции, използвайки специални набори от инструкции (SSE и т.н.) Бит Twiddling и т.н.), които просто не можете да направите от C. Ако правите тези неща, тогава времето всъщност е в „fiddle this bit, сглобете се, измервайте. Направете този бит, сглобете, измервайте. „цикъл и не в действителното кодиране. огромни Отстъпете от писането на C код.
Колко време и какъв тип сложност би участвал в Крис Сойер, който пише по -голямата част от магнаца на RollerCoaster в асемблер?
Можеше ли да започне, като го напише в c и след това да промени части от него, за да се събере, ако е необходимо за изпълнение?
.
От четенето на грубата му биография изглежда като две години (началото на 1997 г. до края на 1998 г.). Като се има предвид, че той изглежда е „един проект по едно време“, а наборът от инструменти и времевата рамка не са чудесни за „развитие на екипа“, бих предположил, че прави 24-месечни програмисти-месеци.
В този момент той беше професионален програмист на игри, работещ в Асамблеята от 1983 г., така че не бих приравнил „две години на Крис“ на „Две години на работа“.
Като се има предвид, че повечето професионални игри отнемат около 25 души години, за да се развие екип, две хора години за водеща в индустрията игра е невероятно постижение, заемане на вероизповедание на поговорките:
- Страхотният програмист е 10 пъти по -продуктивен от добър програмист
. Вероятно нямаше да има значение освен факта, че той може да е бил малко по -бавен, използвайки език от по -високо ниво, с който той нямаше 14 -годишен опит.
Отговори на 18 ноември 2010 г. в 23:02
2,331 2 2 златни значки 18 18 сребърни значки 17 17 бронзови значки
Страхотни точки, мислех си, че това може да е така.
всеки рутинно, тогава бих си представил по отношение на % по -дълго, тогава може да не е толкова повече за квалифициран програмист на сглобяване.
Асамблеята се усложнява, когато правите всички онези оптимизации на MAD (векторизиращи операции, използвайки специални набори от инструкции (SSE и т.н.) Бит Twiddling и т.н.), които просто не можете да направите от C. Ако правите тези неща, тогава времето всъщност е в „fiddle this bit, сглобете се, измервайте. Направете този бит, сглобете, измервайте. „цикъл и не в действителното кодиране. С добър макро асемблер и квалифициран програмист, тогава писането на сглобяване не е огромни .
Все пак не бих могъл да го направя! Потръпвам да се замисля да се опитвам да инициализирам директно DirectX в монтажа! ( Wikipedia ми казва, че е написал някои части в C, за да “интерфейс с операционната система Windows”, така че предполагам, че той не е инициализирал DirectX в сглобяването тогава. Фе!
?
В ранната неделя сутринта през април 1999 г. дизайнерът на игри Крис Сойер е кацнал в командния си център на хола си, колекция от технологии от 90 -те години, разглеждащи форуми онлайн. В края на март встъпителният магнат с влакче беше кацнал на рафтовете в Северна Америка, капещ със заразната любов на Сойер към тематичните паркове и изглежда, че нещо се е объркало сериозно погрешно.
Във форумите играчите казваха,. След години внимателна работа изглежда, че играта се самоунищожи по мистериозни причини. .
Може би това беше повече от съвпадение. В рамките на няколко часа той разкри връзката. Коригираните времеви стъпки на файловете за запазване на играта, за да се предпазят от подправяне или корупция, не съвпадат. „Смущаващо, това беше крещяща грешка от моя страна“, казва Сойер. „Или беше?”
. “Само по някаква причина”, казва той, “това Направих !”Той бързо кодира пластир и по -късно полезност за фиксиране на файловете за запазване на играта.
По -голямата ирония беше,. Написано почти изцяло в кода на сглобяването (като предишния транспортен магнат на Сойер), Rollercoaster Tycoon и нейното продължение се изтръгна и пренасочи преработвателите на времето, за да симулира вози, икономики и до хиляди посетители и техните състояния на ума. Преодоляването през толкова много числа в реално време, без да се закача, поиска постно, безкомпромисно подход, а не по-бавното, по-удобно за потребителско семейство от езици. И в ултра-лейкови събрания, където буквите стоят за такива и нули, човек говори директно на процесора.
Това е изключително труден език за учене и излиза от стил след развитието на Fortran през 50 -те години. .
Красив и скромен, след това той започна да се занимава с това и създаде транспортен магнат, докато държи на правата си, навик, който му е предоставил постоянен източник на доходи. Някои от тях влязоха в пътуваща Европа и САЩ, за да карат влакчета на места на места като Cedar Point в Охайо. Сега той е яздил повече от 700 каботажници. Любимият му, Тарон в Phantasialand в Германия, изглежда като нещо от магнава игра.
Сойер гравитира към X86 сглобяване естествено, оценявайки чистото му представяне и светкавично компилиране и когато се зае да направи магнаца на влакчета, той постави два компютъра: бърз за кодиране и по-бавен за тестване. (По -късно системните изисквания на играта призоваха за Intel Pentium 90MHz с поне 16 мегабайта RAM.) Също седеше на неговия команден пост бяха точков принтер за матрица (той вярва), факс машина, джобно ръководство за код на сглобяване на x86 и референция на работния плот на 500ish-PAGE. Това му беше достатъчно; Въпреки че пълните ръководства се сблъскват с хиляди страници, той запомни повечето от необходимото.
„Програмирах в X86 толкова дълго, че рядко се нуждаех от неща“, казва той.
Най -ранната игра приличаше на транспортния магнат, но с влакчета, а графичният му художник Саймън Фостър създаде по -гъвкава и фотореалистична система, така че кабинетите да изглеждат частта. Голяма част от първоначалния процес на проектиране беше свободна форма и вдъхновена от няколко очевидни предшественици: Уил Райт, Питър Молине, Сид Майер. . Новите функции означаваха по -голяма тежест върху бавния, морско свинско компютърно и макар че някои от тях можеха да бъдат изпъстрени от кода, други трябваше да останат.
Pathfinding беше едно от тях и се превърна в най -голямото главоболие. „Лесно е да се програмира алгоритъм за търсене на маршрути, който работи перфектно“, казва Сойер, „но не е от полза, ако откъсне играта за секунди или минути в момент, когато трябва да вземе решение.”
Той се откъсна на алгоритмите, опъвайки много малки мъже и жени в храстите и надолу по грешен декоративен път. „Дотогава посетих доста големи тематични паркове в САЩ и успях да се изгубя в някои от тях“, казва той. „Така че реших, че вероятно е правилно, че гостите в магнат на Rollercoaster също се бориха […], ако оформлението на парка е лошо проектирано.
След като играта се е развила от списъка с желания на Rastheckle до храм SVGA до тематични паркове, Сойер го е разпространил на приятели, съседи и деца на съседите, които са отговорили много положително. Издателят Hasbro се уреди за професионални ловери на бъгове, а Сойер направи своя безкрайно проучване. .
За продължението Сойер добави към оригиналната кодова база, приближавайки се до върховното му виждане. “Все още обичам тази игра и всичко по въпроса”, каза той пред Eurogamer през 2016 г. . Оттогава той отстъпи от развитието на играта и лицензира правата за новите игри на магнати на Rollercoaster до Atari – усилия, които никога не са се доближавали до успеха на първите две две.
. В наши дни има малка нужда от монтажен кодер (както той е съгласен) и работата като самотен вълк е по -трудна от всякога. „Също така чувствам, че сега създадох всички игри, които исках да създам“, казва той, включително мобилни версии на класическите му игри, „и работата по нечии дизайни на игри просто не ме вълнува.”
Matt Hrodey Matt Hrodey е писател на игри, който е покрил Rollercoaster Tycoon 2 за PCGamesn.