KSchnee on DeviantArthttps://www.deviantart.com/kschnee/art/Ethos-Game-Demo-4-732066159KSchnee

Deviation Actions

KSchnee's avatar

Ethos Game Demo 4

By
Published:
498 Views

Description

Playable demo at kschnee.xepher.net/code/unity/…
Known bug: Unity's tilemap system works fine while designing and then stops working when built for distribution, so you can walk through walls. Trying to find out why.

This is Demo #4 of the Ethos game idea. This version combines a little of the previous demos: Persuasion, conversation flow, and learning/teaching.

Controls: WASD to walk around this crude-graphics lab. You can hit Space next to the beds to heal up, next to the dark doorway along the upper wall to go outside and have adventures, or next to either person to talk with them. You can also hit I to open/close an inventory screen.

NPCs like it when you tell them new information about topics that interest them. They get annoyed or bored if you repeat facts or discuss uninteresting topics, or bring up a topic unrelated to whatever they may've discussed last. For instance, if they talk about Biology, you can ask about Biology or Chemistry or Science, but will annoy them if you discuss Raiders. A bored/annoyed NPC can end a conversation by themselves. You can just start talking again, but time advances by one shift (6/day) and you get fatigue. Sharing new info on a topic that interests an NPC gains you Favor.

How do you get information? Either talk with people, or go outside. The outside has facts available on a few topics that aren't available from either NPC, making adventuring a useful source of knowledge that you can then tell to the NPCs. When you get too beat up to continue, head home and use the bed.

What do you do with Favor? You ask for favors. The scientist (left) can give you camping gear to reduce your fatigue gain during adventures, and the quartermaster can sell you armor. You can also do a favor for the QM, by giving him the scrap metal you find.

The point of this exercise: Demonstrating gameplay that's focused on conversation, and having actual gameplay there that requires a little thought to use effectively. Why, you might actually want to think about the NPCs' interests and emotions a little and not just pelt them with info requests until you're ready to leave! It's not that a game ought to be entirely about conversation, but a system something like this one would be an interesting part of a larger game.

Where could I take this idea?
-Good graphics.
-Implement the Social menu to have some means of gossiping, joking &c with little specific factual content. Socializing builds favor with NPCs.
-Varied NPC personalities. Right now both NPCs bounce between topics frequently, get annoyed easily, and have the same willingness to spend time with you. All those parameters could vary.
-More adventure to the adventure mode. Go outside and see a map that you uncover, stopping at various locations with place-specific adventure events.
-Reputation system that isn't just a single number, to avoid the "Codsworth problem": "By Jove, he's a drug-dealing serial killer cannibal, but he's a fine chap anyhow: I watched him build an excellent night-vision scope!"
-Deciding definitely on a context: post-apocalypse, seafaring, space, ponies...?
-Thinking more about how knowledge works. I have variables for ideas like individual facts having complexity ratings so they must be learned in order, or being false, but those are unused. All of the story text is canned and barely organized by grouping it into topics. NPCs know only that Topic X is a child of Topic Y and is linked to Z somehow. I could see the possibility of storing knowledge in a more complex and less scripted way; in the past I'd built little AI systems with a neural/semantic structure like "raiders --(use, 95%)--> guns", but that kind of data storage would tend to make the NPCs sound dumber. I had also considered taking advantage of such a system
-Moving toward a slightly more complex AI system, the next increment up. It might walk around between locations and mime doing things (as in an Elder Scrolls game), but it'd also be less purely reactive. That is, right now the code mostly just says "yo, NPC, the hero said something; what is your reaction?" There's a notion of a queue of things the NPC wants to say (which is why you sometimes will see multiple sentences at once in reply), but conversation is still very much a player-driven, turn-based system.

Feedback is helpful!
Image size
1920x600px 356.16 KB
© 2018 - 2024 KSchnee
Comments0
Join the community to add your comment. Already a deviant? Log In