Posts Tagged ‘C++’
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:
So, I’m finished with my entry: ‘Grig Saves Time’ and I gotta say: I’M FEELING AWESOME!
This has probably been the most fun Ludum Dare I have done, and I feel like I got a lot accomplished. The best news is this: I know I can do it better next time!
That’s right, I dedicated a lot to the development, but the platforming code could have easily been taken from basecode. I’ve done velocity, collision, and keyboard input almost exactly the same in a few other games, and decided I should just put all that into a library and use it as base code for future platforming. The point is, it was not outside my comfort zone, and I spent a lot of time just working out the odds and ends of how I wanted to portray the story. It took the whole weekend, however I did break for dinner and time with my sweetheart last night, and for church today. I slept a total of 14 out of the 48 hours. It’s possible that I make something even more amazing next time.
The storyboards are probably my favorite! It felt good to have a heavier narrative, even in a 48-hour game. Heavier, as in, more than one screen to explain the story, the premise, the reason why our fantasy creature is even going around jumping and attacking.
Livestreaming on twitch.tv: This was the first time I have ever used livestreaming, and it definitely had an impact on my computer. Compile times went through the roof, and I had to deal with wearing headphones to get rid of echo. The friends stopping by to chat was great, though. I stick with the fact that I move around the house a lot, as probably a reason not to keep doing that. Eventually, I can get a computer that can handle livestreaming and compiling and listening to playlist on youtube all at the same time.
So, I want to say thank you to all the friends who sent kind words about my progress, and to those who spent time with me on the stream. This has been, as predicted, the best Ludum Dare I’ve done. Thanks!
This has been a very inspiring Ludum Dare so far. Especially as it’s the first time I’ve taken part!
Looks like my game isn’t going to make it through in the Jam in a playable state, as I’ve got work tomorrow. However, I like the idea (which has been contributed to a lot by my lovely girlfriend) so I’ll try to finish the game during the next week or so.
My game is called Ludum Dare Simulator, or LDS #2.78e^-3 for short, and the idea is that you have to create a game for LD in ten seconds by clicking relevant things around your desktop. The game involves a lot of frantic mouse bashing and should be entertaining for at least 30 seconds. We’ll see, hopefully.
Here’s a couple screenshots from the game thus far. It has working intro, menu and game states, even though the game state is still quite empty and lacks the game mechanics.
Most of my time has sinked into coding basic stuff such as application class, state system, animation and UI systems, and this is my nemesis – it is hard to not create too large and complex systems for a project of this scope. I wrote and maintained a large cross-platform UI library at work during last winter and based on that experience I luckily realized what an endless mess I was heading to today, so I cut it short and decided to go the simple route with this project. So at the moment I have no generic UI code, all the drawing and events are handled in states. That aside, this LD has been a great way to learn to use SFML.
I have also burned many hours at drawing the art. I’ve never really done pixel art before, so it has been quite a learning experience.
I think I’ll head to bed soon, so I wish the best of luck to everyone and thank you for the awesome Ludum Dare! Next time I will be prepared!
Alright! The real game is starting to take shape! I have four semi-done levels, tutorial, credits, menu. It is looking good! I just need to do bug fixes and other stuff.
-I am using “10 seconds” as an action counter. Every action you do adds one to the seconds, 10 seconds each level, etc.
-It is getting hard to do levels in text, because I am worried the user will “forget something” because I am not doing graphics.
Not bad for two or three weeks of learning C++, eh?! Hahaha. Best of luck guys.
I’m loving the progress on this competition. Much more smoothly progressing than in many of the recent LD’s I have participated in. Makes me smile.
The progress so far:
- Wrote the narrative, it’s going to be fantastic
- Finished the map loading
- Created one mob
- Finished the collision between player and map, and mobs and map
- Game states
- Movement and Jumping are smooth and looking good!
- There is an attack, but it’s not so smooth yet
Yet to finish before bed:
- Create the levels
- Create new mobs
- Rework the attack
- Create Death
- Create player-to-mob and mob-to-player collision
- Create level portals in & out
- Create collectible drops from mobs
If I can accomplish all of that, tomorrow’s work will be the most fun of all!!
I am going to have dinner with my sweetheart soon. That’s going to help me feel a lot more motivated when I sit back to the computer to program. Best Ludum Dare yet! <3
(mandatory screenshot :P)
Alright, update number two. Almost 24 hours in, and I am about, eh, 3/8ths there
Almost half for sure! Most of what is left is the levels, and some misc polish.
My take on the theme has changed a bit;
-I am not going to have a timer
-Random generation would add some amount of re-play value, but I am not sure if I am adding it yet.
-There will be five or ten levels. (More than likely ten.)
Other than that…Nothing much has changed. Like I said, I wasted about five hours last night on some bug. So, hmf. I’ll keep you guys updated.
I’m off to shop some groceries for a delicious chicken salad… The Jam has been slow for me thus far. Looks like I should have started preparing earlier to get the basic entity system, state machine etc. code working. Starting from absolutely scratch is time-consuming! After lunch I think I’m at a point where I can start worrying about the idea for the game and drawing something on screen…
Hey! So, it is about six hours or so into the LD, I am getting pretty tired and I am about to retire. Just a little bit of an update before I leave. (This was written at 3AM, expect minor mistakes.)
Idea updates: This turning into more of a “typing” game. Then a survival random game or whatever I thought it was going to be. I struggled for four hours with the simplest problem that I am pretty far behind now. I HAD a working menu, but something with cin >> and while(1) broke taking input. Seems hard. Will come back to it tomorrow.
How I am liking C++: I am glad I know C++ alright before going into. That being said: There are some problems I just can’t get around, weather it is MinGW being a nipple muncher, or me being a sleep deprived butt face, I just can’t get around them. This time, I tried for four or five hours on one really simple problem, and couldn’t fix it. So, I took a different approach, and got it sort of working. (Losing some functionality, but still.) I am glad that I at least know C++ pretty well this time, I am not amazing-fantabulous at it yet, but I am getting there.
All in all, I am pretty sure I am going to finish this one! I have a pretty solid concept, a nice background in the language, and a bit of motivation. I am kind of mad that the LD started at 9PM my time, but oh well. (I feel sorry for my mates in the UK, LD started at like 2AM for them. p_o (ITS A MONICAL! HAHAHAHAHAH! I am far too easily amused at 3AM.)
Alright guys, I am gonna get some sleep. Pick this up in the morning. Night guys. <3
At 3 and a half hours in, the game idea has been brewing well, and once again, I decided to create a platformer game. This one will explore a creature from outside of time, entering a world in which humankind spends 10 seconds doing things, and carries on normally, while the game character experiences chunks of 10 seconds at a time in slow motion throughout the progress of the game.
I haven’t gathered enough life events yet that would take 10 seconds. However, the plan is going very very well for the time I have spent so far.
Thankful for a colleague to be keeping me company on the livestream! It helps to know that there is someone on the other end of the chat experiencing the same Ludum Dare crunch as myself.
I decided to head to bed for now, sleep on my idea, and gather level ideas for tomorrow. So far, this is progressing better than I had hoped! WOW!
Yarp! I’m in! Can’t be bothered to write a ton so…
Engine: Custom or Unity
Language: Java or C#.
IDE: Eclipse or MonoDevelop.
3D modeling (if 3D game): Lightwave, Blender.
Art: Paint.NET, Photoshop, maybe taking pictures of things.
Sound/Music: Mic, sfxr, FL Studio, Audacity.
…Feyleaf’s 7th time entering the Ludum Dare. I’m in!
Programming in: C++
Using: SFML 1.6 library
Ingesting: Lots of smoothies, eggs, toast, coffee, and vegetables
Producing sounds with: SFXR, PXTone, Audacity
Spriting with: GIMP and a drawing tablet (off-brand cheapo tablet)
Compiling for: Windows
In it to: Endure, finish the project, and score higher than I ever have before
I wish you all the best, and most of all, have fun!
This will be my 2nd LD! I plan to join the Jam this time, and I hope I wont fail miserably like last LD(I had fun anyway!).
Anyway I’ll be using the following:
-Library: SFML2.1 with my personal codebase(too terrible to share right now)
-IDE: Visual Studio 12
-Sound and Music: BFXR/SFXR/Wolfram Tones/my microphone
-Misc.: Paper,pen,water,tea, maybe my camera to shoot some backgrounds
Hey, I am getting all of my tools in order and working on a few different little projects to get setup for LD and I have ran into a problem, I have never good with sound. Like at all.
I don’t even know how to get sound playing and I am scared if I ever did, it would be unstable enough to make the game unplayable for some people. This brings me to a another topic, what is the best language (in your opinion, to you) for making sound?
I had minor success in Unity with sound, but in ‘dem hardcore languages I have never been able to get it working. (I tried Python, C++ w/ SDL, etc.)
Any help on the matter is appreciated.
This will be my second Ludum Dare, the first outside of the Jam. I’m planning on using C++ with SDL for OpenGL, but if the theme seems to need it I’ll use Unity3D.
No matter what, I’ll be using Photoshop for 2D graphics.
If I use C++:
- SOIL (Simple OpenGL Image Library)
If I use Unity:
- Blender for 3d graphics
I’ve been looking at ludum dare for a while since i started studying game development in school. This weekend it’s finally being held during a weekend I can participate in
My setup is as follows:
Editor: Visual Studio 2010 express
Base code: XNA
Art: Paint.NET or GIMP, haven’t chosen yet, and I’ll probably use some sprite animator as well.
Audio/Music: No idea yet..
I hope the theme is interesting and can be interpreted in a lot of different ways. I have only finished two games before but none of them had this tight of a deadline. It’s going to be fun to see how this goes
So, I figure that I might attempt number 27 of this ongoing quest for games. My previous attempts have been both more and less successful, generally of the lesser kind according to myself.
Regardless, I had a grieveous injury happen to my battlestation for this upcoming quest, which might very well bode badly for my attempts. The chair that is to be my throne decided that it was no longer as in love with its foot as when they first were assembled, and it had to break it all off.
Regardless, I shall be off on a search for a new chair worthy of my money this sunday. Hopefully with such a chair I’ll have a much larger probability of getting work done on the upcoming Ludum Dare, for the meantime (warmup) I’ll just have to do my best standing up.
As usual, I’ll be attempting this the way I learn the most. Using C++ with SFML as my framework, with my own entity system called Kunlaboro.
Regardless, the best of luck to the rest of you.