GameDev Studio V0.0.3

Posted by brett14 on March 13, 2012, 11:55 p.m.

Gamemaker is a really cool application, but runs on a closed source engine, and is not the fastest thing around. That got me thinking, why not make my own gamemaker? That's exactly what I went ahead and did, and almost a year later I have GameDev Studio.

Website link: http://gamedevstudio.yolasite.com/ - Please report whether or not you can get any of the examples to compile and run. If you encounter problems compiling, firstly make sure you have MinGW installed (correctly), and the path to g++ is correct. If more errors are encountered, REPORT THEM!

GameDev Studio has an IDE very similar to gamemakers, built fully with C++. It runs off an open source engine, also made with C++. It is completely free to use, please go and check it out! (Currently Windows only. Linux/Mac is coming soon). It probably contain bugs, please report any that you encounter. For future reference I abreviate it as GDS.

IDE Features:

-An Image Viewer/Basic Editor (WIP)

-Font Loader (similar to gamemakers)

-Script Editor (syntax highlighting)

-Shader Editor (through HLSL on windows, GLSL on other OS's)

-Object Editor (Event based, very similar to gamemakers)

-Room Editor

-Global Variables

-Sprite Editor (Animated Images)

-Bunch of other stuff

Engine Features:

-Collisions

-Fast Hardware Accelerated Graphics, powered through the open source engine: Irrlicht.

-Particle Systems

-Surfaces

-Pixel and Vertex Shaders

-Completely open source

-A whole bunch of other things

I've been working on this project for just under a year, and it has been an adventure :P . I've learned lots, and plan to keep on working on it. Comments/Suggestions/Bug Reports? Please note, that I was rushed to get it released because I wanted to get it online, so it is missing features/functions that you may expect it to contain, and many parts of it are not implemented yet but are there (ie: 3D rooms).

Comments

Ferret 13 years, 10 months ago

Interesting…*bump*

theattacka 13 years, 10 months ago

Haha yeah but i love using .DLL in my games anyhow so i dont need a new program ^_^

JuurianChi 13 years, 10 months ago

I tried it out and I think it's really cool, can't wait to see what else you do.

Quote:
Haha yeah but i love using .DLL in my games anyhow so i dont need a new program ^_^

Castypher 13 years, 10 months ago

I remember you. I think you made some 3D level editing engine at the GMC, yeah? I still get topic replies once in a while since I can't be bothered to unsubscribe. But good luck with this one.

Toast 13 years, 10 months ago

@Kilin 3d level editing was the first thing I noticed about this GameDev hah

Looks like this is everything yoyo should have done. So keep working on that.

twisterghost 13 years, 10 months ago

Haven't tried it, but if the screenshots hold true to how it seems, then this is seriously impressive.

Although, isn't this essentially what Enigma was supposed to be? Is that still a thing? Either way, I'll take a crack at this later today.

Iasper 13 years, 10 months ago

This looks extremely nice already. Support for other programming languages would be awesome too because I can't script anything that's not GML except basic LUA. Anyway, good job. Keep it up :)

brett14 13 years, 10 months ago

Quote:
lthough, isn't this essentially what Enigma was supposed to be?
It is not Enigma. Enigma translates GML to C++ then compiles it. This uses pure C++. Also, I was interested in enigma, but the progress of it seems so slow. I created this whole thing in under a year by myself.

Quote:
Can you summarize the license? I mean…. what is expected from us to do when we use it? If anything…. :)
Summarization: Free for use of any sort. Can be used in commercial or free games. Only requirement is that changes to the engine are made open source.

Quote:
3d level editing was the first thing I noticed about this GameDev hah
It's a WIP. Not implemented yet. But yes, I have developed several 3D level editors for gamemaker in the past. There is currently no 3D support, but since it uses Irrlicht as a graphics engine it'll be incredibly easy for me to implement.

@SpectreNectar

Those look like linker errors. Try recompiling the engine.

Quote:
Yeah so you just open the .txt and type in that path…. doing it inside the program apparently doesn't work.
I'll have to look into this. Seemed to work fine on my computer.

Quote:
Haha yeah but i love using .DLL in my games anyhow so i dont need a new program ^_^
… GDS uses C++ as compared to GML. All internal logic that you program is compiled with the GNU GCC compiler. Also the engine is open source.

Quote:
You should make a mailing list or something for those of us who's interested in following this ^^
Will consider that. Still an every WIP, and has errors. I need to make it automatically recompile the engine on the first run, so that people don't get all of these linker errors :/…

Quote:
Support for other programming languages would be awesome
Scripting is implemented, but does nothing (no way of calling them). I was going to add a LUA runner, so you can mix C++ with LUA. The engines function names very closely mimic GML, with some slight differences. It's all documented.

Quote:
You also ought to buy a domain… or at least use other mirrors than host-a-net etc. I despise that kind of commercial sites.
Suggestions? I don't have any money to pay, as this is a free project earning me nothing other than donations.

sirxemic 13 years, 10 months ago

The first moment I read this I was really enthusiastic about this because it takes the ideas of GM to a next level, but then I started noticing that besides some extra, useful features and of course, speed (which are of course, great), the horrible GM conventions/styles in this tool. The naming conventions are the same, the functions are the same, and the way you'd code everything is the same, except this time you need to be explicit about variable types (thank god :)).

Furthermore, it doesn't enforce real OO programming, just like GM, and is anything but useful to start using C++, since you suppress the power of C++ by copying GM (and okay, extending on it a bit).

Note that I am not saying this is just as worse as GM, it's just that I am really disappointed that you kept GM's horrible stuff and extended to it, instead of making everything better.

/end rant

So yeah, for example:

- why are object types pointers? It doesn't make sense.

- you could consider making the position of the objects a union of a vector and x,y and z coordinates (EDIT: just realized that doesn't make sense) and add support for vector operations. Would turn things like draw_line(x+lengthdir_x(32,direction),y+lengthdir_y(32,direction),mouse_x,mouse_y); into draw_line(position+vector_from_angle(direction)*32,mouse_pos);.

- instance_nearest(float x, float y, oid notobj= -1); has a parameter type oid, which is an object ID. What happened to object pointers?

- create_instance? seriously? What happened to C++'s new and delete operators? I can see you did this because you wanted to mimick GM, but it would have been so much better if you stepped away from GM's conventions and enforce 'real' C++ stuff onto the user.

- TIP YOU SHOULD JUST DO: don't use compiled project files. Make it possible to have a project directory where all images, sounds etc are stored, and keep everything plain text. Makes version control possible :) YOU SHOULD WANT VERSION CONTROL :)

- I probably shouldn't be commenting on the GUI since this is only v0.0.2, but that needs works as well, but I am sure you know that yourself as well. The icons are crappy and using buttons where drop-down boxes make more sense is just weird.

- I've taken a look at the engine and noticed that collision detection is just brute-forcing all objects. I assume this is only temporarily because it's in such an early stage, but you should implement more efficient collision checking soon :)

Anyhow, these were my complaints. It would be great if you would seriously consider them. I will be following this :)

Oh and one question - is the name final? I would have taken something creative, but you are not me so yah :P

firestormx 13 years, 10 months ago

Quote:
Suggestions? I don't have any money to pay, as this is a free project earning me nothing other than donations.
I could give you a subdomain on 64D for free if you wanted (maybe integrate this program into the site to try promote it more, once there's a bit more to it).

I haven't been able to try this myself (I'm sitting in a hotel room right now), but it looks good. =)