A brand for creativity and problem-solving,
Check out my portfolio of projects and software designs!

Projects and Software Designs

Currently I am focusing on one primary project, followed by two associated software designs and a third independent software design.

BaWo Engine

C# library project for simulating a background world

BaWo Content Creator

Software design for a web tool to craft BaWo JSON content

Golden Hands

Software design for a BaWo-based game industrializing human happiness


Software design for a language and integration app for refugees

Background World

A new component for simulating
vast virtual societies

It does your AI

The BaWo AI is based on a simple but powerful automation formula. Tell it what characters care about, and they'll behave accordingly!

A whole world

Create hundreds, if not thousands of characters, organizations and locations with simple method calls!

Rapidly expand content

Create content expansions for your game using the intuitive BaWo Content Creator

4 classes is all you need

Command.cs to setup, Designer.cs to create, Response.cs to interact, and DataViewer.cs to present

BaWo Content Creator

Create content using simple forms!

Your Web Form In ->

The BaWo content creator will utilize simple HTML5 web forms to convert your design decision into easy plug-in content.

Making new AI choices, or in-game situations, and adding new types of possible values to your game will be as easy as registering a new website account! The content creator will be flexible, allowing you to subtract or add as many items as you'd like, while enforcing a minimum consistency and reminding you on how to achieve good, consistent game design.

Your Codefile Out ->

The content creator is essentially a JSON code-generator, which to non-developers may sound very advanced, but in reality such things as a codefile is nothing but a text file, with very predictable text input. Meaning, your design decisions end up as just formatted text, and what you take an hour to design may just be a few lines of code in the file.

When you are done, the output code file can be downloaded directly, and from then on you just have to add it to a "content" folder in your BaWo project and voila!

Golden Hands

The game industrializing human happiness

A Truly Dynamic World

With the BaWo Engine, this game has worlds in constant agency, adapting both to you and its own actions

Embrace hyperidentity

The ability to pick among hundreds of lives, and then steer it anywhere is a pillar of Golden Hands, and the chance you've never had!

Master Your Destiny

"Life is cruel" says the pessimists. Your job is to prove them wrong! Master life using a changing broad range of choices. Where, who and what will you do? Let's see!

Happy Power

You have a mission to spread happiness, but you can't do it alone. Lead and inspire to spread your mastery about the world!


Learn Norwegian by Experiencing Norwegian

Activities Overview

Below is a diagram of all the activities involved in the app.

diagram of app activities

Design Intro
An app for refugees

BeNorway is a contribution to solving a society-wide problem: a severe lag in the integration- and social empowerment of refugees in Norway. It aims to do so by teaching language in a refreshingly new manner: by empowerment and association. In short, this means two things:

  1. The focus of the app is on giving users more power, both initially by giving them full control over their own learning experience, but also by making everything they learn be about immediate practical use - that is - granting them the power to use language to their benefit.
  2. The app attempts to build associations between the user and Norway, and it does so by writing a story about the user's accomplishments and communicating them through Norwegian cultural history.


Below is a detailing of all the 6 pedagogical principles used to make this app special and efficient, and they also make major impact upon how the app is constructed, even from a technical point-of-view:

  1. Atomization of Knowledge

    Learning should be made manageable by reducing each learning unit to a tiny step, requiring a design of atomic size and predictable style.

  2. Self-Managed Learning Load

    The user should be able to decide what they want to learn and when, so as to increase their confidence in their ability to learn and sense of empowerment.

  3. Knowledge as Possession

    To encourage bonding between the user and the knowledge that they acquire, furthering language as a means of integration, the users should associate their knowledge with possession, or in other words: something they own and value.

  1. Characterization of Personal Development

    The user should be able to think of themselves as becoming gradually more Norwegian, by making them able to identify with Norwegian national heritage.

  2. Story of Future Self

    The story of a user's future should be affected so as to make the user feel like they are part of an unfolding history of who they may become, what they may become part of.

  3. Knowledge as Empowerment

    The language which the users learn should grant them abilites and opportunities they otherwise would not have, leading to both encouragement of use and increased self-reliance through direct utility and -empowerment.

Activity Details

What each activity consists of and allows.


Allows users to either use a default account, log in to a web server account, or register a new account at a web server. While low on priority list, Facebook or Google login should also be a possibility.


This activity is divided into three main areas: the data on user progress, the historical-cultural description of the progress, and the activity launch list.

  1. The data on user progress is a simple summary of the user's accomplishments as they increase. It includes data such as experience points, current level, number of plays, the percentage distribution of different game styles, as well as playful descriptions of the user based on their style of playing. This later includes classifying them as either a Grammarian, a Lexicographer or a Conversationalist as well as describing all of these in 7 levels of accomplishment: beginner -> advancing -> intermediate -> expert -> veteran -> master -> grandmaster.
  2. The historical-cultural description of the progress is a core innovative feature where Norwegian culture, either past or present, is used to write a story about the user as they progress throughout the game. It works similar to the classification described above, but uses general activity as a measure instead. It starts with a title, which in turn always starts with "You are" and finishes with for example "a Skiflyger", "a Viking", "Fridtjof Nansen" or "King Haakon", but could also be something abstract like "Nordlyset" or even a fairytale character like "Askeladden". Whatever it is though, it will have to help illustrate a story about the user of the app. This title is then accompanied by an associated image and text. If the title was "You are a Viking", then the image would typically be some famous illustration of a viking or viking life. The text is where the real magic happens though, here the title and image is combined to provide a narrative, and in the example of a viking it could naturally be brought up that vikings used to be emigrants, settling much of the British Isles, and even founding the city of Dublin. Had the title been "You are a Skisflyger", the story could've been based on the metaphore of skiflyging as a leap forward into ones own future.
  3. The activity launch list is a list of four buttons that each opens up a new activity, namely: "Show Me How", "Play and Learn", "Play and Remember" or "Manage Learning", which will each be described below.
Show Me How

This activity is essentially a long page of text with some images, divided into sections that are made easily navigable by link buttons. The text explains various parts of the app's features, and how to use it for maximum benefit, with images as illustrative screenshots.

Manage Learning

Here the user will be able to move around language units between the three categories "Unused", "Learning" and "Know". It does so by having three section tabs on top that the user can click between, and a permanent set of three icons at the bottom which the user can drag and drop the list items onto.

To avoid confusion, there will be a small text on the bottom telling the user to drag and drop to sort the language units. All but a few introductionary language units are by default in the "Unused" category, where they are merely waiting to be moved into the other categories.

Play and Learn

Within this activity all the language units marked as "learning" are listed and sorted in ascending order of how much experience they have given. This is suggest to the user that what they've practiced least is what they should practice more of. The marking mentioned is done in the "Manage Learning" activity. The user chooses from this list a language, and upon clicking it the "Choose Challenge Type" activity will be launched.

Floating at the top of the list is a recommended language unit, emphasized with extra padding, enlarged text and an added small text beneath that says “Recommended”. Recommendation is based on a priority calculation that favours, in descending order:

  1. Any language unit to be chosen at least the two previous times
  2. The language unit which has generated the least experience
Play and Remember

In this activity there is only a big button. The button launches a controlled randomization which chooses an appropriate language unit marked by the user as "know". The marking is done in the "Manage Learning" activity.

The "Choose Challenge Type" activity is then launched, where the user will be able to go back if the randomly chosen language unit was unsatifactory for them.

Choose Challenge Type

Here the user has three different butttons for three different challenge types: "structure game", "vocabulary game" and "meaning game", which upon selection will launch the current language unit with the specified game type activity.

Besides these three buttons, there is also a "Repick Language Unit" button, which takes you back where you came form, whether it was "Play and Learn" or "Play and Remember", while on top of the activity there will be details about the language unit so that the user can examine it prior to choosing to play with it.

NOTE: Common for all games

All games have at the bottom of their activity a standard textbox present which explains some principle of language that the language unit demonstrates, thereby attempting to couple the learning of language units with more formal learning. This formal learning is sometimes used to open a special, rare game for the user where they will get significant amounts of points for being able to tell which such principle of language the current language unit demonstrated.

Structure Game

The structure game is where the users come to learn the structure behind the language units. That is, how a sentence is composed. In the spirit of engaging the user, the mission is to make users create structure instead of simply explaining it to them.

To do this each word is given an associated tag which references the structural function of a word within the sentence. When the user plays the game, they are first allowed to see the sentence, before each word is then replaced by its tag at its position. Above the area where the user now sees the tags, there will emerge a pile of randomly assorted words, some of which are similar to and some of which are identical to the sentence that was just shown. The user then has to assemble the sentence by moving the correct words from the pile and positioning them at the correct position in the language unit, and for each attempt they will receive colorful feedback explaining why they failed or, in the case of success, why it was correct.

At the bottom of both these areas there will be a quicklist of translations/explanations of the tags.

Vocabulary Game

The vocabulary game is where the users come to learn more Norwegian words and phrases. The traditional method of doing this is to first look at the words with the translation, and then only looking at the words and trying to remember the translation. A better way, and in the spirit of engaging the user, is to make the user use the words in a new, different sentences, where many of the right words are supplied, and the full translation is supplied, but they have to pick, here also from a pile, the missing words that makes the most sense, given the translation. This way users are empowered to create their own sentences!

This gives us two areas, a pile area as before, and a language unit area where the user drags piled words onto. Here the feedback is reserved for the finish, when the user is either congratulated or recommended to try again with a pointing out of the words they got wrong.

Meaning Game

The meaning game is about building associations on what is meant by what we say in the Norwegian language, and on how to convey meaning through it. To consider what is meant, we have to consider what a sentence is. A sentence is part of a conversation, and the purpose of conversations is to influence, affect or change the recipients in some way. Somebody who masters language knows when that is most likely to happen with an overall positive outcome. Learning about meaning, is therefore learning about the art of having conversations. To teach this, the meaning game uses multiple conversations, side-by-side, where everything the recipient says is translated and shown, but the user has to choose some stage at either of the conversations where it would make the most sense to express the language unit.

Every wrong possible position in the conversation contains an associated message about why it is wrong in that situation, constantly granting the user feedback. A single game lasts over three rounds, all rounds a different set of conversations, with bonus points for winning streaks. Upon winning a conversation, the rest of the reply-side of the conversations are revealed to the user, with translations.

Skills, studies and work

Amici Nybråten

Organizational, Creative and Proactive Programmer

Personal Qualities:
- strong initiator
- natural leader
- natural speaker
- strong creative
- heavy knowledge-seeker
- well travelled
- good organizational skills

Personal Interests:
- computer game development
- philosophy
- writing (both fiction
and non-fiction)

Check out my LinkedIn here

Going broad

Over the last few years, I've ended up exploring a lot of different subjects:

- Android app
- Unity3D games
- Virtual Reality
- Heroku Cloud PaaS
- Docker images
- NativeScript/Node.js

- C# (most experience)
- Java
- C++ (much in school)
- Go (a.k.a. Golang)
- Python
- HTML/CSS/JavaScript
(vanilla mostly)

- SQLite (lokal database)
- MariaDB (SQL, via XAMPP)
- MongoDB (NoSQL, also
familiar /w MLab cloud)

See previous Unity3D projects portfolio here

Taking Charge

At NTNU Gjøvik university I studied programming for 1.5 years and was very active, almost always the group leader and initiator. While there I:

Composed, either alone or with help from other students, several "Rulebook" documents for various subjects, including:
- Fundamental algorithms
- Algorithms for games
- Prolog
- Matrix math
- as well as a dictionary
in system development

Extra curricular:
- I wrote surreal fantasy
and a poem for a student
magazin called "Morsk"
- I wrote a series of political
satires for the student news
group "Fiber"

Other studies:
- Lots of self-study,
particularly in programming
- Advanced high-school
physics and biology
- High-school chemistry, scientific math and entrepreneurship

The initiator

Throughout the jobs, I always sought to make what I worked with increasingly efficient.

Student Assistant for Experience Design at NTNU Gjøvik:
- Aided students who needed help
- Developed learning material for Unity3D and Android Studio
- Created a document about Game Development Methodologies
- Contributed an alternative app concept for the students to develop
- Contributed to lectures with extra analysis and content
- Suggested grades for students

Summer Course Responsible at NTNU Gjøvik via Excited:
- Developed learning material, including documents, videos and PowerPoint
- Promoted course physically, on web and on social media
- Executed course
- Wrote almost 30-page report about course and possible improvments

Talk to me

Get reply within 48 hours
Email Address
Theorize Studio
Norway, Gjøvik 2816, Snorres Veg 2A
Ph: 98 43 15 17
Email or