Mouse Double Click extension for GameMaker Studio provides double-click detection

Mouse Double Click is an Extension that provides two new GML functions, mouse_doubleclick_init() and mouse_check_doubleclick() 

Written in pure GML, these new functions round out the built-in Mouse functions, allowing you to easily check for double-click events.

To use it, first call the mouse_doubleclick_init() function in the Create event for the object that will be handling click actions.  This creates an instance variable used to perform timing checks for the double-click, like so:

//Create Event:
mouse_doubleclick_init();

In a Step or Mouse event, call mouse_check_doubleclick(), passing in parameters for the mouse button to test for, and the doubleclick delay in microseconds (1/1,000,000th of a second).

//Mouse Event
mouse_check_doubleclick(mb_left, 250000); //250000 microseconds = 1/4 of a second

mouse_check_doubleclick() will return true if there were two clicks within the duration specified by the second argument, and false if no double click is detected.

That’s all there is to it.

ISP Cox HSI to end unlimited internet service, introduce overflow billing

Today, subscribers to Cox High Speed Internet received the following communication from their ISP:

Dear [Cox Customer],

We spend more time online today than ever before, streaming movies and TV shows, downloading music, sharing photographs and staying connected to friends and family. As Internet and data consumption grows, Cox continues to improve our network to ensure a quality experience for all our customers.

To better support our customers’ expanding online activity, we recently increased the amount of data included in all of our Cox High Speed Internet packages. About 95% of customers are now on a data plan that is well-suited for their household. In the event you use more data than is included in your plan, beginning with bill cycles that start onJune 15th, we will automatically provide additional data for $10 per 50 Gigabyte (GB) block for that usage period. Based on your last 3 months of data usage and our increased data plans, it is unlikely you will need additional data blocks unless your usage increases.

What this means for you
To help our customers get accustomed to this change, we are providing a grace period for 3 consecutive billing cycles. During this period, customers will not pay for additional data blocks for data used above their data plan. Customers who exceed their data plan will see charges and a matching credit on their bill statement. Beginning with bills datedOctober 15th and later, grace period credits will no longer be applied, and customers will be charged for usage above their data plan.

Understanding and managing your data usage
You are currently subscribed to the Preferred package which includes a data plan of 350 GB (Gigabytes) per month. To help you stay informed about data usage, Cox will begin to notify you via email and browser alert if you use 85% of your monthly data plan and again if you use 100% of your monthly data plan. Additional blocks of data will only be provided if you exceed your data plan. This will not change your Internet package and there will be NO change to the speed or quality of your service for data usage above your plan. To better understand your household’s historical and current data usage, you will find your household’s data usage meter and other helpful tools and information here.

Thank you for choosing Cox.

Sincerely,
Cox High Speed Internet Team

What this really means to Cox HSI customers

This is terrible news to users of what has been a reliable, relatively speedy service.

350 GB of data per month might sound like a lot, but if you look at what it is equivalent, it’s clear that Cox intends to screw its customers very badly.

I used Wolfram Alpha to tell me what 350 GB over 30 days amounts to. Here’s what it said:

350 GB/30 days is equivalent to:

  • 11.7 GB/day
  • 1.08 megabits per second

Comparisons:

  • ~0.7 * USB low speed (1536 kb/s)
  • 1.1 * StarLAN speed (1MB/s)
  • 0.8 to 1.8 x typical 3D data download rate

That’s right, for the $60/month preferred package, Cox will cap you to the equivalent of saturating a 3G cellular connection. My current speed with Cox Preferred is ~60 Mb/s, so when they introduce these caps, if I wanted to spread out the usage over my 30 day billing cycle, I’d have to restrict my usage to the equivalent of 1/60th of the speed I’m used to, assuming 24/7 usage.

 

“It is unlikely you will need additional data blocks unless your usage increases.”

News flash, Cox:

In the entire history of the internet, everyone’s data usage has always increased!

I’m a heavy internet user, and I expect that my data needs will only increase as time goes on, because they always have, like everybody’s. Better quality media streaming, more web services and web based applications, increasingly bloated web content, it all contributes. Web 2.0 would be unbearably slow in the 14.4 kbps world of 1993, and the 60 Mb/s that I have today limits and shapes what is conceivable to use that data connection for today. If I had a gigabit connection to my home, it would vastly change how I use the internet, the things that would become possible with such a connection would make 60 Mb/s look as slow as the 14.4 kbps we used during the dialup era seems today.

Today, I stream a lot of video, mostly YouTube, and I am on the internet pretty much all day long when I’m at home. I’m online most days from around 6pm until 1-2 am. Let’s assume 6 hours of internet use/day, which over 30 days amounts to 7.5 days of constant internet use. That would mean the 350 GB ration would afford me 46.7 GB/day, which is equivalent to 4.32 Mb/s, which Wolfram Alpha suggests is comparable to:

  • 0.9 x DVD speed (5 Mb/s)
  • 0.3 – 1.4 x typical 4G data download rate
  • 1.1 x token ring speed (4 Mb/s)

Token ring, for those who don’t know, is an network technology that more or less died in the 1990s. It’s 2015. It’s pathetic that broadband should be this limited.

Let’s say I wanted to actually use my 60 Mb/s connection for all that it’s worth, how much data use would that actually be?

Wolfram Alpha gives a figure of 60 Mb/s * 30 days = 19.44 Terabytes, which compares to:

  • 0.97 x text content of the Library of Congress.
  • ~5 x 4 TB hard drives

19.44 TB is a HUGE amount of data for most people, yet it would fill just one SOHO-class Network Attached Storage box populated with 4TB hard drives in a RAID5 configuration, which could cost around $1500-2000 today. So it’s a lot, but not a lot.

But what would that cost under Cox’s new billing?

The first 350 GB would be $60. The rest (19.09 TB) would be billed at $10 per 50 GB… 19.09 TB/50 GB = 381.8 * $10.00. So, my theoretical maximum monthly bill would amount to a grand total of: 382 * 10 + 60 = $3880.00

$3880.00 for 1 month of maximum internet use under the new billing structure.

But surely I’d never use that much data, you’re probably thinking. Well, what if you’re wifi isn’t as secure as you thought, and one of your neighbors is leaching? Or, what if you leave a computer up and running all day, and it gets infected with malware, and starts saturating your network connection with traffic without your knowledge or consent? And suppose the notifications Cox sends you don’t make it into your inbox due to improper spam filtering? Imagine the shock of opening your next bill and seeing charges for almost $4000!

The point is, Cox is trying to sell me internet service, but crippling it to an effective average speed of about 1/60th the speed at which I am currently able to use it — a speed which compares with the throughput of a USB 1.1 device or a 3G cellular data connection. This is not broadband service in any meaningful sense of the word.

Fight back

I urge Cox customers to fight back against this. And for internet users who are not customers of Cox, get ready. Other ISPs may be planning to do the same thing to you. We need to stand together and demand that our internet use

  1. Contact Cox Customer Service and complain!

  2. File a Consumer Complaint with the Federal Communications Commission!

  3. Write to your Congressman!

  4. Write to your Senator!

  5. Find another ISP!

scrollsnap extension for GameMaker: Studio

My latest GameMaker extension, scrollsnap, is published!

Asset listing at the YoYoGames Marketplace

Documentation

Demo video:

What’s scrollsnap?

Scrollsnap is a way of setting up a View in your room so that it “snaps” to the next screen’s worth of space when the followed instance moves outside the view. Simply put, it’s a view that stays put, but if you walk off the edge of the view, the view updates, giving the appearance that you walked off the edge of one screen and on to another.

Old-school video games such as Adventure, Pitfall!, and Berzerk used this approach to provide a larger game world to explore and play in, before programmers figured out how to make the hardware support scrolling.

Mods for sale

Valve recently announced and then swiftly retracted that they would be allowing developers of mods for Skyrim to charge for their wares on Steam.

I don’t know a lot about the details of this story — I don’t play Skyrim, and I’m not familiar with the online gaming and modding communities that surround it, but apparently Valve went about it the wrong way and made a lot of people upset. I’d like to know more detail about this before I have an opinion on it, but I can say a few things about the idea of modding in general, and modding for commercial gain. Update: based on this Forbes article, it does seem that there were a few things that I would agree were objectionable about the particulars of the way Valve and Bethesda went about, in particular the cut they wanted to take from the revenue generated by sales of mods, as well as concerns over modders who appropriated resources in other free mods and repackage them for sale, and so forth.

I’m pretty familiar with the concept and history of modding, and have done some modding of some games, going back to the 1990s, when I dabbled in making maps and physics models for Marathon (Bungie), and modded ships and weapons for Escape Velocity (Ambrosia). I never distributed my mods beyond sharing them with people I knew personally, but I got into the hobby because the tools were free and there was a sense of openness. There were no barriers to entry, and people authored good docs that explained how to use the tools and create good mods. Generally, the spirit of the modding movement has been that it’s something you do out of love and enthusiasm for a game. Licensing and copyright issues that might otherwise be more of a big deal are glossed over because the work is intended as amateur/homage, and not motivated by profit.

Of course, modding is an art and the quality of some of it is astoundingly good. Modding has been the “gateway drug” for many people who wanted to get into game development, and many talented people learned their craft through modding and went on to work in the industry, and even some modding projects have been turned into commercial products, like Team Fortress 2 and Counterstrike. All of this has been realized by the “remix culture” that embraces sharing and openness while eschewing things like ownership, commercialism, and profit. Everyone has benefitted from this: the original game benefits from added interest and lifespan, the players benefit from having lots of mods to play, the modders benefit by learning how to make mods and getting some recognition for their work if it’s good enough, and by having the freedom to mod, and they pay it forward by distributing the mods for free so that they can get free playtesting, etc.

That said, I don’t have any problem with a commercial market for mods, if certain problems can be avoided. I think that if a modder wants to release a mod for a game and charge money for it, that should be their right and their decision to make. In part, it should also be controlled by the original game’s license, but generally speaking I am in favor of permissive licenses that promote freedom and openness. And yes, that includes the freedom (to try) to make money. Game developers are some of the lowest-paid software developers, working in the most crowded and competitive of markets. Considering the amount of work that must go into a mod in order to make it good enough to be worth charging for, I don’t see it as unreasonable — at all — for creator/developers to try to make some money for their work. If some people don’t like it, they don’t have to buy it. Despite there being some pitfalls and areas prone to abuse, the dividing line between a mod and a full game can often be imaginary, but in any case the work that went into building them is real, and if a developer feels that they deserve some consideration for the time they put into crafting them, I see no reason why they shouldn’t be able to set up shop and attempt to get it.

Tempest in a Teapot: IP Creator vs. IP Owner

ArsTechnica posted an article today about the current intellectual property holders of Atari being in communication with game developer Llamasoft (aka Jeff Minter), who programmed Tempest 2000 for the Atari Jaguar in 1994, to suppress a game he recently released called TxK, which appears to be an update or sequel to Tempest 2000. (Tempest 2000 is itself a sequel of the Atari 1981 arcade smash hit Tempest, which was designed and programmed for Atari by Dave Theurer.)

On the face of it, it would appear that “Atari” has a pretty solid case. Very likely, Minter doesn’t own Tempest, Atari did (and the current owner of the Atari brand now does). Minter/Llamasoft almost certainly would have created Tempest 2000 as a work for hire, and the rights to it almost certainly were and are the exclusive domain of Atari. I don’t know the facts, I’m not a lawyer, but I am familiar with a bit of intellectual property laws, and to me it seems likely that unless Minter has a contract stating that he or Llamasoft is a part owner of the IP rights to Tempest 2000, unfortunately he probably doesn’t have much of a case should it come to a legal action against him for creating a game that is essentially Tempest 2000 for modern machines.

The thing is — and this is why I put “Atari” in quotes — the real Atari went out of business years ago, and the current company who owns their intellectual property isn’t the same company or the same people who created . This doesn’t change their legal standing with regard to ownership, unfortunately, and creates an interesting situation of the actual guy who created the game not having the rights to his own creation, aka John Fogerty syndrome.

While the legalities are probably pretty clear cut, my sympathies are with Minter, who clearly is more of a creator of Tempest 2000 than the current holder of Atari’s intellectual properties could ever hope to be. And the game he has produced does look like a worthy update to a classic game that was loved well by the golden era gamers of the pre-crash arcade era. Being a Jaguar release, Tempest 2000 was not as widely played or appreciated as it should have been, and a modern update that can be enjoyed by more people ought to be welcomed by the market. But because of trademarks and copyright and “works for hire”, Atari’s ghost probably does have it within its legal rights to quash the game if that’s what it wants to do. Hopefully, they and Minter can come to a happier arrangement. It sucks that a company that is doing little or nothing with an old back catalog of games can prevent its original creators from coming out with new innovations that build on their own earlier works.

Personally, my feeling is that the actual-creators should always retain a right to produce new stuff. It should be literally impossible for a creator to sign away the right to produce new original or derivative works of any property they had a hand in creating, even if they’ve sold the rights to a previously-created work. If a publisher wants to commission a work and wholly own it, such that the creator is labor and is paid one time for the work, and has no future rights to the work itself, I still feel that the actual people who did the creative things ought to be able to say, “I’m the creator of [X] and although it’s not an officially recognized part of the canonical [Publisher]-owned [X], here, world, have a new [X]-thing that I made, because I had some more ideas and I wanted to make them, and share them with or sell them to the world.

But, in the legal real world, it doesn’t work that way. It all comes down to who the owner is, and ownership can be transferred. There’s no permanent right residing with an original creator, and it all comes down to the terms under which a work was authored and published.

This harkens all the way back to the early days of Atari, the famous Activision split, where several of Atari’s best developers went to Atari President and CEO Ray Kassar, asking for recognition of authorship and to have their names attached to the games they were producing. Kassar refused, famously insulting his best creators by telling them they had no more to do with Atari’s success than the people who assembled the games and put them in boxes. They left in revolt and formed Activision, the first third-party developer of console games, and credited themselves on their own creations and paid themselves royalties.

And more recently, Konami just had a falling out with Metal Gear auteur Hideo Kojima, and are in the process of removing his name from his creations. So in the future, if Hideo Kojima wants to create something new, it can’t be in the Metal Gear universe, which is owned by Konami. And Konami can do whatever they want with Kojima’s creations, legally, even if it sucks or is completely contrary to the spirit that Kojima put into his works.

There has always been this clash between business and creator, really any time a creative enterprise is something larger than one person can realize — any thing that requires teamwork necessarily entails contracts, and contracts are ugly things that can trip up someone who doesn’t have expert legal counsel on retainer, and that’s almost always something too expensive for creative types who often struggle financially to afford. This sort of thing happens all the time to creators with their works, and it’s terrible.

What it comes down to is this: Creators create properties. That’s where the value is. Owners tend to the the ones who monetize properties. But owners’ interest in monetizing properties shouldn’t inhibit creators from creating more properties. Because ultimately, it’s creations that are the thing we should value, and ought to encourage.

I hope that Minter and Atari are able to work something out that is mutually beneficial, and doesn’t result in the game being pulled from the market. Like Minter said, they should be hiring him.

Lessons learned from the first crowdfunding campaign

One month ago, I was struck with inspiration and needed money to make an idea I had a reality, so I embarked on my first crowdfunding campaign. Today, it reached goal. I’m about to get busy working on turning all that money into a successfully completed project, but I think right now is a good time to reflect on the things I learned along the way so far. Continue reading

Play Tech acquires YoYoGames

News broke today that YoYoGames has been bought by PlayTech.

I don’t know what this will mean for the future of GameMaker: Studio, but often when a company sells a property to another party, or is acquired, there’s a distinct change in direction, and this usually makes people who’ve been happy with the current direction unhappy. As someone who’s been happy with the current direction that YYG has been steering GM:S for the last four years, I’m therefore concerned. What will the future bring? I have no idea. I just hope that GameMaker remains in good hands.