[-] sam@r1b.it 1 points 3 days ago

Either! That's typically how I've played most RPGs when it comes to determining Charisma, Dexterity, etc.

A player might say "I want to try and Force the door open," determining it themselves. They might also say "I'm gonna survey the horizon. Do I see anything of note?" and the GM might say "Sure! Roll to Engage."

[-] sam@r1b.it 1 points 3 days ago* (last edited 3 days ago)

With the base dice system, yes. I'm lazy so I'm just going to copy-paste what I said to the other commentor, lol.

It’s important to note that doubling up on dice in this system is essentially min-maxing. You’re getting a 75%+ success rate on Forcing in exchange for a 0% success rate on Engaging. That is just with the base system, though. I didn’t include these sections in the post, but other systems of the game (such as Effects) meddle these numbers and can allow a double d6 character to successfully Engage.

And no, I haven't played Fabula Ultima. I'll be sure to check it out tho if it's similar!

[-] sam@r1b.it 2 points 3 days ago

Seems like if I take forceful and strong, I can never ever succeed at at least one categories of options?

That's exactly right. While, yes, they are unable to Engage with two d6s, that kind of tells a story with just the math. That would be the classic "strong, short-tempered jock" archetype. They may not be the brightest, and they may not be the most careful, but dang can they hit hard!

It's important to note that doubling up on dice in this system is essentially min-maxing. You're getting a 75%+ success rate on Forcing in exchange for a 0% success rate on Engaging. That is just with the base system, though. I didn't include these sections in the post, but other systems of the game (such as Effects) meddle these numbers and can allow a double d6 character to successfully Engage.

Though, my party and I understand all of this because we've been building the game together. I see now how that requires a wealth of mechanical context and isn't really all that clear to new readers.

Unclear how health and recovery work. Seems like the double d6 would have low stress, high wounds?

Essentially just two pools of hit points, but with the added complication system if you roll a marked number. Yes, a double d6 character would have a low Stress capacity (6) and a high Wound capacity (18 - 6 == 12). They can take some physical hits, but are weak to mental hits.

Again, this wasn't covered in the Markdown preview I wrote, so I apologize for that, but recovery is done entirely through storytelling, particularly during Downtime. If a character received a Wound from fracturing a bone, they'd spend a months-long Downtime in a sling. If they received a Stress from a terrifying encounter, they'd spend an hours-long Downtime coping with it. And if you have a lot of Wounds/Stress and forgot how you got each one, you can simply say "Hey I'm gonna recover during Downtime" lol.

Have you played Fate? This seems like a distant relative of Fate Accelerated.

I have! There was no direct inspiration, but I do like Fate a lot.

No meta game points or succeed at a cost?

Meta game points are covered by Effects, which were not covered in the Markdown preview.

As for succeeding at a cost, Wounds and Stresses cause "an immediate narrative complication alongside the action’s outcome", but there's no rigid system for uninjured characters. I tried to work it in, but it felt clunky for a rules-light game like this. I will say that the section on actions does give a brief blurb about "the relative ease or difficulty of the task at-hand". When I've run the game with my party, I've narrated a player barely succeeding a fairly difficult task as a success with a cost.

84
submitted 3 days ago* (last edited 3 days ago) by sam@r1b.it to c/linuxmemes@lemmy.world
2
submitted 3 days ago by sam@r1b.it to c/rpg@ttrpg.network

I put the full ruleset on Google Docs, but below is a Markdown version of the sections relevant to the dice system. I've been working on this for 3 or so months, and my buddies and I have played maybe 5 games with it. We like it a lot! I feel like the core mechanics and the math behind them tell a super intricate story despite being so simple, which I think is super cool. What are your thoughts?

Who am I?

Players need only decide one thing when creating their characters: which dice they use. All characters are represented by exactly two and nothing more.

The first is known as their Action die. Pick the one that best fits your character.

  • Strong, powerful, and tough characters use a six-sided Action die.
  • Charismatic, charming, and attractive characters use an eight-sided Action die.
  • Agile, dexterous, and swift characters use a ten-sided Action die.
  • Intelligent, thoughtful, and quick-witted characters use a twelve-sided Action die.

The second is known as their Approach die. Pick the one that best fits your character.

  • Forceful, reactive, and fiery characters use a six-sided Approach die.
  • Disciplined, courageous, and willful characters use an eight-sided Approach die.
  • Sharp, perceptive, and attentive characters use a ten-sided Approach die.
  • Meticulous, level-headed, and careful characters use a twelve-sided Approach die.

The rest is up to you! Your character can look, act, and carry whatever you want — just be sure to check with the Narrator first.

What happens when I try?

Players will automatically succeed in most of their endeavors, but those that involve some level of difficulty or risk are determined by the rolling of dice. All such actions belong to one of four types: Forcing, Consorting, Finessing, or Engaging.

  1. To Force is to use raw, physical strength. One must roll between four and six to successfully force.
  2. To Consort is to persuade, deceive, or otherwise communicate with others. One must roll between five and eight to successfully consort.
  3. To Finesse is to maneuver one’s body in a precise, swift, and calculated manner. One must roll between six and ten to successfully finesse.
  4. To Engage is to interact with an object using intense focus and care. One must roll between seven and twelve to successfully engage.

(This is a table in the original document)

  • Force: 4, 5, 6
  • Consort: 5, 6, 7, 8
  • Finesse: 6, 7, 8, 9, 10
  • Engage: 7, 8, 9, 10, 11, 12

When attempting an action, the player rolls both of their dice. One successful die typically results in a successful action, two typically an overwhelmingly successful action, and zero typically a failure. However, the relative ease or difficulty of the task at-hand may change this.

…and if someone tries to stop me?

If ever two or more characters are in direct competition with one another, the players may choose to enter a Contest. During which, all parties take an action to win, with the character yielding the highest degree of success coming out victorious. If multiple characters yield the same degree of success, and the Narrator is unsatisfied with a tie or stalemate, they alone may roll again.

What about when lead starts flying?

Players typically act freely and without order, but the Narrator may enforce turn-based actions if the provided structure is desired. The most common such case is combat.

Turn-based encounters are divided into Rounds. During which, all participants take a single action and note the number rolled by their Approach die. This becomes their “initiative” for the round.

As the players roll, the Narrator creates a list of every action and its degree of success, using the initiatives to order them from lowest to highest. Upon completing the list, the Narrator reads through it and describes how the Round unfolds. If an action becomes impossible due to the outcome of a previous one — such as the death of a character — it is simply ignored.

Once the Narrator is finished, a new Round begins, and the cycle repeats.

How bad is it, Doc?

If ever a character is inflicted with a physical injury or mental affliction, they mark an unmarked number on their Wound or Stress tracks, respectively.

Until the character is healed of their infliction, rolling a number marked on either track means their injury flares up or their composure cracks, triggering an immediate narrative complication alongside the action’s outcome. Rolling a number that is marked on both tracks increases the severity of said complication. If either of a character’s tracks is completely filled, their body or mind has reached its limit, and they are permanently removed from the game.

Each track consists of numbered slots matching the values a die can roll. The size of your Stress track is equal to the number of sides on your Approach die. The size of your Wound track is equal to 18 minus that of your Action die.

[-] sam@r1b.it 10 points 4 days ago

Language is used to communicate. If you get so caught up in the "logically correct" word to use that people don't know what you mean, you're defeating the purpose. The "right" word is the one that people understand regardless of how messy it's history is

21
submitted 2 weeks ago* (last edited 2 weeks ago) by sam@r1b.it to c/fediverse@lemmy.world

cross-posted from: https://r1b.it/post/12935

As I have browsed the Fediverse through r1b.it, I've noticed lots of missing content from remote communities. Some of that has to do with actual federation problems (which I have been in talks with other instance owners to fix), but most of it is a result of completely intentional behavior. Regardless of that, though, I feel as if missing content detracts from the r1b.it user experience. So, I decided to flex my programming muscles a bit and devised a solution.

For the more technically inclined bunch, you can keep reading to see how it works. For everyone else, you can just be happy to hear that you should now be getting all new content from your subscribed communities! If you have any further federation issues, please let me know. You can always @ me in !croak :)

The nerd stuffLemmy relies on an event-driven feed, meaning it doesn't always automatically pull posts from remote servers unless someone is actively browsing or querying them. So, if a r1b.it user doesn't actively interact with a community, the content won't get pulled. If no new content is getting pulled, no one will interact with the community. To break this cycle, I've set up a lightweight Python script to automatically sync every subscribed community in the background. This script is set up as a cron job that runs every 6 hours.

This script first queries r1b.it's local PostgreSQL database to gather a unique list of every remote community local users are subscribed to. For each community it finds, the script targets Lemmy's resolve_object API endpoint using the community's full actor URL to refresh its metadata and maintain connection health.

To keep this script from turning into a DDOS as r1b.it grows, it shuffles the community list to spread instances out and has a polite randomized pause between each request. Additionally, I plan to remove this script entirely if r1b.it ever gets big enough to federate itself naturally.

#!/usr/bin/env python3
import subprocess
import urllib.parse
import urllib.request
import time
import random

LOCAL_DOMAIN = "https://r1b.it/"
DB_CONTAINER = "REDACTED"
DB_USER = "REDACTED"
DB_NAME = "REDACTED"

SQL_QUERY = """
SELECT DISTINCT c.actor_id 
FROM community_follower cf
JOIN person p ON cf.person_id = p.id
JOIN community c ON cf.community_id = c.id
WHERE p.local = true 
  AND c.local = false;
"""

def get_subscriptions():
    cmd = [
        "docker", "exec", "-i", DB_CONTAINER,
        "psql", "-U", DB_USER, "-d", DB_NAME, "-t", "-A", "-c", SQL_QUERY
    ]
    try:
        res = subprocess.run(cmd, capture_output=True, text=True, check=True)
        return [line.strip() for line in res.stdout.splitlines() if line.strip()]
    except Exception:
        return []

def resolve_community(actor_id):
    encoded = urllib.parse.quote(actor_id, safe="")
    api_url = f"{LOCAL_DOMAIN}/api/v3/resolve_object?q={encoded}"
    req = urllib.request.Request(
        api_url, 
        headers={"Accept": "application/json", "User-Agent": "LemmyAutoSync/1.0"}
    )
    try:
        with urllib.request.urlopen(req, timeout=10) as resp:
            return resp.status
    except urllib.error.HTTPError as e:
        return e.code
    except Exception:
        return 500

def main():
    communities = get_subscriptions()
    if not communities:
        return

    print(f"Found {len(communities)} unique remote subscriptions")
    
    random.shuffle(communities)

    for actor_id in communities:
        status = resolve_community(actor_id)
        if status == 200:
            print(f"{actor_id} FEDERATED")
        elif status == 400:
            print(f"{actor_id} ALREADY FEDERATED")
        else:
            print(f"{actor_id} FAILED ({status)")
        
        # Polite randomized pause
        time.sleep(random.uniform(1, 5))

    print("Sync complete.")

if __name__ == "__main__":
    main()

23
submitted 2 weeks ago* (last edited 2 weeks ago) by sam@r1b.it to c/tidalpunk@slrpnk.net

To help bring more awareness to marine conservation, overlooked aquatic organisms, and ecosystem engineers (ex. kelp and mangroves, deep-sea bacteria, and keystone species), I’m starting a monthly "Species of the Month" spotlight over on !marine@r1b.it!

The idea is simple: every month, we highlight a marine or aquatic species, dive into its ecological role, and share research/appreciation around why it matters to its ecosystem.

I know I'm a little late to get the ball rolling, but I'm opening nominations for October now! If you have a favorite aquatic species, an endangered marine animal, or an underappreciated ecosystem worker you'd like to see featured, come drop a nomination! Perhaps even one with a spoookkyy twist? You can see more information about how to do so in the original post on r1b.it.

Since this community of course isn't dedicated to my little series, it will be far easier to keep track of nominations if they are kept within !marine@r1b.it. Though, I don't want to force you all out of your bubble (or force my community upon you), so 'll be sure to keep tabs on !tidalpunk if you want to explicitly specify that you're making a nomination :)

Looking forward to seeing what species get put forward!

68
submitted 2 weeks ago* (last edited 2 weeks ago) by sam@r1b.it to c/fediverse@lemmy.world

Is it just up-front cost? I understand that for larger instances because they'd have to setup heftier systems, but even micro-instances seem to rent cloud compute when they could probably get by with port-forwarding to an old laptop.

Edit: I understand that self-hosting is a skill that takes years to learn, and I'm aware that the vast majority of people on Earth choose to spend their time and energy investing into completely different topics. However, Lemmy tends to attract the techy type, so I suppose I just assumed the ratio of self-hosters-to-not would be higher. I'm not saying it's trivial, just that I presume more Lemmings know how to do it than, say, Redditors (taking total users into account ofc)

[-] sam@r1b.it 6 points 2 weeks ago

Your logo looks identical to Photon's logo, and the UI seems very Photon-y. Inspiration or coincidence?

27
submitted 2 weeks ago* (last edited 2 weeks ago) by sam@r1b.it to c/newcommunities@lemmy.world

I have absolutely no idea how this gap has existed in Lemmy for so long, but !marine@r1b.it is here to fill it! I've been a Lemming for many years, and I've never seen a marine community pop up.

So, whether you’re a marine biologist, tide-pool explorer, scuba diver, aquarium hobbyist, or just someone who loves ocean photography and marine conservation, this community is open to you!

Edit: I was a little over zealous when I wrote "I've never seen a marine community pop up". From my conversation with JohnnyEnzyme@piefed.social in the comments:

"But you’re absolutely right – I completely forgot about !ocean when writing this post. I shouldn’t have said I’ve “never seen a marine community”. Though, it is fairly inactive like you said. And this is the Fediverse! A little decentralization never hurt anyone ;) I perfectly happy to run alongside and support “competing” communities"

18
submitted 3 weeks ago by sam@r1b.it to c/aquariums@lemmy.world

cross-posted from: https://r1b.it/post/4805

I like anemones just because they're so fascinating. Clownfish are beautiful and omg hermit crabs are adorable

1
submitted 3 weeks ago by sam@r1b.it to c/marine@r1b.it

I like anemones just because they're so fascinating. Clownfish are beautiful and omg hermit crabs are adorable

3
submitted 3 weeks ago by sam@r1b.it to c/asklemmy@lemmy.ml

I feel as if Lemmings can be very politically polarizing. Definitely less so now than a few years ago, but I still see it from time to time. How does that effect the macro-community's general perception of the military? I looked and only found one community on any instance, and it was fairly small and inactive.

[-] sam@r1b.it 8 points 3 weeks ago
53
submitted 3 weeks ago* (last edited 3 weeks ago) by sam@r1b.it to c/fediverse@lemmy.world

Content? Politics? Community? A cool integration you're looking for? Maybe even a cool domain name? I'm not looking for tips as an instance owner, lol; I'm just curious.

Edit: I've gotten a lot of push factors, what about pull factors?

1
submitted 3 weeks ago by sam@r1b.it to c/marine@r1b.it

Especially the flat, derpy ones. They're so cool

Diver swimming with manta ray Diver swimming with whale shark

25
submitted 3 weeks ago by sam@r1b.it to c/communitypromo@lemmy.ca

With mander.xyz being down for the past couple months, a huge gap has been left in the Fediverse for herpetology enthusiasts, reptile keepers, and field herpers.

To help reconnect our community, I’ve launched !herps@r1b.it, a quiet, nature-focused space dedicated to cold-blooded creatures of all kinds!

Whether you’re looking to share field observations, show off bioactive enclosures, post photos of native frogs and snakes, or discuss care advice, you’re very welcome here.

⚠️ IMPORTANT! If/when mander comes back online, I fully encourage you all to go back to it -- it's an absolutely wonderful instance. I'd love it if some people used both, but I don't expect everyone to.

[-] sam@r1b.it 5 points 3 weeks ago

I've always been conflicted on LTS. As a Linux hobbyist, I've used bleeding-edge software for years and had very few breaks and issues, but as someone who also maintains their own instance, the added level of reassurance is nice. Do I think my stuff will break? No, thats why I use Arch/Artix on my laptop. Am I still anxious about it? Yes, that's why I use Debian for my servers

[-] sam@r1b.it 8 points 3 weeks ago

Can unopened. Poser...

[-] sam@r1b.it 13 points 3 weeks ago

I don't wanna rent the hardware for my instance forever :(

[-] sam@r1b.it 8 points 3 weeks ago

$60+ for a video game with more paywall-locked content is absolutely diabolical... My most expensive game is Factorio lmfao

[-] sam@r1b.it 26 points 3 weeks ago

He won, but at what cost?

[-] sam@r1b.it 8 points 3 weeks ago

I just made my own instance :) I'm VERY excited about it

view more: next ›

sam

0 post score
0 comment score
joined 3 weeks ago
MODERATOR OF