HNHacker News
TopNewBestAskShowJobs

YesBox

1,157 karma · joined April 17, 2022

chase@yesboxstudios.com

I'm creating Metropolis 1998, a 2D city builder/simulation video game.

https://store.steampowered.com/app/2287430/Metropolis_1998/

submissionscomments
YesBox··on Show HN: I made a tiny device for automatically recording digital pianos
This is great!

If this launched 5 years ago, I would have immediately purchased it! At the time I was using pencil & paper, Sibelius, or my phone to record improvisations and all of them were very poor solutions.

I've reached the point where I use a DAW (Reaper) + MIDI keyboard + sound libraries. Conveniently, Reaper can record & display everything as editable MIDI output. Pencil + staff paper can be great if you're slowly exploring something though.

YesBox··on Did too many games release in Q3 of 2024?
For juxtapositional context: This article [1] came out in 2016 and gives a great overview of why and how difficult it is to be successful (especially more than once) in the video game industry.

Entertaining people is _very_ challenging work.

John Carmack [2]: "The work in the aerospace industry is "simple" compared to the work he does in video games"

[1] https://lostgarden.com/2016/11/17/autumn-of-indie-game-marke...

[2] https://en.wikipedia.org/wiki/John_Carmack#Armadillo_Aerospa...

YesBox··on Show HN: A Website for Comparing Protein Powder Prices
Very nice! Some suggestions:

- Display and filter by number of ingredients. My trainer said to avoid the powders filled with "crap". The more pure, the better (e.g. he was referring to unnecessary additives, sweeteners, etc.)

- You're using a single source website.. why not show the review star rating?

- Separate brand and product name into two separate fields.

YesBox··on I have 2000 old VHS tapes in my garage and don't know what to do with them
A similar quote, paraphrased, is "Every one dies twice. The first time is when they stop breathing, and the second is when their name is spoken for the last time".
YesBox··on Scanned page by page: 67 years worth of old Radio Shack catalogs
Very cool!

Makes me wonder if there's a future for online, virtual stores setup just like a physical store with HQ 3D models (bonus: with other customers/store reps). One of the fun experiences of shopping in a real store (at least, as I remember from childhood) is seeing curated products you'd weren't even looking for or didn't know existed (and wanting them!)

One of the benefits would be information density, e.g. "oh, what's that I see down the isle". There's only so many products you can fit on a 2D plane.

Ha, actually, I dont like the idea of having another reason to not leave the house.

YesBox··on Ask HN: What are you working on (August 2024)?
Ask steam if you can swap out the store pages. I've never seen it done before though.

$1/WL is good (not great or bad), depending on how much your game is going to cost and the projected WL->Sale conversion.

I recommend you read through most of the articles and blog posts here: www.howtomarketagame.com

It's a good starting place.

YesBox··on Ask HN: What are you working on (August 2024)?
Steam recently made some changes that are pushing game studios away from prologues. Instead, demos can have their own steam pages. Plus all hyperlinks will soon be banned.

I also noticed your game has been up on Steam since January 2022 and by the looks of it, you've done about zero marketing (steamdb.info). Hope that's on the horizon, it's a pretty darn important part of game development now!

Love the concept of your game. Reminds me of my favorite roman emperor: https://en.wikipedia.org/wiki/Aurelian

- Fellow game developer

YesBox··on AI stole my job and my work, and the boss didn't know – or care
That brings up an old question: who gets to decide a job is terrible?

Concentrated power multiplies the force of its actions, whether (subjectively) good or (subjectively) bad. See the danger?

Maybe someday, someone in power will decide a job you gain fulfillment from is a terrible job.

YesBox··on Isometric Projection in Game Development
Even with Google, it's a difficult problem[1]. What if you have multiple items on the same tile? What if one of them is one pixel wide (e.g. a wall)? What if something in front of that tile is tall enough to block the view? What if you need pixel perfect collision?

My first solution (before the buildings in my game had multiple floors) was to take the ISO mouse position, grab a list of items within a cone spreading towards the screen, then:

1.) Loop through each item

2.) Create a sprite of the item (so I have direct access to RGBA info)

3.) Convert mouse coords to sprite coords

4.) Check if I'm hitting a pixel (i.e. alpha > 0)

5.) Keep track of this item

6.) Update if an item closer to the bottom of the screen (i.e. closer to camera) gets a hit

Once I added building height, this became impractical (too many items to loop through, sprite creation is CPU intensive).

New solution is to assign a 24 byte UUID to each item, convert that to RGB, draw it to the screen (invisible to the user), and then return a tiny texture every frame from the GPU at the mouse position. If the color in the texture is not black, then convert RGB back into the UUID.

PS: If you know how to draw so that alpha replaces existing alpha (instead of blending), please let me know so I can have 32 byte UUIDs!

[1] Source: I'm developing Metropolis 1998 https://store.steampowered.com/app/2287430/Metropolis_1998/

YesBox··on How simultaneous multithreading works under the hood
Im creating a game + engine and speaking from personal experience/my use case, hyperthreading was less performant than (praying to the CPU thread allocation god) each thread utilizing its own core. I decided to max out the number of threads by using std::thread::hardware_concurrency() / 2 - 1. (i.e. number of cores - 1 ).

I'm working with a std::vector

YesBox··on The Right Kind of Stubborn
Reminds me of http://www.foundersatwork.com/blog/what-goes-wrong by Jessica Livingston
YesBox··on Building SimCity: How to put the world in a machine
Thank you!
YesBox··on Building SimCity: How to put the world in a machine
Hey, I don't recall meeting anyone by the name of ninja muffin :D

I had to search around to find your face ha. I remember chatting with you. Nice to bump into each other here :)

Thanks for the kind words!

YesBox··on Building SimCity: How to put the world in a machine
I plan on adding it on GOG, prob for 1.0 only but we'll see!

The game is currently around 25 MB!

YesBox··on Building SimCity: How to put the world in a machine
Creative mode: yeah of course!

I havent updated/worked on my road map in a loonng time. But Im gonna attempt the traffic light react to number of cars in each road it manages.

YesBox··on Building SimCity: How to put the world in a machine
Already in game! :)
YesBox··on Building SimCity: How to put the world in a machine
Big picture things (some are already implemented):

- You can design your own buildings

- You can see inside of them

- Demand is based on specific businesses, not general zones

- Deeper simulation of citizens

- All the classic city builder features

YesBox··on Building SimCity: How to put the world in a machine
Thank you!
YesBox··on Building SimCity: How to put the world in a machine
Thanks for the WL!
YesBox··on Building SimCity: How to put the world in a machine
This book is on my reading list! Guess it's worth mentioning I am working on a game to rival SimCity (and Cities Skylines), though aesthetically it looks like a game straight out of the 90s.

If Chris Sawyer made a city builder that dived deep into simulation.. that's what I'm aiming for.

Still in early development: https://store.steampowered.com/app/2287430/Metropolis_1998/

YesBox··on How to get 7th graders to smoke
I had the briefcase experience (except it was a portable glass display case with every drug under the sun). Looked like a bunch of candy to me as a kid. I think they even had a fake version placed next to the real thing?

One thing they did that has stuck with me though was this plastic bag contraption with some material inside to represent the human lungs. There was a hole at the top which the DARE officer placed a lit cigarette, then began (somehow) pumping air from the hole down into the lung material. I remember watching the material quickly go from white to brown and tarry. By the time the cigarette was out, she looked us all in the eyes and said "this is what smoking does to your lungs"

YesBox··on [dead]
[dupe] https://news.ycombinator.com/item?id=39981034
YesBox··on RollerCoaster Tycoon at 25: 'It's mind-blowing how it inspired me'
I plan on diving deep into economics at some point, but not immediately.
YesBox··on RollerCoaster Tycoon at 25: 'It's mind-blowing how it inspired me'
I plan on porting at some point during early access. The graphics engine already supports Mac, and the game is C++, so shouldn't be too difficult
YesBox··on RollerCoaster Tycoon at 25: 'It's mind-blowing how it inspired me'
Aiming for EA by the end of the year :)
YesBox··on RollerCoaster Tycoon at 25: 'It's mind-blowing how it inspired me'
I loved playing this game so much as a kid. Its inspired me to create my own game using the same aesthetic [1]. Im basically answering the question "what if RCT was a city builder?"

Thanks Chris!

[1]https://store.steampowered.com/app/2287430/Metropolis_1998/

YesBox··on Launch HN: Rosebud (YC S19) – Turn game descriptions into browser games
Really depends by what lens you use for "better" (let alone for the entire industry), IMO. I think there is truth in that statement, but only in a historical context when breaking into the industry required a publisher and creating a game required writing your own engine; that truth dwindles as the markets approach (real) saturation. (And there's an argument to be made that those two filters were actually great for filtering people who can create memorable games)

People take pride in craftmanship. If AI can match that, that isn't better for them. More choices (competition) means more money diverted in marketing and ads. That isn't better for game studios and all their non-marketing branches.

All this to say, the more competition there is on the market, the winners end up being marketplaces, not game studios. Music is a commodity at this point. PC/Console video games are far behind that, but walking the same path. Mobile games are not far behind music. IIRC about 80-90% of mobile games development budget is for marketing and ads. There are around 10x mobile games released every year, compared to Steam.

I'm biased because I'm working on my own (PC) game, and I am very grateful to be working on this before the tidal wave hits. It will probably be awhile before AI can match hand-crafted/polished digital experiences.

Just sharing my thoughts as a game developer who grew up in the 90s. This isn't personal, humans will almost always take the path of least resistance. If AI matches expert level output, the outcome is inevitable.

YesBox··on A* tricks for videogame path finding
Im working on a city builder[0] where you can see inside homes. Expanding on point 1...

1. The streets have their own graph, as does each individual building. There's an address book; each building stores the driveway tile connecting to the street graph here.

2. Pathing inside homes uses A*. In order to make this extra fast, I bake the 8-directional egress weights for each tile in the building/yard.

2b. This gets condensed down into a 16-bit bitmask (2 bit chunks, 8 directions) and then stored in a hash table

2c. Each bit-chunk has four possible states:

FULL_BLOCK (e.g. a wall)

HARD_BLOCK (e.g. a large object that prevents walking through the tile from any direction)

SOFT_BLOCK (e.g. a smaller object that prevents passage on one edge)

NO_BLOCK (e.g. an unoccupied tile, or a tile with a tiny object)

This way a unit pathing inside a building does not need to check for obstacles on every tile. This also allows units to pass through tiles with objects provided the object is not huge and is rotated in such a way that the exit and entrance edge is not blocked. Lastly, an agent can still walk through a wall if the player e.g. forgot to place a door, to prevent the simulation from breaking down.

3. I use a waypoint system (stored in a queue) for agents so they can traverse through the different graph hierarchies with ease. This is also used to e.g. tell the unit to walk to their car first if they are driving.

4. Pathing on the street uses a different method (though still utilizes a baked graph) that makes it extra zippy.

[0] https://store.steampowered.com/app/2287430/Metropolis_1998/

YesBox··on Tell HN: DuckDuckGo Search Results have jumped the shark
This happened last week: https://i.imgur.com/EXzZqCl.png

Seems to be fixed now, but it reminded me of the early search engine days.

Funnily enough, when I used dogpile.com, it returned relevant results

YesBox··on Ask HN: Any indie game developers here?
I think you should give HN more credit than letting the original poster control the dialog in the comments. I didn't flag your post, btw.

Best of luck

← PreviousPage 6 of 9Next →