Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Pyrex & Nyeo

37
Posts
2
Topics
75
Followers
4
Following
A member registered Jan 03, 2022 · View creator page →

Creator of

Recent community posts

(1 edit)

My main recommendations for people who want to do the same, in any language:

  • Build an event loop! You want your game to run at a consistent framerate regardless of the browser's animation speed.
  • Adapt to different resolutions by having a desired size for the game canvas, calculating a that-sized region, and offsetting all draw operations so they land in that region.
  • Write code to draw/fill rectangles, sprites, and text.
  • Write code to handle collisions and detect the point/direction of the contact point for rectangles/circles.
  • Write code to handle physics. You want to inch each object slowly in the direction of its current motion -- you want to detect collisions, and on collision, you want to figure out how much of its speed is perpendicular to the surface it ran into versus parallel to it. Adding -1x vel_perpendicular will slide along the surface -- adding -2x will bounce!
    • This sounds scary, but the cases are actually way simpler if you only have rectangles and circles.
    • "Detecting collisions" is way simpler if you have a tile-based level sitting around or if the number of objects is overall fairly small. You want to find a list of all the objects that could possibly collide and touch each exactly once.
  • Write code to handle input. I do this in the same code that does drawing, and my rules are:
    • Each draw operation should have a depth.
    • The draw operation closest to the top should get the first chance to handle the input.
    • Draw operations lower than the top should know if one closer to the top already handled it.

I think that once you've done all this, you have an environment that is roughly on the friendliness tier of Pico-8. From there, writing a GameMaker-style event loop is probably your best recourse, although I didn't because I'm used to Pico-8. I didn't include tips about audio because those strongly vary by environment.

I'll probably publish a more detailed guide to some of this as part of the postmortem!

(1 edit)

Thank you for playing! This is a moderately spoilery post that responds to some of the thoughts/curiosities you are implying you have.

Re the description: things in CWs happen at least once. I am listing them in CWs not to advertise them but to warn people away who might find them disconcerting.

That said, the vast majority are mechanically represented rather than textually -- it would be surprising to me if someone didn't recognize the themes of abuse/kidnapping murder and the identity loss, because they are overtly and repeatedly presented. There are some that are textually represented -- I think the concept of caste-based servitude is repeatedly and specifically invoked in the Lore route and endings.

Here's a few that are easy to miss because they only happen once or have complicated activation conditions:

  • Addiction and drug abuse: try the Rave option in the Library, or learn the Infatuate skill.
  • Extended public humiliation: Attempt a Wish and then lose nine days consecutively.
  • Sexual activity with non-sapient feral animals: try the Dazzle option in the zoo.
  • I think the reference to needles was removed during dev, but if you find it let me know!

I'm sad to hear that you were confused!! I think getting all the endings will probably not be revelatory, but I do think that taking the info presented at face value will get you to a pretty good idea what is happening in one or two playthroughs. The ending typically tells you more about your character than about the world, and the world is basically the same in every playthrough.

That said, there's a slightly more revealing sequence triggered by all-skills-unlocked in a wish-free playthrough; that's probably as close as you get to a "true ending"!

Re the wish system, which occurs in endgame: it affects skill costs and ending conditions. Specifically, the ending-selection algorithm is replaced with a binary pass/fail if you have a wish active. 

Thank you! The presentation is influenced by a few things:

  • A thing I'm fascinated by is whether changes in the camera's perspective affect the level of player identification with the player character. This game uses perspective and shadows to emphasize the reality of the player and the diminished importance of the world -- things disappear when they would be out of your view and all the shapes subtly shift to emphasize the camera position. However, unlike a full first-person game, all objects remain in your awareness and nearby objects have equal importance to distant ones. And -- while I do deliberately replace the player's cursor, unlike in a first-person _shooter_, I never steal the cursor or impose resistance on it.
    • Compare Civ 2's earlygame as an example of a game with a similar gameplay loop that uses shadows but not perspective, and Minecraft as an example of a game with a similar gameplay loop that goes way harder into forcing player identification via view angle and theft of the cursor.
  • A second thing I'm fascinated by is design systems that put purely abstract things on the same conceptual level as non-abstract things. For me this comes from having a lifetime fascination with slot machines, but you see the same concept in games that resemble spreadsheets and dayplanners. In a retro game, everything is represented by iconography that in some way simplifies the thing it is, meaning that creatures can easily have equal status to creature icons and to blocks of text.
  • A third thing is that I'm not very good at pixel art! Or representational art in general, really.

Thank you! Your rating isn't required -- you can just click around and enjoy what it's showing you, if that's your thing.

Thank you!! I'm basically trying to reappropriate the script structure that Hades successfully used. 

By which I mean -- there's several systems that control the dispensation of text. Some are "fast" -- they allow you to acquire more text every turn -- and others are "slow" -- they allow you to acquire more text only every run. Some of the text is gated by conditions that are likely to change pretty often and some of it is gated by conditions that are likely to change only once per run -- so when your hidden text is governed mostly by the fast cycle, you have a very high ability to uncover it; when your hidden text is governed mostly by the slow cycle, you get a drip feed. The game is designed to make it impossible to see all the text in less than three runs.

This is something I thought about a lot and I'm relieved that it seems to have basically worked.

Thank you, I'm relieved you were able to figure it out!

I'm relieved people seem to like the writing, too! Parts of it were very considered -- other parts were done very quickly because psychological engagement with the subject of my game was causing me stress. Weirdly, I think the second set of lines was actually more effective.

Hey, thank you for playing! It seems a lot of people expect the interaction to be click based, and not long press-based. I think Minecraft communicated this by having the "dig" animation be accompanied by a looped audio clip that cuts off abruptly -- it is possible I should do the same.

Hey, thank you!

I think that if there is a fundamental problem here, it might be with the game's incentive structure. One, highrolling on a given floor has a very high expected value that affects the player for the rest of the game -- two, I think the game is not good at communicating the future value of a skill you receive.

One of the games I was inspired by is a little minigame collection named Chinese Parents which has a very similar skill progression system, and their approach was basically to do two things:

  • Link each skill to a passive action -- you could choose six passive actions per turn, and each one provided guaranteed growth in a relevant stat.
  • Provide intermittent exams which would judge the player on a known list of skills. These exams awarded the equivalent of EXP and the game provided a passive HUD that would warn you in advance about which skills you had failed to develop.

There were many, many presentational problems with this, and the numerical balancing of the game was somewhat flawed -- but I think the fundamental idea was really good, and I think the combination of choices they made caused the game to overall tend towards specialized builds.

I think if I were to develop this further I would probably come up with a system that accomplishes the same thing, but via a more simulationist set of interactions than Chinese Parents used. ("These three thralls _already exist_ in the world -- you won't see more unless you woo them -- as a special deal, you can woo them with a skill that would not usually be effective for that purpose.")

Hey, I'll let you know if I build this! The game is built from scratch in web technologies that would make this somewhat difficult, and I think the control scheme may not be ideal for phones, unfortunately.

Hey, thank you for playing!

I think that right now the game has an interesting problem, which is that the levels are actually pretty structured but people don't perceive them that way.

I had an interesting experience watching a playtester -- they observed "There's obviously a pattern here, but I'm not getting it" and then carved out what I thought was an unusually efficient route through the level given the rules that the generator uses.

I am trying to figure out how to give a person like my playtester the feeling of having a sixth sense.

I'll continue contemplating this! There are some design reasons I'm tempted not to do this -- the main one is basically that I think that the current game design creates a lot of "near misses" -- runs ending in 5 thralls but not 6 -- which I think are very compelling.

However, a lot of people clearly like the game and want to play more of it, and I think many people like the feeling of safety that comes with keeping a character.

Thank you!

Usually my goal when I make a game like this is to create a situation where evil does not feel specifically encouraged or discouraged. This is pretty hard to do with a scope this small and I don't think I nailed it completely, but one of the prerequisites to do that is to make sure that evil options are there and that they are presented somewhat unemotionally.

Hey!! This is obviously super unfinished, but the central mechanic (the pendulum swinging) actually feels really good. I've seen a lot of games attempt to do this, but the narrow target zone and use of actual (but 2D-only) rope physics make this one notably work better than average.

It feels a lot like swinging a pendulum in real life but with the main failure mode (failing to maintain an intended distance from the subject) taken away.

I'm stuck on the screen that says "A Balancing Game." I don't see where I can press a button to continue. Any tips?

You might have a formatting bug! (In the Snake Eyes outcome) It produces "Error: cannot find a closing tag for HTML <span>"

Other than that, this is charming! Have you used any other game tools? I feel like the central mechanic of this game would present really well visually, and I couldn't actually come up with an optimal strategy off the cuff which suggests to me the game itself is basically interesting.

Thank you for playing it!

Hey, this is functional! However, the game seems to load at a larger resolution than my screen, meaning I need to move scrollbars manually to look around.

I also feel that the input system is a bit confusing -- the verb I pick makes it hard to predict what the next text will be that comes after it.

Sounds and feels OK!

That's correct! This was written from scratch. The most challenging part was the graphics engine, but a close second is the movement physics, which Bhijn helped with.

Hey, thank you!! The judging period starts very soon and I won't make changes before then, but I agree these are reasonable changes to make in principle.

My main suggestions to you in the short run are to be observant of level layouts -- they are random, but in many cases it is possible to determine the contents of a tile without seeing it -- and to play a few more runs -- your character's base stats will be higher with each subsequent run!

Completing the conditions for the final ending in a single playthrough is possible (and usually takes me two to four attempts) although collecting all the thralls in a single run is a matter of pure luck.

I no longer remember! If I had to guess, symmetry with the other rooms or canceled content.

It's out! Thanks for your patience.

It's out! Thanks for your patience.

Hey! You might notice you can't play this one yet. I uploaded a playtest build yesterday, and a second one today, but it's not public yet. Come back tomorrow!

ACK! You'll probably note you can't play this yet. While the submission is up, this is still in playtesting, so I haven't made the page public yet.

Come back closer to March 1st and you might have access!

There's not a proper ending, but the endless runner gets an extra mild visual if you complete it around 4 times and then stay alive for around a minute in one of the endless runner sequences. (I don't remember the exact timings)

Thank you!!


Leech life and numerological signs from the mortals of Batavia to rebuild your dominion. Feed the eternal bleeding cross, but don't let your greed outstrip your curiosity, lest the Master return from his grave.

Hey itch.io! I made this game over the weekend. It's 2048, but presented as kind of a cross between a few genres I like: it's a little bit slots-y, it's got incremental game stuff where you get to build a city, and there's a bouncy soundtrack if you get 1700 points.

I thought really hard about the overall feel of the game and tried to use a variety of subtle interactions to encourage players to make moves quickly and impulsively. For instance, the crowd of people at the bottom of the screen breaks off and becomes disuniform-looking if you stop playing, and you'll notice that the interaction sounds are synced to the beat, meaning that getting a run of eighth notes requires playing super fast. 

Using nudge-based features to change a game's feel without touching its mechanics is kind of my game design fixation right now, and it was a lot of fun applying that line of thought to a well-known and widely-beloved puzzle game. I used to binge on slot machine design articles and I try to bring a lot of that stuff to the games I build, even though they're all benign and MTX-free.

I hope some of you take a look at it! It's playable here on Itch, and if you click through you'll also get a link to my earlier Rubik's cube slot machine too!

i'm wrong about it being a tritone, incidentally!!! but yeah, the idea is that the basic spins produce something that sounds like a dom7 chord, and it resolves to the chord you hear in the bonus round. the bonus round "summary" noise is a dom7 chord that resolves to the tones from normal gameplay. my hope was that i could motivate people to mash to resolve the tension by getting a bonus round

Hm, where did you get confused? (Or just everywhere?) There are button prompts during the cube phase, but I think the endless runner has the problem that only one button makes you jump. I'm kinda tempted to just make every button "jump" during that minigame.

thank you!! glad you enjoyed it. now that you mention it, i kinda agree -- it eventually started to grate on me in playtesting. i think it might mostly be that the volume is too loud? but it could be the tritone in the spin fx is too hardcore.

oh man!! i wonder if i know your dragon! glad whoever that is liked it.

thank you!!!! i tried real hard, i'm glad you liked it!

hey, glad you enjoyed it!!

oh gosh, i'm glad you liked it enough to play it so much! or felt compelled enough or w/e, since slot machines can be like that!!

hey, glad you enjoyed it!!

(2 edits)


Reech the Kobold is trapped behind a brick wall of mahjong tiles. On the other side of the brick wall is a fire-breathing dragon. This Is Fine.

So, riichi mahjong is an abstract strategy game from Japan -- you might know it as doman mahjong if you play FFXIV. It's basically a race to see who can build a hand first. Making efficient decisions can improve how quickly you accomplish that.

This is a single-player strategy game based on the riichi mahjong ruleset, but I took out the rules that require reading opponents, and I tried to support a pretty generous attitude towards strategies that are high-risk in riichi proper. It also has furries! (Well, one furry.)

You can see the rules in a little bit more detail on the itch.io page here or in the game itself, which is free.

Please let me know if you find bugs! I had some friends playtest this and I fixed the ones they found, but a few of them were things I really should have caught, so I suspect there's one or two show-stoppers in here. Based on playtester feedback, I reduced the difficulty early this morning (as of 1-3) so folks who played this game on 1-2-2022 might benefit from re-testing.

(Also, if you're feeling apathetic in-game and looking for something to motivate you, try shooting for 20,000 points.)