• 0 Posts
  • 32 Comments
Joined 1 year ago
cake
Cake day: June 16th, 2023

help-circle
  • Hi. I work at a conpany that makes digital card games.

    Start by making the rules work. We generally use a callback implementation. We have a class that handles the game and enforces rules and dictates flow, classes that represent players, and then a rendering class.

    The game will call relevant functions to prompt the players for an action, passing the game state with them. The players respond with what they want to do. The game calls the renderer to draw it out, and the renderer will then call the passed callback action. Repeat until the game is over.

    When a human is involved then you just hook actions to buttons and pieces and clickable elements that the game catches and responds to if needed.

    Really you can use any principle or design paradigm you want, but since you are making a “simple” turn based game just having it simple and well segmented is an easy way to keep a handle on it.


  • But presumably you don’t just stare at the wall. “Humans need something to do” is mainly bound to not just sitting around twiddling your thumbs. It’s the reason we get bored, the brain is annoyed at not having anything to focus on.

    It doesn’t have to be literal work, just something you find engaging, be it going for a run, tending to houseplants, or completing your entire video game backlog.

    And of course there is variation between humans. Some people cope well with having little to do, others always need to do something they find productive.




  • I mean, it isn’t meaningless, just culturally subjective and lacking a rigerous definition. Berries are a set of specific fruit, which fruit being included being determined by the culture in question base on percieved similarities and historic uses. We use it to quickly bring up the specific group and whatever vague characteristics we percieve them to share.

    So, the definition for berries that you seek is simply “the fruit people you’re interested in would point at and identify as a berry”, which is a vague definition and not rigerous at all, but most people would in fact think of the same thing you do if you say “I put berries on top of my cake”. If I ask my wife “hey, on your way home swing by the store and buy some berries, any type will do”, she will not bring a watermelon. She in fact will buy what we both agree are berries, and so the word has useful meaning.

    You’ll find most classifications humans have do this too. The real world is really good at refusing to fit into the neat boxes we made to classify it and the things in it, and yet we can still use them fine enough as long as we don’t get lost in semantics and wondering if a hot dog is a sandwich or cereal soup.












  • Its more a human thing: you have a big thing many people are working together to build, you have to organize somehow and make sure the thing actually is being built and does what it needs to do. Good companies do have an overall plan and good communication.

    SCRUM is just one of many ways of organizing a project. It in itself isn’t really a programming thing even if it is most often used there, the general structure can work for just about every project that can be split in to multiple smaller tasks and sub-projects.

    If your programming team is perpetual firefighting and chaos with nobody knowing their roles then that’s a sign of a bad organization or a lousy management structure. The last company I worked at was very organized. Status meetings thrice a week, clear seperation of responsibility, a good team lead divying up tasks the cropped up, and good communication between programmers.


  • Its not that strange: people use what they are familiar with. Most people have a Discord account these days and migrating over there is as easy as clicking an invite link. In contrast Lemmy is relatively unknown and untested to the general audience, and is a step higher on the hassle scale, even if it is a similar service to Reddit - not counting the usual fediverse complications.

    People are drawn to go as far down the hassle scale as possible, the fewer steps between them and their goal the better.

    Not that a lot of communities did successfully migrate over here, partially or not. Lemmy is a lot more active now than when I started looking into it during the initial API struggle in June.


  • I’m going to give you the advice I usually give new Gamemaker users who come to the engine expecting to make their dream game in a week but quickly realize that isn’t happening. You’ll have to adjust it a biy for renpy but the core idea is the same:

    Start small: smaller than you thought possible. Start by making pong. Start by making asteroids. Learn how to do collision and movement by making a platformer where the one goal is jumping over a single ledge. The goal is to break your learning down to tiny, incremental steps, so that you are only learning one new thing or mechanic at a time. As you get more confident and start to get a feeling how to think like a computer and solve problems that could arise slowly expand to slightly more complicated projects, move from pong to brick breaker, to pacman, to something else small but has a few more moving parts.

    Ask questions (find f.i the forum), look up tutorials, and do not be afraid of experimenting, of breaking things, of taking projects others made and changing things to see what haooens, of really asking “why” things work the way they do.

    So, just take a bit of time. No need to be afraid of failing, programming is a skill like any other, it takes time to learn, you are going to suck for a bit. People learning the piano sound awful the first few months, and then suddenly with practice and diligence they start sounding kind of ok, then good, then actually really good. Same with cooking, knitting, writing, painting, building, and programming. All things that take time and effort to get good at. You wont make your dream visual novel today, nor tomorrow, but you will make something, and something is a lot better than nothing.