Jump to content


Photo

Bug In Ds_grid_set_grid_region


  • This topic is locked This topic is locked
17 replies to this topic

#1 paul23

paul23

    GMC Member

  • Global Moderators
  • 4147 posts
  • Version:GM:Studio

Posted 09 November 2007 - 12:41 PM

Well I think I've found a pretty huge bug in gm 7:

ds_grid_set_grid_region(id,source,x1,y1,x2,y2,xpos
,ypos) Copies the contents of the cells in the region in grid source to grid id. xpos and ypos indicate the place where the region must be placed in the grid. (Can also be used to copy values from one place in a grid to another.)


so this indicates that you can easily swap lines. (by using a temporary grid).. Well I tried and found a bug:
grid = ds_grid_create(2,3);
tgrid = ds_grid_create(2,5);
loc = 4; ////the location is most important!
ds_grid_set_region(grid,0,0,ds_grid_width(grid)-1,ds_grid_height(grid)-1,"testvalue");
ds_grid_set_region(tgrid,0,0,ds_grid_width(tgrid)-1,ds_grid_height(tgrid)-1,"t");
ds_grid_set(grid,0,4,"t");ds_grid_set(grid,1,4,"t");
show_message("old grid: "+string(ds_grid_get(grid,0,1))+"||"+string(ds_grid_get(grid,1,1)))
/////////////////
ds_grid_set_grid_region(tgrid,grid,0,1,1,1,0,loc);
////////////////
show_message("new grid: "+string(ds_grid_get(tgrid,0,loc))+"||"+string(ds_grid_get(tgrid,1,loc)))

when copying to the first or last line in a grid, the copying won't take place! - Even when copying in the same grid!
Well I think it's a bug at least, can somebody test above code, which should point you to the bug? -- It's a pretty big issue and I think it's kind of strange no one has noticed it yet..

Edited by paul23, 09 November 2007 - 12:42 PM.

  • 0

#2 xot

xot

    GMC Dismember

  • GMC Elder
  • 4785 posts
  • Version:GM:Studio

Posted 10 November 2007 - 09:28 PM

I can confirm this bug. I ran into it independently last night. This is what I've discovered about how it works.

I was moving grid rows around, like you. What I've found is that with each successive call, the area that can be addressed "shortens" by one. That is, on the first call, you have full access, on the next call, you can't access the last row, on the following call, you can't access the bottom two rows, and on the next, the last three rows are inaccessible, and so on. This bug was driving up the wall until I realized that the problem wasn't in my code, but with GM. I replaced the function with a script, and my code worked fine. It is definitely a Game Maker BUG.
  • 0
GMLscripts.com, rise from your grave!

If any of my posts contain broken images or links, I can probably supply them for you. PM with a link to the post.

#3 SquareWheel

SquareWheel

    Square Wheel Games

  • New Member
  • 851 posts
  • Version:Unknown

Posted 11 November 2007 - 11:06 PM

Best report it to Mark then.
  • 0
Cook Console | Editor Engine | Mass File Namer

All of my examples are publicly available and can be found at

#4 safwat1995

safwat1995

    GMC Member

  • New Member
  • 394 posts
  • Version:Unknown

Posted 07 November 2010 - 07:32 AM

After several hours of debugging my code, i decided to google ds_grid_set_grid_region and stumbled across this.
I wonder how this bug survived and remains unfixed 3 years later...

Edited by safwat1995, 07 November 2010 - 07:33 AM.

  • 0

#5 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 07 November 2010 - 09:59 AM

I wonder how this bug survived and remains unfixed 3 years later...

Probably for the same reason the number-precision in v6.x was never fixed and the "can't read a Zero-value from a file" in v8.0 is still there.

What that reason is ? Well, when Mark was the only one on the project it as probably something personal (a lack of interest ?), but now with YoYoGames its most likely the simpelest of them : Money. Fixing bugs does not bring any into YoYoGames pockets, whereas being able to sell a new version of GM does.

Remember : we as consumers are not the target, we're just steps in reaching it -- a livelyhood for the company and its owners/investors.
  • 0

#6 paul23

paul23

    GMC Member

  • Global Moderators
  • 4147 posts
  • Version:GM:Studio

Posted 08 November 2010 - 01:43 PM

I wonder how this bug survived and remains unfixed 3 years later...

Probably for the same reason the number-precision in v6.x was never fixed and the "can't read a Zero-value from a file" in v8.0 is still there.

What that reason is ? Well, when Mark was the only one on the project it as probably something personal (a lack of interest ?), but now with YoYoGames its most likely the simpelest of them : Money. Fixing bugs does not bring any into YoYoGames pockets, whereas being able to sell a new version of GM does.

Remember : we as consumers are not the target, we're just steps in reaching it -- a livelyhood for the company and its owners/investors.

Yet I have my rights as a customer.. ONe of those rights is a WORKING product. My laptop got broken 3 times within a year, and now I get a NEW laptop from HP - just because the laws enforce that and I have my right as customer..

Strangely in the UK these laws don't count?
  • 0

#7 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 08 November 2010 - 02:43 PM

Yet I have my rights as a customer..

Like what ? And have you already read the EULA ? Even if you can "stick it to them" all you may expect is your money back. Compared to the cost of actually getting those rights it would be silly to do (and a very effective way to kill complaints from customers :( ).

ONe of those rights is a WORKING product.

Well, I expect to see you sueing Microsoft too, as its Windows products have prooven to be buggy as h*ll, needing permanent monthly mantainance. Not really a "working product" ...

In GMs case its just a "minor bug", with a work-around available. Yeah, I do not like it either, but what can you do ?

My laptop got broken 3 times within a year, and now I get a NEW laptop from HP - just because the laws enforce that and I have my right as customer..

Hardware != software. Some EULAs even (try to) specifically exclude that the software might be fit for any usage at all. Not that that flies in my country, but even here it would cost me a quite some energy and cash to get past such a rip-off rule.
  • 0

#8 paul23

paul23

    GMC Member

  • Global Moderators
  • 4147 posts
  • Version:GM:Studio

Posted 08 November 2010 - 05:05 PM

Yet I have my rights as a customer..

Like what ? And have you already read the EULA ? Even if you can "stick it to them" all you may expect is your money back. Compared to the cost of actually getting those rights it would be silly to do (and a very effective way to kill complaints from customers :( ).

ONe of those rights is a WORKING product.

Well, I expect to see you sueing Microsoft too, as its Windows products have prooven to be buggy as h*ll, needing permanent monthly mantainance. Not really a "working product" ...

In GMs case its just a "minor bug", with a work-around available. Yeah, I do not like it either, but what can you do ?

My laptop got broken 3 times within a year, and now I get a NEW laptop from HP - just because the laws enforce that and I have my right as customer..

Hardware != software. Some EULAs even (try to) specifically exclude that the software might be fit for any usage at all. Not that that flies in my country, but even here it would cost me a quite some energy and cash to get past such a rip-off rule.

I doesn't matter what the product is: as a consumer I have rights on a working product.. (And ie in the case with HP: I am allowed to refuse a refund, HP is forced to give me a working PRODUCT and unless the company can prove that it is completely unfeasable to get it working I may refuse money and demand the product..

I'm not even expecting a product without bugs/mistakes.. However I DO expect the bugs to be worked on and repaired (someday, I don't mind having to wait like 1 or 2 years) free of charge.

It is sad that the product is sold out to a non-dutch company, as now I can't go to any of the dutch organization for misuse of consumer rights so they will publisize the problem and do something about it. (I did do that with my laptop, and after sending a CC to HP's (dutch)consumer support I suddenly got a new laptop within weeks).

And I do know that for almost any service-based company there is a consumer-watch who keeps the company closely in track. Sadly all those things don't work cross-border.
  • 0

#9 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 08 November 2010 - 07:06 PM

I doesn't matter what the product is: as a consumer I have rights on a working product..

Yes it does and no you don't.

As I tried to explain different products have different rules. You may try to ignore that, but that is how it goes, everywhere.
I also tried to explain that having a right and getting it are two quite different things. Again, you may ignore that, but that is the reality.

I'm not even expecting a product without bugs/mistakes..

I do not either. But I do not expect a product to stay a swiss cheese full of holes for the full duration of its life (Windows, all versions). :(

(someday, I don't mind having to wait like 1 or 2 years) free of charge.

And the measures you had to take (virus- and other malware scanners/shields, professional help when that was not enough or the OS suddenly stopped function correctly (due to one of those monthly updates perhaps ?) ) are just something you gladly pay outof your own pocket ? I would not call that "free of charge". <_<

As for those two years ? I expect a product to be sold without any major flaws, and ones that do appear to befixed within days not years.

Currently its pretty-much standard to push half-baked software (Ranging from games to OS-es) onto the marked, and let the customer beta-test it (and, for the privilege of being (ab)used as guinea-pigs, pay top prices for that software).

It is sad that the product is sold out to a non-dutch company,

Its not "sold out". Mark (Overmars) is part of that company.

as now I can't go to any of the dutch organization for misuse of consumer rights so they will publisize the problem and do something about it.

Oh yes you can.

If you bought or its produced there than the laws of that country can be invoked. If you bought it in the UK than for you as the buyer UKs Laws apply.

But again, having those rights is something different than getting them ...

And I do know that for almost any service-based company there is a consumer-watch who keeps the company closely in track.

And ? Do you know any which keep an eye on YoYoGames with its E25,- product ? :)

Sadly all those things don't work cross-border.

Microsoft ? Apple ? Sony ? just to name a few.
  • 0

#10 paul23

paul23

    GMC Member

  • Global Moderators
  • 4147 posts
  • Version:GM:Studio

Posted 08 November 2010 - 08:20 PM

Sadly all those things don't work cross-border.

Microsoft ? Apple ? Sony ? just to name a few.

Uhm "those things" I'm referring to the consumer-watch organizations.. (which DO also work for cheap-software btw, they work by sending letters to the company & publizing in newspapers/relevant magazines). However all those organizations (I know, and am a member of) have a strict policy of only working with companies who have a dutch (under) organization. This is because enforcing laws on something which have their headquarters somewhere else is very difficult (you can't use the dedicated courts set up for these things).

By sold out I mean: something moved from something in the netherlands to something based Non-netherlands. Thus effectivily a brain-drain for the netherlands as something unique is moved outside the netherlands.

I do know getting rights is much harder, but I will always try to advocate the problems. And this topic just startled me: I did report this to mark before the bug report system was in place already.. After that I DID write a report in the bug-report system of yoyogames. (And it was marked as "solved" btw).

Yet if now somebody reports back that is ISN'T and yoyogames didn't even REPORT that (under a list of non-fixed bugs), this is what upsets me slightly. This is very bad behaviour, and as I said already many times: if I knew yoyogames would treat consumers in such a way I would never ever have started with gamemaker. When buying gamemaker 8 I gave them a good "benefit of the doubt": they let the consumer have great involvement into the beta version and responded quite well..

However with the treatement they gave to gamemaker over the last few years I'm really losing faith in their good will for gamemaker. I really wonder if they actually want to make gamemaker a good tool which is the best to use for making games.
What is their vision for gamemaker?
  • 0

#11 NakedPaulToast

NakedPaulToast

    GM Studio/Mac/Win

  • GMC Member
  • 8808 posts
  • Version:GM:Studio

Posted 08 November 2010 - 09:32 PM

What is their vision for gamemaker?


A lot more realistic than yours.
  • 0

If the Bible truly is inspired by God, you would think that somebody as omnipotent and all-knowing would have known to get his message out using TCP instead of UDP.

 


#12 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 08 November 2010 - 10:57 PM

Uhm "those things" I'm referring to the consumer-watch organizations..

Do you remember the problems those companies have from consumer-watch organisations all over the world ? I do remember Sonys debacle with his music-CDs carrying root-kits, I also can read every day about how good/bad Apples products are (like the antenna problems of the iPhone), and lets not speak of the day-to-day problems MS has with a Dutch gouverment person (Neelie Smit-Kroes IIRC).

By sold out I mean: something moved from something in the netherlands to something based Non-netherlands. Thus effectivily a brain-drain for the netherlands as something unique is moved outside the netherlands.

And Mark Overmars owes the Netherlands his brains for ... what reason exactly ? :whistle:

if I knew yoyogames would treat consumers in such a way I would never ever have started with gamemaker.

Have you ever taken the time to read GMs EULA ? There are some real gems in there. Like in a case of a dispute all you can claim from YoYoGames is the price you payed for the product (meaning nothing if you are using the "free" version!), while there is no limit at what they can claim from you. :)

If you would have read that (which I must assume you did not) you would never have started with GM to begin with ...

I really wonder if they actually want to make gamemaker a good tool which is the best to use for making games.

I believe that at some time in the past he really wanted that, yes. But I'm afraid that in time that has become less-and-less important to him. Maybe under pressure of needing to make money to live ? Who knows.

What is their vision for gamemaker?

I think I already answered that one (post #5) : use it for creating a livelyhood for the company and its owners/investors.
  • 0

#13 xot

xot

    GMC Dismember

  • GMC Elder
  • 4785 posts
  • Version:GM:Studio

Posted 09 November 2010 - 11:42 PM

This is an awful lot of hub-bub over a bug that, as far as I can tell, has been fixed.
  • 0
GMLscripts.com, rise from your grave!

If any of my posts contain broken images or links, I can probably supply them for you. PM with a link to the post.

#14 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 10 November 2010 - 09:02 AM

This is an awful lot of hub-bub over a bug that, as far as I can tell, has been fixed.

:) Its not the bug, but the attitude of the company that has been questioned.

But you mean that particular v7.0 problem does not appear in v8.0 anymore ? Yeah, that does the people using v7.0 much good. :(

Same goes for the v6.x number-precision bug. Never fixed in there.

No, just leaving bugs like that stay in the current version until the next, always "better" version comes out is not what I call "fixing".

And ofcourse, v8.0 has got its own big bug, which I do not expect to see fixed in its life-time either. :mellow:
  • 0

#15 safwat1995

safwat1995

    GMC Member

  • New Member
  • 394 posts
  • Version:Unknown

Posted 10 November 2010 - 12:14 PM

This is an awful lot of hub-bub over a bug that, as far as I can tell, has been fixed.

:) Its not the bug, but the attitude of the company that has been questioned.

But you mean that particular v7.0 problem does not appear in v8.0 anymore ? Yeah, that does the people using v7.0 much good. :(

Same goes for the v6.x number-precision bug. Never fixed in there.

No, just leaving bugs like that stay in the current version until the next, always "better" version comes out is not what I call "fixing".

And ofcourse, v8.0 has got its own big bug, which I do not expect to see fixed in its life-time either. :mellow:

Totally agree, older versions should be patched, not everyone can afford GM8.

Edited by safwat1995, 10 November 2010 - 12:14 PM.

  • 0

#16 Krisando

Krisando

    GMC Member

  • New Member
  • 1351 posts

Posted 14 November 2010 - 09:02 AM

Ran into this bug a long time ago, I now explicitly use an extension: ds_bin grid.

GM grids store too much data and take a massive amount of time reading/writing compared to this.

A grid in a server was 1000x10x10x4, 2.8gb in GM, 120mb in ds_bin.
  • 1

Posted Image


#17 safwat1995

safwat1995

    GMC Member

  • New Member
  • 394 posts
  • Version:Unknown

Posted 14 November 2010 - 05:50 PM

Ran into this bug a long time ago, I now explicitly use an extension: ds_bin grid.


Handy! thanks.

Edited by safwat1995, 14 November 2010 - 05:51 PM.

  • 0

#18 xot

xot

    GMC Dismember

  • GMC Elder
  • 4785 posts
  • Version:GM:Studio

Posted 14 November 2010 - 05:56 PM

Very interesting, Krisando. Here it is if anybody wants to try it.

I should have mentioned earlier that I have a script that replaces the bugged GM7 function (and adds the functionality to GM6).

Script: ds_grid_set_grid_region

Keep the script name the same as the built-in function and it will automatically override it. The script is obviously slower but it works.
  • 0
GMLscripts.com, rise from your grave!

If any of my posts contain broken images or links, I can probably supply them for you. PM with a link to the post.