Jump to content


What should go........?


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

#1

  • Guests

Posted 27 January 2011 - 02:10 PM

Okay, slight sideline. Don't go nuts here.... but what single "feature" would you remove? What could Game Maker really do without? Anything? Just curious here really, but as the runner gets more and more into it, when we do a rewrite, we have to add all this stuff back again.

Now, I'm guessing that someone somewhere will want a feature others would love to see dropped, but it could be an interesting question, and at the very least, help us target performance stuff.

So... one thing you would remove, and a very brief description as to why.

#2 varuks

varuks

    GMC Member

  • New Member
  • 982 posts
  • Version:Unknown

Posted 27 January 2011 - 02:13 PM

Gravity should go because It is buggy and hard to learn! I never even got past learning it cause it's so hard.
  • 0

#3 BlueMoonProductions

BlueMoonProductions

    BlueMoonProductions

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

Posted 27 January 2011 - 02:20 PM

The statements 'then', 'begin' and 'end'.

'Then' is not even needed, GM works flawless without, and 'begin' and 'end' are rarely used.
  • 12

#4 cookie

cookie

    GMC Member

  • New Member
  • 137 posts

Posted 27 January 2011 - 02:21 PM

Okay, slight sideline. Don't go nuts here.... but what single "feature" would you remove? What could Game Maker really do without? Anything? Just curious here really, but as the runner gets more and more into it, when we do a rewrite, we have to add all this stuff back again.

Now, I'm guessing that someone somewhere will want a feature others would love to see dropped, but it could be an interesting question, and at the very least, help us target performance stuff.

So... one thing you would remove, and a very brief description as to why.


Gravity is perfectly fine as is, what should DEFINATLY go...

Is the interpreter, remove that, have the GML parsed directly into C++ then compiled with the game maker engine with that, also, remove directx8, use only directx for the audio, use OPENGL for the rendering, the abillity to change the sound library would also be nice (To maybe use OPENAL?)

Multi threaded support is also important in my opinion. (Not for the user to be able to choose threads, but to have sounds, step, draw, collisions on different threads)

Being able to define my own instance class without all the uneccessary checks and vars slowing my stuff down would be nice! :D

Go YoYo, get those features a'crackin'
  • 10

#5 commander of games

commander of games

    Kaos Kreator

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

Posted 27 January 2011 - 02:25 PM

The statements 'then', 'begin' and 'end'.

'Then' is not even needed, GM works flawless without, and 'begin' and 'end' are rarely used.


I tend to agree with this. If there were any features I really wanted removed, they'd be "then", "begin", and "end".

@varuks: That would mean reprogramming practically every GM platformer in existance. And actually it's really easy to learn gravity. You set the gravity direction and the amount. That is all. It being hard to learn is not a valid reason to remove something. If it were, C++ wouldn't exist. ;)
  • 3

#6 cookie

cookie

    GMC Member

  • New Member
  • 137 posts

Posted 27 January 2011 - 02:29 PM


The statements 'then', 'begin' and 'end'.

'Then' is not even needed, GM works flawless without, and 'begin' and 'end' are rarely used.


I tend to agree with this. If there were any features I really wanted removed, they'd be "then", "begin", and "end".

@varuks: That would mean reprogramming practically every GM platformer in existance. And actually it's really easy to learn gravity. You set the gravity direction and the amount. That is all. It being hard to learn is not a valid reason to remove something. If it were, C++ wouldn't exist. ;)



I wouldn't say C++ is hard, it's very deliberate and self explanatory what most things do once you get your head around the basic syntax, declelration of information can be some trickery occasionally. But C, now that's hard...

[CUT]
  • 0

#7 BlueMoonProductions

BlueMoonProductions

    BlueMoonProductions

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

Posted 27 January 2011 - 02:41 PM

remove directx8, use only directx for the audio, use OPENGL for the rendering,

OpenGL? Why? I guess we're talking about the PC version of Game Maker now, so the only reason to use OpenGL(: it is cross-platform) isn't valid now.. DirectX is way more powerful and intergrated in Windows then OpenGL. I think using OpenGL might even slow Game Maker down, but I'm not an expert.
  • 0

#8 NakedPaulToast

NakedPaulToast

    GM Studio/Mac/Win

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

Posted 27 January 2011 - 02:49 PM

mplay

It's been deprecated for years, its cumbersome and tedious and simply creates more problems than it solves because of it's port forwarding requirements for both sides of the communication.
  • 23

#9 ev149

ev149

    NinetySix Design

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

Posted 27 January 2011 - 02:52 PM

Gravity is perfectly fine as is, what should DEFINATLY go...

Is the interpreter, remove that, have the GML parsed directly into C++ then compiled with the game maker engine with that, also, remove directx8, use only directx for the audio, use OPENGL for the rendering, the abillity to change the sound library would also be nice (To maybe use OPENAL?)

Multi threaded support is also important in my opinion. (Not for the user to be able to choose threads, but to have sounds, step, draw, collisions on different threads)

Being able to define my own instance class without all the uneccessary checks and vars slowing my stuff down would be nice! :D

Go YoYo, get those features a'crackin'

This, but I'd rather see DirectX 10/11 than OpenGL, personally.
  • 1

#10 cookie

cookie

    GMC Member

  • New Member
  • 137 posts

Posted 27 January 2011 - 03:17 PM

remove directx8, use only directx for the audio, use OPENGL for the rendering,

OpenGL? Why? I guess we're talking about the PC version of Game Maker now, so the only reason to use OpenGL(: it is cross-platform) isn't valid now.. DirectX is way more powerful and intergrated in Windows then OpenGL. I think using OpenGL might even slow Game Maker down, but I'm not an expert.


Why is that statement not valid, cross platformabillity is definately a factor I think should be more than considered.


In address to the above who said they'd prefer direct x 10/11 I think doing that would require such a massive re-think of the current system when it interacts with the API of the GPU...

As with if they used Opengl 3.0

But being able to use the shader effects of the new DX or OpenGl would be amazing!
  • 0

#11 ragarnak

ragarnak

    GMC Member

  • GMC Elder
  • 19468 posts
  • Version:GM8

Posted 27 January 2011 - 03:26 PM

Gravity should go because It is buggy and hard to learn! I never even got past learning it cause it's so hard.

If you want to go on that track than I suppose 3D (all of it) should be removed too ? :whistle:

FYI : Just a few D&D commands (and a single "max(...)" command) is all I need to have a player jump everywhere (and not get stuck against a wall either). :)

The statements 'then', 'begin' and 'end'.

I could imagine the latter two (although I could imagine some people coming in from other languages will recognise and use them), but I'm still activily using that "then" keyword.

If for nothing else than for readability of one-line "if" statements.

But if you want to remove that one, what about all those superfluous semi-colons (";") at the end of lines ? :P

but what single "feature" would you remove?

I think I would agree with NakedPaulToast. MPlay has pretty-much outlived its usefullness. The existence of (several) routers and firewalls everywhere makes multi-port connections a nightmare to configure. I would suggest to take a peek at 39DLL and learn from it.


A question though: have you already thought of enhancing the usefullness of existing commands ?
  • 0

#12 gnysek

gnysek

    GMC Member

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

Posted 27 January 2011 - 03:26 PM

MPlay. There is 39dll and with this extension you can make much better working multiplayer. Since multiplayer is for experts in GM, it's not a problem to use DLL or GEX extension - so mplay can be removed to save some bytes in exe file.

Timelines - I don't have use for them, you can do the same using one variable and step event in many ways and with better control... but requires some knowledge of course, so maybe not for all it's the best idea.

Game information - you can make room with text, images or sth which looks much better. It can be left in IDE file as form of internal notepad, maybe some people makes notes there about their project during development, but it shouldn't be saved and available into executable.

Triggers - it's just step event with condition, it's equivalent for "execute piece of code" action with: "if some_variable = true { <trigger actions here> }". It's like splitted step event only, because you have action blocks in two events.... but it's still step event.

Edited by gnysek, 27 January 2011 - 05:16 PM.

  • 3

#13 Artaex Media

Artaex Media

    Artaex Media

  • GMC Member
  • 1531 posts
  • Version:Unknown

Posted 27 January 2011 - 03:33 PM

Timelines
Rarely use them...
You can also use an object with step event, that checks for the current second (or step) then do the action?

Triggers
Because I've never used them before, and it works fine without them.

Game Information
Rarely use it, and a room with info looks much better.

Edited by Reflux Entertainment, 27 January 2011 - 03:34 PM.

  • 1

#14 Medusar

Medusar

    GMC Member

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

Posted 27 January 2011 - 03:38 PM

The statements 'then', 'begin' and 'end'.

These are not features. Plus, they are probably useful for people coming from Pascal-like languages. GML is supposed to be loose; only allowing C-style syntax goes against this philosophy. Plus, there is no need to remove them as this won't improve performance.

What I would like to see removed is...
mplay... either remove network functionality completely or implement something socket-based (39DLL-like).
Current highscore system... far too limited for most games.
Global variables such as health, I hate being forced to use hp all the time.
Game information it's ugly and too limited like the highscore system.

Plus other features that I never use (like triggers), but these may be useful to some.
  • 0

#15 cookie

cookie

    GMC Member

  • New Member
  • 137 posts

Posted 27 January 2011 - 03:39 PM

MPlay. There is 39dll and with this extension you can make much better working multiplayer. Since multiplayer is for experts in GM, it's not a problem to use DLL or GEX extension - so mplay can be removed to save some bytes in exe file.

Timelines - I don't have use for them, you can do the same using one variable and step event in many ways and with better control... but requires some knowledge of course, so maybe not for all it's the best idea.

Game information - you can make room with text, images or sth which looks much better. It can be left in IDE file as form of internal notepad, maybe some people makes notes there about their project during development, but it shouldn't be saved and available into executable.

Triggers - it's just step event with condition, it's equivalent for "execute piece of code" action with: "if some_variable = true { <trigger actions here> }". It's like splitted step event only, because you have action blocks in two events.... but it's still step event.



I think triggers are made seperate from everything else within the game engine, so it's its own function in delphi, that gets called upon the condition from the step event, in a sense it would improve performance, but yeah, leave out triggers and encourage people to use switches, my god I love those bad boys...
You should leave them out because of my previous suggestion it would cause redundancy to them, if everything is parsed into native C++ then compiled.
  • 0

#16 commander of games

commander of games

    Kaos Kreator

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

Posted 27 January 2011 - 04:01 PM

This is what I would like to see removed:

-Mplay. Same reasons as everyone else. If it does get removed, please implement something similare to 39DLL.
-Built-in global variables. I also find it annoying to not be able to use 'health'.
-'Simple' mode. There's really no use for it except that it's slightly less confusing for beginners. Even then, they can just ignore the extra resource folders/icons.
  • 2

#17 thatshelby

thatshelby

    GMC Member

  • GMC Member
  • 3823 posts
  • Version:GM8

Posted 27 January 2011 - 04:02 PM

I would say to remove mplay.
  • 3

#18 cookie

cookie

    GMC Member

  • New Member
  • 137 posts

Posted 27 January 2011 - 04:05 PM

I would say to remove mplay.


I do agree with this, mplay is redundant, and as someone stated, advanced users only use multiplayer and advanced users usually can utilize DLLS.
  • 0

#19 Orbitguy

Orbitguy

    UNS Lead Guy

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

Posted 27 January 2011 - 04:16 PM

Agreed, mplay has got to go. 39dll is much better documented on the forums as of this point I feel than mplay, and it's rather tedious to try and figure out when a lot of the active online coders seem to have switched.
  • 0

#20 Phantom107

Phantom107

    Graphics Enthusiast

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

Posted 27 January 2011 - 04:22 PM

What the...?!

Hey, what's the fuss about? Begin and end should stay. I, for one, use it and would like to keep using it.

Just because you don't use it doesn't mean noone is.
  • 0

#21 TheMagicNumber

TheMagicNumber

    GMC Member

  • GMC Member
  • 5247 posts
  • Version:Unknown

Posted 27 January 2011 - 04:28 PM

I think these should be removed:
- Mplay
- Pascal syntax
- "Treat uninitialized variables as 0"

I'm sure you're going to remove mplay, so don't use functions similar to 39DLL, improve on them. 39DLL is garbage.

By the way, stop getting off topic. This is what should be removed, not what you want. Stop asking for compiling, threading, and OpenGL.
  • 5

#22 thatshelby

thatshelby

    GMC Member

  • GMC Member
  • 3823 posts
  • Version:GM8

Posted 27 January 2011 - 04:29 PM

Forgot about that. Remove 'Treat uninitialized variables as 0'. It causes more harm than good.
  • 1

#23 FredFredrickson

FredFredrickson

    Artist

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

Posted 27 January 2011 - 04:35 PM

Another vote here for removing mplay. The idea behind the implementation of mplay was a decent one, but it just never played out the way it should have because its usefulness was stymied by its attempt at being simple.

So I'd definitely be in favor of trimming out mplay, especially if it meant replacing it with a built-in version of something a lot more robust; something along the lines of 39dll, for example.
  • 0

#24 Nocturne

Nocturne

    Nocturne Games

  • Administrators
  • 22230 posts
  • Version:GM:Studio

Posted 27 January 2011 - 04:38 PM

Okay, my turn to list things...

  • mplay. Been said in multiple posts why!
  • Game information. Ugly and only really useful for examples... An integrated info screen/room is easy to program and looks much better.
  • Horrible built in global variables like "health" and "score". Just as easy to make your own and less confusing to newer users...
  • Triggers. I just don´t really see what they offer the user...
  • Preload on sounds... modern pc´s really don´t need it. And while we are at it, the 3D sound functions are crap too and i don´t think anyone actually uses them (although I´m probably wrong!)
  • Solid in the objects properties. I know this may not be liked by some people, but is it really that hard to program "x=xprevious" into a collision event? And it seems to cause more problems than it solves from my experience on the novice forums...
  • Treat uninitialised variables as 0. The worst sin to ever have befallen mankind... Only good for maskin your own poor programming.
I think that´s about it for me...

Edited by Mark13673, 27 January 2011 - 04:48 PM.

  • 0

#25 paul23

paul23

    GMC Member

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

Posted 27 January 2011 - 04:39 PM

hmm though one for me...

What I'd like is if all "standard" variables are gone from objects (and only enabled (in groups) when asked). But that's more of a feature (so we can actually make structures like linked lists without a huge performance hickup).


But on a more realistic note: mplay is always a troublesome thing, I personally haven't delved too deep in it. But given the simple fact people actually recommend NOT to use it should be a good indication it's a bad feature!


@mark:
For number 6, there's a good reason for using it though. You have the functions "move_outside" (or move_bounce).. However it would move an object outside all other objects.. Now to move outside a specific object, you simply set solid to true and then use "move_outside_solid". - So if it was to be removed, consider the functionality of this function!

Edited by paul23, 27 January 2011 - 04:43 PM.

  • 0

#26 gnysek

gnysek

    GMC Member

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

Posted 27 January 2011 - 04:40 PM

I'm using "then" in code... but begin and end can be removed, same as :=. GML is not a Pascal.
  • 0

#27 Recreate

Recreate

    Furry

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

Posted 27 January 2011 - 04:43 PM

I think these should be removed:
- Mplay
- Pascal syntax
- "Treat uninitialized variables as 0"

I'm inclined to agree with this.
  • 0

#28 kburkhart84

kburkhart84

    Firehammer Games

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

Posted 27 January 2011 - 04:46 PM

Forgot about that. Remove 'Treat uninitialized variables as 0'. It causes more harm than good.


This is my biggest thing that should be removed.

I would second the removal of Beginner/Advanced mode.

I have never used GM's mplay, but if it is as bad as it sounds, then it is also probably a waste of space.

Most of the other suggestions should not be removed. Just because you don't use them doesn't mean no one else does. Just like the first poll with external editors, most features don't get in the way if you don't use them. I myself love timelines. I haven't used triggers but I'm sure some people do.
  • 0

#29 Nocturne

Nocturne

    Nocturne Games

  • Administrators
  • 22230 posts
  • Version:GM:Studio

Posted 27 January 2011 - 04:49 PM

@mark:
For number 6, there's a good reason for using it though. You have the functions "move_outside" (or move_bounce).. However it would move an object outside all other objects.. Now to move outside a specific object, you simply set solid to true and then use "move_outside_solid". - So if it was to be removed, consider the functionality of this function!


Could be replaced with "move_outside_object()"?
  • 0

#30 GStick

GStick

    All Secrets Exposed

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

Posted 27 January 2011 - 04:50 PM

Definitely mplay and Game Information. Even for examples, Game Information can be replaced with rooms or the "Info" tab in Global Game Settings. I'm also not a friend of many of the built-in global variables like "score" and "health", although it's just as easy to ignore their existence and use your own, like "playerHealth" or whatever.

There's more things I would like changed than I would like removed, I think. I'm not sure I can come up with much else. ^_^
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users