I got suspended from twitter

I got suspended from twitter yesterday. I didn’t know until I tried to send a tweet and this popped up.

There was lots of speculation on why this could have happened.

Maybe the Muslim Mafia had seen my tweet about muslims.

Not racist or offensive when you read the whole context, but could have easily been taken out of context. But surely twitter wouldn’t suspend an account for something so stupid?

Maybe hackers had hacked into my account and got it suspended by doing something invisible to the outside world?

Another widely discussed theory was that Notch had used his great wealth to influence twitter into suspending my account. A pretty flawless theory, and surely the most likely.

So I emailed them and asked why, then this morning I got this email.

Oh, so it turned out to be this.

The Rust guy’s ass that had been on my profile cover for a year. Rules are rules I guess.

PlasticSCM Speed Tip

We use PlasticSCM for Rust. If the repository wasn’t 30gb and I didn’t have to teach people how to use it, I’d probably use GitHub instead.

Downloading 30GB from our PlasticSCM server was slow. Really slow. So here’s a protip.

Find your client.conf file – usually in C:\Users\username\AppData\Local\plastic4. Open it, scroll down to

<DownloadPoolSize>1</DownloadPoolSize>

and change it to

<DownloadPoolSize>16</DownloadPoolSize>

Now you’re downloadING at 200mbps. Cya.

Becoming A Gamedev

I pretty regularly get asked for general game development advice. Usually from students, sometimes from older people considering a career change. So here’s my best advice in a single blog post.

How Do I Learn To Make Games?

There’s no single answer to this question. People learn in different ways. Some can only learn if they’re taught and lectured. Personally I only learn if I can see why I need to know something, so modding was the ideal way to learn for me. To download someones code and see it working, change stuff, see what changes.

The good news is that it’s never been more accessible. Engines like Unity has made what used to be 6 months work take less than 6 minutes.

Should I make my own engine?

The short answer is no.

The long answer is.. it’s a waste of your time and energy. Your engine won’t be as efficient or compatible as the preexisting engines. Engine development isn’t game development, so you don’t need to, but never let that stop you from experimenting.

The Game Idea

The initial game idea doesn’t matter. My general rules are to make something you want to play. If you’re making a game because you think it’s going to be financially successful you’re doomed to fail. Making a game for other people doesn’t work.

Design Document

Fuck design documents.

Concept Art

Fuck concept art.

Prototyping

You’re not going to spend months making design documents and drawings, laying out your vision. Games are games, you play them. Your first step is to make prototypes.

  • Don’t make any art, use blocks or asset store placeholders
  • Spend up to a month making a prototype
  • Get people to play your prototype
  • Decide if it works
  • Either abandon the project or pivot to something that does work

This is where a lot of people fall down. They don’t put gameplay first.

If your game looks great but plays shit you end up in a media loop. You get feedback from fans on your screenshots and movies. You get scared to release because the gameplay is shit. But you’ve invested so much in the art that you end up releasing and everyone hates it.

If your game looks like shit and plays great no-one minds, and art is easy to improve after everything else is done. It’s the pudding. You don’t eat your pudding if you haven’t eaten your dinner.

Media

Websites, screenshots, trailers, media. Don’t worry until you’re going to release. As much as building up a community for 2 years before you release your game is fun, this kind of release schedule is always going to lead to them being disappointed when you actually release. Until your game is ready it’s a waste of time and energy that is better focused on the game.

Financials

How many games a day have you got to sell to be self sufficient? What’s the bare minimum you need to do to live? That’s your aim.

When working this value out you need to keep all the cuts in mind. If you’re selling on Steam expect them to take 30%. Then on that you’ll need to pay income tax, or corporation tax. The tax situation all depends on what country you’re living in. If I was in the UK now selling a game for $10 on Steam, I’d rough sum that I’d end up with $4 of that in my pocket after Valve’s fees and income tax.

If you’re in the UK and it’s your first year self employed then you need to keep in mind that you pay your taxes on account. Which kind of means that you pay next years taxes as well. So keep twice as much back.

All the obvious things should be obvious. Don’t piss all your money on fast cars and big houses. Try to think of yourself in 6 months as a different person, a person that you might be fucking over with every decision you make. Imagine the worst situation he might be in. If you games stopped selling tomorrow, what would he do? Start a rainy day fund so you can keep working for 1 year+ without any income. Enough time to make a game or two to get you back on your feet if it all goes tits up.

Early Access

Release as early as you can. This can be for free at first, to a small group of friends. If that goes well start looking at Steam.

You might feel like with Steam there’s a lot of pressure. What if your game fails and you want to stop developing it? What about the greenlight process?

You have options. We felt like this with Rust. We didn’t know if we were going to carry on with it. We didn’t want too many people buying it and swamping our servers. So we started selling a limited amount of keys using Paypal, and made the game web-based so we didn’t have to worry about distribution. This brings up its own problems. You need to collect the right amount of tax from everyone. The issue is that every country has their own tax laws, so you need to code a system to collect the right amount. Then you need to put these thousands of entries on your tax return.

With something like Steam things are a lot easier. You set your prices and your royalties get wired to you every month. Twelve transactions a month to add up. Easy.

There is a new alternative distribution system. Itch.io refinery aims to work like a detached Steam, with the emphasis on developer control. It’s what Steam aims to be. So it’s well worth consideration, at least before adding your game to Steam.

Support

Something that is often overlooked is Support. Do you set up a forum and let users talk to each other? How do people report bugs?

Hiring people to do this for you is a really good idea. Having someone else look into reported bugs, reproducing, and then confirming fixes is a real time saver during development.

In a lot of ways this is a sign of success, so by the time this becomes a problem you should be able to afford to hire someone to do this. Hiring and Firing is probably worthy of its whole own blog, especially if you’re doing it over the internet, with people in different countries.

Public Relations

A lot of the time it’s not about who likes you, it’s about who hates you. This defines what you’re about. Don’t be afraid to take a stand against stuff. If you try to please everyone you end up with the blandest, characterless boring crap. I’d rather something that I do is loved by 3 people and hated by 7 than have 100 people be completely indifferent.

Feel free to be treat people who they’re treating you. You’re making games. People who are abusive deserve abuse back – they don’t deserve help. They can suck our cocks until they learn how to be civil.

Advertising

No advertising works. Don’t waste your money on advertising. Don’t waste your money on booths at conventions.

Advertising and marketing are different things. You can make your game immediately interesting to stand out visually, or give it a surprising name, or have it cover a controversial subject. Give interviews where you say dumb stuff that gives them a dumb clickbait headline and makes people hate you. People don’t have to like you to like your game, and rather that hate you than don’t know who you are.

That’s marketing, that works.

Refunds

Steam refunds is a concern to a lot of people. When you get your royalty report and you see that you’ve had 20% of your sales refunded you’re going to feel like this is a shitty system and people are robbing you.

It’s important to keep a balanced view of this. If the refund system didn’t exist and they’d emailed you asking for a refund because they didn’t enjoy it, it wasn’t what they thought, it doesn’t work, would you have told them to fuck off, it’s your money now?

Also consider the psychology behind it. How many people bought your game to try, purely because they knew they could get a refund if they didn’t like it? Without the refund system would your sales have just been 20% lower anyway? Did the safety net convince people to buy it, and they didn’t refund?

My opinion is that it reduces support requests, and makes customers happier. So fuck it.

Exit Plan

When we release a game our long term plan is to update it and improve it. This works because our games are all multiplayer or sandbox games. And so far it’s turned out to be a financially sound strategy, with our games eventually selling more and more each year.

I don’t know if this would work for, for instance, a single player linear mission based game. I don’t know how you early access something like that,  or whether you should. It is something that I think I would enjoy to do. To work on a game for 6 months in secret, have a few months of limited testing, then release and pretty much forget it, get working on the next game.

Either way you should consider what your exit plan is.

I don’t know anything

 

If you’ve never made games before you have a huge advantage. If I’d have had any industry experience before making GMod I probably would have never made it. Your naivety is a huge advantage, it’s your edge.

Don’t try to emulate people who are in the industry – do your own thing, make your own mistakes, find your own way. It’ll lead you down a bunch of paths that no-one will ever take because they know the ‘right way’. The world needs those paths explored.

Jessica

Sarah had the shits all night. Apparently that’s a sign that the baby is due – but we didn’t know that. At about 6AM she got pains. So we calmly started timing them and writing them down in a notepad, like they tell you to. The pains were about 5 minutes apart, which is kind of near once they’ve just started, so we didn’t believe they were real contractions. Her waters hadn’t even broken.

She phoned the MLU and they told us to come in. She was stooped over crying, Alex was behind rubbing her back, saying sorry – because he’s that used to it being his fault. I told her we’ve got 5 minutes until the next one, so get as much shit together and I’m going in the shower.

So I went in the shower. I was just getting dry when I heard her yell my name at the top of her voice. Her waters had broken on the stairs, and Alex wouldn’t come down. And she was stuck. So I guided her down, dragged Alex down, and started throwing shit in carrier bags.

When your waters break the hospital like to see your sanitary towel and knickers, so we threw them in a bag for life. Alex was going to my Mom and Dad’s house, so I threw a bunch of his shit in a carrier bag. Then we rushed out into the car without taking either of them.

I dropped Alex off at my mom’s and jumped back in the car. Sarah was screaming about the urgency so I tried to make her laugh by giving way to people and telling her I was going to stop by the new house to pick up some letters. She phoned her mom, who was meeting us at the office, and told her she needed a wheelchair.

Arrival

All in all the trip only took about 20 minutes. Which is good for driving from Bloxwich to New Cross on a weekday morning. When we got there her mom was waiting with the wheelchair. I lifted her out of the car and put her in it, trying to ignore the mess her dripping womb had made of my front passenger seat. They headed up while I parked the car and got her bags.

When I got to the room she was just moving from the wheelchair to the bed. She was screaming. A lot. She told the nurses that the baby was coming, and to take her knickers off. They looked bemused, like wtf, and tried to calm her down. But she wasn’t exaggerating. When they took her knickers off the head was sticking out.

One of the nurses held the head in, while calming Sarah down and telling her not to push yet. Then she told her to push, and the head was out. Then she said to do it again, and the body was out. Jessica was born. We checked to make sure it was a girl, it was, phew.

7lbs 3, at 7:33am, May the 4th. All nice and memorable.

It’s a weird thing. We went though so much trouble with Alex’s birth. Sarah’s bleed, her operation, wiping her ass for 3 months. Jessica was born within an hour, and we were home by mid afternoon. It feels like we cheated, but I guess this is how straight forward most births are.

Alex

I’d told my Mom that Alex’s clothes were in a carrier bag in our house, and left her Sarah’s keys. What I failed to tell her was that there were two carrier bags, and one of them contained a dirty sanitary towel and a pair of Sarah’s soiled knickers.

Alex feels huge now. When I hug him it’s like hugging a man. When I change his nappy I feel like he’s too old to be wearing a nappy. It’s weird, something I’d never appreciated before. A month ago he was still baby to us, Jessica has normalized our frame of reference so that we can see him for what he is now.

He’s adapted to Jessica really well. He still thinks of her more as a pet than a person. When he wakes up he wants to go and have a look at her. He isn’t as jealous as I thought he’d be. When Sarah was breastfeeding he asked if he could have a go on the other tit.

Living Room Vive

I’ve had a vive in my office for a while. Not a new Vive, but the old kryten looking devkit. So when the preorder started for the proper version I decided I wanted to order one to put in the living room, with a computer in a drawer, that I could just close with it all inside when I’m not using it.

I thought I’d make a blog on how my setup went in the hopes that it helps other people’s setups go better.

Lighthouses

I put the lighthouses on the ceiling. I live in a bungalow so above the living room is loft. It was a simple 30 minute task to crawl around the loft, drill some holes for the wires, then attach the mounts to the ceiling.

This meant all the wires were nice and hidden. Just a shame they don’t make them in white – but they’re not that noticeable really.

One problem I ran into was that the TV remote didn’t work with them on. Well, it worked but I had to aim right at the sensor on the TV. With any other method you could probably manually walk over and switch them off, but because they’re plugged into a socket in the loft I couldn’t do that (without a wireless switcher).

Luckily if you enable bluetooth in the settings on the Vive it starts switching them off and on automatically when you start/stop steamvr. This could probably be made a little more obvious – since the only real way to learn about this is to switch it on for shits and gigs.

 

Mac Pro

I had a 2013 mac pro lying around that I planned to install Windows on and use as my living room VR computer. This worked, but ended up failing for two reasons.

It’s got an AMD Firepro D700. Which as far as I can tell doesn’t accept the latest generic amd drivers. The games that worked did work, and ran well. Some games, which I think were trying to go full screen, had trouble.

I think it was because the computer itself prioritized the hdmi slots wrong. Windows by default were opening on the Vive desktop. So games that were going full screen automatically were doing it on the vive screen – instead of the desktop screen – so the compositor or whatever couldn’t go full screen on the vive screen.

Also the displayport to HDMI I was using to connect it to the TV didn’t seem to carry sound. And I wanted to be able to have sound without earphones.

I decided that it wasn’t worth it, so I moved onto plan 2.

Alienware Steam Machine

For Christmas Facepunch gave everyone an alienware steam machine. I hadn’t really used mine up until now because I couldn’t be bothered to install windows on it, and the 10 games that ran on linux ran like shit. So this was an opportunity to use it.

It seemed like a perfect candidate. Decent performance, two hdmi slots (one for my tv, one for the vive), and small enough to fit in a drawer under the TV.

It was only after installing windows on it, updating all the graphics drivers and installing Steam that I realised that the second HDMI out was actually an HDMI in. So I’d totally wasted my time. So onto plan 3.

Laptop

I had a pretty powerful gaming laptop lying around, so I decided to use that. And it worked out quite well. I did run into some issues with SteamVR itself though.

When I first started playing with it the SteamVR complained that it couldn’t find the vive headset. The headset had a red light on the side. After about 30 minutes of plugging, unplugging, swapping hdmi cables, driver updates, I realised that the desktop size on the hdmi output was smaller than the max. After setting it to the max size it connected straight away.

I was happy to find out later that Direct Mode worked. I think it’s an nvidia thing, I couldn’t get it to work on the mac pro, but it gets rid of the second desktop so it’s just sending the pictures to the headset.. so it removes the possibility of a bunch of different fuckups.

After I got it working the headset kept losing tracking. I readjusted the lighthouses, cleaned their fronts, closed curtains. It had me thinking that the lasers were bouncing off the tv and fucking shit up, and I would have been throwing sheets over stuff if I hadn’t already had it tracking perfectly on the mac pro earlier. This is maybe the most frustrating thing with the vive right now. If it’s not tracking there’s no real way to find out why. You assume it’s something in the room – but it might not be that.

I found that it worked fine if I just sat in the grey liney room, but as soon as I pressed the steam menu button, when the overlay popped up it lost tracking and went into a connect, disconnect loop. I found some advice online that suggested disabling the camera – and that fixed it. I guess the 60fps camera overloads the usb bandwidth or something. I’m still not totally clear what limitation my laptop has that the mac pro hasn’t got, but while it’s working I don’t really want to fuck with it.

Summary

The biggest problem with the Vive right now is setting it up. Without any doubt at all. So its appeal is really going to be limited to people that know what they’re doing. That’s probably not a great surprise though.

The really great thing is that every time I use it I see that Valve have added a new option, or made it better in some other way. It’s very software orientated, so a lot of major stuff can be updated – so I imagine that most major gripes are in the process of being taken care of already.

It would be great if you didn’t need a monitor. If I could just plug it into a steam machine and press the button on the side of the hmd to open SteamVR.. and even if it’s not tracking there’d some kind of menu that I can somehow navigate to fix something, or diagnose something. I guess the market for that stuff is pretty limited because right now you’re showing it to people and want to see what you can see on the TV or something.

I jacked off in VR, twice

I remember years ago I was in a chat room talking to a friend about porn. He told me that he only wanks to video porn, and pictures don’t do it for him. This was in the days when it took 4 hours to download a video. I thought to myself, what a snobby cunt.

And obviously in time, he was right. Who wanks to photos anymore? I mean, sure it’s do-able – but why would you? I think it’s going to be the same for VR Porn real soon.

I managed to get VR porn working on my vive this week, having failed in all my attempts previously. It turned out to be pretty simple. Just download the SteamVR version of Whirligig, get some VR porn, jack in and jack off.

Eye Contact

You know how sometimes you’re walking down the street and a stranger looks at you in the eyes, and you momentarily think “fuck”, before one of you quickly looks somewhere else. VR porn gives me that feeling. It’s really unsettling at first until your brain convinces itself it’s a video.

Role reversal

I experienced what it’s like to be licked out by a man, and then later squirt about 3 pints of clear liquid on his back. You might have thought that you could imagine this stuff previously, but now you can actually experience it. It’s unsettling at first, but then you can convince your brain that it’s fine, that you’re louis theroux investigating something, and then it’s all ok.

Mess

Have you ever jacked off and then not looked at where the cum is going. Maybe when you were younger, into a sock. But nowadays you probably ejaculate into a tissue or toilet roll. Ejaculating into toilet roll blindfolded is something you’re going to have to get good at – because if you’re not you’re going to be throwing a lot of fish smelling keyboards away.

Why do I care?

I like jacking off. It’s a part of my life. This is the first time I’ve seen something in VR that could genuinely enhance my day to day life. This proves that there’s a use for it. And that makes me really happy, and really excited for the future.

GDC 2016

Every time I go to one of these things I always remember how much they don’t do anything for me. I see everyone enjoying it and genuinely gaining knowledge and skills. But to me it always feels like I’m waiting to go home.

Talks

Going to talks is a waste of time. The online versions have the following special features:

  • You can’t smell other people’s BO
  • You can stop it as soon as you realise the speaker is an idiot
  • You’re not sitting next to a nerd live tweeting it to their 40 followers
  • You can rewind if you don’t understand
  • You can fast forward if you do understand
  • It doesn’t matter if you fall asleep

The only thing you can’t do is line up at the end to ask questions. But that’s ok because the questions asked at the end of these things are usually made by people who misunderstood something, or by people who try to outsmart and second guess the talker, or by people who don’t speak english.. but embarrass themselves and the speaker by trying to ask a question anyway. The good news is that all the speakers are on twitter – so you can just tweet a question to them if you really have one.

VR Invasion

So many VR games. So many VR peripherals. Really VR’d out already.

We went to the Rift VR party on the off chance they’d give us a free one. They didn’t. It was opposite a strip club. The girl on the front asked me to spell my name, I had to type it for her because when I say “a” it sounds like an american “i”. I think it was mainly for journalists to play games. It kind of backfired when they started being sick because of tracking issues.

We got approached by a guy while we were there. He asked us what Rift games we were working on then he knocked a tray of food out of a waitresses hand. We told him we made Rust and Garry’s Mod. He didn’t know what they were. His company buys profitable games to fool the stock market into thinking they’re profitable. We shook his hand when he left, but he walked off when Helk put his hand out to shake. I hate everything about him.

Notch was making drinks there. I asked for vodka sour but he made me vodka soda. I tried to drink it but it was disgusting.

Crazy People

There’s a lot of homeless people in SF. There also seems to be quite a few people on hallucinogenic drugs.

The first day we were there some guy threw a milkshake at a bin and shouted “WHY DIDN’T YOU TELL ME IT WAS ILLEGAL”. He then started shouting at people asking why they wouldn’t talk to him. He jumped in front of Alex, who confusedly smiled at him. Then he ran off screaming and shouting.

On the last day we had a couple of hours to kill so we went to the science museum. There was a guy there ranting and raving on the steps. There were a ton of kids around. He chased after a bus and then ran into the forest. He looked like data from the goonies.

It’s confusing. These guys have clean clothes on. They don’t seem to be homeless. Have they just taken drugs and escaped the safety of their homes? Are they mentally ill?

Flight

We flew Virgin Atlantic. They lost Tom’s suitcase. Later on in the week it emerged that they’d sent it to Ghana. They gave him a phone number to call to check the status of it. He got the concierge to call it in the hotel, and it turned out to be a sex chat line. He only got it back on the last day when we went to the airport to leave.

On the way there I got the flight attendant to change my chair into a bed. When Paul saw this he thought he’d to the same thing, so asked someone and they said sure and started doing it. Half way through he realised it was the pilot.

Outcome

We took 20 people – half of whom we’d never even met face to face before. So it was nice to get everyone together and meet. I think for the most part the team did get enjoyment from attending the talks. It was also a nice surprise that none of the team were massive weirdos either.

It was also nice for me to take a bunch of meetings that I’d been putting off for years. But ultimately it was all stuff that could have been discussed over email, or not just not discussed at all.

Ultimately I find I prefer to sit in my boxers making games rather than getting dressed and talking/hearing about them. I still don’t understand why people skint themselves out to attend these things. Maybe the illusion of being a successful game developer is more important than actually being one?