I NEED TO CODE!Coding 'till the morning lighthttp://joozey.nl/ineedtocode/feed/2015-03-21T20:55:39+01:00ChyrpFreezing effect and multitexturingtag:joozey.nl,2015-03-21:/ineedtocode/id/19/2015-03-21T22:11:14+01:002015-03-21T20:55:39+01:00joozeyhttp://joozey.nl/ineedtocode<p>
On an alien world, a spaceport is built on a desert area bordering a mountain edge. The port is used to transport resources to space and allow workers to travel back and forth between the mine colonies and their homeworlds. The stone-cold desert ground consists of a hard, sandy floor. At night, the thin atmosphere freezes over and forms an ice layer on the sand.<br>
<br>
<iframe src="https://www.youtube.com/embed/b5HLRzwhT84?controls=0&showinfo=0" allowfullscreen="" frameborder="0" height="315" width="420"></iframe><br>
This is a shader effect I made as part of a multitexture shader for the terrain. The shader takes 6 textures: ground (the sand), ground overlay (the ice) and ground mask (for blending ice on sand). Same for the walls. What happens is when the time value (0.0 to 1.0) hits night (1.0), the ice is completely covering the sand. During day (0.0), the ice is not visible at all. A straight blending would result into a fading transition between sand and ice, which is rather boring. Inspired by <a href="http://joostdevblog.blogspot.nl/2012/12/dynamically-melting-snow.html" target="_blank">this tutorial on melting snow</a>, I decided to spice it up.<br>
<br>
The code for melting is really simple and requires only two lines. First, we need to determine whether or not to melt at all based on the time value. Then, we blend the ice with the ground by the mask value (as we would using normal multitexturing):
</p>
<pre>
vec3 groundTextureColor = texture2D( u_groundTexture, v_texCoord0 ).rgb;
vec3 groundOverlayColor = texture2D( u_groundOverlay, v_texCoord0 ).rgb;
float groundMaskValue = length( texture2D( u_groundMask, v_texCoord0 ).rgb );
float groundMask = groundMaskValue * step( v_time, groundMaskValue );
vec4 groundColor = vec4( mix( groundTextureColor, groundOverlayColor, groundMask ), 1.0 );
</pre>
<p>
You can now use groundColor to draw with gl_FragColor, or apply it with further multitexture mixing (e.g. by determining whether you're drawing on a wall or a flat surface). The edge of the ice in the example is rather hard. If you want to apply smoothing, you can use smoothstep to do that. The code will be:
</p>
<pre>
float smoothRange = 0.02;
float groundMask = smoothstep( groundMaskValue * (0.5 - smoothRange), groundMaskValue * (0.5 + smoothRange), v_time );
</pre>
<p>
With some creativity, you can create many different environments that look alive and in motion: growing vegetation, filling water channels, solidifying lava streams, glowing runes appearing on the floor, your imagination is the limit ;).
</p>
Spaceport Exo revivedtag:joozey.nl,2015-03-27:/ineedtocode/id/18/2015-03-27T12:10:16+01:002015-03-16T16:05:45+01:00joozeyhttp://joozey.nl/ineedtocode<p>As long as I breathe, I wont give up on my child project! Spaceport Exo has been reincarnated many times on many different platforms and visualisations. I think this is the best attempt so far on Android. Although the 2D version I did earlier this year advanced pretty far as well, the new 3D approach works rather smooth and feels quite natural. In the screenshot here are different shaders at work: multitexturing on the terrain, skycube, and default phong shading all combined with distance fog to make seamless transition into the skycube backdrop. There is a day-night cycle on the fog, but this is not yet implemented on the models.</p><p><img src="http://joozey.nl/projects/spaceportexo/spaceportexo5_0.2.png"><br></p><p><img src="http://joozey.nl/projects/spaceportexo/spaceportexo5_0.2.png"></p>Jet engine effecttag:joozey.nl,2015-02-14:/ineedtocode/id/17/2015-02-14T00:07:20+01:002015-02-13T23:57:40+01:00joozeyhttp://joozey.nl/ineedtocode<p>Been pondering around with shaders in LibGDX, and I'm getting the hang of it!<br>The fire model has a distortion shader on it in 3D space. Around the fire model is a heat cone which functions as a mask for post-processing the rendered scene with another distortion shader. Works well on desktop but it still need optimisation for Android, it's not functioning too well. A few other glitches are also yet unfixed: alpha of the fire model and heatcone masking when obscured by other models.<br></p><p><iframe src="https://www.youtube.com/embed/GCqpNqsEjtA?controls=0&showinfo=0" allowfullscreen="" frameborder="0" height="315" width="420"></iframe><br>In addition, I added a virtual reality option including gyroscope controls: rotating the camera with your head. Works very nicely.<br>Next up: LeapMotion to designate targets and fire missiles by waving your hands? :-)<br><br><img src="http://www.joozey.nl/projects/tests/jetengineshader1.jpg"><br></p>
Pixcitytag:joozey.nl,2014-09-18:/ineedtocode/id/16/2014-09-18T22:28:44+02:002014-09-18T22:27:19+02:00joozeyhttp://joozey.nl/ineedtocode<p>The Shellworlds project got stuck. It became too complex at some point and I wanted to take a simpler approach for a game. I was looking for a concept that was easy at the core but very scaleable in assets. After watching a Minecraft SimCity-esque mod called <a href="www.jigarbov.net/download-simburbia/">Simburbia</a> I decided to try and make a building game. Strategy games are amongst the hardest to create, but that is mainly in balancing, not in the complexity of the code. Choose buildings, place 'em down and watch the effect. If things go poor, start optimising. The interaction is simple enough.</p><p>The scaleability lays in the variety of buildings. Buildings can unlock other buildings and influence the environment (polution, happiness, land value, traffic, ...). I decided to split the building gameplay in two parts: placing buildings on plots, and placing "lanes" with trees, roads, railroads or rivers around the plots. This way the player can lay out the city with the plots, and optimise with the lanes to try and get the most efficient city. It also adds a welcoming level of detail in the visuals.</p><p>Screenshot time!<br><img style="width:70%; height:70%" src="http://joozey.nl/projects/Pixcity/pixcity_plots-and-lanes.png"></p>Shell Worldstag:joozey.nl,2014-05-17:/ineedtocode/id/15/2014-05-17T23:32:22+02:002014-05-17T23:28:39+02:00joozeyhttp://joozey.nl/ineedtocode<p>Started developing a small new game based upon the Profit One Trillion game I posted earlier.<br>This game is about starsystem management. You are in charge of the interplanetary infrastructure, and must try to optimise the distribution of resources harvested from planets as well as you can. Due to the limitations of spacerift channelers, shellworlds can only transport large amount of resources and people to other shellworlds when they are in range. It is your job to determine which planets get a shellworld, and what function it will perform (industrial, commercial or residential).</p><p>Here is a nice picture showing a random star system with planets and their range indicator circle, and active spacerift lanes.</p><p><a href="http://joozey.nl/projects/ShellWorlds/devshot-0.1.2.png"><img src="http://joozey.nl/projects/ShellWorlds/devshot-0.1.2.png" style="max-height: 960px; max-width: 720px;"></a></p>Spacebounce in playstore!tag:joozey.nl,2014-04-16:/ineedtocode/id/14/2014-04-16T22:08:17+02:002014-04-16T22:07:33+02:00joozeyhttp://joozey.nl/ineedtocode<p>A few weeks ago I posted an early version of Space Bounce.<br>After some refinements I uploaded it to the playstore, and here it is!<br><br><a href="https://play.google.com/store/apps/details?id=joozey.games.spacebounce">https://play.google.com/store/apps/details?id=joozey.games.spacebounce</a><br><br>Not working on every device. The newer your android, the better chances it'll work.<br>Leave a rating if you can, I'd appreciate it!<br></p>Spaceappschallenge 2014tag:joozey.nl,2015-05-22:/ineedtocode/id/13/2015-05-22T16:08:42+02:002014-04-16T15:03:04+02:00joozeyhttp://joozey.nl/ineedtocode<p>Last weekend an international world-wide hackaton was organised by NASA: the Spaceappschallenge. In the Netherlands (where I live), the event was hosted locally at the ESA Business Incubation Centre. I participated with a small team of three programmers, two creative designers and a subject matter expert. We solved the Asteroid Prospector challenge, one of the many challenges set out by NASA to create world-wide awareness of (potential) technological advancement and investment opportunities. Asteroid Prospector involves creating a game about visiting the many asteroids in our solar system.</p><p>Since asteroids are well known for their rich rare metals (much rarer than on Earth due to the lack of a molten core), we took the road of asteroid mining. The online accessible <a href="http://ssd.jpl.nasa.gov/sbdb.cgi">NASA/JPL Small body database</a> provides information of tens of thousands of asteroids, featuring data of position, orbit, names, date of discovery, etc. We also made use of the <a href="http://www.asterank.com/api">Asterank api</a>, build by an employee of a commercial asteroid mining company called Planetary Resources, containing estimate profits for each asteroid. We analysed the datasets and kept filtering out asteroids until we ended up with 38 valuable rocks in orbit between Jupiter and Mars.</p><p>After two days of hard work; brainstorming, programming, designing, programming, scrapping features and more programming, we finally finished a playable single-player demo of our game: Profit One Trillion (the name was meant to be a working title, but it stuck). Multiplayer and AI were also planned, but we did not have enough time to finish it.</p><p>Here is the playable demo: <a href="http://joozey.nl/projects/spaceappschallenge%202014/">http://joozey.nl/projects/spaceappschallenge%202014/</a><br>Our project page: <a href="https://2014.spaceappschallenge.org/project/profit-one-trillion/">https://2014.spaceappschallenge.org/project/profit-one-trillion/</a><br>Source code: https://github.com/Josvanegmond/NasaAppChallenge_Profit_One_Trillion<br>And here is a demo video: <a href="https://www.youtube.com/watch?v=BXZnbrciAQ4">https://www.youtube.com/watch?v=BXZnbrciAQ4</a></p><p>Screenshot!<br><img src="http://joozey.nl/projects/spaceappschallenge2014/screenshots/game-screenshot.png"><br><br></p>Space Bounce!tag:joozey.nl,2015-02-14:/ineedtocode/id/12/2015-02-14T00:10:43+01:002014-02-01T03:06:56+01:00joozeyhttp://joozey.nl/ineedtocode<p>Out now in its most rudimentary form: <b>SPACE BOUNCE!</b></p>
<p>A Multiball Pong Arkanoid Dual Player/AI Powerup Laser Base Defense game with loads of explosions, photon effects and real visual vibrations!</p>
<p><b>Download for desktop (right-click save-as):</b> <a href="http://joozey.nl/projects/spacebounce/spacebounce-desktop.zip">http://joozey.nl/projects/spacebounce/spacebounce-desktop.zip</a><br>
<b>Or for android:</b><a href="https://play.google.com/store/apps/details?id=joozey.games.spacebounce">https://play.google.com/store/apps/details?id=joozey.games.spacebounce</a></p>
Your feedback is most appreciated!<br>
<br>
Screenshot!<br>
<img style="" src="http://joozey.nl/projects/spacebounce/spacebounce-dev3.png"><br>Game Brieftag:joozey.nl,2013-11-13:/ineedtocode/id/11/2013-11-13T22:03:41+01:002013-11-13T22:03:41+01:00joozeyhttp://joozey.nl/ineedtocodeThere's this site that asks 10 questions about that game you're creating. It helps you in sorting your thoughts that are likely in disarray due to massive enthousiasm, longing and an intense desire to create the perfect game in honor of your imagination.<br>
<br>
<a href="http://www.game-brief.com/">http://www.game-brief.com/</a><br>
<br>
And so here is mine about Spaceport EXO:<br>
<br>
<h4>Game Brief</h4>
<h5>1. What is your project?</h5>
<p>A strategic top-down spaceport simulator, where the player is the Commander of a planetary spaceport on some distant unknown exoplanet.</p>
<br>
<h5>2. What does your game aim to do?</h5>
<p>The spaceport, practically nothing more than a small, dusty old terminal with one runway, is only known in the direct region and used to reach the local pub inside the crater next to the spaceport. Your task is to make it a massive, thriving epicenter of intergalactic transportation. The player will experience a feeling of accomplishment and importance as financial and political issues are avidly dealt with, or fail miserably and see the spaceport hijacked, overrun, claimed, bombed or otherwise being taken over.</p>
<br>
<h5>3. What format are you shooting for (use specifics: PC, iOS, Android, screen sizes, required graphics detail, etc.)</h5>
<p>Android, 480x800. Future screen sizes: optimisation for tablets Future platforms: Anything that runs Java</p>
<br>
<h5>4. What are you designing with? Who? (Try to be specific) </h5>
<p>Alone for the time being. Graphics are dummy placeholders from lostgarden's free to use and abuse scifi graphic packs. Custom graphics I make by hand using GIMP. A lot of animation and colour manipulation is done by code.</p>
<br>
<h5>5. What is your Target Audience?</h5>
<p>Average 16+, interested in science fiction and playing a manager. Things that help: A problem solving mindset where hidden variables need to be deduced from the information streams in order to optimise the flow of the game. A sense of collaboration with the fictional characters that you need to keep as a friend. Their provoking actions should challenge the player to give manipulative responses in order to get what you want.</p>
<br>
<h5>6. What does your game appeal to / how will it affect people? </h5>
<p>The game is supposed to make the player feel skilful and important with a wave of satisfaction through accomplishment by letting them solve financial problems, requiring them to spent their money responsibly and take educated guesses when it comes to investments. Political issues, confrontations, stalemates and even wars are at hand as well, giving you increasingly more awesome feelings of importance as you manage to juggle your way through, and come out better in the end.</p>
<br>
<h5>7. What are some inspirations? (Try to be specific.)</h5>
<p>Airport Inc. (later Airport Tycoon 3): the sense of importance through attracting contracts. EVE Online: the look-and-feel of typical scifi information interfaces, that stuff Mass Effect: but really any good scifi movie/game with stereotypical characters, they inspire the political setting Papers, Please: wait, what has that to do with any of the above? Well, the feeling of importance, having control, yet heavily constrained by matters from those controlling you. Sharkworld, manage your team, figure time schedules, and keep the highly respected chinese Chairman happy. Boy that game demands some heavy decisions from you, and if you screw up...</p>
<br>
<h5>8. What are some competitors to your game? (Other games that do the same or similar things)</h5>
<p>Airport Tycoon? But that game is ancient and buggy as hell. There's the facebook variant: Airport Ville (of course). Heavily based on clicking the screen, bothering all your friends and their friends, and giving your real money to buy fake money to buy stuff.</p>
<br>
<h5>9. What will your game do different from them?</h5>
<p>I suppose there are more likewise games as listed above (both inspirational and competitive), but the one that combines serious spaceport management skills with the science fiction genre and a rich intergalactic political problematique I have yet to find.</p>
<br>
<h5>10. What is your budget?</h5>
<p>The big milestone is a working prototype game in the google play store with a challenging but FUN start. FUN being both graphically appealing, lively animated (in great detail) and interesting little stories keeping you playing to see more. I would be willing to pay someone who shows a similar vision for the game and contributes intellectual knowledge to help achieving the feeling of importance, gaining management skills and accomplishment for the player. How much I'd pay? For a prototype... I'd pay 50 bucks for recreating the assets that the player starts with, once I'm happy with the look and feel. I'd keep asking for more and pay increasingly more linearly with my growing confidence of the game's potential. I guess that's not a very convincing contract for any designer, but for me the most important thing is that it fully remains my child as I envision it. 3 years ago I started it, and I would drag it with me another 10 years if needed, until I find the artist that can evoke the emotions I want this game to offer.</p>
<br>
<br>Spaceport EXOtag:joozey.nl,2015-03-27:/ineedtocode/id/10/2015-03-27T12:09:39+01:002013-10-19T21:28:56+02:00joozeyhttp://joozey.nl/ineedtocode<p>So here's something new (again!). Spaceport EXO, a spaceport management game.</p>
<p>Well, not completely new. I have started on this concept on and off for the last years. But each fresh starting building upon the knowledge and code I had gathered thus far. No less is true this time. I integrated several methods, effects and graphics in this game I have harnessed in the past.</p>
<p>Without further ado, a screenshot:</p>
<p><a href="http://www.joozey.nl/projects/spaceportexo/Spaceportexo2_0.1.1.png"><img style="" src="http://www.joozey.nl/projects/spaceportexo/Spaceportexo2_0.1.1_small.png"></a></p>
<p>In order for your spaceport to be operational, you need to have the basic infrastructure layed out:<br>
- Have at least 1 runway connected to 1 or more hangars through an apron road<br>
- Have 1 control tower<br>
- Have a power source connected to the control tower (apron transmits power too)<br>
<br>
Once your spaceport is operational, you will receive contracts and ships will arrive and depart, which will give you money. But beware, if your spaceport is not able to cope with the amount of traffic, and flights get delayed, you'll be getting some angry contractors, and lose reputation.</p>
<p>You will also face some decisions that may put you in a dilemma. Alien characters may need or request your spaceport for special occasions, which always have a benefit and a down side, whether or not you accept or decline.</p>
<p><a href="http://www.joozey.nl/projects/spaceportexo/Spaceportexo2_0.1.png"><img style="" src="http://www.joozey.nl/projects/spaceportexo/Spaceportexo2_0.1_small.png"></a></p>
<p>All of the graphics are placeholders for now.<br>Most graphics I drew myself, the ships are from Lost Garden.<br><a href="http://lunar.lostgarden.com/labels/free%20game%20graphics.html">http://lunar.lostgarden.com/labels/free%20game%20graphics.html</a></p><p>Still a lot to do, show your support by leaving a comment :).<br>
- Joozey</p>
Stalematetag:joozey.nl,2013-06-04:/ineedtocode/id/9/2013-06-04T19:05:26+02:002013-06-04T15:34:37+02:00joozeyhttp://joozey.nl/ineedtocode<p>A little sideproject: Stalemate.<br>Stalemate is a turn based scifi space battle card game where you assume the role of admiral over several fleets, and battle against an opponent over the internet. A.I. is planned only when the game is entirely functional. I decided to start a simpler project that is quick to finish in concept, but even this relatively simple idea proves to be quite a lot of work. Nevertheless this is what I have achieved after about 20 hours.<br></p><p>There are five battle positions to station your ships in: sword fleet, flanks, support line, primary fallback and secondry backup.<br>You can switch fleet positions by drag and drop one fleet onto another. If you drop a fleet on an enemy fleet, it will attack that fleet if possible.<br>Fleets in short range are sword fleets and flanks, they can always battle eachother. The other positions are long range, and can only attack or be attacked by fleets that have the "long range" ability.<br>There are a number of other abilities, each giving a fleet an edge in combat. Some abilities negate others, like Jamming prevents hits from long range. Others boost shields or increase firepower.</p><p><br><img src="http://www.joozey.nl/projects/Stalemate/devshot_v0.1.jpg"></p><p>Yet to do is actually attacking, victory screen and hiscores, intro screen, tutorial, lobby and start match with ship selection. Whew.<br></p><p><br><p>Meanwhile still working on Spacetrader3k, update about custom animations comming soon!</p><br>
<p>
Oh yeah, credits where credits due:<br>
Ship models by SolCommand.com: <a href="http://www.solcommand.com">http://www.solcommand.com</a></p>
</p>Spacetrader3Ktag:joozey.nl,2013-03-12:/ineedtocode/id/8/2013-03-12T22:26:19+01:002013-03-12T22:12:21+01:00joozeyhttp://joozey.nl/ineedtocode<p>What's this? Another project? Yes! Naturally I started anew once more.</p>
<p>Spacetrader3k is a trading simulation game on Android. The player can create new contracts consisting of a ship, cargo and two planets where the ship will transport its cargo inbetween: loading, travelling, unloading, and over again. Every succesful transit will give you money to start new ship research and buy more contracts for more ships. As time (or actually cycles) passes, certain events will take place. Ships can get hijacked, damaged, stranded, adrift, raided, as well as boosted, attract investors, find treasures and unlock new travelsites.</p>
<p>I have put the focus on creating nifty looks on the technical side (in Java and making smart use of XML). The XML part of Android is still a bit confusing, but the Java side goes a lot better since my last project (see <a href="http://joozey.nl/ineedtocode/?action=view&url=android-title-exploration-of-space">previous post</a>) where I managed to screw up the project with a web of threads and heavy interfaces. I learned, and this game runs a lot more smooth now. The tough part ahead is implementing fun and challenging game mechanics, but it's also one of the most fun parts to do. So await a new update soon...</p>
<p>Show your support and leave a comment!</p>
<a href="http://www.joozey.nl/projects/spacetrader3k/spacetrader3k_dev_0.3.1.png"><img src="http://www.joozey.nl/projects/spacetrader3k/spacetrader3k_dev_0.3.1_small.png" /></a>The Plague 0.2tag:joozey.nl,2013-01-08:/ineedtocode/id/7/2013-01-08T19:10:59+01:002013-01-08T16:30:46+01:00joozeyhttp://joozey.nl/ineedtocode<p>The Ludum Dare competition is over and the results have been published! I did not end up in any noticeable ranking list (not that I expected that), but it has been a great trip. I learned quite a lot from the contest regarding gamedesign and cutting out a lot of awesome features. But after the submission deadline I haven't been sitting still either. I collected all the feedback and made a version 0.2 of The Plague.</p>
<p><b><a href="http://www.joozey.nl/3dgs/ThePlague/The Plague v0.2.zip" target="_blank">Download version 0.2 of The Plague here!</a></b><br>
</p>
<p>Screenshot!<br>
<img width="100%" src="http://www.joozey.nl/3dgs/ThePlague/shot_0.2_4.jpg"></p>
<p>Feature list:<br></p><ul><li>
Bit of control for your minion hoards: by using CTRL around a claimable area you can position your current minion swarm to that area. Press CTRL on the claim-spot to recollect them.</li><li>
New minions: skellies and shadow beasts.</li><li>
New enemies: pest doctor, villagers (they are affraid of you) and wolves.</li><li>
Disease stops spreading, a potential next version will contain ways of conquering the whole land by sacrificing minions to construct dark towers to expand your diseased realm.</li><li>
Zoomed in about 50% so graphics are better visible on large resolution screens too.</li><li>
Updated colours to match better (but colours are still a hard thing to properly balance for me).</li><li>
More sprites and graphical details.</li></ul>
<p>Have fun playing and I'd be honoured to receive some feedback from you!</p>
<p>Joozey<br>
</p>Planets!tag:joozey.nl,2013-01-08:/ineedtocode/id/6/2013-01-08T19:08:14+01:002013-01-04T21:20:35+01:00joozeyhttp://joozey.nl/ineedtocode<p>
Got a workflow in photoshop to create planets quickly... well... non-earthly planets that is.
</p>
<p>
<a href="http://joozey.nl/planets.jpg"><img style="" width="100%" src="http://joozey.nl/planets.jpg"></a><br>
</p>
<p>
First planet, Fae Terra, took about 3 hours, the rest only 15 minutes. Naturally I wanted an earth-like planet too, boy was that a pain to create. Many hours later searching tutorials, textures and fiddling around with colours I got a result I was fairly happy with.
</p>
<p>
I tried to find a process using effects primarily that results in a planet where continents are separate shapes on the texture, match the ocean they drift in and look fairly realistic. For every planet you need some manual tweaking with the clone pencil and random strokes, blur and smudge to give more story to it, but the amount of manual work on the earth planets is much, much more than on the other planets without continents. After the continents looked good enough (for the time I spent on it), I did the clouds. These went a lot easier with a proper brush to create the sheepy clouds, and strokes + smudge to create the bigger bands. I could have player more with depth, but I really needed to finish it up.
</p>
<p>
Credits due where credits due: all textures I used came from <a href=http://www.texturez.com>texturez.com</a>. Free concrete and stone textures to define the surface of the planets.
</p>The Plaguetag:joozey.nl,2013-01-08:/ineedtocode/id/5/2013-01-08T19:11:25+01:002012-12-17T02:38:29+01:00joozeyhttp://joozey.nl/ineedtocode<p>For the Ludum Dare competition #25, I created a game called The Plague.</p>
<p><h3><a href="http://www.joozey.nl/LudumDare/25/ThePlague/The Plague.zip">Download link of The Plague (LD #25 entry) is here!</a></h3></p>
<p>Ludum Dare is a gamedev competition event. In 48 hours you have to create a game, and every aspect of it (including code, music, sound and graphics). The event revolves around a theme chosen by the community. This time: "You are the villain". With that theme in mind I spent all saturday not creating any game. So, that saturday evening I sat down and started to code. Code line after line. Debugging and cursing. Redesigning, breaking my head, more swearing and more bad art. Now, sunday night, half an hour before the deadline, I finished. It took me about 12 hours, and here is the final result.</p>
<p>I hope you enjoy the little game, I had to cut out so much more awesome ideas, and had to do the less awesome ones to make it playable enough. There is no real ending, just try to convert the entire lands to that lovely stinking miasma full of rotten corpses and mindless minions.</p>
<img width="100%" src="http://www.joozey.nl/LudumDare/25/ThePlague/shot_6.jpg">
Android title: Exploration of Spacetag:joozey.nl,2013-01-08:/ineedtocode/id/4/2013-01-08T19:13:13+01:002012-11-07T16:49:29+01:00joozeyhttp://joozey.nl/ineedtocode<h4>Pushing hobbies forward</h4>
<p>
I don't earn money with programming, gamedesign, or talking about those two. But they are my hobbies, and I love doing all three. The main trap about hobbies is when they require labour. At some point, every project in the traject of completing needs tedious and boring work. For this reason I have a fridge full of unfinished projects. Many times I have forced myself not to start a new project again, because my conceptual fridge is too full already. But last month I stumbled upon a nice challenge that got me motivated to actually finish a project: the <a href="http://www.ludumdare.com/compo/2012/11/01/october-challenge-2012-wrapup/">Ludum Dare -finish a game and bring it to the market- October Challenge</a>! The challenge is already over, but that didn't stop me to accept it regardless.
</p>
<p>I tried to keep the main idea of this game project as simple as I could (that's quite the challenge already!). You start in a star system with a civilisation that is about to take their first baby steps into interstellar growth. On this star you decide which steps into different kinds of technologies your civilisation will take. When you choose, new technologies will become available. However, one decision may cancel out others as well. Each choice grants you new abilities, resources, etc. to construct buildings, which in turn unlock new possible research and subsequent buildings.<br>
<br>
At some point you may build a Hypergate. This allows you to colonize different stars that are linked to yours in the Local Cluster screen (see screenshot). Research on the new star will start all over again, allowing you to research and develop different paths you skipped on the previous star. The final goal is to reach and finish the last star in the Local Cluster. The faster, more efficiënt and more developped you finish, the higher your ranking. Your rank will be updated online, so you can meassure yourself against the rest of the world.
</p>
<p>
At the time of writing this post, I have released the first development screenshots. The basic programming framework and interface design stands, now on to extending and balancing the game!
</p>
<img src="http://joozey.nl/explorationofspace/devshot1.1_small.jpg"/>
<img src="http://joozey.nl/explorationofspace/devshot1.2_small.jpg"/>
<img src="http://joozey.nl/explorationofspace/devshot1.3_small.jpg"/>Applying Drives to Gamedesigntag:joozey.nl,2012-10-26:/ineedtocode/id/3/2012-10-26T22:51:49+02:002012-10-26T21:44:10+02:00joozeyhttp://joozey.nl/ineedtocode<h4>The harmony between psychology and gamedesign</h4>
<p>
Here are two interesting articles on rockpapershotgun:<br>
<br>
<a href="http://www.rockpapershotgun.com/2012/10/23/games-are-best-when-things-go-wrong/">http://www.rockpapershotgun.com/2012/10/23/games-are-best-when-things-go-wrong</a><br>
<a href="http://www.rockpapershotgun.com/2012/10/24/games-arent-best-when-things-go-wrong/">http://www.rockpapershotgun.com/2012/10/24/games-arent-best-when-things-go-wrong</a>
</p>
<p>
Both their statement hold truth. But there are a lot of games that cover neither story nor problematic situations, and are still popular: Quake, FIFA, Need for Speed, Team Fortress, Farmville. If we look to the similarities of the two different ideas both articles describe, we can generalise this statement and get something along the lines of:<br>
<br>
Games are best when they give the player a self-developing experience after he reaches a goal.<br>
<br>
According to various psychological models, people have certain drives explaining why they act as they do, and like the things they like: work of Clare Graves, Kolb, DISC, Vermunt, they all overlap in the human characteristics they describe. My favourite model is one with 6 drives (to my loose interpretation): social interaction/networking, curiosity/understanding, prestation/efficiency, structure/precision, acting/initiating, safety/familiarity. Some of these drives you need to function properly and feel happy, some you naturally act from without realising, and some drives you really can't stand or don't care for when someone else acts out of those drives. We can apply them to games as well. Some cases for each drive:<br>
<br>
<b>safety/familiarity</b><br>
Add to the player's emotional framework and create a familiar environment: tell a story through dialogues, music, show intriguing scenery. Give the player metaphors reflecting life experiences for the player to use in real life. Allow the player to create a safe home base and explore the world from there.<br>
<br>
<b>curiosity/understanding</b><br>
Stimulate the player's problem solving abilities: let the player solve engaging puzzles, handle complex situations with unknown outcomes, figure out hidden systems.<br>
<br>
<b>structure/precision</b><br>
Satisfy the player's desire to strive for perfection and structure: let the player create sets of rules that influence the game, do tasks that require precision and careful working methods.<br>
<br>
<b>social interaction/networking</b><br>
Stimulate the player's interaction abilities: allow the player to forge a team, either with A.I. or multiplayer and reach a common goal, give options to dialogues that substantially differs the final result of the conversation, allow the player to develop his character in his own image, and let the environment be influenced by that.<br>
<br>
<b>prestation/efficiency</b><br>
Allow the player to develop his prestation skills: add a highscore list to visibly become the best, use achievements to give the player an idea how far he has progressed, add special endings when the player completes a goal the best way possible.<br>
<br>
<b>acting/initiating</b><br>
give the player a set of tools to experiment with right away, allow to skip tutorials, give a clear goal, present fast-paced elements, use impulsive gameplay and involve action.<br>
</p>
<p>
The more cases you cover in your game, the more popular and memorable your game becomes (although there are also a lot more factors). Not everyone is triggered by every case, some of those drives you don't care for, some of them are really important. A game that has something of every case covers the biggest target audience.<br>
<br>
Think about minecraft; it covers almost all human characteristics: you can create a safe environment, the terrain is intriguing, it contains a strong problem solving part: redstone and pistons, the entire game is about building structure from the chaos of blocks and use precision for the type of blocks you choose (you can do a lot with stairs, fences, trapdoors, ...), thanks to the multiplayer part the player can forge teams and enemies. The only characteristic that is lacking is prestation (there are achievements, but those are not engaging enough to significantly trigger prestation-aimed players), but the community took care of that; let's plays where people try to draw as many subscribers as they can to make more money, forum and blog posts about the most beautiful and intriguing structures, there is a group that are the best of the best. And that's only in-game, then there's the modding community... no wonder minecraft is so popular still after 5 years.<br>
<br>
Now take a game like Mass Effect 1 (the only one I played). It has a story, a team assembling part, you are rewarded for your prestation by the skill points you can divide on skills, and the best of the best guns you can buy after doing a lot of sideway missions, and it has strong action elements. But you don't really create structure or strive for perfection (to an extend, but it does not change the way you end the game), nor is there a big problem-solving part. Nearly all of the problems are chewed our for you in the mission log: do this, do that. No cognitive thinking required. It is a good game, but less popular than minecraft (especially after 5 years).
</p>
<p>
Let's compare two types of players:<br>
<br>
Why don't call of duty players play sims and vice versa?<br>
Call of Duty is action oriënted, sims is not.<br>
Sims contains a very familiar environment, allows creating your home base (literally) and hands you the ability to create structure in the life of your Sim, CoD does not have these drives.<br>
They both have social interaction and prestation and efficiency. The wide range of drives they cover makes them as popular as they are. But generally taken, Sims players dont like action and CoD players don't like the patience to give your Sim a structured and prosper life. They both do lack challenging the player in curiosity and understanding, which is why I don't really like playing either of them.
</p>Human drivestag:joozey.nl,2012-09-02:/ineedtocode/id/2/2012-09-02T01:46:02+02:002012-08-25T00:40:03+02:00joozeyhttp://joozey.nl/ineedtocode<h4>What drives you to do what you do, say what you say and love what you love?</h4>
<p>
After participating in quite an intense but very motivating team session on Management Drives, I felt rather enlightened. Management Drives visualises human characteristics in 6 colours in a grid; properties like impulsive acting, abstract thinking, groupsbonding and creating structure are evaluated for each person in the team, from which results an order of colours which fits most to your current natural behaviour. There is more in play, but this is to give you an idea.
</p>
<p>
Being rather skeptical towards labelled boxes and putting people in there(even though I like structure a lot), the character traits that the coach described to each member reminded me more of an astrological reading at the beginning than a fact-based analysis. But as I started to understand the model better, the descriptions became remarkably fitting for every team member.
</p>
<p>
It is, like every psychological model, a tool to make you aware of the interactions between you and your colleague, a foe and (especially) yourself. I was able to answer questions on why I do the things I do: why do I like to create games that influence people at all? Why do I not have a problem putting my personal feelings in a group, but can get it difficult when someone else does the same? My main drive is to get acceptance from my environment, feeling safe, fits to this behaviour. When I express myself openly and know my colleagues will catch me, that feels safe. But when another colleague express him/herself openly, then a bit of safety falls away, and I play part in creating safety rather than having it. Luckily my drive to bond a group, and give help to people that need it, is also there :).
</p>
<p>
I am sure I will take this experience with me in the things I do, say, and the way I approach people from now on. Can't stop seeing colors everywhere!
</p>To game or not to game...tag:joozey.nl,2012-10-26:/ineedtocode/id/1/2012-10-26T22:54:14+02:002012-08-09T23:34:30+02:00joozeyhttp://joozey.nl/ineedtocode<h4>
Staying on schedule by doing some work now, or admit to your game addiction?
</h4>
<p>
Not everyone find them self capable of following their schedule properly, and prefer to "slack" off doing something else. Under normal circumstances people do not get into immediate trouble when they shift work forward once in a while, but there is a group of people who tend to take slacking too far. They cause trouble for themselves and people who depend on them, causing stress on their colleagues and bringing deadlines in danger. It sounds a bit exaggerated but it happens more than occasionally.
</p>
<p>
An often heard reason for failing deadlines is "not enough time". What those people probably mean with that is: there was not enough time to be able to bring up motivation. An entertaining approach for reducing slacking from work might be a good way to increase motivation. Some playful way of completing work well on time to keep one on schedule and prevent stress.
</p>
<p>
I have some experience in shifting work forward, so I took myself as an optional target to start with. I would create a means of motivating myself for doing boring tasks that I would likely shift forward. As a fan of games I got interested in some sort of motivational game that would keep me on track of my schedules. and as a fan of programming I got to work and started prototyping that game.<br>
My final target audience will be: game-addicted people failing to complete their tasks on time. A target-audience specific enough to draw a small relevant group of people to share and test some theories with. I could even use myself as a test subject!<br>
<br>
There are some interesting similarities in the world of gaming. One that interested me most is the phenomenon of "grinding" in games. If a player is grinding, it means he is doing a repetitive task for a lengthy time to achieve a certain goal.<br>
<br>
For example: the player's hero is killing monsters to gain experience until he reaches the next level. In the gaming world, people do this for days, if not weeks, on end. A lot of time is put into this repetitive task to finally accomplish something to be proud on. So, what is the difference between real-life work and grinding in gaming? What is it that our audience does grind, but not work?<br>
<br>
Some potential reasons:<br>
<li>
<ul>The task requires less skill to start in game than the task in real-life does</ul>
<ul>The task has a larger motivating factor while executing in game than the task in real-life has</ul>
<ul>The task gives a more appealing reward at completion in game than the task in real-life does.</ul>
</li>
<p>
If one has the choice between two unfavourite tasks, but one is easier than the other, or the reward is better, the choice is obvious. Sometimes the reason is not even justified in the long run; the joy of gaining a level lasts for a short time, gratitude from colleagues by finishing work well on time can last much longer with better carreer perspective. Yet levelling up is more appealing. For the person taking a choice between task A or B at that moment, the short-term benefits weigh more. Changing that perception of someone is not feasible by any game or technique, it is behaviour that the person need to change himself. One thing we can do with our game is compete on motivation- and reward systems with the game that distracts the user, so the player plays our game instead. If we gain the player's attention, then we can help complete his schedule.
</p>
<p>
Below are some gamedesign approaches for stimulating a player to complete his real-life schedule. The examples are superficial to make the basic idea clear.<br>
<br>
<i>progress of the game is directly linked to task completion.</i><br>
<b>Example</b>: player inserts list of tasks. When marked as completed player gets play time. <br>
<b>Advantages</b>: player is motivated to complete tasks before "having dessert", obtaining good habits.<br>
<b>Disadvantages</b>: user chooses a wrong granularity of tasks (e.g. tasks are split to too much detail), causing unbalanced rewarding.<br>
<br>
<i>The game uses multitasking abilities of the player just enough to prevent distraction but still able to do the task.</i><br>
<b>Example</b>: player needs to hold a finger on screen to increase future play time while vacuum cleaning.<br>
<b>Advantages</b>: player has to vacuum clean in order to play later.<br>
<b>Disadvantages</b>: requires a versatile set of game-tasks to cover all sorts of real-life tasks. Requires multitasking abilities of the player.<br>
<br>
the game monitors the applications that users are using, rewarding the user with the amount of time spent on applications that belong to tasks.<br>
<b>Example</b>: player applies applications for work and entertainment. Game monitors time spent on each and calculates future play time.<br>
<b>Advantages</b>: player has to have his work related applications open, inviting the player more to perform the task.<br>
<b>Disadvantages</b>: computer-tasks only, leaving applications on without working gives unfair reward.</p>
<p>
To get started with a prototype we need to choose between concepts. Concept 3 cuts the target audience we have somewhat, as not all tasks a user must do are computer related. Household tasks should also be possible. It might be a very effective way for a more specific audience, we keep it in mind as a feature or sequel.<br>
The second concept is quite some work to implement different actions a player must do for covering all kinds of task operations. Gestures, voice based, memorizing or visual interaction can be used while performing repetitive job tasks. <br>
The first concept requires the player to have scheduling skills. It is the easiest concept to implement as the balance of reward control is given to the player. For this reason I have chosen that approach to create a first prototype.<br>
<br>
The basic interface layout for adding schedules and tasks is there for Android, and currrently working on the game itself. There are also plans for iPhone and windows mobile, but due to the trouble interface creation gives me for different devices, I went with the easiest way first (as far as my experience goes).
Next up: the actual game!
</p>