In 2009 all you had to do was download an IDE/Compiler like BlitzMax or DevC++, type in your code, hit build and run, and there you go, you have an application running in a window. You could then load and draw bitmaps and so on. You could then implement a simple scripting engine by simply including a Lua library and exporting your functions.
Now there's nothing like that anymore. You download Godot and you're greeted with a window with not a single place where you can type in your functions. How do I draw a white square? I don't know. It won't let me.
Ok, so I try going with MonoGame, since it's an implementation of XNA, which I tried one time and found to be a similar experience to what I was used to. First you need to install Mono. Ok. But then you need to install GTK, and then install the "dependencies" and build the IDE from source. What the fucking hell?
I don't know if programmers spent way too much time trying to make things more "stream lined", but they managed to make it impossible to get anything done. Ironically, programming embedded devices with microcontrollers is easier than programming a simple game because all you need to do is write to a few registers, hit build and upload the rom image to your chip. It's so simple. Why can't regular computer programming be like that? All you have today are a bunch of over-bloated frameworks on top of frameworks.
>Do people think this makes things any easier? >do people think No they don't.
Logan Moore
The difficult part was making the game itself, not getting the fucking compiler to produce anything. You programmed your own tools and it just worked. Now I can't even program a fucking tile map editor because there's no window to type the code in. What the hell?
Xavier Reyes
>Using game engines >Being a winmemer Grow up, kid.
Henry Diaz
>Using windows There's your problem.
Eli Ortiz
>programmed your own tools and it just worked which took more time than it would for you to take your head out of your ass and figure out how to get started with an existing framework
Evan Lopez
you can still download a compiler and do everything from scratch what the fuck are you talking about?
Brandon Hall
You can still do exactly that. Not like anyone removed DirectX or Xaudio2.
Michael Johnson
Install Gentoo
Christopher Gomez
>nodev rant: the post
Xavier Johnson
download libtcod and make a roguelike No gay gussied up fisher price gamemaker programs required.
Colton Scott
>just learn the framework, lol
They try to do so much stuff that it ends up being impossible to do exactly what you want to do without ending up with a ton of bloat. How come a simple 2d mario-like game ends up being more than 100mb?
But not anything modern. Before this clusterfuck of frameworks appeared you could easily program something that could be compiled for both Linux and Windows with the proper abstraction layers. BlitzMax could compile the same code for Windows, Linux and MacOS and it was dead simple. it was garbage collected, object oriented, you could have modules written in C/C++. It was orders of magnitude faster than Game Maker, which was popular at its time.
Leo Gonzalez
>too many features for my pong clone, lol ah so you're a Jow Forums "coder" and not an engineer
Easton Rodriguez
>uses a game engine >complains about streamlining Just make a game from scratch then autist.
Connor Gonzalez
>using premade game """frameworks""" >not just iteratively building your own tech you're not gonna make it
Tyler Cruz
just stop everything you want to do is just as simple as it was back then, it's even simpler now because engines have a ton of features that you can use right away, but you complain instead of looking for new tools and learning them
Andrew Johnson
Well... why would I need "dependencies" for a Pong clone, in first place?
With what? There's nothing without a million dependencies that I can use that is not 10 years old by now
>why would I need "dependencies" for a Pong clone, in first place? >window drawing and graphics are *magic*
Robert Lopez
>But not anything modern GoldSrc/Source pipelines have always been a clusterfuck, I've heard similar things about Unreal Engine games. "Big" engines were always like that.
Ethan Hall
>With what? OpenGL / Vulkan. Plus SDL if you don't want to waste time on configuring input handling.
Carson James
While your post is quite retarded I think there's a real point beneath all the drivel. I myself have serious issues into getting used to all these development platforms because it would take me quite a while to 100% understand the flow of the program. What order do these things happen, what affects what and most of these platforms require you to do some dirty hacks around some simple things. It's just so much easier to write code and know EXACTLY what is happening and where the problems might lie. Now, everything I said above is also pretty irrelevant from the viewpoint of being productive. There's just no real point in coding stuff from scratch (even if you use libraries for graphics and input and so on) because it's just too slow, the tools these days are too good to pass up. That's just the reality, get used to it. I know it took me a while
Jordan King
>that username this has to be bait
Carter Campbell
write games for consoles in assembly thats THE solution
Camden Mitchell
Because most code nowadays is written by incompetent freetard codemonkeys I've ended up writing my own UI framework and basic game engine
Liam Roberts
Xamarin has been bought by Microsoft It's that way on purpose and they additionally made MonoDevelop much worse than it was
Brandon Adams
is it open source?
Tyler Butler
>it's even simpler now because engines have a ton of features that you can use right away It's less simple now precisely because of the new "features". I don't want sprites with arbitrary rotation and scaling.
Why isn't there a modern day solution that isn't an arbitrary clusterfuck of bloated frameworks?
Yes, but it's not public since I haven't registered the domain name yet
Cooper Brooks
>window drawing and graphics are *magic*
In the good old days you could just use POKE's to write directly to video ram, or declare a pointer to the right address and do the same thing. You could create an interrupt handler to read key down/up events and that was basically all the hard work. Even in the days of TurboC and TurboPascal it was easier to make things than it is today.
And what do I use for compiler/IDE? Not some old 32 bit IDE like DevC++, I presume
Jayden Kelly
fucking retard noob autist you dont know shit graphics has always been retarded on PC, all the way back in DOS era as well. If you want control for your autist pong game you write a software renderer in C or assembly with syscalls for the final blitting.
Nathaniel Long
What's your problem with SDL?
Jayden Morales
>Not using C >Not using SDL2 >Not using VSCode >Not using C# targeting .NET Core to manage cross-platform builds programmatically >Not using jenkins to automate build and testing concerns >Not having a large enough team to manage the project >Not having enough skill to even get started
Its a fuckload of work either way, but the above approach is much more flexible, gratifying and "out of your way" if you have the balls to attack it. You really need to go to the bottom of the abstraction tree to make it the way you want. SDL2 is merely a scaffold of functionality to get you started quickly on network/input/audio/graphics. Consider it a gift from Valve. Eventually, you could replace this library with your own functionality and wind up with a 100% custom, pure C game.
Charles Wilson
I lost interest in programming around 2009 to 2010, so I'm out of the loop but not a complete retard
For games particularly, things are easier now than they used to be I think. The problem that annoys me is that you still can't easily make mechanics that games had in 1990 even with these new engines - instead you get some buggy half-working mess.
I was messing about In the newest godot, and I got the Rondo of Blood style of jumping working decently enough. However, the new sync to physics just freezes the object using it totally so I can't enable it. It isn't like I am doing anything fancy, I am just using move_and_slide. So, moving platforms are still fucky. Okay, what about one-way/through platforms? They don't work well. They cause collisions at bad times, and the corners are all sorts of broken and cause problems like sinking into the ground. Trying to do these features manually is a huge pain and there always ends up being an issue for me at least. Lots of headaches with comparing bounding box edges or trying to use raycasts.
Jeremiah Harris
>And what do I use for compiler/IDE? Holy fuck I'm not going to spoonfeed you, if you have to ask questions like that don't even bother.
I see. Maybe you should this dream of yours and return to flipping burgers or whatever you can do with that brain of yours
Hudson Collins
just use SFML and C/C++/Java you dipshit dont be lazy, build it yourself like you talked about in the start of the post
Jace Walker
>some stackoverflow question from a retard who forgot to free something That's like saying C is bloated because you're too retarded to free the memory you allocated.
To elaborate since OP seems entirely retarded -The best IDE is Vim, but since you are a winbaby you should just use Sublime Text -You use a compiler to compile the C/C++/Java code during development stages, then you build an .exe when finished with the game and want to ship it out (I suggest TinyC Compiler or GCC running through Cygwin) -SFML isnt the only graphics library, you can also use OpenGL and Vulkan (look into the pros and cons of all of them and pick your poison, just keep in mind that OpenGL is supported across the most platforms) -If you dont know which language you want to use (given the graphics library you choose supports it), DOOM (original 1993) was written in C (so pick it if you want to use a language that has been around for long enough to be extremely expansive), DOOM (new 2016) was written in C++ (and most of the current triple A games too, so pick C++ if you want the most support), and Minecraft was written in Java (so pick Java if you like simplicity and dont mind verbosity)
Jaxson Hughes
>Godot Yeah no shit. The user experience is terrible and everything is confusing and unorganized. Use game maker like the rest of "I wanna make games where do I start" kids.
Evan Allen
Qt is gay use wxWidgets
Levi Russell
Why? Qt is easier to dev for/on more platforms like Wangblows.
Alexander Evans
Do I need to compile anything from source? Because I have very little desire to do so
I like it more when the program feels like part of the OS but i guess everyone has his tastes
Chase Baker
>I learned X >WHY ISN'T EVERYTHING LIKE X
Matthew Gray
I think we need to teach people how to build better abstractions that aren't just leveraging some magic wand approach like garbage collection. Being able to properly black-box difficult functionality (aka shit you forget to free memory on) and re-use it trivially everywhere is the absolute holy grail when it comes to this stuff. Then, you repeat the fucking process again. And again. And, before you know it, you are calling things like Scene_Finalize() everywhere, and you don't have to constantly think about how that one method invocation results in 5000 lines of C being called. Code that took months to perfect is now being used in hundreds of discrete points in your codebase, leveraging your human effort by orders of magnitude. Getting this right can make you a billionaire, getting it wrong (aka leaky abstractions) can make you a plate of shit spaghetti code.
Jaxson Myers
It's literally never been easier to make a game.
Josiah Long
no
lrn2google
Nathaniel Phillips
Google will return nothing but a bunch of frameworks written by people who look like this
Is a good idea to read "The C programming language" then hop to some basic book for C++? I want to try gamedev outside general purpose engines like UE4, Godot and Unity (this one is the one I know well) Also I want to grasp something about enginedev
Aiden Rodriguez
Why are all AAA devs putting delay on inputs on all their games these days? Like the only thing I can think is they wanna get gamers ready for stream box consoles
Ian Wilson
i cant even
Jace Cooper
what are you writing that in? does it compile to exe?
Jacob Lee
Are you talking about delay on consoles like RDR2?
Anthony Jones
Look, user, if you don't want to learn a massive framework, you can still use simple libraries tailored to game development, like SDL or SFML. They're still out there.
Cameron Evans
>And what do I use for compiler/IDE? Compiler: GCC or Clang. IDE: Your favorite text editor.
Kevin Mitchell
>I can't read and/or don't know what tutorials are ok >I think that I should be given control over basic rendering functionality on my system even though I have no idea how that system works, and have no idea about the most basic concepts like shading, especially if that functionality is already readily available ok >I bitch about problems instead of overcoming them because the world doesn't fit my imagined reality, I reject reality and substitute my own. ok >I will complain about a plethora of features available to me even though they make my life easier (try cross compiling for different configurations of hardware, drivers and operating systems and then say the same thing again)
here's the beans, look at WHAT you want to accomplish and not the HOW you want to accomplish it, the moment you step a little bit back and do some design you will instantly be able to do more with these programs. also if you're complaining about learning an IDE being too difficult I think you should look into social studies, they take sub 70 iq people all the time. Literally takes like 2 hours dude what the fuck
>also if you're complaining about learning an IDE being too difficult I think you should look into social studies Not OP, but I personally dislike most IDEs myself because they're overly complex. Do you know what I use instead? A fucking text editor.
This is really nice. I did something like this once. I had a basic graphics engine with some functions that were exported to Lua. I then made a game using it, only once. The source code for the game itself looked like this. It's a decent approach, if you ask me: no framework hell. No dependencies. Nothing.
>no framework hell Very good But in this case you created your own hell all by yourself
Ryder Sullivan
Looks like the Yandere Simulator source code tbqh
Lincoln Jones
Modern opengl is 10x more complicated than older opengl, vulkan is over 100x more complicated than even that. Tools in general have been becoming more and more complex as they target large teams of devs, but there has been fewer and fewer attempts to target small or even lone devs. Note that back in the days, videogame developers were mostly very small teams, even on AAA projects of the day, especially compared to today; hence the shift of focus but also the fact that there is no conflict in acknowledging that it has all become so much more complicated.
Sebastian Lewis
No worse than the typical python "app"
It was so simple I used windows notepad to write it
I used to implement a crude way of "serialization" based on a binary format, which means whenever I changed the map format or anything in the class fields I lost every map/save state. I did that because it would be faster than implementing a text-based parser or whatever
Modern OpenGL is very simple after you've made a few helper classes for VAO/Buffer/FBO/Texture handling If you use OpenGL 4.5 with DSA then some parts are even simpler than the old immediate mode stuff
Basically there is going to be one save-state space for every map or "scene". Entities can have properties that point to other entities and have children/parents (an inventory, for example), and before I write everything to the save file I generate a "flattened" version of the entity tree to generate ID's (they are going to be something like the name of the scene the entity is in + its place in the list), and so I write that down to the save file. Then, when I load the save state, I'll have a list of properties that I'll have to dereference, and then I pick the correct entity from a flat entity dictionary consisting of the entity and its ID.
So it's a regular text file, but it will have one-time-pad encryption to prevent people from editing it.
It's because games are becoming much more complicated >programming embedded devices with microcontrollers is easier than programming a simple game Nothing is stopping you from writing your game in SDL/OpenGL/whatever. Old and simple tools weren't purged from existence, you can still use them.
Nathaniel Watson
t. never used opengl
Benjamin Sanchez
Yes but won't the operating systems stop running them altogether? Like, if I generate a game that is a win32 application... how would I distribute it on Steam, for example?
Jayden Nelson
You have no clue how otp works, retard.
Oliver Brooks
otp is literally the easiest encryption scheme in the world retard
Adam Gomez
>In 2009 all you had to do was download an IDE/Compiler like BlitzMax or DevC++, type in your code, hit build and run, and there you go, you have an application running in a window. You could then load and draw bitmaps and so on. You could then implement a simple scripting engine by simply including a Lua library and exporting your functions. You know those programs didn't just disappear. You could do exactly the same thing with them today if you wanted.
Anthony Cooper
And yet you still manage to be so inbred you don't even get it.
Justin Smith
That's why I make my own engine and built shit from scratch. Takes longer but it's doable
Jason King
>Yes but won't the operating systems stop running them altogether? Use an older operating system to play them. >Like, if I generate a game that is a win32 application... how would I distribute it on Steam, for example? Kill yourself.
Bentley Thompson
Just xor every character with a character inside a key. It works for encrypting and for decrypting. I'll make a demo right now.
Josiah Phillips
>So it's a regular text file, but it will have one-time-pad encryption to prevent people from editing it. lol where you gonna hide the key?
John Walker
In the executable. Yes you can find it by looking into the binary in hex format, but it's not a nuclear missile launch code, it's just to stop most people from editing the save game file
Andrew Nguyen
oh no user called me inbred i better kill myself cant deal with this level of banter
Gabriel Martinez
Here's the demo
If I remember it right, there's no statistical way to brute force an OTP encrypted text.
Also, something really cool is that I can generate a PNG file with a screenshot and write the savestate after the PNG data, since it ignores everything after the end. That way people can share savestates and they'll know exactly what is going on since it's just a picture
>t. never used opengl Actually I've written an UI framework and a small engine in OpenGL and I've also made my own OpenGL bindings including said helper classes In fact I'm using them right now