Hacker News new | past | comments | ask | show | jobs | submit | PuercoPop's comments login

> Also, I would love for this guy to do a deep dive on the SC:BW approach to balance, which is map-based rather than based on traditional unit-based balance changes. This way the community is effectively able to balance the game themselves.

Yes, that it something really important that the modern landscape of competitive gaming lost and the frequency of patching increasing. Not just in BW, older fighting games, especially those arcade based ones, people found ways (which sometimes blur the lines between exploit or technique) to keep pushing the bounders. Things like Kara-cancels in 3s, were one is using a mechanic meant to facilitate the throw input to extend the range of the throw. Or wave dashing. It is wild how even character tier lists changed in the original SmashBros 64.

And also how people adapt to this meta changing discoveries, like the bisu-build in BW or when Ricki Ortiz unleashed v-cancel in sfa2!

You might want to try SSF2: New Legacy; an unofficial fan-made fork of Super Street Fighter 2 Turbo hack-rom.


It gets rid of a lot of the randomness and glitches of the original game. If you don't know what bugs there are, here are the links for it:

https://youtu.be/LPFAEeIbRq4 ~ Transcript: http://zachd.com/nki/NKI-Vol12.Super.Turbo.txt

https://youtu.be/VQhwFORucV4 ~ Transcript: https://docs.google.com/document/d/1aFZQxbHR91AyPZLWaxYuPjby...

Kara-cancels were a glitch in SF2 turned into a feature in all subsequent games, in SF3 devs added ability to kara cancel into throws, probably because of Alex being a protagonist (:

I work at Twitch and I can just barely understand this post, the level of depth people find in these "finished" games is astounding.

That is because I only mentioned them, didn't explain them.

Kara-cancel is a mechanic that lets you extend the range of your moves, in 3s is used for throws.

So the input for throws in 3s is lp+lk. Now, what happens if while one is trying to press the buttons at the same time they press one slighty before the other? A move will start to come out and then you can't throw because you are doing another move. To make it easier to input throws, devs made so that _any_ move can be canceled into a throw in the first 5 frames of the move. 5 frames is 5/60ths of a second.

Separate to that, some moves move the character forward. Ej. Chunli's HK. So people figured out that if you press a move that moved your character forward and then canceled that into a throw you can extend the effective range of your throw.

Mind you doing this means pressing a button 83 milliseconds before the other one. Which is of course not something you can do by thinking about it, instead you learn to position your hand in a way so that when you move it down together one finger lands before the other two. The name kara-cancels comes from the Japanese word for empty, because you are canceling a move that never came out.

Now I don't know the history, whether the mechanic was first found in 3s and then in SF2T or not, but it is an example of a mechanic intended to ease the input of something being used to expand the toolkit of a character.

V-cancel (not sure if that was the name ppl used for it, didn't play sfa2) refers to the fact that in sfa2 the number of frames to go from standing to downblock is more that the number of frames a character needs to go from standing to a low attack if the character is in v-ism. This means that if two characters are standing next to each other and one activates their v super, they have a guaranteed hit.

This was first used by Ricki Ortiz in a tournament setting in a finals and that is how it became wildly know. The story of it was documented in Sirlin's Play to Win book, which is how I learned about it. https://www.sirlin.net/ptw

I was just making a statement on depth so was not expecting a actual explanation but thank you for that. I personally have a hangout where terminology makes things seem harder than it is, I just have to dig in and learn the terms and then things fall into place.

Anyway appreciate the indepth answer.

For what is worth in nix after the code is downloaded the code is built in a sandbox without network access. So one does have a viable alternative for Rust.

And is true that most package managers for popular language allow arbitrary code execution during the install process. That is how husky adds git hooks to the developers machines.

For example in Ruby I need to patch the Kafka gem, karafka because it downloads, builds and stores librdkafa.so in the gem's directory.

I understand that this as well as the husky example comes from a desire to make developer lifes easier but I'd rather we erred on the side of caution. Making sure that software builds without access to the network and without being able to modify your system (ej. Adding files to $HOME)

Hey, you have to patch nothing. Nix support was merged to karafka two months ago.

> is arguably the most powerful debugging experience available for any programming language.

The sly debugger is better than most debuggers, but calling it the most powerful debugging experience is a stretch. Just try the debuger in a Smalltalk implementation (Squeak/Pharo/Cuis)

I use project.el instead of projectile but yeah that is exactly what I do. It is only a couple of lines.


You are thinking of darcs, that is the one that was written in Haskell. Although Darcs is more related to pijul than to git

No, the included demos have examples for a analyzing Ruby (ActiveRecord) and Java. There was a paper a while back about moldable development where they showed a Python debugger.

I use nix with flakes, have written a couple of flakes day to day use. I am not a nix power user. But based on my current understanding this statement seems incorrect

> Flakes are tightly coupled to Git.

How is it tightly coupled to Git if it supports Mercurial out of the box?

Other than using version control to determine what are the sources of the derivation, what does flakes lean on version control?

That is what I was trying to say by

> Other than using version control to determine what are the sources of the derivation

I don't think that defaulting to using git to list the sources when inside a git repo means that it is tightly coupled to git. If one doesn't want to commit/stage the flake files in the repo one can do `nix develop .` and it works . It will take a little longer because it will copy the entire directory to the store iiuc.

Amarok was the first app in Linux that was better than the Windows counterpart. My non-technical friends would ask how could they use it. It was the killer app for the Linux Desktop at the time.

> Also, dcop is probably the best GUI automation tool I’ve used.

Everytime I have to use dbus from the CLI I think to myself, dcop died for this?!

To me the best GUI automation tool (in Linux at least) was Kommander, another KDE app that didn't survived the KDE3-4 transition. A pretty decent 'low-code' tool that unfortunately didn't make it to KDE4.

I used KDE4 up to 4.2, when it supposedly 'got good'. It wasn't bad by any means. But KDE3 was better.

The first few years after KDE4 came out I spent a lot of time on getting Amarok to work on my system. Such an amazing music player. It got harder, and eventually I switched to spotify too. (And even though you have nearly every piece of music at your fingertips, it still pales in comparison to what you could do with Amarok)

Re: Amarok

Have you tried Clementine or Strawberry Player(s)?

> a fork of a DE from 2002

Not 2002, 2008. Trinity was forked after KDE3 was EOL.

I'm curious if they are keeping DCOP alive or have they embraced dbus?

From a quick check it seems to use DCOP.

It is like printf to stderr and exit(1)

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact