• Content Count

  • Joined

  • Last visited

About BobF

  • Rank
    Advanced Member

Recent Profile Visitors

2326 profile views
  1. Using an array element for every single pixel may be an unnecessary inefficiency. Internally, I would divide the maze into cubes of pixels instead. Choose the largest cube size that guarantees all pixels within any given cube will have the same color. Feed a cube array to the pathfinder lib instead of a pixel array. A cube array will be WAY faster to build from ImageData (i.e., you only need to sample one ImageData pixel per cube), and the cube array will chew up WAY less RAM.
  2. Perhaps think of the space around the target as a square divided into four quadrants with the target at the center? It would be relatively easy to detect when the mouse enters a particular quadrant, so if the mouse enters all four quadrants in order multiple times then it has circled the target multiple times.
  3. Matt is correct, DPI is a measure of resolution, not a measure of length or width. An ad may have a DPI of 72 but doesn't tell you anything about its size. Try Googling "calculate size of admob ads". Some of the search results look promising.
  4. No need to block the EU. For companies outside of the EU, GDPR only applies if the company targets EU residents. For example, if your game provides European translations, or your IAPs allow the user to specify price in EU currencies, or if your site is a domain, or if you directly advertise or promote to EU residents, etc, etc. If there is nothing about your game or site that can be construed as targeting EU residents, and you have no presence in the EU, then you can ignore GDPR.
  5. BobF

    mmorpg advice?

    That seems doubtful, but it would be interesting to see. At the least, you would want to use a LEMP stack, rather than LAMP, to maximize traffic throughput. PHP and JS are both interpreted languages, but Node's JS runs on the V8 engine which is super fast. I would be shocked if a JS script running on V8 didn't blow the doors off an equivalent PHP script running on the fastest available PHP engine. But as Antriel stated, starting with PHP is not necessarily a bad idea if it will let you cobble together something to try out more quickly and easily. Just keep in mind a PHP solution will not scale as well, so you may need to switch to a Node solution if your game becomes successful in order to keep server costs down.
  6. BobF

    mmorpg advice?

    Devs like a Node implementation for server side processing of mmo projects because Node typically handles that type of traffic much more efficiently than a standard LAMP stack server. PHP will get the job done but if your game becomes very popular then your server costs will likely rise much more quickly than if you had chosen Node.
  7. BobF

    Game data

    Thanks, Mario, interesting graphic. Keep in mind though that you also need to know how much quality competition exists for each genre as well in order to use the information to decide which genre provides the best opportunity. And, of course, the time and resources needed to develop a good game for a genre is an important factor as well. For example, puzzle games have a big market and can be easier to create than an FPS, but the number of existing puzzle games your game would be competing against would be quite large.
  8. If you're targeting modern browsers then check out CSS's flexbox.
  9. Keep in mind that Adsense for Games requires 1 million games views per month to participate.
  10. You're recreating the player at coordinates (0, 0) on every frame. Try creating the player just once somewhere outside of "draw" and then move line "player.create()" to after the lines that update the player's position (and consider renaming "player.create" to something like "player.draw"). Move the canvas and context declarations outside of draw as well because you don't want to waste CPU cycles doing that for every frame.
  11. I prefer DigitalOcean, but if you want an even cheaper VPS then offers a small VPS for $2.50/month that should be good enough for demo purposes.
  12. You may want to check out Photon. I have not used them yet, but I probably will unless I decide to take the time to roll my own multi-player solution. You can make a one-time $95 payment that gives you 5 years of service as long as you stay under 100 concurrent users. That's a good price for what they provide, but once you need more than 100 CCU the price jumps to $95/month.
  13. Your use of an implicit return in an arrow function is invalid in both case 1 and 2. An implicit return in launch_player should look more like this: launch_player = (count) => count + 1; You can read more about using implicit returns with arrow functions here.
  14. Interesting idea! Out of curiosity, I tried to find ad space auctions on ebay but I didn't see anything. Maybe I wasn't searching for the right term.