I want to compete in the next Ludum Dare but I don’t know how to program. I want to make android games so I should learn JAVA but I need it in 49 days! Please help!!
I finished conversion to landscape mode and implemented the attack icons and animations. For most attacks the cards just move and shake a little bit. Ranged units have special animations, Zeus fires thunderbolts and Catapult throws rocks at enemies. I added the damage numbers to attack icons and it’s now visible which type of attack deals the most damage.
I also created some nice icons for unit Energy (heart) and also Attack (sword) and Defense (shield). Those show up when the default unit values are modified (by artifact or an ally that stands next to them). This makes the game fluid to play, as you don’t have to keep do the calculations manually all the time.
What’s left to do: Turn indicator graphics, Sound effects, Music (I’m going to get help from a musician), AdMob integration. Initially the game was supposed to be only a two-player game, but now I’m thinking about single player mode as well. Writing good AI for this strategy might get complicated, but it’s worth a shot. There’s still enough time before the end of October.
Just wanted you to know that i have ported my LD24 game Geomelution to Android and it’s free and without ads!
I know the basics but i dont know how to make a game
As I switched to landscape mode, I started to create mirror-flipped images of unit cards using the -flop option in ImageMagic in one of the card-generating steps. As the script rolled on for some time, it hit me that this would increase the amount of graphics a lot. I got worried about the size of the final .apk file. First time since I started the project I decided to check.
I created a package containing only the lowest (800×480) and highest (2560×1600) resolution images. It’s 106MB!
I need to add 4 intermediate resolutions, so I’m looking at 300+ MB for the final .apk. I searched the docs and found that the limit is 50MB and rest has to be provided as a separate package. Or, you can distribute two different .apk files. I didn’t like any of those. I hate when you download an Android game, and then you have to wait for it to download hundreds of megabytes more. I needed a new approach.
I searched the Internet. Most advices are about packing your code using compressor/obfuscator programs. But the gains are really negligible. Then one thing caught my eye: using JPEG for textures. I’m using TextureAtlas to pack everything automatically, but I could separate the images with and those without transparent areas and pack them separately as PNG or JPG.
The problem is that 90% or the graphics need transparency. In this particular case the main problem are the card images, which have rounded corners. And then I got this great idea: separate the card image into frame and contents. There are only four card types in the game (one for each faction and gold one for the items), and all cards of the same type share the same frame. The inside of the card is different for each one, but it does not require transparency. Instead of packing 126 cards into PNG texture, I would pack 126 cards into JPG texture plus 4 frames into PNG.
As I tried this, I got some weird clipping artifacts in the JPG texture, probably because I turned off the 2-pixel padding. So, instead of pixel precise cropping, I increased part of the graphics that gets copied to JPG so that there is some overlap. When staging the images, make sure the jpg one is drawn first and PNG frame over it. The part that overlays will covers the bad edge pixels.
BTW, by “staging” I mean placing the Images into libGDX Stage. To make the code simpler, I created a nice CardImage class (descended from Group) to handle drawing transparently. This Group contains the center of the card from JPG texture and then positions the frame from PNG texture over that.
This saved A LOT, but I got so concerned about the size that I wanted to do something about flipping as well. I researched if I could only flip a part of the image. It’s possible using AtlasRegion.flip() function. But I also had the problem that I didn’t want to flip the whole image. The textual part should remain the same and only the unit graphics should be mirrored. To do this, after calling flip(true,false) I used setRegionY and setRegionHeight to reduce the flipped region size. Using the flipped region I created another Image and added it to the CardImage group. At runtime, I simply show or hide this image when I need to unit to face left or right.
New .apk file with the same content is now only 12MB. A 88% save. Once I add all the other resolutions, I estimate the final .apk to be about 40MB if all goes as planned. Compare this with 300MB+ I expected at the beginning.
Beside all the other advice you might find on the web (compressing the code, etc.), add these three:
- use JPG wherever possible
- if you use PNG only for semi-transparent border, cut the image into frame + content. Store the frame in PNG and content in JPG Of course, if your frame is not reusable on multiple images and has complex colors this my have the opposite effect. However, there’s a solution to that as well: cut the frame into four pieces (left,right,up,down) and assemble it at runtime. No more empty space in the middle of the frame in PNG.
- If you have images that are flipped or rotated, store only the original and flip/rotate at runtime.
Hello Ludum darers.
We’re here to announce that we’ve launched Kickstarter to support Basement game, that we’ve made at LD29. We took 11th place overall and got lots of feedback that inspired us to continue developing that project. We even quit our jobs to work on it full time. I hope you’ll enjoy the game we’re making, it becomes more advanced with lots of serious management features. We want to make it deep, polished and solid. Only with your support it will be possible.
As a graphic designer and front-end developer, the graphics was a part of the game building process I was looking forward to. I’m no stranger to Photoshop and Illustrator or hand-drawing but I had never really designed game sprites before.
I wanted a retro style eighties look to my game and found various references on the internet. There are lots of game graphics sites but nothing really had the specific items I needed. Then I found the website of illustrator Chris Hildenbrand (find him at http://2dgameartforprogrammers.blogspot.co.uk/). Not only did he have the exact look of a cityscape that I wanted but he also had tutorials describing how he creates game elements. I bought the cityscape background tutorial and my look for the game was created.
Several game elements were drawn up before I was happy but they then had to be redrawn at the correct scale for the coded sizes of the game elements.
To add a bit of movement I used animated gifs but ran into problems trying to intergrate them into Box2D which didn’t seem to like them, so I had to solve this by positioning them on a layer over the top of the Box2D elements.
Then I came to do the instruction page and realised I needed to write the copy – not only for this – but also for the small preview pages for the Chrome store pages.
Then two major problems turned up that I didn’t expect. More in the next blog.
The 2nd week is over and I am proud to announce I managed to work on WoCS everyday since the end of september. That’s a little achievment for me
Now onto the actual wrap up of the week. Read the rest of this entry »
So I’ve added octaves into the piano. You can cycle through 5 octaves of keys (60 notes in total). The dragging mouse left and right or pressing up and down arrows on the keyboard work. All of the sounds still playback at the end of the level.
Next step for the flight demo is updating the enemies list/spawns. I also want to add extra routes that you can take so the game is not as linear. I will wait to put the new version on newgrounds and android until I have enemies updated. I’m also trying to figure out the apple development process to produce an iOS version.
Hi, I’d like to make a post about the newest update my LD October Challange.
Be sure to check out the game’s itch.io page. Between the Lines
Below you can find a video by my friend. SpaceMyName going over the update. Check it out.
Here is a text version going over the update.
- Added new Time-Attack mode.
- Play button now has a sub-menu.
- New Tasks added.
- Menu Sounds
- New Powerup: Bomb
- Added Powerup details at the bottom of the screen.
- Updated Demo
- Joypad support. (Basic)
- Demo is now 5 minutes.