Live data from Hacker News

Porting my JavaScript game engine to C for no reason

phoboslab.org

111–120 of 139 posts

Re: Porting my JavaScript game engine to C for no reason

#111

With WASM it might actually run faster in the browser as well.

It does, but the main speedup comes from using WebGL instead of Canvas2D. Sadly, Canvas2D is still as slow as it ever was and I really wonder why. Years back I wrote a standalone Canvas2D implementation[1] that outperforms browsers by a lot. Sure, it's missing some features (e.g. text shadows), but I can't think of any reason for browser implementations needing to be _that_ slow. [1] https://github.com/phoboslab/Ejec…

For things missing/hard in WebGL, is it performant enough to rely on the browser compositor to add a layer of text, or a layer of svg, over the WebGL? I have some zig/wasm stuff working on canvas2D, but rendering things to bitmaps and adding them to canvas2d seems awfully slow, especially for animated svg.

Re: Porting my JavaScript game engine to C for no reason

#112

Honestly I would never ever execute any code from this guy. He is the inventor/founder behind the coinhive crypto mining network. [1] This guy made billions illegally [2], and maintained the biggest ransomware crypto coin network for years, by offering the tools and SDKs to fund dozens of cyber war involved agencies across the planet. [3] I have no idea how he got away with it, because his name keeps appearing in lot…

I don't know what your personal agenda is, but there's so much misinformation and hyperbole in your comment that I have to assume that this is personal for some reason!? I've been meaning to write a proper post-morten about all that, now that the dust has settled. But in the meantime, just quickly: - I did not make billions. You're off by quite a few orders of magnitude. After taxes it was well below $500k. - Nothing…

> I did not make billions.

I only have access to the trade volume of coinhive's wallet addresses that were publicly known at the time and what the blockchain provides as information about that. How much money RF or SK or MM made compared to you is debatable. But as you were a shareholder of the company/companies behind it, it's reasonable to assume you've got at least a fair share of their revenue.

If you want me to pull out a copy of the financial statements, I can do so. But it's against HN's guidelines so I'm asking for your permission first to disprove your statement.

> Nothing I did was illegal (...) Coinhive was not ransomware

At the time, it went quickly into being the 6th most common miner on the planet, and primarily (> 99% of the transaction volume) being used in malware.

It was well known before you created coinhive, and it was known during and after. Malpedia entries should get you started [1] [2] but I've added lots of news sources, including German media from that time frame, just for the sake of argument [3] [4] [5] [6] [7] [8]

----------

I've posted troyhunt's analysis because it demonstrates how easily this could've been prevented. A simple correlation between Referer/Domain headers or URLs and the tokens would've been enough to figure out that a threat actor from China that distributes malware very likely does not own an .edu or .gov website in the US, and neither SCADA systems.

As there was a financial benefit on your side and no damage payments to any of the affected parties, and none revoked transactions from malicious actors, I'd be right to assume the unethical motivation behind it.

> I did not organize a doxing campaign. There was no doxing of Brian Krebs.

As I know that you're still an admin on pr0gramm as the cha0s user, that's pretty much a useless archive link.

Nevertheless I don't think that you can say "There was no doxing of Brian Krebs" when you can search for "brian krebs hurensohn" on pr0gramm, still, today, with posts that have not been deleted, and still have his face with a big fat "Hurensohn" stamp on it. [9]

As I wrote in another comment, I also said that there are also nice admins on the imageboard like Gamb, and that they successfully turned around that doxxing attempt into something meaningful.

> I don't know what your personal agenda is, but there's so much misinformation and hyperbole in your comment that I have to assume that this is personal for some reason!?

This is not personal for me, at all. But I've observed what was going on and I could not be silent about the unethical things that you built in the past.

To me, doing that lost all trust and good faith in you. The damage that you caused on a global scale with your product coinhive far exceeds whatever one person's lifetime can make up for. And I think that people should know about that before they execute your code and are going to be a victim to a fraudulent coin mining scheme.

Calling this hyperbole and misinformation is kind of ridiculous, given that antivirus signatures and everything are easily discoverable with the term "coinhive". It's not like it's a secret or made up or something.

----------

[1] https://malpedia.caad.fkie.fraunhofer.de/details/win.coinmin...

[2] https://malpedia.caad.fkie.fraunhofer.de/details/win.monero_...

[3] https://cyberexperts.com/what-is-coinhive-malware/

[4] https://censys.com/de/hunting-for-threats-coinhive-cryptocur...

[5] https://www.pcrisk.de/ratgeber-zum-entfernen/8716-coinhive-v...

[6] https://www.golem.de/news/kryptomining-coinhive-skripte-warn...

[7] https://www.malwarebytes.com/blog/detections/coinhive-com

[8] https://www.coindesk.com/tag/coinhive/

[9] https://pr0gramm.com/top/brian%20krebs%20hurensohn

----------

Re: Porting my JavaScript game engine to C for no reason

#113

Earlier quoted context omitted.

I don't know what your personal agenda is, but there's so much misinformation and hyperbole in your comment that I have to assume that this is personal for some reason!? I've been meaning to write a proper post-morten about all that, now that the dust has settled. But in the meantime, just quickly: - I did not make billions. You're off by quite a few orders of magnitude. After taxes it was well below $500k. - Nothing…

> I did not make billions. I only have access to the trade volume of coinhive's wallet addresses that were publicly known at the time and what the blockchain provides as information about that. How much money RF or SK or MM made compared to you is debatable. But as you were a shareholder of the company/companies behind it, it's reasonable to assume you've got at least a fair share of their revenue. If you want me to…

Googling your name reveals that you like to stir up drama. Please find another venue.

Re: Porting my JavaScript game engine to C for no reason

#114
post #96

Earlier quoted context omitted.

> If you google "doxxing brian krebs pr0gramm" you will find lots of other news sources I found no doxxing, I read that they organized a fundraiser, donated to cancer research, and even Brian Krebs wrote that “the response from pr0gramm members has been remarkably positive overall.”[1] [1]: https://krebsonsecurity.com/2018/03/coinhive-expose-prompts-...

> I found no doxxing If you think that images of brian krebs' face with "Hurensohn" (German for "son of a whore") on it are not doxxing, you must be living in a parallel world. Not gonna post direct links to this, because of HN guidelines. See the VICE article about it, which still contains some of those images. [1] What I'm saying is that there was an attempt to doxx Brian Krebs, and the users of the imageboard [2]…

[deleted]

Re: Porting my JavaScript game engine to C for no reason

#115

Earlier quoted context omitted.

> I did not make billions. I only have access to the trade volume of coinhive's wallet addresses that were publicly known at the time and what the blockchain provides as information about that. How much money RF or SK or MM made compared to you is debatable. But as you were a shareholder of the company/companies behind it, it's reasonable to assume you've got at least a fair share of their revenue. If you want me to…

Googling your name reveals that you like to stir up drama. Please find another venue.

> Googling your name reveals that you like to stir up drama. Please find another venue.

Kind of ironic, given that you claim to have been doxxed out of your own forum.

Re: Porting my JavaScript game engine to C for no reason

#116
post #87

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…

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.

Re: Porting my JavaScript game engine to C for no reason

#119
post #42

Earlier quoted context omitted.

> To be fair, they modified Impact _a lot_. You can't polish a turd. There would've been no point in modifying the engine a bunch if you hadn't given them a useful base to work with.

> You can't polish a turd Of course you can. Not really sure why this still is tossed about. You just get a shiny turd with a lot less stink. I've made a career of taking people's turds and turning them into things they can now monetize (think old shitty video tape content prepped to be monetized with streaming).

I like this take, but you're saying something different I think, which is more along the lines of "Customers don't care about how the sausage is made".

You didn't polish a turd, you found something that could be valuable to someone and found a way to make it into a polished product, which is great.

But "You can't polish a turd" implies it's actually a turd and there's nothing valuable to be found or the necessary quality thresholds can't be met.

Re: Porting my JavaScript game engine to C for no reason

#120
post #69

> high_impact is not a “library”, but rather a framework. It's an empty scaffold, that you can fill. You write your business logic inside the framework. I normally phrase this in a much more negative way: a "framework" is simply a "library" that does not place nice with others. It's good to hear a sensible positive phrasing for once.

I do still think it's negative.

My ideal framework is a library or set of cooperating libraries on the inside, with as little framework as possible.

e.g. Qt is a framework. Qt "calls you". But you can run the QPainter code without starting the Qt event loop or thinking too hard about QObjects. You should ideally be able to use the event loop without buying into signals and slots, though it won't be as ergonomic.

It's not always possible, it's not always worth it, but everything else being equal, I'd rather have no framework at all.

(For game engines I understand why a little framework is necessary - When you're talking about compiling to a weirdo platform like phones or consoles, the engine must also be involved in your build process and sometimes even libc shit. So you can't just make a Win32 exe that is a PlayStation game.)

Post reply on HN