To my pleasant surprise I continue to get approached by companies wanting to commission a custom version of Spaceteam for their office/event. These short jobs help pay the bills and the process is pretty streamlined now so I keep taking them.
The latest is Électricité de France which, as you might expect, is a French utility company. They wanted a safety-themed version to use for team-building exercises. Each level has different safety reminders like "Reduce coffee intake!", "Get enough sleep!", and "No texting while driving!". Hopefully it will make their exercises more exciting.
I usually charge around $10,000 for a basic customization with just new words and phrases. The price increases if they also want new control panel graphics, characters, logos, etc. The first time I did this I lowballed the price, but I've since learned to charge for my time and the lost opportunity cost and to overcome my reluctance to do yet another Spaceteam reskin :)
Technically you can change the words in the game with a $5 Admiral's Club membership (get yours today!) but it wouldn't be a separate app with company branding, and often they want changes that can't be done with the Lexicogulator. Also most of these companies have budgets for this sort of thing. Sometimes I wonder if I could charge a lot more and they wouldn't even blink...
I often get asked if there's a way to play Spaceteam with people who aren't in the same room. Ever since I added "Internet" mode this has been possible, even though it's not designed for this purpose (it's just another way to connect if Wifi and Bluetooth aren't working). But you still had to find some external way to communicate: voice call, Skype, etc.
Now I'm working with a service that will give the game built-in video and audio chat, making remote play much easier. I'll be making an official announcement in a few weeks when the integration is ready.
Mostly I'm trying the make the game more stable and the code cleaner before going wild with all the puzzle ideas I have planned.
I've been working on a big architectural change which I'm calling the LevelGraph. It's an intermediate representation of a level describing the dependencies of each piece, that I can refer back to from other systems.
By dependencies I mean things like:
this item is here because it's part of a ritual -->
the ritual is needed to open a secret door -->
the secret door is needed to access a secret area -->
the secret area is needed because that's where the treasure is
I can use the LevelGraph as a blueprint to:
- Construct the level by placing sprites into the scene
- Hook up interaction rules for things that need them
- Make sure the level is solvable, and output the solution (for testing)
- Add context-specific hints for each step
- Easily find out how and why something was generated, if it's causing problems
- Defer parts of level generation until later (eg. the LevelGraph might specify that a puzzle needs a set of 8 unique symbols, but not specify what those symbols are. The symbols can then be chosen later by a system that picks the 'theme' of the level)
Previously all these systems were mixed together and it was hard to disentangle them and difficult to make changes without breaking things.
With the art getting closer to final quality I've also been spending more time on custom editors inside Unity, so I can edit the visual properties of scenery and items. Certain game mechanics like clues and markings depend on what the final art looks like, so this has been a bit time-consuming as the art goes through various iterations.
I'm giving my artist Sam a bit of a break while I stabilize the core game. There's still a bunch of art I need for the beginning and end of the game but those are both still very much in flux so I'll call on him again when things are more finalized.