segunda-feira, 22 de fevereiro de 2021

past projects 02: interstellar rising

Insterstellar Rising (a name that intentionally doesn't mean a lot) was an attempt to test a series of little experiments in traditional rpg mechanics in a largelly text based interface, initiating experiments in interactive fiction and narrative systems, things that interest me a lot.

you play as a sort of mercenary, doing jobs that vary from murder to escorting, in a procgen space system composed of planets, moons and asteroids. the game is structured in missions, that consist of a single narrative encounter, probably solved with a single narrative choice. in the meantime, the player can also go to any place on the system, visiting locations where they can request services, and ask favors to a small cast of procgen characters with varying aptitudes.

 

the game's title screen
the game's title screen

 

 

 

structure:

the system you live and play in is composed of seven locations among planets, moons and asteroids, although the difference is purely cosmetic. each one of these locations has four places that can be visited by the player, a degree of influence the player has there, a degree of influence each group holds there and an opinion this location has about the player.

the player can raum freely through this system, visiting locations and using the services of any establishment. however, a single establishment per location can be used until the player finishes another mission. likewise, the player can turn to the characters to ask for favors, but each character will only do at most one favor until another mission is finished.

the missions, then, structure the game and give it rhythm, creating a sort of chapter, or session, even to the actions performed outside of it. what I wanted with this was to a make a game that was an open world, but still kept a tighter grip on its rhythm and kept the player on a more cohesive line. I also hope that this structure invites the player to relate the actions they're performing with the mission they hope to accomplish, giving more cohesion to what they're doing.

 

narrative:

every mission is a narrative event that can be accessed through the location it occurs in. narrative events are encounters where the player must choose one option of action to perform, having then either success or failure at this encounter. almost every event is very simple and requires only a single choice of action.

I chose at the begining of the project that I would be programming it with a tool I didn't understood very well and this stilted me a lot through the development. I wanted the events to be more complex, possibly procedural and thus way more varied. what I managed to implement was something way more simple. there is a small variety of events that repete frequently and the only variation on the experience is how you choose to achieve success on them.

narrative choices in events have a certain success chance depending on what type of action it is and your aptitude on them. some choices have a garanteed chance of success, but can only be chosen if the player has a certain influence on the location it's in.

establishments are also narrative events where most of the options can be performed with the right amount of influence, like buying an item at the market, but there can also be actions with possibility of failure, like robing a bank.

I wanted that anything the player needed, like an item, or influence somewhere, could be accomplished through a variety of means, each one needing different preparation or incurring on different consequences. buying an item requires that the player has enough influence at the location of the market, either through completing missions there or asking for the favor of a rich character, but they can always try to steal the item, which would mean they could never use that market again. some actions can be performed by both establishments and characters, but both involve a different procedure with different chances of success and failure, etc

 

narrative screen with different types of narrative choice

 

 

 

actions and attributes:

I hate the traditional way that games deal with attributes. if almost all attributes just lead you to deal more damage, but with different weapons and skills, they're just a teoretically less restrictive way to restrict weapons by class or create weaknesses in enemies to certain types of attacks. I find this very unsatisfactory.

I wanted an alternative to attributes that actually made me feel that I was inhabiting a different role by investing in one and not the other. I tried to do this in this game by creating four (sort of five actually) ways you can resolve narrative encounters, allowing the player to have different aptitudes in each one of them.

enforce, deceive/ hack, negotiate and convince. I tried to give each action type an actually different texture to the others by giving each different inate costs and consequences independent of the narrative choice they're attached to. this way, a narrative choice has different effects if the player got success or failure on them, but its action type implies a recurrent effect that the player will always take into account.

<enforce> means achieving success by enforcing your will on others and will always lead the target to lower their opinion of you if you get either success or failure.

<deceive> and <hack> work the same way, you seek to achieve what you want by tricking the target. if the action is successful, they don't find out and you don't loose opinion with them. if the action is a failure, they lower their opinion of you. <deceive> has the benefit in relation to <enforce> of allowing you the possibility of not loosing opinion, but they also tend to have a lower chance of success and require more preparation.

<negotiate> never makes the target lower their opinion of you, since it never involves violence, but their chance of success slightly requires the target to have a good opinion of you and you have to give one of your items to the target if the action is a success. <negotiate> then, depends on a good opinion with people and locations and a good flow of items.

the last action type is the one that involves the least amount of cost and consequence for the player, but completely depends on a good relationship with the target, <convince>. this action only has a minimally viable chance of success with friends and will still tend to be lower than the other ones, but doesn't cost items and will never have consequences on failure.

given the limitations of the narrative system, I don't think this was well explored, but I love the idea and want to explore that better in the future.


locations and establishments:

the locations are procedurally generated, in a really simple way, four random establishments, a purely visual panorama, an opinion on the player an their influence there and the influence of every group on the location.

to try to make the locations more concrete than just an agregate of establishments, I added the rule that the player may only use one establishment per location until completing another mission. this helps to limit a little the capacity of the player, preventing things from getting out of hand, and creates a stronger relation between the four establishments of a location.

the procedural generation of these places is a little stronger now, despite selecting the establishments randomly. the A, B, C and D establishments might not have anything to do with each other a priori, but aquire a strong relation with each other when together by becoming mutually exclusive. place A gets the trait of not being usable at the same time as B, C and D. the random choosing of four places becomes inherently significant, without the need for pre existing meaning.

generaly it bothers me this feeling in open world/ended games that you can do anything at any time. the player can be everything, have everything, see and read everything, evolve everything. at most the player makes mutually exclusive decisions in very discrete points like choice of class, faction, etc. what that feels to me is that the world looses a geographic quality, that the elements of the world loose a strong relation to each other and the game becomes a bucket of things for the player to fully experience in the order they feel like it. not allowing every establishment of the game to be used at once was a small, but constant and granular, way that I attempted something different.


the location screen, with access to the establishments



groups and characters:

characters have a certain opinion of the player, a degree of influence in every location in the system, belong to a group and have a trade. the player can ask them for favors using three options of action: threathen this character if they have information on them <enforce>, negotiate with them in exchange for an item <negotiate> or just ask for it <convince> .

characters can perform two types of favor, allowing the player to use this character's influence somewhere for the duration of the mission or performing a service according to their trade. the services provided by these characters are the same from the establishments. characters with political trades can increase or diminish the influence of a group somewhere. hackers and spies can obtain information on a person. artists and social influencers can improve the opinion a location has of the player and so on.

groups are just an agregate of characters and possess a certain influence on every location of the system, going from 0 to 100%. this number is abstract, but the group with the biggest percentage on a location influences the opinion it has on the player. likewise, the opinion of a group's members on the player influences the opinion the group itself has.

if most members have a positive opinion, this group will tend towards a positive opinion with time, depending on the intensity of their opinion. the same for negative opinions. the influence of the groups on the locations work the same, the opinion of the location will tend towards the opinion of the dominant group.

I wanted this to be way more dynamic than it ended up being and wished the player would feel more motivated to engage with this system of opinions. opinion affects the success chance of <negotiate> and <convince> actions and can lead to agressive narrative encounters to trigger in locations with really low opinions, but I still wish it was more significant. new characters get inserted in the game very rarelly and they never change group, so the group's opinions flunctuate to rarelly for this to be dynamic.

opinions affect the player more strongly at the level of characters, probably. being able to get favors with convince actions is really useful.

 

the character contact screen

 



archetypes and traits:

archetypes and traits were an attempt to deal with the question of both objectives as well as classes or skill trees. traits are characteristics that the player acquires and change their aptitude towards certain actions. archetypes are a special traits that the player acquires when they play in a special and specific way and meet certain pre-requisites.

normal traits reflect a hidden system that records every action the player performs. when the player uses a certain type of action, this type increases in a hidden counter and all other types of action decrease just a little. therefore, if a player uses a certain type of action all the time, this action reaches an arbitrary treshold and the player gets a trait that improves their aptitude in this action. likewise, if a player never uses a certain type of action, it decreases enough on this counter and the player gets a trait that decreases their aptitude with the action type.

unlike normal skills in rpgs, in which a player chooses a skill to become stronger, or increases an atribute, traits reflect the player's actions. to be stronger in <convince> they actually have to use it more, but at the same time, thet get worse at it if they never use it. this system tries to make all player actions meaningful in a small and granular way and express that the game is listening and paying attention to what you do.

archetypes attempt something similar. each archetype has a list of pre-conditions and grant a special trait when they're met. "Knee-Breaker" requires the player to threaten lots of characters. "Gentleman Thief" requires them to pull off lots of successful heists without using <enforce> actions. the idea is that archetypes recognise interesting acts by the player and register them in a concrete way on the player character.


graphics and interface:

I was doing a more complex game for the first time, programming, doing art and design by myself, so I wanted a style that was visually simple, but dynamic. I chose something more graphic, with representational elements very sporadically, like the panoramas and the character portraits.

the interface of little boxes side by side is a very organic influence from older games, specially pc games, but also comics and photography. the nature of the photography is the index, photography produces this little index of a moment or thing, that can be exibited next to other indexes, but as a self contained fragment. I like an UI that presents the game elements to the player with a more abstract relation to each other, allowing me to manipulate it very easily. the game communicates the relationship between the elements, but doesn't have to represent it. I can show a place or person and say a certain symbol or word is associated with it, things like that.

to make the game more dynamic I decided to animate purelly graphic things. the screen constantly has glitchy little things that show up and vanish and the conections between the UI boxes are animated and suggest that information is being passed between them (or I hope it does). the only animated representational thing are the rotoscoped portraits, where the really low framerate contrast with both the naturalistic movement and the constant movement of the scan lines.


summary and conclusion:

my goal with the game was creating a tiny rpg system, where each actions matters, not because of big choices that veer the story, but in a granular way in the game's system, with small consequences for each action made and mutually exclusive choices.

I didn't want a "role-playing" game where the player chooses skills and classes that communicate what type of character they are, but a game that actually requires the player to behave a certain way, acknowledges this and records it in a concrete way.

the game ended up being a valuable experience to me as a designer and programmer, aside from an interesting draft of the design ideas, but was restricted by my lack of experience and bad tool choices. I really want to revise those ideas on the future.


the game had music composed by Ra Irigaray and can be found here in a hopefully playable state: https://umunum.itch.io/interstellar-rising


Sem comentários:

Enviar um comentário

Floreio, minha gramática de geração procedural de texto

Gostaria de falar um pouco da ferramenta de geração procedural de texto por gramática de substituição que eu venho desenvolvendo na Unity pa...