Skip to main content

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

Twitterbot Game Coding: Rhamnus Free Company

A topic by Levi Kornelsen created Mar 19, 2019 Views: 1,712 Replies: 3
Viewing posts 1 to 4
(1 edit)

So, I have a game I'm building on paper and (as of last night), also as a Twitterbot.  It's functioning now on Twitter, though it's not great yet, and I'm looking for fun ideas to build into it.

The Project Rundown!

If you want to see it in action, the twitterbot can be found at @RhamnusC  - but it's very much "for testing purposes" right now (when it's good enough to be "released", it'll get a mention in the monthly thread).

More to the point of development, I'm building it on Cheap Bots Done Quick, and the bulk of the source code can be found here: https://cheapbotsdonequick.com/source/RhamnusC.  You should absolutely feel free to steal any part of that and use bits in your own projects, if any.

The code is in Tracery, which there's a tutorial on over here.   Some of it should be pretty readable right out the gate - "origin" is the bit it tweets regularly, and if you see #thing# in a sentence, that means go find the entry for "thing" and put one of the replacement text bits for it in here randomly.

Now, that "bulk of the source code" doesn't include the triggers for replies - If you reply to the bot, it triggers a reply, and that code looks like this right now:

{
"YEAH; THE CLIENT IS":"#jobquestion#",
"THE JOB IS":"#setupquestion#",
"LOOKS GOOD":"#tiltquestion#",
"THE TROUBLE WAS":"#progressquestion#",
"THINGS ARE COMING ALONG":"#bigtiltquestion#",
"THIS TIME":"#nearclimaxquestion#",
"THE END IS CLOSE":"#climaxquestion#",
"THE WAY IT ENDED WAS":"#closingline#"

}

..............

Where It's At In Development:

Abe Mendes gave the bot a full test, and it worked fine, has good point, buuuut went a little long and is a bit clumsy in terms of prompts, so I cut it down from eleven questions to eight so far, and might find a way to bring it down to seven before calling it done; I'm working on those prompts, too.  Aaaaalso, Cheap Bots has a deliberate 'failure rate' of 5% on responses, in order to stop bots from infinitely looping back and forth if they tag each other, and that puts an artificial premium on "Keep it short".

.............

The Feedback I Want First:

Primarily, what I'm looking for right now is help expanding the lists.

The lists are these bits:

, "biome": ["taiga","cragland","badlands","savanna","marshland"]

, "settlement": ["up in huge trees","in walled cities","in twisty towers"]

, "authority": ["the justice system","a local theocrat","the ruling tyrant","the commoners"]

, "antagonist": ["a rebellion","a volatile mage","a debt collector","a nomad clan"]

, "issue": ["mining rights","border claims","trade routes","an archaic law"]

, "complication": ["bandits","a dragon","dark cults"]

, "job1": ["smash and grab","sack and burn","seize and hold","recon In force"]

, "job2": ["do a leadership decapitation","hunt bandits","hold a line","garrison some place"]

, "job3": ["bodyguard someone","fight in pitched battles","do covert patrols and ambushes","interdict and blockade some place"]

, "tilt1": ["the locals are fighting with the enemy"]

, "tilt2": ["our side has no real defenses"]

, "tilt3": ["the enemy is hiring extra forces"]

, "tilt4": ["the client died and their heirs are squabbling"]

, "tilt5": ["the client can't pay"]

, "tilt6": ["the enemy offered us more"]

....

I have a bunch of stuff to add to those, and will likely start adding random expressions to other bits of the dialogue, so as to give different prompts each time, but the lists are the meaty bits that need to be as extensive and as inspiring as possible.  So!  Ideas!  Gimme!

Other feedback I want:
  Pretty much anything that's actionable.  "This prompt is weak" is actionable; I can do a thing there.  "This game stinks" is not.

Also fine in this thread:  Any discussion towards "Have you tried?" and "I want to do something like this; gimme a hand?"

Alright, time to roll up my sleeves and spout some stuff for your lists! 

Biomes:
Tundra,  lakelands, coastal regions/strandflats, shrublands, highlands, stony tors, dark pine forests, icefields/icecaps

Settlements:
in hamlets, in floating towns/on house boats, in yurts, in hillforts, in cottages, in vast caves, in stockades

Authorities:
the city council, the merchant company, the town elders, the local baron, The Prophet, the general, the warlord, the local magistrate

Antagonists:
a rival township, a local hedgewitch, troublesome settlers, a mining company, a rogue military unit, a criminal gang/organised crime network 

Issues:
land rights, grazing rights, legal jurisdiction, the building of a bridge, right of safe passage, tolls, taxation, religious freedom

Complications:
pirates, a nest of vipers, a pack of hungry wolves, rogue wizards, a warlock, a haunted ruin 

Jobs:

loot and pillage, defend the locals, occupy the area, root out troublemakers, pacify the locals, depose a local ruler, hunt down a criminal

Tilts:
supply lines were cut, intel was bad, we lost our scouts, a terrible storm struck, natural disaster,


Big Tilts:
our employer betrayed us, our real enemy was someone different, the authorites and antagonists were conspiring together

.... I hope those are useful to you!

Re: general feedback. You've obviously got some time-skips in the narrative you're setting up with this bot - telling the entire story with all the twists and turns through a bot would be tricky in any case - but to my eye the transition from job question->setup question->tilt question looks a little bit abrupt? Perhaps it's worth having some sort of positive reply from the bot after the player has specified what the job is, and maybe something to fill the gap between the setup ("everything is in place and looking good!") and the tilt ("oh no we've been through something terrible")?

It doesn't need to be a big thing: just something to bridge the gap between everything being fine and everything having gone terribly.

I agree with the first tilt coming on a little suddenly.  However!  Rather than adding another step, I've been thinking about rewriting those tilts and the line that brings them in so that they're more clearly "early weirdness" - less major setbacks, more things like "The client wants us to operate under a false flag?" and other stuff that feels like startup difficulties.

(Also, absorbing a good pile of those list-suggestions...    Om-nom-nom-nom.)