#offgridthegame
Explore tagged Tumblr posts
offgridthegame · 8 years ago
Text
Off Grid Development blog 8.11.2017 - Changing Times!
The times-they-are-a-changin.’  New horizons, a shake up, big things happening - this has been a heck of a sprint!
Blocktober
Completely unaware of our social media surroundings, Rich managed to spend a good portion of this sprint during October whiteboxing and completely miss the whiteboxing trend on Twitter that was #Blocktober! Nothing nearly as fancy as the timelapsed art passes from the Naughtly Dog team on how they constructed key hero sequences in the latest Uncharted, but we do have a new building for the intro scene in the player’s apartment. If you haven’t seen this yet at a demo I won’t give away any spoilers, but this level is where your hacking journey begins!
Tumblr media
Indies Unplayed
We were extremely fortunate to be asked along to Indies Unplayed at Secret Weapon Loading Bar in Stratford. It’s always great to show the game and get player feedback. Many thanks to Lauren Francis for having us along, it was a very cool little event and we had some really inspiring titles along side us. Below you can see a player learning the setup to our hero’s story in the intro cutscene we are currently making playable.
Tumblr media
We got to play some fun new indie games and catch up with some old friends too, including old chum Tim Constant, who we last saw at Nottingham Gamecity in 2013!!!
Tim is working on a very cool dystopian job sim.  It’s a #PapersPlease-like game, where you play an immigrant bouncer in a post-Brexit apocalypse:
Tumblr media
‘Settings’ it up
It’s been quite short and quick sprint, so there are no new amazing game features to talk about from Pontus. But as promised, our settings system has now evolved from a bunch of background systems and code into an actual menu. With some actual settings you can adjust!
Tumblr media
The graphics will definitely need more work, but the plan is to fill in more options and then do a second pass on the artwork and layout to make sure everything works well with the content. For now, everything is functional at least.
Tumblr media
Web work
Apart from that, things were polished up in the web side, with some imrpovements and additions to our wiki and to automate our newsletter. That’s going to make our life easier, and hopefully also help any players/modders to find the right Lua API and instructions for how to set things up in LevelKit in the future. I would say “go and check it out” but there’s not really much interesting things in the wiki yet, at least unless you are one of the lucky ones who have access to our builds and the LevelKit already. In which case, you of course should go and check it out to get you started testing how to create your own content for the game!
No funny bugs fixed by Pontus this sprint, and no interesting game design work either. But there definitely will be next time, he’s already spent the past few days with XMind open for plotting some pretty big changes for the game…
Mod testing
This sprint Josh, our modding and level design intern, challenged himself to build a level using the modding tools. The aim was to learn how to build a typical level with a focus on the Lua scripting side of things rather than art, and then take those learnings and see where he could fill in the gaps on the wiki that he found wanting.
Tumblr media
We’ll let him tell you a bit more himself though:
“So I started out by blocking out the map that I wanted to create. Once I had the basic level that I was happy with I got stuck in with the Lua scripting with which I managed to learn a great deal upon completion of the level.
One of my favourite parts of creating the mod was the conversations, as it was super simple to create but also great fun generating branching dialogue between characters.            Following this, I began work on a guide to building a level mod which has been added to the wiki.This is something that I felt would be important for potential modders to have to help make the modding experience more accessible.
This also resulted in a few new pages being created to explain some sections not covered on the wiki yet, such as the ability to add characters to your level. This is a very exciting and interesting feature which will allow you to create many gameplay elements, from conversations to patrolling guards.
Tumblr media
I also had the pleasure of testing the new ability to upload mods to the steam workshop using the Level-kit tools.
Shortly after that it was decided that we should create a mod level that people can download that would demonstrate some of the pre-made devices that any modder can essentially drag and drop into their own mod. It will also be playable which I will turn into an interactive tutorial of how these devices were made to help new modders create their own from scratch.”
Tumblr media
Farewell Harry
Harry had his last sprint with us this month as he is moving to join the development team at Unity, but we made sure he had time to part with a gift for any of our followers who are devs interested in making their games moddable too.
In his time on the team, Harry's done great work pushing modding in Unity 3d, and so we’ve open sourced his work on the Lua framework that makes Off Grid moddable, enjoy!
https://github.com/Semaeopus/Unity-Lua
Tumblr media
Out with the New in with the Old ;)
And with our youngest team member Harry heading to Unity we have gained the wonderful Steve Allen in his place. Steve comes with a bundle of  AAA and Indie experience, so much so that he qualifies for ‘industry veteran’ status, and we are pumped to have him aboard the good ship Semaeopus. I’ll stop rambling and let him introduce himself though:
Hello! I’m new here. I’ve joined the Off Grid team as a programmer, though will no doubt stick my nose in elsewhere. I’ve been programming games for, well, rather a long time, and am really excited to be part of the project. There’s lots of interesting stuff that still needs to be done and it’s already been a welcome change from the larger, corporate games I’ve been working on over the last few years. And who knows, next time I write one of these updates I might have done some work! - Steve
You’ll hear a lot more from Steve in the coming sprints, he’s already made good strides into impletmenting and extending new features in the Lua API for modders to play with, so watch this space!
Fixes and additions
Harry’s last couple of weeks were also a great opportunity for us to dig into some of the bugs in our backlog that haven’t been top priority, but would be welcome fixes with a little effort. We had a fantastic flurry of small fixes from the team, with Harry leading the charge.
Main game:
Messaging with CryptoChat
We setup a small notification to say that a character is typeing while you are waiting for them to respond to you in a conversation. It’s essentially a ‘Smedley is typing’ animation much like you’d see when using a messaging app like whatsapp or imessage.
We also and fixed the pause time between messages, which just needed a little finessing to feel more real.
And most importantly, we set up ‘B’ to skip single messages instead of all of the incoming messages from another character.
Include Mods in use, in save games
We now have save games recording what mods you have subsribed to so you can progress with your mods intact!
Saving NFC
NFC data is now being saved correctly.
Trailer video
We fixed a strange long wait at the end of our trailer that had been bugging us.
Player Phone
We fixed a bug to do with interactions when the player phone didn't appear when doing swipe interaction or scanning things.
Stuck Running
We had a somewhat funny but awkward bug in our animation state machine where the player can get stuck if you were crawling and spammed the run button while getting up - the player would get stuck runnning in circles!  That is now fixed ;)
Look around you
The player character’s look-at IK needed more restriction on target height so that you didnt look at interesting objects on the floors above or below you.
Invisible walls and soft bathroom sinks
Lots of missing colliders were fixed.
LevelKit:
UV Warning
We updated asset importer post processing script to warn about missing normals and UVs on new models. This means as you are modding and making new geometry, the LevelKit tool will tell you if it is missing anything that could cause a later error.
Mod Content structure
We re-structured level directories so that the content a modder makes is in a neater structure.
Non Steam works / DRM free mod exports
Added Export as Zip option to build tab so that you can upload your mod anywhere for anyone (with a copy of the game) to try it out.
That’s all folks
Lots of big things happening so we’ll look forward to catching you next time.
Pontus, Rich, Sarah, Steve & Josh
1 note · View note
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
Hey @doctorow we got the 3d prints of all the hacker characters in @OffGridTheGame together! https://t.co/1VsCptAviT
— Rich Metson (@richmetson) November 8, 2018
0 notes
offgridthegame · 7 years ago
Text
Sprint Round Up - 18.06.18 - Cheat to complete!
This sprint included a major milestone... playing the game from start to finish!  :D
Tumblr media
That may be stretching the truth a bit, and included a bit of cheat... but here’s the detail on that, along with the rest of our work this sprint:
Stub-out of all levels
Stubbed out the game's level sequence and the logic that ties it all together then threw in a completion hack to 'play' the game end-to-end
- Made stub grey box rooms for all remaining levels - Created completeable mission scripts for missing levels - Created level.json and preconditions to make all levels tie together and the game "completeable" - Added dev laptop to all levels and added setting in the device so you can ‘hack’ the laptop to complete the mission. - Made a couple fo test builds and made sure the game is fully ‘completeable’ end-to-end.
Save System
- Set up save files to save persistent data (to last throughout a play-through, rather than just during missions)
Devices
- Added functionality to mission and device scripts to enable state to be saved. - Refactored devices to work towards formalising their operations, and allow for more modding potential.
Updating to Unity 2018 (and everything else)
Unity update, and updated just about everything else to latest versions at the same time. - Updated Unity project to run on 2018.1 - Sound engine & Unity integration updated to Wwise 2017.2.4 - Updated ReWired to 1.1.14.4 - Updated PostProcessing stack to v2      - also updated our settings system and postprocessing profiles to work with the new system - Updated Cinemachine - Added ProBuilder and Text Mesh Pro to project (giving nicer tools for modders since you can build things inside Unity instead of being limited to our levelkit pieces or using external 3D software to build things with)
App System
Needed to undergo some refactoring to ensure full functionality, this has meant a bit of digging around
Bug fixing
- Fixed a Mac path problem that was preventing levelkit work being done on Mac - Fixed a shader used in harbour that was using a deprecated function - Added workaround for Unity not handling nested Canvas Groups correctly (to fix issues with invisible selectable buttons in main menu screen) - Fixed level loading from mods (built-in levels and ones added as mods have a different path for level.json which needed to be taken into account when looking for available levels) Sprint complete!  Thanks for following along with us. The Off Grid Team
If you haven’t already - be sure to wishlist Off Grid on Steam - each wishlist makes a big difference to us, and we really appreciate your support!
1 note · View note
offgridthegame · 7 years ago
Text
Saving (and Loading!)
Hi all - Steve here.  I’m a programmer working on Off Grid - and I’ve had the pleasure of working on save systems recently.  :)
Ha!  This is really one of the short straws of game development.  When I was at Sony, it was almost a rite of passage; these were the days that not only did you have to save and load, but you were responsible for ensuring things didn't die when the memory card (remember those?) was pulled out mid-operation.
Prior to this month, we had the beginnings of a save system in place, but were aware that certain things didn't seem to be working quite as they should - so I took a look.
What I discovered was that we kept a save in memory as well as writing it to disk.  This is a good thing - loading a checkpoint is faster.  But a side effect was that there were two code paths to reinstating a save - to load it from disk, or to just reference the save data as game data.  The danger with this is that the in-memory data can reference 'live' game data, which means the save on disk diverges with this during gameplay.  Lots of copying data later, the bits that weren't working quite correctly now seem much happier.
Tumblr media
The other work I've done was on a system level.  Saving and loading requires making a list of all the files available. Previously, we loaded all of these into memory - but as we cannot know how big they're going to be, this will eventually cause us all sorts of problems. I've instead created a header at the top of each save file, containing the information we need to present to the player. Load the first 1000 bytes or so of each file, grab the header, close the file.
Saving and loading done then? Certainly not!  We will still have new data that needs to be added to our save structure, and I bet there are still some bugs in there.  But I'm confident that we are on firmer ground than we were a month ago.
Til next time! Steve
1 note · View note
offgridthegame · 7 years ago
Text
Sprint Round Up - 17.05.18 - A different approach
Hello loyal devlog readers! 
We’be been blogging about for awhile now, and think it’s time we change up the the way we’re approaching it.  There’s SO much going into each development sprint that we want to make it easier to understand what we’ve been doing.  
From here on out, at the end of each sprint, we’ll be putting together a roundup of the development achievements each sprint, and then breaking the detail out into individual posts every week or two.  It means you'll get more regular updates from us, and they should be a bit more bitesized and cover a specific theme or area across the last month of development.
Keep an eye out for Steve’s next post on save systems - coming soon!
Tumblr media
Now for the sprint round up:
Upgrading the App System
Evaluated current app system and how to get it to fit our requirements & designs
We’ll need to change things a bit so the apps are fully controlled by the Lua scripts
Bug fixes and tweaks after PAX & GDC
Screen fade to black moved to UI, removed all old fade systems/code
…so fades now work reliably on player death, level restart/completion etc.
Pause menu scroll bar was misaligned to edge of screen instead of edge of menu
Fixed guards being stuck in wrong animation / AI states after taking breaks
Taking breaks restores motivation correctly (for NPC’s not just us developers)
 Added interrupts in animation system to break out of animation before it completes. (Now the NPC’s don'ät need to finish their coffee before they can start chasing the player)
Fixed guards sometimes not chasing player
…see above. They *tried* but it’s hard to run while also drinking coffee
The AI system for selecting target locations still had some old code that limited target locations within +/- 2 meters vertical from NPC position. When player disappeared out of sight in stairs etc. that stopped the AI from following.
Fixed our build script’s “build all” option only building Windows.
…also made it ask for all the options needed *before* making the builds, not in between each platform. Otherwise the person making the builds can’t go for a coffee while waiting the build to complete ;P
Data view textures and colours conforming (props sucha as paper sheet and some devices had wrong data colour)
Fixing the formating in the text for some devices (Extra tabs in hand dryer description strings)
Sped up first hacking interaction to make gameplay and feedback more immediate (bathroom thermostat start temp to 20C) apostle/basement conversation after server objective not set to secure
Fixing save issues
NFC data now doesnt disappear on load
Saving and loading is now handled correctly
Save data no longer diverges when play is continued.
Fixing Doors!
Set up scannable interaction prefabs properly,
Added frosted strip accross all glass door models for better visibility,
Scanner door prefab not tagged properly (doesn’t work for the Help overlay)
Prop work
Fixed missing files in levelkit source .blend
Updated the vending machine prop to give more detail
Character Rigging
Worked on bringing new characters into the game
Made a start on rigging and set up of some of the older characters with new Colour LUT setup and blend shapes for their body shape
Thanks for reading! 
The Off Grid team
If you haven’t already - be sure to wishlist Off Grid on Steam - each wishlist makes a big difference to us, and we really appreciate your support!
0 notes
offgridthegame · 7 years ago
Text
Marching on to the US of A!
Hello!  We’ve got a whole lot of fun stuff coming up and it’s been a busy few weeks moving the game forward and prepping for all of these exciting things to come.
We’re headed to the US very soon - we’ll be attending GDC in San Francisco all of next week.  It’s the first time any of us from Semaeopus have made the trip over for GDC and we’re looking forward to it.  There’s going to be a few opportunities to get your hands on the latest build during GDC week:
If you’ve got tickets to the SOLD OUT(!) GDC Experience Mixer on Wednesday 21st you’re in luck!   We’ll be there ready and waiting for you to play.
We’ve got a few ‘pitch up and play’ events in our schedule, too - follow @OffGridTheGame + @RichMetson on twitter for updates on when and where.
After GDC, we’re headed to PAX East in Boston from April 5-8th and Off Grid will be showcased as part of Figs & Co! 
Tumblr media
We can’t wait!  If you’re attending, stop by, say hi, and play the game! Rich, Pontus and Steve will all be there ALL FOUR DAYS with our lastest demo at the ready. 
Now, on to all the juicy details on what we’ve been up to and what you might just see while playing the new demo...
Cracking the passwords
Maybe you’ve read the last two dev blog posts, and remember that we’ve been working on collecting social profiles about in-game characters? Nice way of keeping track of the people you’ve met during the game… though of course it’s a bit more than that.  As in real life, such personal information can be used for all kinds of sinister purposes, like social engineering, and identity theft as well. Or, for guessing all kinds of badly chosen passwords and bypassing security questions for different services.
And that’s the last bit of the puzzle for our social profiling, at least for now. We’ve changed our Lua API a bit so now all the network-connected devices in the game can have specific owner, and configured to have passwords that can be guessed if you have collected enough personal information about the owner.
Tumblr media
To make things a bit more interesting, if you have almost but not quite enough metadata about the device’s owner, you still have a chance of guessing the password. And to make sure the player never needs to blindly try every device, we made the targeting UI display some helpful information when targeting a device, telling you straight away if it’s worth a try, or if you already know the password. Or have no idea about the owner and you’d better just leave the device alone and look for a some more information.
To make this work, we modified our remote connection app, and also added new UI that lets the different apps display their own window with some custom content (modder-friendly, of course) on the screen.  And then we used those to set up a password cracking app that uses the collected social profile data automatically.
(The devices still also have the old fully scriptable access check in place, so it’s also possible to configure them to give access based on any files in your inventory, a specific piece of information about a character, time of the day, or really just about what ever people can create with Lua and our modding API…)
Hunting bugs before GDC & PAX East
The rest of the sprint was filled with solving a long list of bugs and annoyances from the game, all the small things that we’ve noticed during the previous times we’ve had people playing the game.  Most of that isn’t too interesting, but there was one worth mentioning:
Early ‘unauthorised’ access
In The Apostle level, we’ve had a laptop with key files to access all the doors in the building hidden in the basement. During EGX 2017, we noticed that one player was actually able to target and hack the laptop through the walls and floors way earlier in the mission than we had planned. The obvious solution would of course have been just blocking it somehow, maybe only connecting the laptop to a network once the player has started the objective for it. But that wouldn’t have been fun, or realistic would it?! We wanted to ensure that players intuitive enough to notice devices that could be hacked early as a shortcut were rewarded...
Tumblr media
Instead we decided to just make sure the mission doesn’t break and still makes sense if someone happens to do this. So we added some new conversations that are triggered in this situation to explain what the player would have missed by skipping few objectives, and then we just let the player take it from there naturally. So now there’s a quite a different alternative progression through the level, which most will probably never find, but those who do can be proud :D
To do this, we realised we needed a few more ways for all the different Lua scripts to work together. They are sandboxed each into their own virtual machine, and can’t talk between reach other directly. So we added new features to our Mission API to allow people to store some custom data there, and access it from other scripts as needed. Simple thing, but allows endless amounts of interesting uses when creating missions and devices!
New assets and a makeover for the Apostle level
With some expos and demos coming up, we’ve been working on creating new props to flesh out our levels a little more, some of which have made their way into the latest build. Josh spent some time set dressing and doing some level tweaks, replacing some of the old whitebox geometry with the new assets he has been creating. The main focus was the delivery room at the beginning of the Apostle level, and the basement server room, both of which look much more lived in now. Here are some of the props that have gone in:
Tumblr media
Intro-ducing
A  major acheivement has been getting the Intro scene into the engine (anyone who has played the demo so far will know that there has been a placeholder animatic made of rendered stills for #QuiteSomeTime).
Rich and Steve worked tirelessley to iron out some fairly fundamental kinks in Unity’s Timeline tool, and with some not insignificant effort, managed to get a combination of mocap, custom events, Wwise audio engine calls combined with Unity audio, a video playing in the middle of it, and the whole thing to work within the frame work of our Lua defined missions. Phew! It’s exhausting just typing it out!
Tumblr media
We’ll look forward to you checking this out soon at a show near you!
AI’s need coffee too
We did a good amount of work making the guards react to and use a variety of devices recently, recorded some new mocap and plugged that in, too. Steve worked on the AI and setup some new gestures for guards so that they can use the device as it should be used (dispensing a nice hot cup of coffee), but also so that they can be caught off guard (no pun intended) by a hacked machine that has been setup to spew steam or chuck coke cans at them (or whatever other amok state a device might have).
Tumblr media
As with any new feature though, we have managed to create a bug or two... Above you can see a guard that’s more interested in finishing their coffee than chasing the player (which kind of fits the whole premise of the game really!).
BONUS STAGE IS BACK
Tumblr media
Remember this?  When we won the trophy at Bonus Stage last April?  We sure do! 
Well... Bonus Stage is back for year two alongside the London Games Fesitval and is now accepting entries!  Be sure to enter by 23rd March.  Rich was asked to help organise it this year, and of course he agreed - it is a great indie showcase that we’re proud to have been part of, and now support!
That’s a wrap for this sprint - look forward to seeing you at GDC or PAX East!
The Off Grid Team
0 notes
offgridthegame · 7 years ago
Text
Dev Blog Post 23.01.2017 - Drones and pwns
S’been a while, eh!
We decided to extend this sprint in the way we often do over christmas so that the team has a bit of time to experiment and perhaps take on a few tasks that require a good bit of thinking time. It’s paid off as usual, and so we have some great developments in the game to share with you with this blogpost. Read on for all the juicy details!
We are all directors now
Tumblr media
We were very secretive some time ago (nearly 2 years back actually!) about how we were in a small set of selected developers given access to an alpha version if some new tools in Unity. Well...
Originally the tools were called ‘Director’, and with a lot of experimentation and some fairly comprehensive bug reporting they eventually became Unity Timeline, which Unity devs have now been enjoying since last summer!  We are now at the point where what we learnt from experimenting with the original Director tools can be put to good use. If you have played the Off Grid demo anywhere, then you will have seen the still frame animatic for the intro level which sets up the story of the game. We had a mocap session to get all this action captured and now that the Timeline tools have matured (and, more importantly, are stable) we are busy pulling this all together. The opening sequence of the game is going to change dramatically over the next couple of builds - how exciting!
To Octree or not to Octree
Steve had one pretty chunky task to do over the past month or so, and it's been getting the drones to be substantially more drone-y.
So far we have worked on the basis that drones are just characters that happen to be hovering, but this means we lose the opportunity to move vertically and get to places that characters can’t, or via routes that they are unable to take. So the task at hand was to remedy this. Navigation meshes are two-dimensional, so we needed to take a new path - navigation volumes!
Tumblr media
Using the magic of octrees, we subdivided each level down to the smallest size that contains no collidables, or down to a single unit cube, whichever is bigger. Then, each cube is tested to see which cubes it is adjacent to, to create a graph representing all the nodes. After that it's simple - run A-Star on the network, and it'll find a route through.
Tumblr media
This will be available to LevelKit, so drones are accessible to all! There's a few tweaks and kinks to work out, but overall it was a really satisfying feature to work on and should really change the way the game plays. You can run, but you can't hide! Well you can hide. It's a stealth game, after all.
Next will be to get them to move in a more dronelike manner, and perhaps optimise the navigation a little. But that may have to wait until after Steve’s put his cameraman hat back on for the upcoming sprint!
So much modding going on!
Josh has been hard at work testing the modding tools and refining his mods. In particular he expanded the museum of hacking he has been making.
Tumblr media
The museum mod, which he initially designed to be just an interior, has expanded to allow for any future hackable devices to be added to it, no matter their size! 
Josh then turned his attention to improving and developing the transport station map. The map has changed quite a bit since whiteboxing and still has a way to go. For a first attempt at a full level mod it is fairly ambitious due to it being a fairly large map with multiple ways to complete the same task.
Tumblr media
The station has grown quite a bit to allow for more room for the guards and the player to navigate. This will also hopefully allow for a more interesting interior and gameplay possibilities.
Originally the apartments around the level were going to be just blocks that looked like apartments, but now some of them interiors to allow the player to find hidden data files or to find some higher ground to plan how they will tackle the mission.
Tumblr media
The trainyard is still very much in progress, but has also changed quite considerably. The main additions to the train yard include a new walkway that allows the player to navigate to all 3 platforms. A warehouse has also been added which will include some puzzle elements for the player to complete. This is replacing the old puzzle element which involved moving the train carriages up and down the tracks as it was a bit clunky and confusing.
Meta-gamedesign
In the last sprint, Pontus redesigned the character profiles and our data files & SMS generation to handle metadata about the character personalities embedded in data files. That's working pretty well, and we already built a quick app for testing this. So it's time to take things a step further, which is why Pontus has spent this sprint working on the game design for how we'll actually handle metadata collection and character profiling as a player experience. And how that will then tie in with adding a password cracking feature when the player connects to a remote (or local...) device using our SSH app.
The basic idea is that as the player collects different data files, the included metadata is automatically used to build a catalogue of character profiles, over time adding knowledge about new characters, and their personal information, their likes and dislikes, and pretty much whatever background info we (or modders) choose to add.
Tumblr media
All the collected information will be available for the player to view at any time as a new tab in the pause menu, so it's directly useful, for example, to try and guess what kind of approach might work best for distracting a specific guard away from your path. In addition to that, the amount of knowledge you have collected about a character is also then used to determine if you'll be able to access devices belonging to that character. After considering calculating the access as a proportion of known metadata VS all existing data about a character, and realising that this would cause a few odd situations, we settled for a fixed limit for access, and allowing this to be set in each device's Lua script so if the same character owns multiple devices, some can have easier, and some more difficult, passwords. We'll likely also add an option for a device to require some specific piece of information instead of some count of any knowledge, but this should be used as a special case option in missions as it requires the mission creator to make sure that exact data is available to the player at the right time.
A fairly interesting side effect of this design is that it is kind of realistic, in the sense that it's going to be easier to collect enough information about characters who have more metadata defined in their profiles. So, the more you share about yourself online and in social media, the easier it is for someone to learn enough about you to start guessing your passwords and to use the knowledge for identity theft and so on. And at the same time characters who have shared less about themselves (or, the mission creator has been more lazy ;)) will be more difficult to learn about, as you are more likely to just run into the same few bits of knowledge rather than learning something new.
Another interesting feature here is that your library of character knowledge will be persistent, so anything you learn about a character in one mission will be carried over to future ones. While this requires us to do a bit of a better job on the UI side to keep things manageable for the player, it also serves to create a longer game play loop, where social engineering can happen over a longer time span than just within a single mission.
Finally, we're probably going to add few different apps for gaining access to devices, in the sense that the one based on knowledge about characters (so, basically just guessing badly chosen passwords through social engineering) is just going to be one of the tools available for the player. We'd also like to include other tools that target specific vulnerabilities on devices, and perhaps a late-game one that just uses a direct access to government-collected data.
Big News
With all that dev news it’s worth pointing out that we have some other big, juicy news coming soon. We are sooooooo close to being able to announce it that the anticipation almost hurts!
You can find the newsletter signup page here!
If you aren’t already on our newsletter, please sign up!  If you are and you have any friends who you think might be interested, then please share and help us reach even more people anticipating the game!
Ta ta for now,
Rich, Pontus, Steve, Sarah and Josh.
0 notes
offgridthegame · 8 years ago
Text
Dev Blog Post 5.12.2017 - Social Engineering and Distracting Noises
We've been working with a bit smaller team for this sprint, so this is going to be slightly shorter blog post than usually. And we'll switch the format slightly as well, so you'll get a section from both of us telling about what we've been up to...
Tumblr media
Steve:
My first month has flown by! It’s been great to get started and become acquainted with Unity, which has impressed me. I started off on Off Grid by poking around the existing code, and playing the demo level, which gives an good overview of where the project is. After that I was forced to do some real work; first of all, I exposed the ‘Noise’ system to Lua, meaning modders will be able to play sounds that the AI will investigate. I’ve also fiddled with the camera, with the Lua setup, the wiki, and a fair few under the hood changes that hopefully will help us create new content more quickly. Exciting times ahead!
Pontus:
Character profiling
We had already previously converted the text files we use to describe each character's personalities and background information from old XML files into Lua. But as we'de designed some of our data mechanics, and especially the social engineering aspect of hacking and privacy bit further, we realised the profile format we had would not do the job.
So, in this sprint I've worked on re-designing the character profiles to use a tag-based system that allows us, and the modders, to easily add pretty much any amount of background information about the characters, and tag that data in a way that lets us then attach those tags to different data points, files and whatever inside the game, and hook it into the AI's behaviours easily.
(and same as with our mission progression system and many other things, the design goals and explanation how it works ended being much more complicated than the actual implementation, so no need to worry, this is really simple system for modders to use and should be very extensible and flexible for all the crazy weird hacking stories and tools modders might come up with which we never even thought about...)
While doing the required changes for this, I also added few quality-of-life improvements, so the levels can now automatically load character profile files, and the image files used for character colour customization, both from the level's own folders and from the Common folder used for sharing things that might be used in multiple levels. This means that we don't need to duplicate character files to each separate level where the same character might appear, and also modders will have easy access to some pre-made characters they can use in their own levels without having to even bother with the actual character profile files until they want to create some new characters of their own.
Sending SMS, with Lua
We are then using those character profiles to generate text messages (and eventually e-mails, and other files as well) that get sent to all the characters, and that the player than intercept, read though, and use to learn about the characters (maybe to figure out how to distract a specific guard, or to help guessing someone's password, and so on).
This is nothing new, the SMS system has been in place for long time already. But the source file we used for the SMS templates was the last remaining XML file in the game, so of course that had to be converted to Lua as well... If nothing else, it's more consistent and easier for everyone to deal with the same language throughout the project, but it's much more human-readable syntax as well.
To take things a bit further than that, we thought that maybe the actual code used to generate the messages could also be moved into Lua. This certainly isn't something you'd want to mess around for every mod you make, as it's a bit more complicated than the rest of our mission and character files, and the actual content you see in-game can be changed easily by just creating different character profiles anyway. But exposing that code to the modders might open some interesting opportunities, maybe for localizing the message generation to some language with different grammar than what English has, or to build something more complicated than what the base game needs to go with some awesome mod you are making. We'll see what happens!
Oh, and of course I made sure both the template file and the actual message generator code can be loaded from both the Common folders as well as from the level-specific folders, just like with the character profiles.
Outro
That's everything for now! We're not quite sure yet if we'll have a short sprint (and one more blog post this year) or if we should just make it a long one and return back to you in 2018! Either way, we'll make sure to let you now when the next blog post is out!
0 notes
offgridthegame · 8 years ago
Text
What do you call one of the top ten best games at EGX?!  OFF GRID!
Yes, you read that right!  Off Grid snagged a pretty sweet accolade over the four days at EGX:  Eurogamer staff rated Off Grid as one of the top ten games on the show floor.  Read the article in full here.
Here’s the write up on Off Grid (complete with a pretty accurate description of Rich and his conversational skils!):
Tumblr media
While that accolade was certainly the highlight of our EGX experience this year - plenty of other great things happened over the four days:
Off Grid’s Twitch Debut
Tumblr media
Thursday kicked off with an interview and live play through of Off Grid on the Twitch Stage.  Rich talked to CaffCast and Spamfish in a livestream to over 2000 viewers - a first for both Rich and the game!  Watch it here.
We now have our own twitch channel - be sure to subscribe!  Rich took the opportunity to do some behind the scenes streaming while at EGX, so go have a gander at those if you’re interested.  In the future, we hope to use it to do playthroughs of Off Grid, talk in more depth about our development process, and perhaps about some of the inspiration and influences behind the the game itself.
The Geek Show
Pontus (not often seen on camera!) was interviewed by The Geek Show for their podcast and YouTube channel.  Get your glimpse of one of the powerhouses behind Off Grid here:
youtube
Friendly banter with the NCA
The National Crime Agency (NCA) had a stand at EGX and were handing out helpful information to all inquisitive passersby - including literature on the Computer Misuse Act and an NCA challenge.
Tumblr media
Here’s a little closeup of their handout:
Tumblr media
Big Red Barrel Duet with Yucatan Game
Fellow indie dev and Leftfield Collection exhibitor, Joe Bain, and Rich Metson were interviewed by the kind folks at Big Red Barrel.
They’ve put together a special EGX podcast, jam packed with all their favorite games.  Listen in at about 56 minutes for the very best bits! ;)
What else did we love about EGX?
You’re right, we already said the highlight was being picked as ONE OF THE TOP TEN GAMES OF THE SHOW!  :D  That’s totally true - it is awesome. 
Off Grid was also highlighted in OuttaSite’s indie picks at EGX, and the VGChartz write up, Games to Watch Out for from EGX.
But what else did we love about EGX and our participation in Leftfield Collection?  Watching YOU play the game!
Tumblr media
It’s always a treat to see how players make their way through the latest build - taking note what they find interesting and engaging, and what might be quickly passed over. 
Tumblr media Tumblr media
This year marked ten years of Leftfield at EGX - that’s ten years of showcasing great indie games alongside all the big hitters - thanks to David Hayward for all the effort supporting indie developers!
0 notes
offgridthegame · 8 years ago
Text
Sprint Update - 20.09.17 - Straight Outta Leftfield!
Phew!  We’re just about to pack up and head for Birmingham, as Off Grid has been selected as part of the Leftfield Collection at EGX!  We’re SO excited to be showing Off Grid at EGX and are looking forward to players responses to the game so far.  If you’re at the show, please come along and say hi! Also at EGX, we will be livestreaming a playthrough of Off Grid from the Twitch Stage on Thursday at 11:30am (BST).  Follow along online at:  twitch.tv/twitch. We’ve been toying with the idea of starting a twitch account for some time - and with the invitation to livestream from EGX, we finally have.  Very soon, we’ll be streaming live from twitch.tv/semaeopus!  Follow us as we chat through our monthly sprint updates, play through some of the games that inspire us, and bring in other indie devs to talk about game dev life. 
In case you haven’t heard (we hope you have!) we are still looking for a C# Unity Programmer to join the team.  We’ve extended the application deadline to Monday 25th September, so if you’re a UK-based games programmer looking for a change, we want to hear from you.  If you’re at EGX, stop by our stand in Leftfield to say hi, talk to us about the position, and play Off Grid for yourself before you get that application in! 
Now onto the sprint!
Rebuilding the harbour
Just a day after we began this sprint, we heard that we'd have a place at the Leftfield Collection at EGX.  So we sat down to re-plan our work for the sprint with that in mind.  One of the things we wanted to get working for EGX was the harbour level.
We've had some bare bones prototypes of what the harbour would be for a long time now, and a more complete, but still mostly unplayable whiteboxed version of the level for a while.  So it was time to start cleaning and refining that version into something with a bit more gameplay.
Tumblr media
First task was to deal with the player path though the level, so we could guide the player from one objective to the next and make sure we can also place a few obstacles on the way.  The draft level was pretty much just open space, with some late-level locations close to the start, and very little for the player to do around the rest of the level.  Cue moving a few buildings around and erecting more fences to gate the player's path to different locations!
Add a couple of passes of lighting (with a few issues of lightmaps not loading correctly from AssetBundles sorted out); a few hours of placing colliders on objects to block the player from falling off the map; and a few days of writing mission objectives, devices, setting up triggers and so on, it's starting to resemble an actual mission!
Tumblr media
There were a few additional problems we needed to sort out for this level as well.  Nothing too complicated, we just needed to create an ocean, and the sky...
It's a harbour, so we expect to see some water.  Which means we had to create some low-polygon style animated water in the level.  With a bit of modelling, a bit of C# and a custom shader to go with it, it's now working reasonably well.  We'll likely want to refine things later, especially if there's ever going to be a daytime level, and just to move more of the water animation to shader code.
When it comes to sky, we obviously couldn't use the same city skyline skybox we use for the newspaper office level, as half of the sky is supposed to be over ocean.  This was a fairly quick fix - we have a Blender project for rendering HDR panoramic skyboxes quickly - we just had to remove some buildings and add a lighthouse.  Lastly, we needed to change our fog setup a bit to fade out the ocean at the skyline nicely without making any far-away geometry stand out from the background too much.  That pretty much just meant having to use a black fog at far distance.  This works great for the city sky with black ground and buildings around, and looks still reasonable over the ocean as well (even if not completely realistic).
Tumblr media
Drones and navigation
A big part of our plans for the harbour level is using drones to patrol around the area.  The plan was to get our old drone prefabs, make sure everything is up-to-date and works with everything that has changed in the game since the last time we've used them, and drop a few in the harbour.  Well, of course things don't always go as planned!  The drone AI's patrol behaviour is still a bit unreliable, but we still got something out of it in the end.  The patrol issue doesn't seem too complicated either, so we'll surely figure the problem out after EGX.
Tumblr media
Apart from the drone itself and the AI, we needed to set things up so the drones could be restricted to certain parts of the level.  Basically, only in places where there's enough room for them to fly.  That called for some more navigation areas to separate "walkable" areas from "flyable", and of course the "walkable+flyable" which is fine for both humans and drones.  As the drone patrol routes are planned on the fly-based on data points in the level, and the player is able to add, remove and move those around, we needed to add few checks for the AI to figure out which patrol locations it can actually reach, and which ones should be ignored.
A nice extra from all this was, believe or not, it all helped improve our lighting in the levels as well!
We are using an automatic script that places LightProbes around the level to provide lighting for any moving characters etc, and also to provide the light level data around the level for our shadow/light stealth mechanic. And that script uses the navigation mesh as starting point. So now that we had some areas marked as flyable, and thus with more vertical space, we could easily use that information and place secondary set of LightProbes a bit higher in those places.
While doing that, we also managed to optimize the LightProbe placement code a fair bit as well, and that's a definite bonus since there are quite a few of them in each level.
Tumblr media
See all the yellow dots connected by the pink lines?  You don't want to place them by hand. Any speed up in the placement code is worth it!
Other changes and Bugs Fixed:
New UI sounds. Loads of them. We got our sound designer to do a pass of new sound events for each specific part of the user interface, and now are no longer recycling the same button click sound for everything.
Apps with a use cost could not be turned on if the SPECTRUM app was not turned on first. Now we assume that if data view is off, you can certainly afford to use the app. (We might need to revisit this later if we add apps that cost more to use than what you can afford by default.)
Data meshes of data points placed in levels at design time were offset from the actual data point position.  (We had changed some geometry layers around since the data point prefab was made, and the code that moves overlapping data points away from each other was checking for its own location and not just other points)
Whats ‘Appening
Harry’s first port of call for the Sprint was to update the app system.
Apps can now have multiple actions and options
These are presented as two sub menus. We’ll be getting into this in future posts when we show you some new incarnations of the apps you might already be familiar with if you have played the game with us at an expo or a modding workshop.
Apps can now also react differently depending on what kind of targets are passed into them
So apps can display different functionality for devices vs. data, and even different types of data,
Now app are much more flexible and extensible
This is a fairly in depth point, but it’s safe to say that this opens up a myriad of things modders can call and do with the rest of the API when modding their own hacking tools.
Tumblr media
New app for interacting with drones called FlySwatter
This used all of the above and was put in as a working example of how to use the new systems, a kind of test case. It might not stick around as a final tool in the game or it might evolve and merger with other tools, but that is what is great about the Off Grid modding system there is a lot of space for interesting tools to grow.
Continued work on the save system
We faced a few last minute headaches, but we have got autosaves and checkpointing working nicely ready for the EGX show floor.
New team member!
Josh has joined us as a design intern - he is testing modding tools, helping with documentation and helping to design hackable objects.  We’re really pleased to have him on board and hope you all join us in welcoming him to the team!
Here’s a little from him about what he’s been up to:
Hi there, my name is Josh and I have been working on the Off Grid mod tools producing some light-hearted hacks - primarily making Joe his very own disco room where he can party the night away with disco lights and lots of balloons!
Tumblr media
This involved me taking a look at the pipeline for adding custom 3D assets into the levelkit and getting acquainted with lua, both of which were a very enjoyable experience, and you can see the results for yourself!   While fairly new to the modding workflow, I have had a blast with it so far and I am definitely looking forward to making a full story-based level in future. 
Speaking of levels, I have also had the pleasure of checking out and testing the demo level of Off Grid!
Tumblr media
During testing, my aim was to identify bugs and explain to the team the steps to recreate specific bugs. For example:
missing text on main menu - this was a tricky one that only appeared at certain resolutions, but was easily fixed by the team once identified
menu navigation with a controller - as most people will be playing Off Grid at EGX, I thought it would be important to test the controller experience, which lead me to a few navigation issues when using UI menus
missing colliders:  I spent several hours walking around the demo level trying to identify anything that I could walk through
Tumblr media
When working my way through the Off Grid mod tools, I was able to give feedback on the wiki and add to a few pages myself. I was responsible for adding the Art Pipeline to the wiki in order to help modders to add their own works of art to Off Grid Levelkit.  I am absolutely loving putting some of my skills into practice and helping with the project - for me its a dream come true!
Characters Ahoy!
The team spent a chunk of this sprint getting together new ‘docker’ type NPCs for the harbour level, with a little help from our good friend Silvia Bartoli.  There was some wrangling to do as the NPCs are quite a complex array of components and AI behaviours and actions. They require ‘Ears’, viewcones, personalities, all the AI actions available to them, patrol routes, and related props like flashlights or tazers.
Tumblr media
We’ve also got a new character editing ‘tool’ for re-colouring the characters.  This guy above is making the most of the metallic values on the colour lookup tables. :)
Tumblr media
We specifically designed the geometry of the characters to make it easy for players to make distinct variations.  Above, you can see the same character with a different colour lookup table applied, giving him a different skin colour, hair-do, and even profession - all done with a couple of switched textures. 
We have also added blend shapes to the characters that players and modders in future builds will be able to control via lua - so when they spawn an NPC, they can define the model type, their weight via blend shape and their colour with colour lookup tables and textures.
The Experience
Tumblr media
As mentioned, we spent a lot of time on mission scripting and refining player experience ahead of EGX - this meant new mission content for both the new Harbour level and the older Apostle HQ.
You can see the newly re-implemented drone above. These are now spawn-able through level kit as a guard type.  We also put in a bunch of smaller and less noticeable gameplay script fixes to make the conversations read better and player experience smoother, including a conversation introducing the light meter tool for sneaking through shadows.
PR You Ready?!
Rich has organised the next London Indies meetup on Friday October 6th, featuring Stefano Petrullo from Rennaisance PR.  He’ll be joining us all the the Loading Bar in Dalston to talk about how to market your games, how to engage a PR firm and evaluate whether they can add value to what you are doing, and how and why, in his view, events are so important for indies! It’s a 4pm start on the Friday and a nice way to wind down a work week with your fellow game devs.  Check out all the details and RSVP here - look forward to seeing you!
And speaking of marketing - did you receive the very first Off Grid newsletter this month?!  If not, SIGN UP now!  What are you waiting for?!
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
This is perfect, @FreeLauriLove at his very best, talking elequently about the stories he wants to tell through being a character in @OffGridTheGame https://t.co/2QKjVkczan
— Rich Metson (@richmetson) November 6, 2018
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
There is only £50 left to go to reach our funding goal on Kickstarter!!!!! Are you gonna be the one to tip us over?! https://t.co/XIVz242P2k
— Off Grid is Kickstarting! (@OffGridTheGame) November 4, 2018
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
We were excited to speak with @richmetson when we were running our own Kickstarter - it’s great to see @OffGridTheGame getting so much support. https://t.co/qdJFDDx6nX https://t.co/GHmRPV1FL9
— Pursuance Project (@PursuanceProj) October 15, 2018
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
Seriously good DEEP DIVE interview with @heysarahsarah and myself on @OffGridTheGame & A WHOLE BOAT LOAD of other games and tech related subjects!!! Bit of a behind the scenes-y look into our approach too! https://t.co/YdGHk6G14a
— Rich Metson: kickstarting OFF GRID (@richmetson) October 11, 2018
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
We have a busy few weeks ahead of us! If you are even slightly interested in @OffGridTheGame, now is the time to stick your name down on the mailing list and be ready to help us smash this thing in just under 2 weeks time. RTs much appreciated too :D https://t.co/ks3RckcpiU
— Rich Metson (@richmetson) September 26, 2018
0 notes
bigherelongnowbigwe · 7 years ago
Text
GoldenGusTweeted
NEW Trailer is UUUP!Check it out! Stick us on your WISHLISThttps://t.co/0kW5aev9c8HACK THE MUTHERF***ING PLANET!!!#hacking #linuxgames pic.twitter.com/entQ1BUDjd
— Off Grid (@OffGridTheGame) April 16, 2018
0 notes