Tag Info

Hot answers tagged

20

In an average game, there are hundreds or maybe thousands of obects in the scene. Is it completely correct to allocate memory for all objects, includiding gun shots(bullets), dynamically via default new()? That really depends what you mean by "correct." If you take the term quite literally (and ignore any concept of correctness of the implied ...


16

As far as scripting languages go, Lua is very fast, but like anything it varies depending on the processor. For example, Lua would not be great on a console platform because it tends to be very branchy, and some console platforms branch very slowly. To best answer your question, I would suggest running some benchmarks. See how fast Lua performs some various ...


15

Both solutions (drawing on your canvas VS. traditional HTML/CSS) are totally valid and will work just fine. Some things to consider: If you're already using a canvas-based library, your code may be cleaner/more organized by continuing to use canvas instead of having additional (DOM-based) methods for UI. If your UI is extremely text-heavy (with dialogs ...


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 ...


14

Unfortunately, the answer is to draw less. I've found the bottleneck with canvas based applications (on any platform, really) is the time it takes to actually draw pixels. Here are some things to try: Use several canvas layers. Draw your background to one layer while drawing your objects to another layer (absolutely positioned on top of the background ...


13

If it's not a "real time" game in the sense that players don't need to see the immediate result of another player's actions on a game scene then you should be fine with HTTP requests. But Keep in mind the overhead of HTTP. That said using HTTP will not save you from designing your communication protocol with care. But if you are in charge of both the server ...


13

You want a better communication protocol then HTTP. You probably want UDP or TCP. Browsers have no way of doing UDP communication so your only choice is TCP. For TCP you would want to use a WebSocket, however browser support is unstable on websockets. This means you would need to use a COMET technique to emulate TCP, one popular emulation would be a ...


11

Unity is probably your best bet, it supports both iOS and Android, as well as Windows and Mac.


10

They are typically called mobile games, which covers a game that runs on a mobile device. This is distinct from console games (Xbox, Wii,...) and PC games. In addition, most mobile games (but not all of them!) are casual games.


10

For iPhone / iPad development, you are going to need a Mac. See Tetrad's comment for relevant "Can I use a Hackintosh" discussion. For android development the development tool is the same, it is the Eclipse IDE, and it is available across all three primary OS choices. You can find the relevant information about it here: ...


10

If you really want to have your options open, just buy a Mac. You could always bootcamp it into Windows if you really need to be on the PC side of things. That way you get a proper native iPhone dev environment, and a really good Android environment (since, like was already said, it's very Unix-like). And the option to switch over later if you really need ...


10

Just as @JustSid said, if you move from one cell to another the handover is handled transparently. The 3G network is just the method of transportation of your data packets, therefore it is a few layers below the IP layer, if you think in terms of the ISO/OSI stack. I worked on a push-to-talk application for mobile phones and all i can say is, that we never ...


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

HTML5 and JavaScript are getting better every day. They may not have as developed toolchains as more existing platforms, but in six months or a year they look to be pretty strong. The main advantage is that you can code and test by making a browser accessible webpage and navigating to it from the mobile device. Additionally the platform specific differences ...


9

You will probably need to micro-manage the 3G modem to ensure that you don't have delays while it switches power modes. Your simple answer is make sure you send at least one packet larger than 128 bytes every 6-8 seconds. If you can guarantee that all your packets are smaller than 128 bytes make sure you send something once every 6-8 seconds. Avoid, at all ...


9

It heavily depends on the game, but some friends and I were thinking about the same issues only a couple months ago, and here's what we determined. I'm in a pros and cons mood again. Computer Based Server Pros Tried and true Scaleable Cons Need to write a "multi-server" that can host multiple games at the same time. This will likely use slightly ...


8

The internal system we used for Moblox (later replaced with OpenFeint) worked like this: Send a JSON message over plain HTTP (not HTTPS). Include a MD5-hash of all fields plus a magic string. On the server, check the integrity of the message with the same operation. To crack the system, you'd have to find this magic string. It is possible with reverse ...


8

I have little experience about this topic but by logic and knowledge I can give a few pointers that might be worth a few pennies. First of all: those two markets are big, I mean really big, maybe, just maybe, too big for you. This is good as you have a large target audience, but the size already has attracted many many many (you are not the only one, no) ...


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 ...


7

There are a ton of options for this, so it really depends on your budget and long term hopes. If you're planning on just making a one-off, then something like MonoTouch, Flash and Unity would be perfectly fine. If you want this code to be something you can grow and own yourself, then writing your own C++ layer that works with OpenGL on both platforms would ...


7

You can limit the most flagrant of abuses by monitoring the highest results in the top score table. Depending on your game, you may have a "perfect score," above which any score must be fraudulent. If not, you can calculate the lowest "impossible score;" can the player shoot 10 shots per second, the game lasts 1 minute, and each killed enemy is worth 100 ...


7

This is very opinion based. But if you already have XNA experience, and you don't want to learn a new language, seems reasonable to stick with that. (it also has a great IDE..Visual Studios!, imo)


7

The HTML5 libraries are surprisingly good especially considering its young age. There are solid 2D/3D engines that support particle effects, physics, and the like. However, there is nothing comparable to established and mature game engines such as Unity or the Unreal Engine. Also HTML5 libs in my experience like to be event driven. For example sprites will ...


7

You may have a problem with your eclipse setup and perhaps being more specific on the error would help. For instance, there is a known bug with Eclipse Helios autocomplete being very slow with the Android SDK. Do you have the latest dev tools and eclipse plugin? To answer the question, Netbrains' IntelliJ IDEA has android support and there is a plugin for ...


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 ...



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