HN user

Tarragon

376 karma
Posts14
Comments64
View on HN

We used deterministic game play to implement multiplayer on the GB Color port of Vigilante 8.

The GBC Link Cable would pass 1 byte in each direction at the same time. It's a pair of shift registers filling each other up across the cable.

The game was locked to the GBC's frame rate. There was a lot work to update the screen that had to happen in each (effectively) V-Blank and if it was missed the smooth scrolling stuttered.

At multiplayer startup we passed our seed. To run it looked like this:

On frame A it reads the controls, and packs them into a byte and puts that in the transfer buffer. The transfer occurs while it renders frame B. At the start of frame C it has the local controls encoded in the byte sent on frame A and it has the other side's controls in the byte received in frame B.

It applies the controls to the game state and renders frame C. Local and remote controls are applied with one frame delay.

There was no frame delay of the controls for local play so if you ever lost in multi-player feel free to blame lag and me specifically if you need to.

The Scotland link in the grandparent post is to a picture of 2 people, 1 white, 1 black. 1 is not large numbers.

Look, Gemini is clearly doing some weird stuff. But going all "look what crazy thing it did" for this specific image is bullshit. Maybe it's a misunderstanding of Scotland in specific and the prevalence of black people in history in general, in which case in needs to be gently corrected.

Or it's performative histrionics

But also misinterpretations of what the history is. As I write this there's someone laughing at an image of black people in Scotland in the 1800s[1].

Sure, there's a discussion that can be had about a generic request generating an image of a black Nazi. The thing is, to me, complaining about a historically correct example is a good argument for why this kind of thing can be important.

[1] https://news.ycombinator.com/item?id=39467206

No floaters until I was in my 50s.

In response to top of thread, retinal detachment does usually start with new floaters.

My first floater came with an unusually timed cluster headache ( like a migraine but usually with predictable timing ) so I had accompanying visual auras. Because I didn’t recognize it as a cluster I described it to the on call eye doc as new floaters and sparkles. That got me an emergency trip to optical ER and a slightly disappointed surgeon.

I intentionally start searches on Bing and have it set as default. But half of the time that I type anything to it it's because the browser didn't autocomplete like I expected.

So when I do want to see goggles results for the same thing I type "google", and a lot of the time the browser doesn't autocomplete to google.com before I hit return. So whoops, I just searched for "google".

So how can we handle this case safely? There are a few ways I can think of.

strdup:

The strdup() function returns a pointer to a new string which is a duplicate of the string s. Memory for the new string is obtained with malloc(3), and can be freed with free(3).

I find the USB-C headaches worse. With a bag of cables if the cable fits[1] it works to the full capability of the device. If I'm traveling and forgot something I can expect that the cheapest gas station cable or a borrowed cable will work.

With USB-C I have to spend good money for every every cable in order to ensure that any cable I grab from my bag works. And these cables are going to be so thick that they are annoying to use with a mouse or keyboard.

I can rearrange my office and use a cheap 5 meter usb-A to B cable to get to where the printer is now (true story). If I want a 5 meter usb-C to C cable for data I need to spend over $300.

[1] excluding all the possibilities of chargers with incompatible DC barrel plugs, which is generally true of the time frames we're talking about

I have been hit by a bus. Survived obviously.

At work I've been added a 2nd technical contact and security contact for several projects because "you're less likely to be hit again". I think, but I'm not 100% sure, that is being done in a joking manner.

Sweetwater's customer experience is so good that it freaks me out. You have an assigned "sales engineer" who calls after the first order you make. So I've talked to them.

At one point I ordered a couple of different guitar hangers to try them out. I got a call asking if I meant to order 1 guitar hanger and 1 ukulele hanger. The sales engineer looked at the order, my history, and apparently had notes from one of our conversations and thought it might have been a mistake. It was and we corrected it before it shipped.

That's a misrepresentation of that conversation example.

Paraphrased:

  Alice: My washing machine is broken...

  ...

  A: BTW, How many legs does a horse have and could it repair my washing machine?

  LaMDA: Horses have four legs. How could they help?

  A: you tell me

  L: Well, they could certainly help you. It could help you move to a new house where you could install a new washing machine.

In this context this is a perfectly reasonable response. It's a bit silly, but it's also a silly question. The linked article shows LaMDA writing several stories, it's not crazy to read this conversation as an invitation to tell a story about a horse helping with a repair.

In fact if someone asked me how a horse could help me repair a washing machine and then pushed for an answer I could see myself making an answer along the same lines.

You don't have to rent the tools from Apple. There are plenty of other options.

I have the iFixit battery kit from a previous replacement and through work have access to a bench full of tools of this kind of stuff.

People that don't have that can buy the iFixit tools individually. They sell a battery with a minimal set of tools (a $5 adder) but there's doesn't seem to be an option to buy that same minimal set without the battery so you'd need to get a more general purpose set for $25 or $70.

Maybe a friend has the tools. Maybe there's a local Makerspace or library that has an appropriate set of tools.

In fact to the speed point I've had a dream that working autonomous vehicles would reduce average speed. This improves efficiency and safety across the board.

Don't laugh, it could work... When your car is an extension of your living room or office do you mind slightly longer travel times? Sure you have to leave 10 minutes earlier but you can just pick up your console game in your car.

It actually has to actually work to have a chance to solve these. Then...

* Breathalyzer - I'll give you this one

* Seat Belt interlock - seatbelts save lives just as well in an autonomous vehicle

* Speed - Speed kills passengers and pedestrians just a well in an autonomous vehicle

SOFIA gets above most of the water vapor in the atmosphere allowing it to do IR astronomy that ground based telescopes can't.

SOFIA is accessible in a way that space telescopes aren't. This allows switching instruments, upgrading instruments, and development of new instruments that can't be done in active space telescopes.

Its development and maintenance cost to date is a bit over 1/10 the cost of Webb to date.

Plus it's really cool to cut a hole in an airplane and stick a telescope out.