Hot answers tagged

58

Provide visible goals for the player to achieve. For example: Levels: If you click enough rockets, the game becomes more difficult. When you are lazy on a tight budget, then you can just tune some variables. Like Tetris, for example, where the only difference between levels is speed and score multiplier. This is easy to do, but requires a lose-condition so ...


37

What you want is to constrain the camera viewport on portrait or landscape(depending on your needs), by computing camera.orthographicSize property, so you can build your 2d scene regardless of aspect ratio and resolution: // Attach this script on your main ortohgraphic camera: /* The MIT License (MIT) Copyright (c) 2014, Marcel Căşvan Permission is ...


27

I would suggest adding a mechanic that encourages emergent gameplay. Often emergent gameplay can be introduced by adding physics into your game. For example, if a rocket explodes, it could launch fragments of itself across the screen, and if those come into contact with another rocket, it would also explode. Then the player could try to get the biggest ...


17

The standard which you will find on most platforms is: Analog directional input left thumb Digital directional input left thumb Analog directional input right thumb 4 buttons right thumb 2 shoulder buttons left hand 2 shoulder buttons right hand 2 buttons in the center of the gamepad which are awkward to reach and should be used for special actions like ...


17

One thing we do is use "mediators". Supersonic is a mediator. You install their plugin plus, let's say two others for simplicity, Vungle and AdColony. When an ad is requested, Supersonic figures out whether a Vungle or AdColony ad will pay better. Another reason to use mediators is that most ad providers only allow a single client to play a certain number ...


15

There are quite a few resources to refer to. First thing to note is that 93% of the top 100 grossing games use in-app purchasing so that by itself means something. Here is a research by flurry showing the dominance of in-app purchase dominance as a monetization model for mobile games. This is from about a year ago and the trend became stronger since: Part ...


10

Take a look at this article about the networking architecture of Age of Empires II. They managed to create a multiplayer game that ran great on a Pentium 90 with 16 MB RAM and a 28.8 kB/s modem connection. They did this by having each player run their own simulation, but synchronize their commands. They have some clever tricks in there, I highly recommend ...


10

Problem analysis Real-time communication over a high-latency connection is obviously impossible. You can of course attempt an illusion (as you're doing by making the remote player appear to have passed an obstacle when it's not yet known). When that illusion fails (as yours does when the remote player didn't actually pass the obstacle, but died instead) ...


9

While using only one ad network is fine for some projects, there are several problems that can arise. Using multiple ad networks can help resolve them. However, managing multiple ad networks can sometimes be a chore and require significant manpower to keep at optimum efficiency. I'm not sure what this community's idiom for backing up answers is, but this ...


9

You need to have something that keeps changing. Interest will be replaced by boredom if it is the exact same game over and over. But it doesn't have to be. Many classic games are the same game, but you play them with different people. Chess or Go, for example, have zero randomness except for the people playing. That makes it interesting to keep playing the ...


8

I recently moved into Android development myself. I've got many years of development experience, but decided to wade into the shallow end of Android development. Which means I was pretty much doing similar things to what you have been doing, but my perspective differs because of experience. Having said that, I originally started out with the "one screen == ...


8

There are arguments to both options. Single Currency - usually simpler for players to understand Multiple Currencies - allows more flexibility to in future optimizations For a single player action game I don't think you need more than two. Three of four currencies is something that is usually reserved for resource management games where you actually gain ...


8

Some geolocation games like Pokemon Go had quite a lot of bad press due to people getting injured while playing them. There were also cases of people trespassing on private property or entering restricted areas because the game they played encouraged them to do so. When a company needs to defend itself against allegations that they put their players in ...


8

A user will not play a game where they do the same thing over and over. It will get boring and they will leave. As such, you need to make it feel like they're doing something new, even if the underlying mechanic doesn't change. The ultimate example of this is probably Candy Crush. The mechanics introduced in level 1 are basically the same mechanics you ...


7

If you have no or little experience with OpenGL, I would not suggest 2.0. With OpenGL ES 2.x, you will have to write your own routines for matrix manipulation and write your own shaders. This is a lot of work, a lot can go wrong, and debugging a lot of these things is very painful. Only if you think you'll need some of the features that OpenGL ES 2.0 has ...


7

First of all, don't discount the other people you need. Some games require mostly artists and some require mostly programmers. A game which requires you to move blocks around a dynamic world probably needs more programmers, but a game where you travel the world playing cards probably needs more artists. The other thing to consider is the other aspects of ...


7

IANAL, and it would potentially be different in different countries, but some guidelines: Anything that references trademarked and/or copyrighted content (and everything is copyrighted at the moment of creation by its creator) should not be used without explicit permission from the trademark/copyright owner. When in doubt about trademark or copyright ...


7

Either one. Consider that even if the game world is in 3D, you can still use 2D for rendering. This is primarily a design decision. If you're more comfortable with 2D, then use 2D. See these related questions about making a similar style of game: Best technique to create oldschool (fake 3D) racing game? How would I implement an endless road the player ...


6

The "worth" of something can only be determined by you. For some people it isn't worth porting to android for the amount of time spent vs. sales. That being said there's no reason to just use C++ for everything. Sure, the interfaces for certain things is C or Objective-C, but you can call both of those easily from C++.


6

No simulators that I know of give reasonable expectations of on-device performance. The iOS simulator, in particular, is very bad. And I think the Android one is an emulator.


6

The lowest framerate you can get away with depends on the game. In chess, a still image is just fine until someone makes a move! In a fast-paced FPS, you'll typically want >30 frames per second. This comparison of an animation at 15, 30 and 60 frames/second should give you a rough idea, but it's best just to try it out -- every game is different.


6

There are several reasons why to use a backend. Without backend, you can't really have states in your game. That means players start all over when they refresh the web page. The facebook API stuff that you mentioned also comes from backend. You can do lots with facebook API, but it's not even pretending to cover all the cases. Facebook recommends Parse.com ...


6

You may find my answer to a similar question here to be helpful. You may also find it helpful to look into the source code of other solutions. The Godot Engine for example is a cross platform open source game engine so you never need to pay anything. As I mention in my other answer you don't need to (and likely can't) rely on one IDE to do the work for you....


5

I've done this for a commercial PSP racing game, which worked both over an ad hoc network, and via a wireless hotspot. (Or to a static server on the Internet, if desired) Because of point 2 the system needn't be complex with regards to optimization In my experience, this is not true. Wireless devices (especially small portable ones) are not like ...


5

Premature optimization and design paralysis are evil. Don't fall into the trap of worrying about a simple check. If you're concerned, implement and profile. I think you're under-estimating how powerful hardware can be - even the low-end hardware. An if statement comparing a simple boolean is pretty cheap and should be the least of your concerns in a game. I ...


5

Sure. Take your camera matrix and unproject it (or invert it). This can be done in libgdx like so: Vector3 worldCoordinates = new Vector3(screenX, screenY, 0); camera.unproject(worldCoordinates); The documenation can be found here.


5

You typically don't need different sizes of assets - imported textures and sprites with automatically-generated mip maps will look nice when rendered at any size less than or equal to the original pixel size of the image. The scene layout is the challenge. One good approach is as follows (and FYI I use a 3D camera looking at 2D content positioned at z=0): ...


5

In Unity, navigate to Edit -> Project Settings -> Player and choose the platform on the right. Android should be the 4th tab if you're using one of the latest versions of Unity. Open the dropdown menu Resoultion and Presentation, you can set it there.


5

This is a square grid shown using an isometric projection: Note how it's wider than it's tall. In fact, even if the grid was a rectangle with unequal sides, it still will be wider than taller, due to the nature of isometric projection. If you use a different projection, you can reduce the width-to-height ratio but you'll never get it taller than wide. The ...


Only top voted, non community-wiki answers of a minimum length are eligible