Item handling and inventory

Here it is – another blog post about game mechanics! This time I’m going to talk a little about the item handling and inventory system in Prisonscape. I’ve been giving this a lot of thought, since carrying almost any items in addition to your clothes is forbidden in maximum security prisons, but like I’ve mentioned, we’re not creating a 100% realistic prison simulation and therefore have to “loosen up” the rules a bit. The reason for this is the job system (quest system in most RPGs) and the need to carry items around.

This is how I have categorized items in Prisonscape: trade goods, hot items and job items (job items can be hot items, too). Trade goods are the currency inside and outside of prison. Inside it’s stuff like cigarettes, Reese’s pieces and cookies. You know, stuff you can use for trading almost anything. Because it’s no use to create a separate item for each trade good, I’ve decided to combine them under one category. Outside the prison this is of course money, which can be used and transferred when needed.

Hot items are items that are forbidden inside – this can include dope, weapons, etc. Hot items need to be concealed in various places around the prison (when carrying, they’re usually, you know… inside you) including your cell. If you’re caught with a hot item, it will be confiscated and you’ll get some alone time in the hole. Hot items also have size, so that bigger items are harder to hide than small items.

Job items are the ones you can carry without a risk of losing them. This way the story line is not obstructed and you can feel safe carrying them around. There are, of course, some items that are hot AND job items, but this will not affect any of the main story lines. The idea with this kind of item and inventory handling is to simplify the whole mechanics so that it does not affect the gameplay negatively.

First screenshot!

Here is the promised screenshot of Prisonscape:

The graphics are still very much work in progress and most of these sprites are just placeholders, but I think you can get a good picture of what style we are aiming for in the game. In comparison, here’s what we had just a few weeks ago:

 

Gangs in Prisonscape

This is a post that might give away minor spoilers about Prisonscape. I will surround the spoiler parts with a spoiler tag, so you can decide for yourself if you want to read them or not.

Every prison needs its gangs. In fact, some prisons are run by them, and in many cases they are the ones who keep rioters and most violent criminals at bay with their own complex rules. In Prisonscape, we have 4 major and few smaller prison gangs. The player can join these gangs based on the character’s skin color. But you don’t HAVE TO join a gang, as you can keep playing as a “neutron”, a person who doesn’t get involved between the gang rivalries, but doesn’t get any of the benefits of being in one either. Here’s a short description of the gangs we have in Prisonscape:

Aryan Brotherhood
“The Brand”

 

The Aryan Brotherhood admits only white members who align themselves ideologically with white supremacists. They admire German and Irish ancestry and Norse/Viking symbolism and history. All members of The Brand vote to initiate new members, and even one negative vote will keep the player out of the gang. Final approval is given by the gang leader, the “General”. The Brand has a “blood-in, blood-out” policy, meaning a member must kill in order to be admitted into the gang and must die in order to leave.

While the members of Aryan Brotherhood are white, they are known to associate with Mexican Mafia and sometimes with blacks. These associations are formed as a necessity and generally involve drug trade. The alliance between AB and Mexican Mafia came about as a means of protection against rising numbers of rural Mexicans of La Nuestra Familia.

The player can join The Brand in the final game. The “benefits” include getting protection from the gang (bonuses in fights) and having cheaper prices for trade items between gang members.

Black Guerrilla Family
“The Vanguard”

The Vanguard maintains an extensive and precise code of ethics and are the most politically oriented gangs in the US. As black revolutionaries, members consider themselves above racism. However, this code is often forgotten in the prison environment, and their oath clearly states that “there is no cure for the evils of the Western world other than through uncompromising destruction”.

They also facilitate drug trade and most of their members are from all-black street gangs such as Crips and Bloods. They maintain close ties with these street gangs to keep drugs flowing and even offer protection to street dealers that are sentenced to prison.

BGF remains rivals with Aryan Brotherhood and Mexican Mafia. They sometimes associate with La Nuestra Familia in coordinating the drug trade from Mexico.

The player can join The Vanguard in the final game. The Vanguard assists the player by providing help for smuggling items into the prison. He also gets cheaper prices when trading between gang members.

La Nuestra Familia
“La Familia”

LNF is a Hispanic gang with a large portion of members coming from rural areas and are referenced as “farmers” by their enemies. They originated in order to protect young, rural, Mexican-American inmates from the Mexican Mafia. It was set up along military lines, including ranks such as generals, captains and soldiers. LNF is a big gang with rising numbers, and they are known for their ruthlessness and violence.

LNF are bitter enemies of the Mexican Mafia and The Aryan Brotherhood, but they sometimes associate with BGF in coordinating drug trade and protecting dealers.

LNF is the biggest gang in the final game. It is possible for the player to join them through a series of long and difficults jobs. LNF provides protection for the player and the possibility to hire a “hitman”. He also gets cheaper prices when trading between gang members.

Mexican Mafia
“EME”

The EME, which promotes ethnic solidarity, is a Hispanic gang that has control over gambling, extortion and some of the drug trade inside the prison. They are known for their viciousness, and they use murder as a form of inter-gang intimidation. EME is also known as one of the most disruptive prison groups within the federal prison system. Its drug trafficking is carried out by a paramilitary organizations and they have a lot of power outside of the prison.

The EME enlists members from urban areas and their allies are The Aryan Brotherhood and various other street gangs. AB and EME are associates and occasionally will take hit contracts for one another.

EME is the weakest gang in numbers in the final game, but they make up this with violence and ruthlessness. Player can’t join EME in the final game, but is associated with them if he belongs to the Aryan Brotherhood.

Dealing with death and time in prison

People inside prisons die. Inmates and guards get stabbed or punched too hard and sometimes the injuries can be fatal. Usually inmates who kill other inmates go to either death row or Ad Seg for the rest of their sentence. I have given a lot of thought to how this should work in Prisonscape. Fighting is an essential part of the game and usually there
are consequences for these fights. But putting the player character in death row or Ad Seg is like death in traditional RPGs – Game over, mate.

So either I remove these from the game altogether, follow the ‘snitches get stitches’ rule (no inmate will snitch about the player killing someone) or integrate Game Over to Prisonscape. I haven’t made a decision on this yet, but it’ll probably come to me when we have an actual game to play and use as a test playground.

Another big question is how to simulate the pass of time in prison. Inmates have sentences varying from few months to Life, and the main character is very likely to
spend at least a few months inside. What if the player gets beaten up and goes to the hospital for a long period of time? What if he beats up other inmates and gets a trip to the hole for a few weeks? What happens to all the jobs he hasn’t accomplished? Will people react differently when they meet him again? For these scenarios I have created a timeline system that all the jobs and events use. Some key jobs (those that are relevant for the progression in the game) will still be there when the player gets back, but many jobs will have time limits.

The character can move freely inside the prison for a limited time each week. This is when the player can do jobs, get to know other inmates, fight, etc. Each of these sessions represents all the spare time for one week inside the prison. In the beginning of each week you also have to choose what extra activies you want to concentrate on during that week.
This can be for example reading books (trains Intelligence) or working out (trains Strength and Fitness).

Unfortunately the promise for screenshots last week was too optimistic. We want the game look a bit better before we start posting them, so it’ll probably a while longer before you get to see them. Sorry!

Prisonscape – Technology and platforms

As Pekka has been detailing the gameplay for the last few blog posts, I decided to write a post about the technology behind Prisonscape.

The game engine is custom written in Java with a few dependency libraries. As of now, the engine supports(among other stuff): 2D tile maps, player movement, collision detection, camera controls, Lua script integration (LuaJ), MP3 playback (JLayer) and UI functionality. The engine is still a work in progress with lots of stuff in the development pipeline. The level editor is also written in Java with Swing driving the UI functionality.

Why Java? Here’s a few reasons:

  • No manual memory management -> eliminates a certain class of bugs completely
  • Excellent multi-platform support -> can easily target multiple platforms at launch
  • Ecosystem which is both large and mature -> no need to reinvent the wheel
  • Improved Java Virtual Machine performance -> reasonable execution speeds for 2D gaming
  • Static typing -> programming errors are caught at compile time
  • Familiary with the language and platform -> optimal programmer productivity right from the start
  • Based on C -> easy to bring other programmers onboard

The popularity of Minecraft has also spread Java to a wider gaming audience which means that many of our potential customers will already have Java installed and updated. As for users with no Java installed, we will wrap the game with Launch4j so that the process of launching the game is smooth.

Overall, Java is a great platform with excellent tools all of which enables me, the programmer, to maximize my productivity. Java isn’t “perfect” but it gets the job done really well.

I also have to say that Lua is fantastic. It was easy to integrate the language into the engine and start getting stuff done. Pekka has really enjoyed scripting the dialogue and NPC behavior using Lua. With script integration, the players can also make their own NPCs, quests, dialogs etc. when they get their hands on the game.

As it was discussed in the introduction blog post, we will release Prisonscape on Windows, Mac and Linux. We’re already doing testing on all of these platforms, and so far the game’s performance has been excellent.

So, what’s coming next in the pipeline? A lot:

  • Custom paths for NPCs (level editor) and pathfinding
  • Improved audio support
  • Support for scripting events
  • Improved quest scripting
  • Improved combat screen
  • Lots more!

Well, that’s it for now. Stay tuned for more tech updates!

– Tuomas

Designing gameplay for Prisonscape – Creating a “lively” prison community

The most difficult (and probably most controversial) issue in designing this game has been the interaction between the player character and the gangs and cliques in prison. Gangs play a big role in the prison system and I feel that they just cannot be left out from this game. In our game the gangs will be divided by race and color, but there are also smaller cliques between the whites, blacks and the latinos. At this point in the development the player is white and can mostly interact with other whites.

Logo of Black Guerrilla Family

Our idea is to have the player to choose from a white, black or latino character with unique quests and dialogs. This adds a LOT of work for the writing and scripting, because you basically have to write three times as much dialog and design quests for the game.
So, for the moment we are only developing the story for the white character and we’ll bring the other characters in the game at later stage.

Shank

There are of course some loner, non-gang NPCs that are relevant in the story, but much of the interacting is done between “your own people”. Almost every NPC in Prisonscape is uniquely designed with a short history, motives and personal traits and quirks.
The great thing about making a game in prison environment is that they are usually filled with “interesting” personalities. There are a lot of psychopaths, sociopaths, violent criminals but also normal people who just had a stroke of bad luck (everybody’s thinking Beecher, right?).

We also want to create a sense of a dynamic prison life by making the NPCs active – they walk around the prison, hang around in their cells or in the recreational areas and talk to each other. This will give the player the feeling of a living prison where people don’t just stand around in the same spots.

We might be posting some early screenshots next week, so stay tuned!

– Pekka