LD28 December 13–16, 2013

Mini Ludum Dare 48: Final Day (Three) Dev Log

Screenshot of the game. Yay programmer art!

Today (technically yesterday) was the only day our team (me and Sebastian) were really productive. We got the bulk of the game today. This log will be on my perspective of today. For Sebastian’s perspective on today (and the past few days) see his developer log here. Since this article is written a day later, you can download the finished game here.
I started today with a new game state management system, both of the players, and a buggy player shooting projectile system.
The first thing that I did was remove the need to press right to start moving at the beginning of the game. The reason I did this, is because, since that is the only direction you can move on the X plane, the input to move right was moot. Once you started going right you couldn’t stop, so I decided to just remove the input outright.
Now that this was done, I went to fixing my bullet implementation. unfortunately, I didn’t have the programming know-how to salvage what I had done, so I decided to just axe the current implementation and restart it. This was necessary at that point, although in hindsight, the fact that I had to restart it cost me valuable time that I could have used implementing every feature I had planned for the Ludum Dare version. Anyway, it still had bugs, namely the bullet position starting somewhere out of view, and not on the players cannon, and that it went the wrong direction, and in an arc as opposed to straight. I was able to fix all of these though. The direction was the easiest, I just flipped an errant sight that I accidently wrote as less than instead of greater than. I fixed the arc, by editing more vector positions, and the position code, by creating a new position variable, and using that instead of my very niche player position code, which didn’t work very well. The bullets were now working…. until the player goes to the upper or lower bounds of the screen. After you touch the bounds, the bullets would stop spawning in a visible location. The 48 hours was starting to wane, so I got Sebastian on a fork of the code to work on scoring and the options menu, while I used trace statements to figure out what was going wrong. I rapidly figured out the gunPosition.Y was unbounded. That was one of the many times the problem was so simple that it made me feel dumb throughout this project. I quickly fixed the gunPosition bounding. Then I completely un-object orientedly copied and pasted the whole bullet class, and all of my bullet code, but for the other player. Yeah, I should probably make the code better, but it was a time limit, and when you have a limited amount of time, you go for what works, not what is better.

Update() code in the Bullet2 Class

By this time Sebastian had finished his work on the score, as well as finished the menu theme, and the rest of the art assets. I merged his score code back into the main code base. The score actually, the way we did it was really interesting. I don’t think it is the correct way to implement, but it was the quickest way, that didn’t cause horrible lag to the game. You can read about it on his blog here. If you were to run the game for 2.2 years, and somehow survive, the game will crash because it will run into an out of memory exception based on the limit on 32 bit systems. I kind of want to have it running in a server somewhere, with collision turned off, just to see it, but I digress.
To add the menu music, I once again hacked in a system where when you press the Enter Key in the main menu screen to go to the Game Screen, I switched the music from the menu looping, to the game one looping. This could be the right way to do it, but it seems weird.
I then added Xbox 360 controller support, which was really easy to add. Nothing needs to be written about it.
Lastly, I added the enemies, This wasn’t as bad as I initially feared it would be. I got them to spawn randomly, and move randomly very easily. I even added the facades, which were enemies that didn’t actually exist. They would shoot you, and run through you, but it wouldn’t damage you. Except that I didn’t get the shooting done in time.
Ok, really lastly, I got the game ready to publish. I fixed any bugs that were low hanging fruit, considering I had a severe paucity of time. Then I created a .exe version and a installer version of the game, packaged them, uploaded them to Dropbox, and uploaded them. apparently Dropbox was down for a few days, so I am glad it went back online in time for the upload.
We streamed most, if not all, of the development of the game on  my twitch channel: twitch.tv/ictuateAnomaly. It is from my perspective. The videos of the stream are up on the Kerinova YouTube channel now.

Do we have April dates?

Do we have April dates for LD 29?

I hate to say that I’m planning that far ahead, but I’m planning that for ahead.

I’ve scanned the site, but missed any future dates…

What is the proper way to do it?

I was thinking that I need to fix the stuff that mostly irritate me with the version I submitted to the miniLD#48. If this was a proper LD, I would of course upload a newer version side by side. However since it’s just a mini — does it matter? Or is there a point to keep the original submissions as to show what can and is being done in 48h? Anyone with an opinion.

Also, since there’s no rating — please comment! Even if you don’t like the game you just played, just say something. I have the rule to write something on all games I play and as an aim to come with some constructive though too whenever I can come up with something. You can do it too!

A Catastrophic Date

Hey, just wanted to make a post talking about the game I made (azuritereaction) with a friend (sweetielise); it’s called A Catastrophic Date. (Hey, we only had a few hours to come up with a name!)

 

 

 

 

 

 

 

 

 

 

 

It’s a cute little visual-novel-esque game (no nudity/sex/romance in it though) that we thought up, and it was the first time I’d completed a game project since… probably 16 or so years ago, when I was making games with Klik & Play and Multimedia Fusion 1 back when I was about 12 years old or so.

The game itself is really short, there’s about 10 or so possible endings with 7 of them being unique, including a secret ending, too :)

Sweetielise did the art in probably 8 hours, and the coding took me about the same amount of time, but we got continually distracted by Awesome Games Done Quick during most of Saturday, haha.

That said… I will probably NEVER program a visual novel game like this in Multimedia Fusion 2 again. Easily one of the most frustrating programming experiences I’ve ever had, for sure. Still had a lot of fun making it though, and I hope a lot of you have fun playing it!

Additionally, feel free to check out our main work on YouTube, Twitch, and a webcomic that I write with the links below! Looking forward to the Jam sessions coming up, we’ll likely do another game for that (and any future MiniLD’s too) :)

YouTube
AzuriteYT
Sweetielise

Twitch
AzuriteReaction
Sweetielise

Era of Errors (webcomic)
First Page of the webcomic

Tags: azuritereaction, cat, comedy, game, indie, miniLD #48, Multimedia Fusion 2, pixel art, screenshot, silly, sweetielise, Visual Novel

Mirrors – Postmortem

Mirrors was too ambitious since I started so late due to being sick on saturday. I only had the basics, platforming and pushing objects around, but without graphics and the main gameplay mechanic implemented, come monday morning even taking a few extra hours I couldn’t finish before I had work.

What went well:
The design only took an hour or so to talk out the game with the other 2 gentlemen I was working on it with. We brainstormed a bunch of Ideas, and eventually mashed a couple ideas together to get the final outcome. It was a good time too because we literally came up with a ton of ideas, some of which I may make in my free time. These Ideas ranged from “An Illusion oriented Tetris-Style game” where the blocks are only visible for a short time to, and i’m not kidding, “Hypno-Hooker” a game about hypnotizing people into believing you slept with them and while they are knocked out, placing evidence to make it believable.

Eventually we settled on a game involving 2 paralell universes where everything is slightly different, a ‘Mirror’ world, and you would solve puzzles by jumping back and forth through a mirror.

What went wrong:
Instead of rolling my own physics engine, I decided to use Jbox2D, and I had to fight with it for a few hours just to get things to render due to it using Measurements like Meters instead of Pixels. Making logic like

“if(player.x > 400){/*do something*/}”

become

“if(player.getBody().getPosition().x > 400/worldScale){/*do something*/}”

this made debugging some things REALLY hard.

The other problem is that since I started so late, the theme was kinda difficult to implement in a timely fashion. The Concept that we came up with was definitely cool, and potentially something that could be finished in 2 days, but not if I start 24 hours late. The whole 2 worlds thing would increase development time, as making the levels would take twice as long, maybe longer if we wanted to make them slightly more interesting.

Lessons for next time:
Im sure that next time i’ll have a better handle of Jbox2D which should help make things go smoother, but seriously losing 24 hours due to sickness really screwed me over, and sadly that is something I really can’t control.

Mini LD #48 – Fawkes Conspiracy retrospective

progress-4Entry Page

So the dust has settled now on Mini LD #48.  Time for a bit of a retrospective – in classic Agile Development retrospective style I’ll group them into things that made me feel “Mad, Glad and Sad”.

Sad

  • I wanted to have the police “chase” you after spotting you, and have the King (and by-standers) try and make an escape if he felt threatened.  All of this is fairly “basic” state space search based AI, but I just didn’t have the time or experience with Unity (e.g. how to represent the state-graph with unity’s game objects could be an interesting challenge) to make this happen.
  • I wanted more depth in the game world – I loved the chairs and tables etc getting scattered around, if I had more time I would have added more props and fun things to “play” with.
  • I wanted decent sounds and music but didn’t have the time or skill to do this.  If I enter again I think I will bend the rules and try to find some public domain audio and use that instead.
  • It was too dark and general dreary, and making the textures was a pain when sticking to the rules of not pre-creating or just taking other’s textures.
  • I wanted to have more finesse in the buildings – smaller cubes that perhaps broke into smaller ones etc.
  • No explosion effects!

Mad

  • Police placement was obviously not very well spaced and needed work as they often clumped.
  • There was a bug in the top-left of the map where one of the supposed-to-be-invisible spawn areas was visible.  Argh!
  • Not much re-playability.  I had initially wanted to have several levels but despite having fun laying out the one level,  I didn’t have the time to do multiple levels and I struggled with manageability of Unity’s game hierarchy as it quickly became unwieldy without a proper map editor and loading system.
  • Unity’s script editor is seriously deficient (at least for javascript):
    • Very slow to open, sometimes it also stopped letting me display a tab without using keyboard shortcuts or menus.
    • Watch statements & local variables during debugging were unreliable – sometimes they were not displayed which makes debugging incredibly inefficient.
    • Auto-complete only seemed to work about 25% of the time, and then when it did it often had the incorrect suggestions (basically every time I correctly typed “transform” (a class local) it changed it to “Transform” (type name) for example) and never did it have sensible suggestions for objects I had declared in my code, despite using the type declarations.
    • Finally it didn’t even highlight syntax errors so if you’d accidentally forget a semi-colon or something there was no warning in the editor, it was only when you get back to Unity itself that it tells you.  Crazy – there has to be a better way (anyone done an Eclipse plugin for Unity?)

Glad

  • On the whole, I quite enjoyed it.  I got a kick out of blowing up the rooms with stuff in them and seeing the tables fly around the room.
  • It was vaguely playable considering I had way under 48 hours worth of time to dedicate to this.
  • Glad I didn’t do another side-scrolling indie platformer!

Oh and before I sign off, an interesting little bit of stats for you:  I used the goo.gl URL shortener to provide links to the different platforms (web, windows, linux, osx) which gives you some basic stats on how many times the link was used.  After about a week I found the following statistics on platform usage.

  • Web (Unity webplayer): 87%
  • Windows download: 10%
  • Linux download: 3%
  • OSX download: zero – not a single click

So I shant bother with OSX next time then! haha! (obligatory disclosure: I use linux & OSX at work, windows at home and I HATE using OSX compared to both linux & windows)

 

 

 

Comments

16. Jan 2014 · 12:26 UTC
I would recommend using C# and visual studio for unity 3d dev stuff. Very pleasant.

I know you have some cool!

This miniLD I think saw some awesome games, I’ve played most but not all by now (I think). In fact I think the level of awesomeness per game is significantly higher than in the past LD28.

The miniLD had the most addictive game I’ve played so far, two LDs and this mini encountering:

I don’t know if it was the combination of wanting to have 10 presidents or those other silly upgrades, or just the joy of click-click-click.

It also had this challenging backstabbing puzzle that came with surprising depth and variety in challenges:

And the most deceptive game every:

null

These three have all gotten a handful comments, which is still not very much. Not for the energy and effort put into making a game in 48h. Many others have only one or two. So if you read this, it means you’ve got some coolness. You hang here, you probably make games, and you definitely are willing to play one or two. So do that, and let the maker know what was good and what could have been improved! The miniLD doesn’t have ratings and anyone registered can comment. I think I learned at least half of what I’ve leveled in game making past months from playing others’ games, so there’s something in it for you too.

PLAY AND COMMENT!

Hungry Hubert now on Steam Greenlight

Hungry Hubert Alpha 3

Hungry Hubert is a fast paced action platformer that was first made for the Ludum Dare #26 competition. It was named The Parasite and it got good reviews and i was quite happy with the result. I now finally have some time to make it into a full game.

You can check out the ludum dare page here:
http://www.ludumdare.com/compo/ludum-dare-26/?action=preview&uid=17805

It would mean the world to me if you could take your time and download the free alpha version and give me some feedback :)

You can download the game at www.hungryhubert.com

I would also be very happy if you could spend a few extra seconds and check out my greenlight page and perhaps put a vote for me :)

Link to Greenlight page

The good the bad and the updated bricks.

It has been a few days now since the end of miniLD#48 and I think now is a really good time to sum things up.

The Good Bricks

  • The brick smashing obliterating effect with smoke and shards flying everywhere. By far my best and most well worked Unity effect. Very fun to just destroy bricks.
  • The whispers from the usurping bricks and how the pointer position was used to listen in to their conspiracies.
  • The code structure was kept simple and the interfaces for the classes seems to have held quite a lot of further development. Some adjustments I’ve had to do, but mostly additions.

day3animLvl

The Bad Bricks

  • The initial game was probably impossible. Way too hard! And I’m quite commonly complaining on others to make them do easier beginnings. How did I end up… I think I got too tired on Sunday to bother tweaking the game. Bad me.
  • There was only one level, and it was sort of a bare thing, so much needed to be scratched from the plan due to time constraints. From simple silhouettes to make the game look architecty, to brick shakings and easter eggs.
  • The controls may have been the least wonky I’ve made for a Ludum thing so far, but there were still many issues. Some of them relating to the fact that it is a 3D game but the user interacts with it as if it was 2D. Thus using 3D-distances was really not a great idea.

capture_018

The Updated Bricks

I’ve added a new Level today (image above), also fixed many other things including even more fun for you when fail on a level. This is sort of an odd design strategy, to have the most effects and effort put into the loosing experience. I think it is interesting though, so I might very well dig into that idea further in a future game.

So if you have a little time on your hand, head on over an give my updated version a try. And while you’re at it, let me know what you think.

Mini Ludum Dare dates?

I’m hoping to join my first ludum dare as soon as possible :) I am currently using LÖVE, a 2D game engine built on Lua 😀

Does anyone know this? 😛

Comments

jsspiegel
19. Jan 2014 · 22:29 UTC
MiniLDs are held every month, so the next one’ll be sometime in February!
beforan
20. Jan 2014 · 15:53 UTC
I fiddled around with LÖVE for the last MiniLD but ended up not submitting as I didn’t have the whole weekend and got bogged down in details, so didn’t end up with anything to submit 😛

Poor Man’s Global Game Jam!

Alright, so I am hosting a game jam this weekend at this site: http://poormansggj.weebly.com/ for all those poor saps who can’t go to the GGJ. I apologize for the fact that the site isn’t very well polished or user-friendly but at least it’s something. Anywho the theme will be exactly the same as that for the actual GGJ and will be posted on the site whenever the GGJ releases their theme to the public. There are not really any rules, just have fun and make a game. Hope to see you all there!

A Gaming Company for Charity

In Ludum Dare 28 I had a go at something new and made a game solely for Android: Extreme Curling (which you can find here: http://www.ludumdare.com/compo/ludum-dare-28/?action=preview&uid=11083 as a note the play store no longer works, I’ve taken it down for a while while I’m working on it) . The game was okish but I felt it had potential as mobile game, it generated a reasonable number of installs, installs per day actually started increasing post Ludum Dare judging period.

So I’ve decided to just go for it and rather than find another job after my current contract ends, I’m going to take a shot at starting a game development company. It’s always been a dream of mine of a game development company that is established to support charities. So that’s what I’m doing, creating a company called withFire which donates a portion of profits to community chosen charities. And the first game? You guessed it Extreme Curling (well a far more polished version with a lot more features).

I’ve just started an Indiegogo Campaign to raise funds for this, so If you like to find out more about withFire you can read here: http://www.indiegogo.com/projects/withfire-games-for-charity

If you’re interested in this and want to help out then sharing it around wouldn’t hurt. :)

Finally I just want to say thanks to Ludum Dare and the community for getting me more involved in game making and all the feed-back :D

logo_11111

5

This entry was posted on Tuesday, January 21st, 2014 at 6:47 am and is filed under LD - Misc. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Candycandycandy

What was that Candycrush? You got a registered trademark for the word “candy”?
Well that sure is going to make it difficult for my new game entitled “Candy candy candy”.
Ridiculously early screenshot:
candy1

Registering the trademark for a basic word. I say no.

Tags: candyjam

Knoxville Devs and LD featured in Local Paper

Our Knoxville Game Design group is featured in the cover story of our local Knoxville entertainment paper, Metro Pulse.  The seven page article gives our thoughts on the current Indie Game community, and describes our participation in the recent Ludum Dare 28 competition.  The article features interviews with Knoxville Ludum Dare participants ViNull, DylanWolf, Insane66, and myself (GaTechGrad) along with Chaosoft Games.

metro_pulse

This paper is available for free at numerous newsstands in East Tennessee.

PDF version (identical to the print version)

Online version (formatted for the web) – Please Like/Tweet the article so they will consider doing more game development articles in the future!

Tags: SuccessStory

Can games be made too difficult?

Lately, I’ve had a few decisions to make in terms of the difficulty of the games I produced. I made this soccer game, which was apparently insanely difficult. I did spend a lot of time trying to win a match, and felt pretty satisfied when I did. When it came to releasing a test run of that game, it turns not only nobody was able to beat it, but nobody could even get a draw! (ok I think one person managed to win). Still, I struggled before reducing the difficulty, because I felt that players should really try to beat the challenge. On the other hand, one thing to keep in mind is that a level of difficulty that’s too high really drives popularity down, because let’s face it, it’s no fun when you can’t win ;-/ I decided to tone down the difficulty so that winning a match now is as difficult as it was to get a draw, and now it’s still very difficult to win by more than one. (I’ll try to add more levels in practice mode to draw people in.). Okay, I had to cave in. It’s concerning though, have gamers become softer, are easy going games now becoming the standard?

… read more:
http://jacklehamster.wordpress.com/2014/01/24/can-games-be-made-too-difficult/

Tags: fine tuning, game difficulty

Comments

24. Jan 2014 · 16:02 UTC
Winning should mean something. The harder a game is, the prouder you feel when you win it. But the harder a game is, the less people will be capable of winning it.
dalbinblue
25. Jan 2014 · 02:07 UTC
What you need to remember is that a game is ultimately a form of entertainment, and as a result people will play a game for pleasure. People will want to feel like they are accomplishing something over time and get the flow of endorphins going. This doesn’t mean that you make a game easy and yell you win as loud as possible to the player as often as you (though Peggle does this successfully). You do need to give small rewards and give the player the sense of progression or the player will feel like game is a chore and just walk away.
25. Jan 2014 · 07:10 UTC
Really great discussion here.
25. Jan 2014 · 11:32 UTC
Let’s do some mathematics

My unfinished Ludum dare game

Ok, cats outta the bag now. I never got my game finished, as you see here, and now that its uploaded, I may never will. The point of the game was supposed to be a sarcastic humor game, but now that thats done with, its nothing more than a game with unfinished paths and unprogrammed objects with one working level that’s more or less a minigame. This game may never be finished, and may never will even be played, but im hoping that if someone whats to get together with me and finish it, I have more than enough time on my hands. Two things though, 1: This game is in gamemaker, so unless you know how to use full gamemaker, its pretty pointless working with me. 2: Development might take forever, and on most days this project is mainly up to you. Im not even caring weather or not you use it with my permission, use it in anyway if you like, you may not even have to give me credit, just not for commercial use. Other than that, The only finished level is the Sword level. Use space to shoot shurikens, although they dont do anything, and dodge the bullets until you win. Thats literary it. So yeah, if you have any idea’s, try to reach me, ill be glad, but not guaranteed, to respond.

If you wanna see for yourself, check here:   http://www.ludumdare.com/compo/ludum-dare-28/?action=preview&uid=14064