Posts Tagged ‘C++’
It’s Saturday morning here in Argentina and I already wasted a lot of time, but I think I can still make it.
I’m using my own opengl-based engine, Crimild, and standard tools for asset creation: Photoshop, Sketchbook Pro, Blender, Audacity and Sfxr for sounds.
Wish me luck!
This time I’ll make a really simple game due to the tools I’m using.
Libraries: SDL, GLM, GLEW, FreeImage, OpenGL
IDE: Visual Studios 2012
The base code I’m starting of with can be downloaded here:
I’m going to try something, though I’m not overly excited this time.
Either going to use the code of my last LD48 game as a base,
or the js code of my game from 1 year ago.
Hi, this will be my 3rd LD! This time I will join the Jam.
My tools are almost the same as always:
- Library: SFML 2.1
- Library pt2: Thor
- Codebase: haha, codebase! Snippets from here and there, some from my not yet finished “official” codebase.
- Pixels: mainly Paint.NET
- Sounds and music: SFXR, http://www.abundant-music.com/,maybe my mic and audacity(this time I MUST include sound in my game!)
3 days to go and 3 days to prepare and clean-up some of my codebase.
Something I am coming to learn well is being proud of the work that I do in games. I have quite a catalogue of 15-20 projects I consider ‘playable’, probably five of which I am proud to be called the father of. My latest project, a building block based game, is a game I am very proud of. It is one of the most visually pleasing games I have ever made, and the gameplay is calming. I look forward to the next Ludum Dare.
Thought I should share that with you guys.
Well, I’m going to be here for LD28 too. Not even sickness shall be rid of me this time…
Still going for the proven C++/SFML combo, maybe going to use Kunlaboro (My entity system) for this time too, might also decide to try a more scripted game instead of pure C++.
Visual Studio 2010 as my IDE
GIMP and Blender as content creation
Sound and music are not really a priority, since I sort of suck at making them but they’ll be procedurally generated if they’re there
SFML will be used, straight from Git and still warm.
There’s also a strong possibility for Kunlaboro and Angelscript, but we’ll see about those.
I’ll also be streaming this one, like I’ve done with the last couple, and I’ll try to have a timelapse done too.
Hey guys! Just finished up an amazing Jam where the point is to link a button in your game to a charity of your choosing. You may have heard of it as we have all been talking about it for a few weeks now here on LD. Anyway, my game is called MINIMALISTIC TURBO and I am very proud of how this turned out. This was my first game with a menu, sounds, actual graphics, and I really am just really glad with how it turned out. I think what I enjoy most is the tight controls, gameplay, and how there are very few bugs, no really, I gave this to my testers and they couldn’t find anything that was actually a bug. A few small tweaks, but no game breaking faults. This is pretty big, if you remember my last LD game, a text adventure that was pretty buggy and more often than not break for testers. I am still pretty proud of the text adventure, it was really big for me at the time and still is pretty complex, anyway, that just shows how much I have grown.
Something else I added in this game were sounds I haven’t really had any experience with sound in games, I mean, I had played around with some stuff, but this was my first game that really embraced that and did it well.
I am a little bit unhappy with how my text ended up on the main menu, the taglines at the top are different lengths, and I couldn’t figure out a clean and quick way to center it because I am using outdated OpenGL and GLUT. if I could learn how to do textures soon that would be more than helpful. .-. I tried to get SOIL to work DURING the Jam, and well, that didn’t really work. However; I didn’t try too hard on that. I learned about getting burned out and sticking on a problem a while ago, in a Mini-LD. (Pro-Tip: When stuck on a problem, find a kludge, make a note, move on, come back to it later.)
Anyway, all in all, I am really proud I was able to do this, and I hopefully helped the Red Cross along the way.
Wanna play my game? You can look for it here, or download the game.
Use the hashtag #MINIMALISITC_TURBO to tweet about my game! Or, follow me on the twittertwaters (@powderblock) for live tweeting late night fun.
In my personal slow-Jam I’m working on I decided to leave everything to Random and a few parameters.
Still there’s the need for levels, and the very basic requirements that everything should be connected, walled in and have a nice balance between narrow passages and open spaces.
There’s probably well known and better ways to do this, but any case, since I think the end result was more or less exactly what I wanted, I’m gonna outline how I did.
- Define an allowed geometry by normal sampling a width and height of the map (in tiles). I used a 2D boolean array as representation when doing the calculations
- Randomly seed some few (<1%, but more than ~7) positions so that each has a safety margin to the border of the array
- Iteratively connect dots by randomly selecting one not connected to the others and walk towards the closest other true position following Manhattan distance = 1 setting all passed positions to true.
- Repeatedly randomly select any edge pixel and randomly select one of its 4-neighbours that are unused and expand there.
- When sufficient number of tiles have been placed. For all edge tiles, place a wall in all unused positions with a chessboard distance of one
I only need quite small levels as each is only meant to last for maximum of 60s and the game is absolutely way too confusing to allow for larger levels, but in principle it would only require some parameter tweaking to get them too look quite differently.
I also like how one sort of can see where the seeds must have been placed.
Of course if anyone is interested in the code just let me know (it’s C# for Unity, and it’s not super-efficient by any means but since it’s only run at level start I figured it doesn’t matter too much).
So, recently I got bored and got an idea of creating a new game. First idea: MMO. Then “well, I’ll need to write both server and client and deal with networking stuff”. Goes out.
Second idea: make something small. And, after an hour here’s it:
HP and MP are hardcoded and unchangable, but hey, that’s alpha
Then decided to move forward. Already got mapping stuff (currently hardcoded table of integers, to be replaced with files), working walls (with deleted ghost-mode :] ) and with some nice green grass. Doesn’t it look beautiful?
Hey, this is my first game without using Game Maker or any other stuff, don’t blame me
It’s confirmed to be working on Debian, Cygwin and WinXP. Tested it through SSH on my phone, too :
If you feel interested, have a look into sources hosted on my GitHub. You’re welcome to drop your hates below, too!
PS: Maybe it’ll go for next 48h, who knows..
Time for our post-mortem
I won’t re-introduce the team, you can go to our “we’re in” post for that. Basically there were 3 of us and we’re pretty awesome!
So what happened?
Well, we made a time-bending tower-defence game called “10 Second Onslaught”. It’s about an onslaught you see, and the onslaught in question lasts 10 seconds:
The game wasn’t really “finished” after 72 hours even though it’s completely playable. I’m actually glad we were over-ambitious though: it’s a good beginning and something I’m still working on (in a separate branch of course )
What went well?
The art pipline was probably the one thing that went particularly well. Thomas is really a 3D artist, so soon reverted back from pixel art to making models and rendering them to bitmaps. To speed things up I wrote a couple of little ImageMagick scripts to mirror and then stick these images together into sheets. Then it was just a matter of using the haxelib spritesheet to have animated characters in the game
What went badly?
For various reasons, mostly the technology (OpenFL) being something only I had ever used before, I ended up writing a majority of the code, which is just stupid. Next time we’re going to have to organise ourselves better.
Read on for a rather long discussion of OpenFL, including comparisons to Unity 3D and Löve 2D…
So we finished our Second Ludum Dare! It feels great
Boy was this one FRUSTRATING
But we learned SO much……
-POST – MORTEM-
First the things that went WRONG
-1. LIMIT THE AMOUNT OF BETA SOFTWARE USED-
Heres the first thing I did wrong. I am running on a OS 10.9 beta. I am writing my code in Xcode 5 beta
Besides all of the crashing, one night I hit a total dead end bug in Xcode where I could not distribute my app. I almost QUIT the dare.
-2. MAKE SURE IF YOUR STREAMING/TIME LAPSING THAT ITS SET UP AND WORKING BEFORE THE JAM-
I spent too long trying to make sure my stream was exactly the right way, plus because of rule 1, it kept crashing, total productivity bust
-3. PREPARE YOUR TOOLS/CODE BASE/LIBRARIES BEFORE THE JAM-
This jam I switched over to SDL for the first time. I hit so many little snags that were simply because SDL works different, a number of times my productivity stopped was because SDL would be handling Floats as Integers, and leaking memory when it renders text, or flat out dropping sound because of an extra curly bracket.
Things that went RIGHT!
-1. Work with friends-
Luckily I had the support from two close friends of mine. Both of which worked with me in the previous jam, but had dedicated time this jam to help. Having three people working on the game felt nearly perfect. The conversations were always motivating and productive. Also having two other people critique your code/sound/music/art is always great. A number of times Id find myself implementing something , and because of lack of sleep/reality/food one of my friends would remind me that what I did looks or sounds RIDICULOUS
-2.Have a Plan-
My friends and I prepared better for this jam. Last jam we did not realize the theme was announced so soon, so we scrambled after work to get together. Not this time, we were together as soon as the theme was announced and spent a good 3 hours whipping up ideas. I have a HUMONGOUS white board that worked so well in capturing and reducing our ideas to the very best ones. We could then get down to work, and glance at the checklist of things we needed to do on the whiteboard.
-3. Share often -
Try to have people test your game as soon as you can, some of the weird little things you know about the games rules or how it plays may not be apparent to others. You have to develop a sense of “communication” to your player , and there is no better way than to see how another player plays your game.
Overall, I feel extremely accomplished having finished a second dare. This time the pieces fell together much better than before. We had the idea down the first night, then got cranking the next two days. My friends and I discovered new talents and developed some since the previous jam. We look forward to finding out when the next jam is, and now I can’t wait to try some of your games!
—Don’t forget to try our game FSCK! Bit needs your help!—-
So I made it. First time in Ludum Dare.
It’s fantastic experience. A lot of experience.
First I wanted to take part in the compo, but deadline came too fast, so I focused on the JAM.
More time to deadline gave me the opportunity to expand the game.
However, more expanded game == more bugs, and this are sometimes very hard to notice.
Most nerves brought me bug in the collision detection and I spent most of my time tried to fix it.
BUT 20 MINUTES BEFORE THE DEADLINE I DID IT!
Now, after the patching game probably hasn’t too much bugs, I hope, and is playable, so I want show it you.
It is difficult to make a bright screenshot of the game because most of the game take place in dark, so I upload here menu screen.
Full description of the game is here :http://www.ludumdare.com/compo/ludum-dare-27/?action=preview&uid=21095 and there you can rate and give comment, please play and do it!
HAVE A GOOD DAY!
PS Sorry for my english, it isn’t my language, google translate helped me
Ludum Dare 27 has been my first ever Ludum Dare competition.
I was not sure of what was going to happen, if I were capable of finishing a game in under 48 hours, if I would have felt stressed or relaxed, et cetera.
For the competition, I decided to use C++11, SFML, and my own framework, SSV, which is free, open-source, and always looking for contributions/critique.
My development environment was Arch Linux x64, using QTCreator as my IDE, and Sublime Text 3 as my text editor.
The development machine uses an Intel Core i7 processor, NVidia GTX275 and 10GB of DDR3 RAM.
My goal was producing a game that was worth playing in under 48 hours, with native Win32 and native GNU/Linux x86 binaries.
I’m very happy to have reached that goal, and I’d like to share my thoughts about the whole development process.
I worked on the game for about 30-32 hours. I slept, worked on a video for a friend’s birthday, and relaxed for 1-2 hours (played some Spelunky and browsed the internet).
The first thing that surprised me is that I felt constantly stressed. I do not know if everyone feels like this, but I couldn’t stop thinking about the deadline, about the end result.
I have to say that, as far as personal feelings go, I didn’t dislike the 48-hour deadline development process, but I didn’t find it fun either.
However, after finishing, I felt a great sense of satisfaction and reward, which kind of made up for the stressful coding hours.
The second thing that surprised me is that my framework, the SSV framework, was up for the task of creating a game from scratch.
It literally took less than an hour to get a prototype where I could walk around.
A big effort in SSV was put into development of SSVSCollision, a header-only pseudo-physics library intended for retro-style games.
It handles collisions very differently from all other engines out there, and, while not suitable for realistic physics simulations, it is great for retro-style games, where physical bodies do not interact much with each other, but have infinite stability and very precise collision resolution. Here’s a video of it’s performance.
It also lacks all sort of issues that would arise with a realistic physics engine, such as the common error where bodies get stuck between tiles in tile-based worlds.
Anyway, I also created a player sprite, which I had to divide in two parts (arms and body) to avoid repeating unnecessary frames. I used Pinta for the task, a Paint.NET clone for GNU/Linux.
I’m not an artist, and that is obvious by looking at the poor end result of the player sprite. I used the same tool to create all other graphics in-game.
I dealt with sounds by using sfxr, the free, open-source sound generator advertised on the LD website itself.
For music, I used LMMS, a GNU/Linux production software with an UI similar to Fruity Loops. I’m not a musician either, so the end result was poor here too.
The game concept was actually created after the prototype version. I had no idea what I was going to make. I just made stuff and tested stuff.
Then I had the idea of this cool throwing mechanic, where suddenly turning your character would increase the force of the throw.
This is where stuff started getting interesting. I had to deal with my peculiar physics engine in order to allow the player to grab/throw/release blocks.
It went pretty smoothly.
This is what the first grabbing prototype looked like. I also had added the number on the crates but had no idea how to use those yet.
I also had no idea how to use the crates yet.
Then I combined the throwing concept/mechanic with a time-based constraint (10 seconds theme), and had the idea to make the game into a reflex-based, time-based puzzle platformer.
I designed some game elements and threw some test levels together. But I didn’t have time to create a level editor, or to write a JSON level specification. So what did I do?
Tab based in-code level editing. Dear god.
Yep, I used tabs, newlines and spacing to re-create the structure of the level in the IDE itself, so that I could have a rough idea of where I was placing elements.
After making some levels, I created a menu screen, which was very easy thanks to the SSVMenuSystem module of the SSV framework. And that’s pretty much it.
There is a problem with level 5, which is almost impossible because I forgot a game element. But it is actually possible, even if insanely hard.
I’ll judge the game myself, now:
Innovation: I’d say the game is not unoriginal. The turn-based/jump-based throwing mechanic is pretty fun to use, and the game elements, while simple on their own, can be combined to create some interesting puzzles.
Fun: This is a very subjective point. The game is not easy, and can be very frustrating at times. Honestly, I find hardcore games pretty fun – I enjoyed playing my game, even if trying the fifth level for one-hundred times got frustrating quickly.
Theme: My interpretation of the theme is not very original, but I think the 10-seconds constraint that resets works well here.
Graphics: I’m not an artist, and it really shows. The sprites are of poor quality. I tried to redeem myself by creating variations of tiles that appear randomly and maintaining a simple flat look for the game.
Audio: Sfxr is a godsend. I love retro sound effects, and they work well here, I think. Music, on the other hand, is not catchy or memorable, and it’s just a simple loop. It was my first time ever producing music. Here I tried to redeem myself by adding a no-sound and a no-music option to the main menu.
Mood: I tried to create a simple story/world around the game. Basically, you’re working for this company, 10corp, in a futuristic (I guess) setting where getting a job is very hard. In order to survive, you have to work for this company, even if they terminate slow workers to maximize their profits. I used in-game messages (broadcasts from 10corp) to give the feeling of the player being observed and judged during its tasks.
Overall: Overall, I am satisfied with the end result. I’m still not sure if the game is worth improving, but as a less-than-48-hour product, I’m happy with how it came out.
I really hope you enjoyed my entry and this postmortem. Thanks for reading!
Greetings Earth peoples.
For this LD contest we give you ‘Got time for that?- a game that is really three games! Please enjoy this interstellar contribution to your endless entertainment, in our mission to answer that age old query: Will you score?
We certainly hope so.
Tools – Unity, RagePixel, Asset Store UnityGUI skins, Creative Commons music, C#. Source available.
Play on web or desktop. Soon for Android!
Please procure the
diversion game here: