5 ms·
IOCCC Flight Simulator (2010)
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- pvg 2y agoA discussion in 2017 https://news.ycombinator.com/item?id=15058723 https://news.ycombinator.com/item?id=15058723
- atan2 2y agoClassic!
- zendist 2y agoHow in the world did they come up with the obfuscated code for this? Surely they must be using a tool?
- deleted 2y ago[deleted]
- bruce511 2y agono, it was a thing back in the 90's (and likely earlier.) The goal was to write a program that was "impossible to read". Some of the winners are seriously creative. And it's very much just smat kids and their machines... I remember one back in the day which wasn't obfuscated at all. It was clearly a simple utility. Except that it didn't do what you thought it did, it did something completely different. (alas I can't remember the details...)
- thih9 2y ago> I remember one back in the day which wasn't obfuscated at all. Perhaps it was the Underhanded C Contest[1][2]? It's another competition, entires there often seem simple and perform something unexpected. [1]: https://en.wikipedia.org/wiki/Underhanded_C_Contest https://en.wikipedia.org/wiki/Underhanded_C_Contest [2]: https://www.underhanded-c.org https://www.underhanded-c.org
- thamer 2y agoThere are a number of blog posts online and StackOverflow questions explaining IOCCC entries, and they generally seem to be built/obfuscated by hand. It's an art and it's far from trivial, which is one of the reasons why the contest exists :) For an example, see this StackOverflow question and its detailed answers for an overview of what obfuscation techniques can be used, although many more exist of course: https://stackoverflow.com/questions/15393441/obfuscated-c-code-contest-2006-please-explain-sykes2-c https://stackoverflow.com/questions/15393441/obfuscated-c-co... I was able to compile it on macOS, but had to include an extra flag to stop clang from being too strict (version 16): cc -Wno-implicit-function-declaration -std=c89 -o test test.c ./test
- dvh 2y agoI couldn't find video of it (yt nor elsewhere)
- deleted 2y ago[deleted]
- NavinF 2y agohttps://news.ycombinator.com/item?id=41905010 https://news.ycombinator.com/item?id=41905010
- cbeach 2y agoDoes anyone know of a video online demonstrating this app? I've had a look but can only find screenshots
- HanClinto 2y agoWasn't able to find a video of the app working, but did find this Javascript port (?), and it seems to roughly match the appearance shown in screenshots: https://xyzzy.github.io/jsFlightSim/README.html https://xyzzy.github.io/jsFlightSim/README.html
- NavinF 2y agoIt's very hard to avoid rolling upside down and I wonder if that's intentional. IRL you can just let go of the controls and most aircraft will be stable and fly close to level
- simne 2y ago> you can just let go of the controls and most aircraft will be stable This is not rule. Some planes named "friendly to novice pilot", and are stable, others are not, and this is somewhere predictable when design. I even hear, Lindsberg, when was preparing for his flight, asked designer to make his plane unstable, because typical stable flight is very boring and he scared to fall asleep. In other cases, modern planes like 737s and larger scale, usually considered to have zero stabilization in design and if need, stabilization created by electronics (navigation system is usually made as very high precision inertial platform, so could in most cases know, how should fly to looking stable). This is because design stabilization costs additional resistance, less payload and more fuel consumption - for 737 scale it is about 1-3 additional passengers and few percents of range. Military planes and some aerobatics now are designed unstable for better maneuverability. I don't say, this new trends are good, just notice.
- addaon 2y agoJust about all useful airplanes are stable in pitch (either statically stable aerodynamically, or closed-loop stable with an enhanced stability system), but roll stable aircraft are relatively rare. Most aircraft are slightly spiral unstable, at least beyond a critical bank angle; but the double time constant is so slow that it's a non-issue.
- tiahura 2y ago[flagged]
- mianosm 2y agoI’m sure you’ll be making your own scenery files very soon!!!
- mfex 2y agoAfter this was posted here in 2017 I made a version in ClojureScript, where you fly over Amsterdam instead of Pittsburg. http://thegeez.net/2018/04/01/flight.html http://thegeez.net/2018/04/01/flight.html
- HanClinto 2y agoThis is really good -- well done! > Evidently, all the rendering and controls can be handled by shoving all the math through a single matrix. That's absolutely mind-boggling to me, and I would love to read more about this.
- simonwistow 2y agoOn OSX you can install XQuartz and libx11 an then compile it with (assuming you installed libx11 via brew) cc banks.c -o banks \ -DIT=XK_Page_Up -DDT=XK_Page_Down \ -DUP=XK_Up -DDN=XK_Down -DLT=XK_Left -DRT=XK_Right \ -DCS=XK_Return -Ddt=0.02 \ -std=c89 \ -Wno-unsequenced -Wno-implicit-function-declaration -Wno-implicit-int -Wno-empty-body\ -lm -lX11 -L/usr/local/Cellar/libx11/1.8.10/lib/ -I/usr/local/Cellar/libx11/1.8.10/include
- pickledcods 2y agoThis entry inspired me to write this javascript implementation to test my high-speed GIF encoder, which I used for animations in the pre-canvas era. It needs keyboard arrows to navigate. https://xyzzy.github.io/jsFlightSim https://xyzzy.github.io/jsFlightSim I tried to reverse-engineer the code to understand how the model in the simulator worked, only it raised more questions than answered. I did uncover that the author had flight simulator writing experience, so the mechanics were truly obfuscated. Carl, amazing piece of craftsmanship, tipping the hat!
- HanClinto 2y agoKudos on the port -- it's really, really well done!
- gmiller123456 2y agoMy favorite was "the most configurable application ever" and was only one line: #include "/dev/tty"