Sunday 5 April 2015

Can you play a game in the 'wrong' way?

This is a response to a tweet I read. I though the question was interesting so I started answering. I hope I've provided an interesting answer.

“OK, poll: who thinks that you can 'play a game the wrong way'? And if you believe so, whose fault is it when that happens? If not, why not?” - @tha_rami (link)

My original untweeted response: “@tha_rami if the player is having fun, then all good. But there is something unfortunate about playing the game contrary to the orig. vision”

I ran out of characters for this, 140 is in no way gonna drill into such a complex question...

So I’m going to over analyse this a touch. First what sort of game are we talking about, it seems the answer will change with the interactions of the participants. So 1) singleplayer in which interaction is solely with the computer AI, or with oneself/no-one else, or 2) multiplayer, in which there are interactions with other players with their own maybe conflicting concepts of ‘wrong’. I fear I’m oversimplifying things but I guess this is a good enough start.

1) Singleplayer

This is what my original response was referring to. If the player is having fun then no harm, player is having fun! It is sad that perhaps the original vision of the designer’s game is no longer being followed but maybe this is a good thing. For a computer game then chances are that the ‘wrong’ thing will lose charm as the rest of the game won’t necessarily reinforce the ‘fun but wrong’ behaviour and that behaviour will become boring soon enough, the story will move on or the levels won’t take advantage of the ‘wrong’ thing. Perhaps in a simulation game or game with lots of emergent behaviour it could accidentally become a behaviour that will give sufficiently long periods of enjoyment, but in games with lots of emergent behaviour it seems difficult to say a player is doing something ‘wrong’ since there is less/limited ‘designer’s vision’ for which the player can do the contrary.

For non-computer games, single player card games and the like it’s difficult to blame a player making up their own rules and having fun with that. They just are using the tools of the original game to make their own game. Though one might say they are playing the original game ‘wrong’ and that they are denying themselves certain experiences of that game as a result. If they are having fun or an interesting time, then all good.

2) Multiplayer

Things get more complicated here, since one player’s actions can affect the enjoyment or experience of the others. If one player is ‘ruining it’ for everyone else then from those players’ perspectives they are doing it ‘wrong’. Of course this depends on what the other players see as right or wrong.

In cooperative games a griefer is usually seen to be doing the ‘wrong’ thing because it’s counter to the goals of the majority. The griefer (I say with gritted teeth) is probably having a great time. Who is to blame here? I’m honestly not sure. My heart says the griefer is definitely wrong. My head can’t articulate exactly why. Something about the majority suffering due to the betrayal of trust from one. Anyway…

Someone could simply be not playing well enough in a multiplayer game. Think soccer or Battlefield. If they are playing badly then the squad/team suffers. Who is wrong depends on the context of the game. Hyper competitive professional sports would probably be less forgiving since people’s livelihoods are on the line. It could be that they are just hyper competitive and that clouds their ability to be compassionate. Many professional sports teams can be quite forgiving if they believe said player has genuine talent or is worthy of getting through bad patches or early inexperience. If it’s a friendly game then I’d like to think that there is no wrong if all mean well. Maybe it’s the case that someone is playing way below the rest of the team and that is dragging them down. It depends on the nature of the people for them to stick it out until they are better or ask them to train up elsewhere or take whatever action they deem necessary to ensure they have more fun/maintain their friendship/whatever their values dictate. It is just a matter of the people involved. Who is wrong? If they say something is wrong ask them to explain, I can’t see an easy generalisation here.

Competitive games are maybe more clear cut. If you are against someone else (or your team against their team) then there are usually rules set out as to what is right and wrong. The rules are enforced (usually) by a certain ‘spirit’ of the game or maybe even ‘core values’ of a game. In most competitive games a core value is a fair playing field where skill is the major or only determining factor. Otherwise ‘spirit of the game’ is often notoriously difficult to pinpoint but very easy to notice when it is violated. Cheating, and taking unfair advantages are seen as contrary to that spirit and thus are usually seen as wrong. Rules are thus amended to prevent this. However this is subject (hopefully) to scrutiny and discussion. It’s not unheard of that ‘wrong’ behaviour is seen as a ‘good tactic no one has thought of yet’. Again, this depends on the game and the values the players of that game wish to uphold. It’s possible that a ‘wrong’ action, let’s say “strafe jumping” in Quake 2 becomes a fundamental part of the game. It’s possible that this could have been nerfed and removed but I guess the designers thought it was more fun or a factor that enforced the value of “player with the greater skill should win more often than not” since it’s a hard thing to do. I’m not actually sure, I’m not a Quake historian but I hope my point is clear nonetheless.

On reflection competitive games are not quite as clear cut as cooperative games.

I think in short if everyone is having fun (or a certain desired experience) then all is good. Otherwise it depends on the people involved and what they can all come to an agreement on. Kinda like the rest of life actually...

Monday 16 March 2015

A raxter retrospective (Part 1)

Preamble:

So there are a lot of people I need to thank, too many that I'm scared I'll forget someone. So for now I'm not going to mention names. Please know you are all special to me and I only omit names to omit it looking like favoritism. There is no favoritism. Guaranteed is that if you are part of my stories (whether written explicitly here or otherwise) please know you are special to me and they you've had a positive effect on my life. When I make games I make them in your honour.

-------
So...

I'm going on a journey! It's kinda surreal that it's actually happening. I'm heading to Germany, hopefully for a long time, but visa issues might see me back in 3 months (but only because I'll be organising a longer term visa).

So I wanted to write down some thoughts, some reflections. I don't really know how to start. I don't really know how to end or make the middle bits even. So I'll just go in order of appearance for now.


Tasty Poison Games: 2013

Man now really where do I begin with this. I'm not going into details. It was a good and not so good time for me. The company went through some rough times and I happened to be there at one of the roughest it seems. It didn't end particularly well and I don't think I handled the aftermath particularly well either.

I think the particulars are uninteresting. I would just like to say that for any ill feeling I might have expressed in the past - and I have - I am sorry for doing so. I suppose it would have taken a better person to not get down and out and irritable and mean in that situation and I wasn't quite that person. But I'd like to try be that better person, retrospectively at least. So thanks to all who were a part of my time there. Regardless of what happened, no one acted out of malice or unforced ill-will. I struggle to fault good intention no matter the outcome. It just didn't work out like we all wanted it to and that's sad. I'm just glad we are all past it now. I hope that everyone who was there when I was is finding their way ever onward and upward. I learned so much, and after all that's what you want from a first job in industry.


--- interlude ---

The year following was a mixed year of hard work, too much hard work, burnout, inspiration, imposter syndrome, validation, jealousy, more hard work (but without burnout), balance, and some pretty good games.

-- end of interlude ---


--- something I forgot ---


University of Cape Town: 2006 - 2012 (wow 7 years, fuck me)

I would just like to mention my time at UCT. Choosing to study there was more a life choice than a game dev choice. I studied because I wanted to learn, not because I wanted to do game dev. And if it weren't for UCT creating their games course I might not have actually tried making games at all (I'd like to think I would have run into it anyway, but it's scary to think I might not have). So I am eternally thankful that the course is there and there to stay. I've had my recent gripes about the course lately, please take this with a pinch of salt. It has its problems but it's more an issue that it could just be so much better. But the varying pressures that the course and course coordinators are under make change slow and difficult. And to palpable relief there have been people coming in, with experience behind their back, who are shaking things up and moving it forward. The bottom line is that the course was created by people passionate about games. They may be primarily academic and not so much indie dev, and we might not do things the same way but they love games. And through much strife and hard work of theirs they created their course. It's because of that course that I am now making games.

--- end of something I forgot ---


Renderheads! 2014

Where was I? Oh, right so I left Tasty Poison Games and needed a job, I should have wanted any job I could find but I was too stubborn to get something I wouldn't enjoy doing. Renderheads was hiring. To be honest, it wasn't the ideal job I wanted, but the ideal job I wanted didn't really exist. To be honest, it's the job I really needed. Because the ideal job I wanted required more experience than I actually had. And it was great! I was mostly making mini-games! When I wasn't making mini-games I was making interesting and challenging stuff! So what if they were client games and so what it wasn't hotshot innovative mechanics, it was game dev tech and game dev experience. I skilled up through the hellfire of tight deadlines and shifting (and very narrow) goalposts. It wasn't what I wanted, it was what I needed.

On a side note I've never worked with people who deal with pressure better than the people at Renderheads. Left to my own devices I would have panicked myself into more work than I could handle. Brutally honest whilst remaining supportive and compassionate. A true show of what is often described as 'good character'.


6x Mass Production: 2013 - 2015

Oh boy…

So sometime between the beginning of TPG and the end of Renderheads a puzzle game emerged… it was not very effective.

I'm being a bit harsh, it was kinda effective. It started as a personal tool for learning and turned into a nearly game that I could nearly release. I developed it on and off over a period of two years mostly in my spare time.

I like it, I actually love it to bits. But I think no one else will really like it as I do. It's good but not great, not from a game design perspective. Though from my personal perspective, subjective, biased and completely without logic, it'll always be a great game for me. It is, in a sense, the diary of my game dev career so far and turned into more of a companion than a game. The biggest mistake I made was thinking I should try sell it for money. I say mistake, it was actually a great decision. It really isn't something I should have tried to make saleable. But I tried and failed nonetheless and that was the biggest lesson I learned from it.

I learned about testing, getting feedback, implementing feedback, many many programming lessons, many art lessons, many design lessons, taking criticism, when maybe not to take criticism, responding to criticism anyway, level design, ui design, and general "oh damn that feels good" design (mainly screen-shake tbh). And I might very well learn a bit more from it. But I used to be worried about it, will it do well, will people like it, can I release this and then be considered a 'real' game developer! I was worried about it like I was worried about my worth as a game developer. If it did badly then I was not a good game maker. Silly stuff, but it was real.

So after many 'one last trys' I decided to scrap the project near the beginning of 2015. It had represented so much of my growth it would really be difficult, but it was time and I was happy with that. But was lucky, a friend of mine said, "Don't see it as a project, see it as a learning tool, you don’t have to sell it or worry if it's good. If you are still learning from it then you don't need to get rid of it". That hit home, and in a really good way. It started as a learning tool and I suppose I would like to keep it that way.

It was strange, I finally decided that enough was enough and I needed to move on to making lots of prototypes rather than working on my one precious entity. It was something I knew well but I finally had realised and taken to heart. And at that very time, when scrapping my favorite project was something I felt comfortable doing, I was able to redefine what the project originally meant to me. It's technically scrapped, for sure, and I might not learn quite as much from it now as I have already. But I still want to tinker with it (but later, I have about a billion prototypes I want to try out first). But I'm glad it's there. It's not perfect, neither am I. It's an old friend who is happy with what they've done so far. And I'm happy with what I've done so far. So occasionally I'll head over, give a hug and a high five and see how it's doing. But otherwise, we are pretty happy with how things turned out. We'll be better for the future as a result.

--- end of part 1 ---

So I have more to say but this post has gone on for long enough already. Part 2 will be up soon and goes over events of more recent times: Super Friendship Arcade and AMAZE. Part 3 is not yet written but I hope for it to be less history and more of a condensation of the lessons I've learned so far.

Sunday 22 February 2015

Whistful Thinking

Hi everyone!

I want to design a board or card game. Just for practice and lulz so I was looking for physical games that I do enjoy for inspiration. I do like the more complicated board games that are about but I recently had a LOT of fun playing whist, which is a trick-taking card game played with a standard 52 card deck.

Basically whist is a 4 player game, everyone gets 13 cards. A trump suite is chosen (let's say hearts but could be any suite). A player will put down a card they have, called the lead card. Each player then puts down a card of the same suite as the lead, preferably a higher number card as to beat it. Alternatively the player can play the trump suite (say a 4 of hearts), which will always win and can only be beaten by another trump card (a 5 of hearts or higher) with higher value. After all 4 players have gone the winner gets the 'trick' and leads the next round. This goes on until no one has any cards.

I like that it is quick to play, easy to learn, and very fun to play. So this is the base on which I'd like to start designing a game.

But I've not really done this yet. I've not actually thought of any ideas on how to expand it, nor done much research on Whist-like games except that I don't think there is a game that are whist-like (not 100% sure, let me know if there is!)

But I did get distracted thinking of how this would be themed. I like the idea of each suite being warriors/soldiers/creatures of varying elemental based armies. (I'll, uhm, get to the game design stuff later, I want to do theming now). Though I do think that adding some theme or story to the game might help with thinking what mechanics would be interesting.

Like in Magic the Gathering, the themeing is technically unimportant to the raw mechanics, but oh so important when thinking about what mechanics to implement. Each color has a different feel that affects the design of those cards.

So here is my attempt at creating a theme that is consistent with the current rules of whist. It starts off with a bunch of naive attempts that don't quite make sense, I eventually lock down what elements of whist are important for themeatic considerations, and then I finally come up with a theme that actually makes some sense. I then cap off this blog post with a larger point about how theming and how it can affect the ideas and design of the game and game elements.

So, the 4 suites would be soldiers or creatures of:

  • Water - swamp dwellers
  • Air - flying
  • Earth - subterranean diggers
  • A fourth one that I've not thought up yet, fire / lava based maybe
So that isn't a particularly awe inspiring start, it's pretty cliche but it'll do for now. There would be 13 creatures per type, each more powerful than their inferiors. The trumps are represented by different terrains or elemental effects:
  • Swamps / Flooding
  • Floating islands / Strong wind or hurricanes
  • Underground caverns / Sinkholes
  • Volcanoes / Wildfires
A sinkhole in Guatemala...
F***ing terrifying.
The idea being that the trump suite is the power element, creatures of that element will get an advantage that will ensure they win the fight no matter what. If there are floods then the water based creature will always win (except if beaten by a more powerful water creature), But they problem here is that if a, say, air based creature leads the trick, the rules of whist says only other air based creatures will be able to win. 

So I was thinking that maybe the leading suite determines the terrain, so playing an earth creature as lead means you are fighting underground, but if the trump was water, then it means the underground caverns were flooded and water creatures always win

So, lets expand on all the options (first pass):
  • Lead is earth: Underground caverns mean that the fire, flying, and water creatures are ineffective, unless:
    • It is flooded, in which case water creatures always win
    • There are flash fires
    • There are strong winds, in which case flying creatures always win... err nope!
  • Lead is water: Swamps mean that fire, air, and subterranean creatures are ineffective, unless
    • There are wildfires, in which case fire creatures always win
    • There is a hurricane, in which case flying creatures always win (erm... I guess)
    • There are sinkholes, in which subterranean creatures always win (err, that kinda makes sense, does it? no? ok...)
... ok I'm stopping there this isn't working :p

Onward to idea number next!

Maybe I should think of the trump as the terrain and the lead as the elemental effect. So let's try this again. Let's say trump is water, so we are in the swamp and water will always win. If fire/air/earth leads they can still win (unless trumped). Ok this is looking better already. So if fire leads then it means there are wildfires. So only fire creatures will get involved in the fight, but we are still in swamp lands so swamp creatures will still always win... ok not the most sensical but not terrible. 

Let's try enumerate this again (second pass):
  • Trump is water: Swamplands mean that swamp creatures always win.
    • Wildfires mean that only fire creatures can fight (kinda...)
    • Sinkholes mean only subterranean creatures can fight
    • Hurricanes mean that only flying creatures can fight (uhm ...)
  • Trump is fire: Volcanoes mean that fire creatures always win
    • Sinkholes mean that only subterranean creatures can fight
    • Hurricanes mean that only flying creatures can fight (err ...)
    • Flooding means that only swamp creatures can fight
  • Trump is earth: Underground caverns mean that subterranean creatures always win
    • Wildfires mean that only fire creatures will fight (uhm, in a cave? hmm...)
    • Hurricanes mean that only air creatures can fight (uhm, in a cave!? no...)
    • Flooding means that only swamp creatures can fight (I'll accept this)
  • Trump is air: Floating islands mean that flying creatures will always win
    • Wildfires mean that only fire creatures can only fight
    • Sinkholes mean that only subterranean creatures can fight
    • Flooding means that only swamp creatures can fight

This is generally the outcome when flying creatures try fight underground

Ok so this is going a little better at least. Lets replace hurricanes with earthquakes, since it's becoming clear that the leads being elemental effects are less about giving a certain elemental creatures an advantage and more about disabling the other elemental creatures from fighting at all (unless they are trump), but the terrain ensures that the trump elemental creatures always always win. The only other problem is wildfires in a cave. Maybe let's replace wildfires with lava flows? We can't use this because it's almost too powerful. Swamplands should give swamp creatures the ability to win no matter what, but with lava flowing through a swamp. Well it wouldn't really be a swamp after that.

Let's put that thought on hold. I would just like to list what we've found so far:
  1. We need distinct representations for each set of playing objects
  2. The thing representing trump set must give that set ultimate advantage no matter the lead set
  3. The thing representing the lead set must be something that allows only that set to engage in the trick with any effect (whilst still allowing trumps to engage in the trick too)
In our case:
  1. Sets are differing creatures types: fire, flying, swamp, and subterranean
  2. Trumps are the terrain or area the battle is taking place
  3. Leads are elemental effects that disallow other creature types from fighting (while the terrain will always ensure that its creature type will always win)
So were doing pretty well with our theme, but are running into too many problems. The wildfire doesn't quite make sense in the subterranean terrain or in a swamp. So let's rather think of what effect would disallow swamp, flying and subterranean creatures from fighting. Leading ideas are intense heat or hot topsoil, but these aren't great. Also earthquakes are quite quite powerful so those aren't working either since that elemental effect can outweigh the advantage of the terrain (an earthquake in a swamp will probably mean swamp creatures will die too).

Theming with terrain and elemental effects, I think, might not be that effective since it's very difficult to come up with elemental effects (the lead) that don't override the ultimate advantage of the terrain (the trump).

So I might need to rethink this a touch. I don't have any great ideas right now but what I do have is 3 constraints to follow that will allow me to better come up with ideas that will work. I might even return to having elemental effects being the trump, but make the effect super powerful or an effect that will make the creatures super powerful. The lead can be represented by a minor terrain buff. Just enough to allows creatures of that element to survive over the others, not enough to overpower the super power effect.

Ok, let's try this: 
  1. Sets are again elements (Water, Flying , Subterranean, and Fire)
  2. Trump is a super buff
  3. Lead is the terrain
So (Element set / Super buff trump / Terrain  lead):
  • Water / Heavy rain and flooding / Wetlands
  • Flying / Earthquakes / High cliff faces
  • Subterranean / Sinkholes / Subterranean caverns
  • Fire / Magma Flows / Charred Wasteland
So this could work! I'm not totally sold on the fire type. I'm sure I can come up with something less cliche but no matter! Each of the super buffs will destroy the advantage of the other terrains while preserving the advantage of that creature type. For water I had to use a double whammy effect since I couldn't come up with a single one that would affect both overground and underground landscapes. Hell, to simplify this all we could even replace the super buffs with elemental deities that will help their creatures types out in battle. The deity that s out is the trump, ain't no one gonna win a god assisted fight! 

And with that I'll stop my eager over (the top) thinking on the topic. From confused attempts we managed to come up with constraints or important points for theming. Using that it's not quite as hard to reframe the game with a different theme. There is still the problem of how these representations will physically play out. First thought is perhaps a central board/card with the four terrains layed out. The leading player (who will be the first player for that trick) will place their creature on the appropriate terrain (thus giving it the advantage). The trump (chosen beforehand) can go in the middle of the four terrains. 

"BUT!", I hear you cry out, "now you can place a fire creature on the wetlands terrain! Oh noes this doesn't make sense in terms of whist rules! Also basically all you have done now is make a themed deck of cards with a redundant board in the middle and pretty pictures"

Some sweet themed cards ("Alchemy playing cards") ... couldn't find elemental style ones,
just imagine Magic the Gathering cards with less text and more image

Yup, you are correct, there is no reason to have the 4 terrains actually there. The first card played determines the terrain type and is hence quite redundant. So it's not ideal now, but maybe with more rules it will make more sense. Maybe we can have lots of terrains in a Settlers of Catan-like hex layout and the battle takes places. Maybe the 4 terrains can be placed in random orientations and you can only battle in the same or adjacent terrain as the last battle. Maybe you can place a water creature in the subterranean caverns and essentially force the next player to play their earth creatures. Maybe it's fun, maybe not... maybe there's a better way to fit the rules of whist whilst reinforcing our theme rather than introducing extra objects. But I can't think of any right now.

My point is that with a theme in place we can now think of the game mechanics in a different light and come up with different rules that reinforce the theme. We could make whist a cooking game about making the best cake. The sets could be different ingredients, the lead would be the key ingredient and the trump would be the cake judge who would prefer a certain ingredient regardless of the rest of the cake (disclaimer: I haven't thought it through 100% but you get the point). 

But how would that game get expanded? I am no longer thinking of battle and territory, I'm thinking ingredients and coloured sprinkles as bonuses. I'm thinking of stacking up the cards to make a layers of an awesome cake and whoever has the 'best' ingredient gets credit from the cake judges. I'm thinking of specials to bride the cake judges. Maybe rules that will have certain effects if you mix two ingredients one after the other.

So in the end I guess I just find it interesting that framing a game in a different light nudges one to think about that game in different ways. 

Yeah, sorry it took 2000 words to get to that rather obvious conclusion.












Sunday 2 November 2014

6x Mass Production Alpha 2 released!

Hi everyone!

I'm proud to announce that after 6 weeks of work I am releasing the second alpha of 6x Mass Production to the wider world... slowly. I say slowly because I've been crunching on it in my spare time so much that I've literally put life things aside and I need to catch up on those (lest I fall into a bad work habits again)

But I'll cut to the chase, here is the game, play it!

Web build - Requires Unity Plugin (7 MB) (ignore the beta warning, can't seem get rid of it. Also don't go fullscreen! Not implemented that yet :p)
Windows build (15MB)
MacOS build (16 MB)
Ubuntu Linux build (17 MB)
Feedback I'm looking for is:

  1. Tutorials! Did anything confuse you or did you get stuck anywhere?
  2. UI! Are there UI elements that are unclear or confusing at first? Did you mistake one thing for another or misinterpret anything?
  3. If you have other comments or suggestions I'm always keen to hear :)
I've posted a similar post on the Make Games South Africa forums, if you have any feedback, feel free to post there, or post a comment here, or email me at raxterworks@gmail.com 

So I've already gotten a TON of great feedback from many wonderful people. I want to release it to more forums, more people, more exposure. I am going to implement the latest round of feedback first and then go into another round of seeking feedback with a wider audience. Like I said, I don't want to burn myself out and I'm not relying on this game for income, so I'm going to get to it when once I've recovered a little.

I really wanted to make a special gif for this post thanking those who have already given me such valuable feedback, but I'm not going to beat around the bush, I needed a break and spent all day playing Don Bradman's Cricket 2014 while watching the Starcraft 2 WCS finals Ro16 replays (cricket and Starcraft 2 are the only sports I watch profesional games of, both have such interesting meta-game to me). So here's this one I made for MGSA instead :p

Once I get more shapes on the board I'm definitely making a Zergling level


As a side note this is a completely new version, nearly none of the code from the old version was used. I incorporated (most of) the feedback I got from way back in March when I first demoed it and the improvements really shine through. That said I still have a long way to go.

That's it! Below is a list of changes, putting there if you are interested. Otherwise thanks for reading!

<3

-raxter


List of planned changes/considerations for the next version (just so it's on record), there are tons more written down as notes when I did live testing but I'll compile those later:
  • General Design:
    • Playing with the idea of starting the player off in a "test" level that is hard but not impossible. There will be (some) mechanism that'll ask the player if they want to go to the tutorial levels. This is to see if they play or panic. People who are comfortable to test out the level and try and fail will probably figure out the general idea of the game and can jump straight to the creative solution vibe. Other people might want a gentler introduction and are given that option to do very hand holding style tutorials.
    • I have a huge list of level design ideas for specific levels. Too many to list here (also HyuN is playing INnoVation in WCS so I'll write it out later :p)
    • Complete the tutorial levels! Right now it just kinda ends (because I ran out of time when designing it)
    • Thinking of adding UI hints inbetween levels that show some of the more intricate UI hotkeys and tweaks
  • Aesthetic:
    • Make the yellow lights more orange
    • Generally get an artist to let loose on this whole thing :p
    • Make parts fade in when being generated (or have some effect or transistion). Considering having it come in from off the board but this might be too busy
    • Get the transition screen to line up properly (actually just need to get that screen redone completely)
  • Finish Area:
    • Make the finish area look *completely different* and have it open up to accept a correct construction instead of it mysteriously disappearing
    • Alternatively there might be an 'output node' (like the input node) that the construction just needs to touch in order for it to be checked (I'm leaning towards this one tbh)
  • Instruction 'belt'
    • The instruction belt will run left to right rather than up/down
    • Will only have one belt open on the board at a time (might make it such that you can open more than one by pressing ctrl) since having many open causes a huge clutter.
    • The open space on the left will be used to store 'reference belts, they will be lined up with the grabbers but off the board so that they are not in the way all the time. They will also be editable but will be lined up so that multiple grabbers can be viewed 'side by side'
    • This is tentative but these reference belts on the left will probably be hideable
  • UI:
    • Might have a slider instead of 4 buttons with different speeds
    • Might make a preview shadow or ghost of where the grabbers will go once run (like 25% transparent arrows that appear when hovering)
    • Alternatively, since the arrows might be noisy, might add black dots that appearon hover to the left and right of the grabber head to show where it would end up if rotates one left or one right
    • Change the green "level complete button" to no green... was very confusing
    • Copy paste functionality for instructions (somehow :p)
    • Hotkeys for starting, pausing, and stopping
    • Allow hotkeys to trigger insert when hovered over the insert arrow
    • When dragging instructions, upon dropping them they need to tween to their position, not clear where they end up.
  • Technical/Bugfixes
    • Make webplayer go fullscreen properly








Monday 20 October 2014

2D Lights and Normal Maps with Unity 4.6 UGUI

Hello world!

So I recently tried out the new Unity 4.6 beta. That's actually an understatement since I'm now using it fulltime for development of 6x Mass Production!

It's really good! If anyone knows or has used NGUI they'll know just how complete a UI system that is. They also might know that the main developer behind NGUI was involved in development of the Unity GUI system, and it shows! The coding and component style is very similar! I've decided to switch to uGUI completely now as a result. Slight risk on my part since it might be in beta for a while but 6x Mass Production is going to be in beta for a while so I'm going to run with it.

But! The reason I post here now it to show off something cool that was far easier in UGUI than NGUI, shader tricks! Well, at least this shader trick!



So there are no 3D elements in the game, just 2D elements, a shader, one directional light and some point lights. This is nothing new, but I'm so stoked that this worked out so well that I wanted to share what I did. I did briefly try to get this working with the Unity 2D sprite component... when I say briefly I mean 10 minutes, didn't quite get it but I'm sure it's possible too!

Also note that I might be butchering terminology, leave a comment if anything bugs you in this regard ^_^

Anyway, for UGUI:

Step 1: You'll need your texture and a bump map

So this texture is already shaded, the artist didn't know I'd be using dynamic lights

5 minutes to hack this up in Photoshop

You'll want to make sure that the normal map is setup correctly:
The important part is to turn on the "Create from Grayscale" option. If you don't know, basically the "Create from Grayscale" option turns the grey heightmap into a normal map



Step 2: Create the custom shader. This following code is almost exactly the same as the standard Unity Diffuse Sprite shader, besides 3 lines

Shader "Custom/Sprites/Bumped"
{
 Properties
 {
  [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
  _BumpMap ("Normalmap", 2D) = "bump" {}
  _Color ("Tint", Color) = (1,1,1,1)
  [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
 }

 SubShader
 {
  Tags
  { 
   "Queue"="Transparent" 
   "IgnoreProjector"="True" 
   "RenderType"="Transparent" 
   "PreviewType"="Plane"
   "CanUseSpriteAtlas"="True"
  }

  Cull Off
  Lighting Off
  ZWrite Off
  Fog { Mode Off }
  Blend One OneMinusSrcAlpha

  CGPROGRAM
  #pragma surface surf Lambert vertex:vert
  #pragma multi_compile DUMMY PIXELSNAP_ON

  sampler2D _MainTex;
  sampler2D _BumpMap;
  fixed4 _Color;

  struct Input
  {
   float2 uv_MainTex;
   float2 uv_BumpMap;
   fixed4 color;
  };
  
  void vert (inout appdata_full v, out Input o)
  {
   #if defined(PIXELSNAP_ON) && !defined(SHADER_API_FLASH)
   v.vertex = UnityPixelSnap (v.vertex);
   #endif
   v.normal = float3(0,0,-1);
   
   UNITY_INITIALIZE_OUTPUT(Input, o);
   o.color = v.color * _Color;
  }

  void surf (Input IN, inout SurfaceOutput o)
  {
   fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * IN.color;
   o.Albedo = c.rgb * c.a;
   o.Alpha = c.a;
   o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap));
  }
  ENDCG
 }

Fallback "Transparent/VertexLit"
}

Sorry for the lack of syntax highlighting, couldn't get blogger to play nice :/


Step 3: Create a bump map material with your normal/bump map
You'll see that I use "Custom/Sprites/Bumped" this is the shader I pasted above

Step 4: Create a Unity Image component with your image and custom bump map material



Step 5: Add lights, add more sprites make them do things and BOOM!




Ok, so this isn't an all encompassing tutorial or anything but I thought I'd share because I thought it looked cool and really wasn't too much effort to set up! There are some issues that might need addressing:

  1. Since we are using lights we are now constrained by the limitations that the light system imposes on us. So only a limited number of point lights (the default is 4 but you can set the number in the Unity quality settings)
  2. Extra draw calls! A direct result of using more lights means that more draw calls are needed to draw each light's contribution. This is usually fine for standalone but I suspect mobile might struggle a bit.
  3. If you are working from a sprite sheet and using unity to cut it up this method might not be workable. At least if it is I've not tried to make it work. Crux of the matter is that Unity's sprite atlasing parts and the normal mapping texture parts don't integrate nicely right now. Only tried for liek 10 minutes to get it to work so maybe someone has a smart solution out there. With NGUI I was able to map a normal map sheet to the image sheet with a similar shader, wonder if there's something similar I can do with UGUI...


That said, look at this shit! No 3D elements and it's looking pretty cool... well I think so anyway!

Oh, on another note! Keep an eye out, I'll have a playable version of 6x Mass Production for people to play soon, light effects and all! I should be working on the level design but I kinda meandered along this interesting light effect, game seems lifeless without it now :p

Thursday 25 September 2014

Post-AMAZE daze

Hello!

So I've been away for quite some time now. Not only online but for many of you in real life too! Here's what happened:

Jan-March 2014: Finally back on my feet! Use all spare time working on 6X Mass Production, with a full work day this was essentially a crunch mode for me time-wise

April 2014: Exhausted but finally feel confident to demo to the local community, get some great feedback and am buzzed by the whole experience! Get contacted about freelance work I could do on the side, sounds like a great opportunity!

**I would like to invite the reader to fire up this video of sad violin music while you read the next few paragraphs**



April - July 2014: Day-job work goes balls to the wall. Two major projects' deadlines collided at the same time and already pretty tired from my personal project we go into a month long crunch, which set us back on the next deadline and put us into another month long crunch, we made it through alright but this was followed by another deadline push, which given our energy levels was effectively another crunch (... and I wish I was joking)

August 2014: End up more exhausted and drained than I could ever imagine. That side contract went through a lot of initial planning but had to pull out just before I signed anything (fortunately. Going through with it would have been a big mistake, but it was still an uncomfortable situation I found myself in :/ ). Work finally eases up to a mild panic, back to 8 hour days at least! Even so, my health and many personal relationships had taken a massive strain, and I suppose it's a testament to how strong those bonds are that they didn't break during that time (I'm truly sorry about that, hope that I'll be able to make it up to you all <3 ).

September 2014: Slightly recovered, I go to the A MAZE festival...


And that's sort of were the story ends. Or rather, a new one begins. I have so many words to say about my experience at A MAZE I don't know where to start. A MAZE is a festival of games and playful media and some truly wonderful people were there, all just loving games and play in general.

Before this trip, I wasn't entirely sure making games was for me anymore, in my exhaustion that passion in me had been suffocated somewhere and I felt like I was weaving my craft with the weakest of threads, the most misshapen of needles, and a brain too numb to realise that I didn't even need those things to start with. I over-express it a touch, but it was pretty ugly thought to have hovering in my head. And I know that I probably haven't had it even that bad, I'm a very lucky person to be where I am. But that's what it's like being in a rut, you feel hard done by, which only makes things worse...

**if you decided to play the violin music, you may pause it now**

That's thankfully changed now. I got to meet my idols, and idols I didn't know I had. The sheer passion of people around me shook me out of my rut and I'm excited to make games again. I want to see people smile and laugh and be a part of creating those experiences.

It's been a tough year for me but I'm glad I'm seeing the back of it now. Thinking now it's not been such a bad year game-wise, I made these after all!



I'm excited to make games again. So to cap off this blog, here are an couple that I'm making now or want to make as a result of A MAZE:

I saw my people

A game about cultural exchange, think Eufloria for the aeshtetics and the difficulty of cultural interactions and integration for the theme. Central experiences just how draining and difficult it can be when integrating into a new culture, overcoming that challenge and the new challenges that arise when you return to the people you left, who you may not get on with anymore! We have NO idea what to do for mechanics besides but we are figuring this out as we prototype along and as we learn more about the topic. The idea belongs to @damousey and I tried to do it justice with a prototype... not that either of us really know how to pull this off, but this was a first stab

Try it out here, it's not much but any ideas are welcome!



Kick In The Door - The Actual Edition

Kick in the door was originally designed as a 3 player game (with @CoolYourJets_SA), each player having one button to 'kick'. We had foot pedals for buttons but this edition will basically add an actual physical door with 3 large buttons which the player needs to actually physically kick to “press”. Kick in the door was already quite fun with foot pedals for buttons, but I’m keen to see people destroy a real life door playing this game… so yeah I expect I’ll be building more than one of these controllers...

Tried to get a webplayer build working, I failed... miserably, so check out the showreel vid of it (at 2:33s)


Grabbas

This game I actually made at AMAZE with two awesome Fins (@KissaKolme and @jukiokallio) We made it in about 3 hours it had a game breaking jam bug so we couldn't show it at the festival. The game is a 2 player competitive pole climbing simulator.

Check it out here. Needs two XBOX controllers (controls are left/right bumpers to grab, analog sticks to move hands) ... also I've not actually been able to play test this since getting back from AMAZE so lemme know what you think (and if it works properly)



Burning Alien VR

A game we made in 3 hours for the Oculus workshop at A MAZE (with @CoolYourJets_SA) that we couldn’t actually test because the Oculus just wouldn’t work on my laptop *sadface* You ride on an alien dinosaur and wonder around looking at various random crystals, pillars and whatever else our modeler had time to make. The Oculus interaction is different from usual because it takes the head direction to be the direction of travel, rather than the controller direction (similar to XTODIE: Rangnerok - an awesome game that was shown at AMAZE - check it out!) the difference being that turning your head turns your dino's direction slowly, which *should* feel like a natural experience but I don’t know since we never got time to actually test it. Anyway thought the idea was fun ^_^


Bite-based game

I don't know what, and I don't know how, but I want to make a game that involves a controller you have to bite on to win. Besides the obvious hygiene issues with sharing such a controller between people I think it would be an interesting thing to try out. Seems natural to make it a zombie game where you play the zombie.

6X Mass Production

Ok this game has existed way before AMAZE, but being there has given me the push I needed to actually get this on the road again, I started this project almost 18 months ago on and off in my spare time, about 6 months ago I decided to take it beyond a prototype and show it to my local community. They loved it (or at least liked it) and I got a hell of a lot of good feedback and a very clear picture of where to take it mechanically. You read my sob story above about loosing my passion a bit but it is back and I’m keen to sink some proper time into this (but without killing myself this time). I’m making plans so if you like puzzle games like I do, keep an eye out ‘cause this is gonna be fucking awesome and I’m gonna do what I can to make it a reality.

... err the current version is undergoing a massive rewrite and is not playable at the moment, really wanting to get that running asap, but in the meantime check the showreel video for an idea of the game (at 1:05s)




Tuesday 25 March 2014

Past, Present, and Future of raxterworks

Hello everyone!

It's been, wow, 4 months since I last posted! Heeeeeavy. Lots have gone down since then. Did a MASSIVE overhaul of the artwork in 6x Mass Production, mainly with the goal of applying for government funding to get to GDC '14. It seemed a bit odd to me, "what am I doing? sprucing up the graphics just to impress someone into giving me money". Well, it seems that way but with the game in its previous form, there is no way anyone would take raxterworks seriously... I wouldn't. And with the possibility of going to GDC I wasn't about to take any chances. I had a solid mechanic that was fun (or at least engaging), it just needed something to bring it to life.

Thus began a 2 week drive of utter madness and work to 1) find someone who could do art for this, 2) concept it up and 3) complete all the content needed (even just a trimmed down list for demo purposes). Not to mention that it desperately needed sound ad music.

Concepts from Gabe - we ended up going for painterly

Enter Gabriele Gabba and Joe Bolton, the true heros of this story! So I worked with these two lovely people to get a demo off the ground. I'll leave out the minutes of it all, everything went quite smoothly and 2 weeks later I had a "working" demo. Ok well, it worked for me, not a chance that I was releasing it to the anyone else, you look at it odd and it bugs out. But i was sufficient to make a few vids, get a few screengrabs and give a good impression of where things were going.

That was 4 months ago. About a month ago (and for your notebooks, GDC just ended) and the funding didn't come through. Not for me, nor anyone actually... turns out that the government has limited funds for these sorts of 'trade missions' and that it gets used up as soon as the applications open... and they open in March/April each year. Meaning GDC would never have gotten through. And all that time was wasted...

Baaha of course not, I loved working on it. Not to mention that the work I did then has been instrumental to the progress that is happening now. Ok, I was really hoping on GDC for exposure for 6x Mass Production, and for... well going to GDC at all! But getting 6-fold to the state it was in, I could see the potential in the game. I'd been working on the back end mechanics so much that I kinda lost sight of making it a good experience and putting the art and music in brought it to life and I could see it as more than just a prototype.

Although I loved my little Hexel artworks, this was not going to convince anyone that this was a marketable game
It still needs a lot of work, but it's feeling a lot better now. I think anyway

Sure I should be able to see that a game will be good from raw mechanics alone without the need for swish graphics and melodies, but I'm not that good and in the end that is how it went down in my mind. Next time I'll be more astute, more observant and wiser I hope, for now I took that opportunity and decided to run with it.

That was about a month ago, I'm now sitting on a Phase 1 Alpha build of 6x Mass Production that I'm quite proud of, actually not scared to show to the world, and has a hand plan for Phase 2, 3 and beta releases. It's difficult, lovely, odd, and scary all at the same time. Difficult since I'm doing this in my spare time. My work for Renderheads is essentially my day job, working on 6-fold is like going into crunch mode since it occupies nearly all my spare time. It's odd because I've not taken a game I've built from scratch this seriously before. It's new ground for me.

It's scary because I want it to be a success, which intrinsically means I'm opening my self up for failure. Financially I'm doing alright from the Renderheads work, even recovered from a rather difficult year last year. I'm more scared of the "am I good enough" thought. It's a genuine worry, I watch these incredibly talented game devs from around the world (and some next door) and wonder if I'm missing a trick.

I always remember though, I'm making a game I like, I love puzzle games, I love games in general. I'm making a game I want to see exist, I'm assuming that there will be others that will like it too (I'm not all that unusual, you see :p). It's not so much a financial thing, I'd love it to sustain me so I can make more games full time, although I'm not expecting 6-fold to be a runaway success or anything. But part of the reason I make games is for people to enjoy them. That is the end goal I'm keeping in mind. I'm lucky that failure of this particular project won't leave me on the streets. This is why it is lovely.

As for the future. The Renderheads work is keeping me on my toes, it's hard work but super challenging and fun (except for the odd nonsensical client request) I've learned an incalculable amount working on various projects or prototypes there! Digging it to the core! I might have an exciting 'side' project on hand (a client project, technically but it's shaping up to be a very very fun idea). If that happens then 6-fold will have to take a back seat for a bit as this would be another paying job. In either case I'm going to write up a detailed plan of where 6 fold will go, so that when I return to it I can pick up on it with minimal warm up time. Mainly what phases mean what features and in what state of completion, that sort of thing. All in all, very exciting times ahead!

 Stay cool and groovy, dudes!
-raxter