Hacker News new | ask | show | jobs
by namuol 689 days ago
I owe a lot of the most informative programming work I’ve done to Impact.

Impact was so ahead of its time. Proud to say I was one of the 3000 license owners. One of the best purchases I’ve ever made. The only game I’ve ever really properly finished was made in Impact.

I loved that the source code was part of the license, and even modified the engine and the editor to suit my needs.

I was so inspired that I worked on my own JS game engine (instead of finishing games - ha!) for years after. I never released it, but I learned a ton in the process and made a lot of fun gamejam games with it.

I was also inspired by Impact’s native iOS support (Ejecta), but frustrated that it didn’t run on Android (at the time at least), so I fumbled my way through writing JVM bindings for V8 and implemented a subset of WebGL to run my game engine on Android without web views.[0] I made the repo for V8 bindings public and to my surprise it ended up being used in commercial software.

I won’t bore you with the startup I tried to bootstrap for selling access to private GitHub repos, which was inspired by Impact’s business model…

Anyway, it warms my heart and makes me laugh with glee to see Impact getting an update for the “modern” web with a C port!

I’d say these are strange times for the web, but I can’t remember a time when things were anything but strange. Cheers!

[0]: https://github.com/namuol/jv8

1 comments

I might be missing something, but isn't the original Impact a JavaScript & browser based engine, thus it should run on Android in a simple Web view just fine?
Most of that repo appears to have been built in early 2013. Android WebView didn't switch to chromium until late 2013. Prior to that it was usually an older hacked up WebKit sometimes provided by the phone manufacturer with unreliable features.
I remember working on a QC app that used NFC and a webview right when I think the first Pixel phone came out, basically to track QC steps while expensive equipment went through a production line. Was a somewhat painful, but interesting experience. I'm not sure if I liked it more or less than dealing with Palm/Handspring development a few years before it.

It's funny, I actually forget some of the small, one-off things I've worked on over the years.

Ejecta was a project that implemented WebGL with JavaScript bindings -- basically everything you need for a web game without the DOM. It implemented enough of WebGL to run Impact-based games.
I guess web views on Android weren't very capable 10–15 years ago?
They were quite capable, but there was no mechanism to update them without updating the whole OS, so they were usually quite outdated.