4383c3 No.28186
Do any of you guys use debug modes in your games? Do they help in development or are they just a waste of time?
____________________________
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28190
There are all kinds of debugging options such as a debug menu like you've suggested. One approach to debugging is to follow along the lines of Quake and put in a console that allows you to input commands and view the system status. Only in one instance (my only first person shooter) that I felt this approach was best. Sometimes a debug/cheat menu is all that's needed to test your game. Another approach is a "physics shadow" which will show the immediate effects of the action you will take e.g. choose the angle and strength of a missile shot and a shadow will draw out the path the missile will take.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28200
>>28190
Yeah this anon has the right idea
a console is easily the best debug tool since it can be easily disabled when you ship the product (most modern game engines have a console you just can't use it), used on demand (since debug modes in games like on the N64 usually required putting it into the build or restarting the game with a specific button combo), and can on the fly toggle things like what texture filtering you're using to turning off the AI and just walking around the levels. And in Quake based engines you could also use the console to begin recording a demo for when you wanna get playtesters to show you something.
I always get giddy whenever any game has a console and there's a laundry list of various commands you can use to toggle things.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28207
I made a console. Was a REAL pain in the ass because I bought into the "no global variables ever" meme, until I valve, unreal, and pretty much everyone did theirs with globals.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28208
>>28190
>>28200
I'll take a debug console into consideration, but are there any 2D games that use these. I only ever see debug consoles in FPS games and games using FPS engines.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28209
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28211
>>28207
Learn about the singleton pattern
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28288
>>28211
singletons are fucking stupid and accomplish nothing other than obscure what they try to avoid.
use a namespace or struct to encapsulate global variables.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28304
>>28288
The purpose of OO is abstracting (obscuring) the program architecture into self-contained objects. Singleton objects are a proper OO pattern for implementing a kind of global configuration and global game state for a game written in the OO style.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28309
What about debug rooms (debug menus set up like in-game areas) like pic related? Are they useful outside of RPGs?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28310
>>28309
There's a technique where you develop a level that showcases every feature that is available in the game. I can't remember what this technique is called.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28311
>>28200
>disabl[ing]
This is the fucking worst. Never do this. All you're doing is taking functionality out of your end product - you're not even doing something like locking it behind a paywall; you're just taking it out and never, ever letting anyone have it just to spite them.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28314
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28328
>>28314
That's it. I learned this term from reading about MGS3 but I don't remember which video had footage of the MGS3 vertical slice level.
http://www.amara.org/en/videos/g6Zd2jAZA5TL/en/720939/
http://www.whatgamesare.com/vertical-slice.html
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28350
>>28211
A singleton is a global variable.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28351
>>28350
That's right. That's what makes the singleton pattern the perfect abstraction to collect the global game configuration.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28353
>>28351
So, everyone who buys into the no globals ever meme should also buy into the no singletons ever meme. The singleton is just an OOP bullshit term for a global variable.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28354
>>28353
The idea about global variables is that we want to minimize the use of them because they can make programming logic harder to reason through. In the case of global configuration of settings of a program, this is a sensible use case for implementing global variables. The only other reason I'd use global variables are for global constants.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28368
>>28350
But you don't actually have to carry around a reference to it.
You can use your SingletonFactoryFactory to get it for you, or create it if it doesn't exist yet.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28379
>>28186
Look, if you're the programmer and the scenario designer and most everybody, and your game is tightly coupled to its engine: no. There is no point in programming in a debugger if you are just going to debug issues by running the game in a program debugger. The debugger is important when you want a clean separation between your engine and your game content (which is something that you definitely want if other people are using the engine to produce content: they need a mode to determine if the problem is their content or the engine).
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28410
>>28311
>This is the fucking worst. Never do this. All you're doing is taking functionality out of your end product - you're not even doing something like locking it behind a paywall; you're just taking it out and never, ever letting anyone have it just to spite them.
The main reason I brought up disabling the console is because it's the norm with vidya today to completely disable the console when the game releases.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28411
>>28410
But can't you re-enable it my editing some config file?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28422
>>28410
Do you intend to follow every other horrible, brainless trend of modern 'AAA' videogame design as well?
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.
4383c3 No.28428
>>28410
>other people do it so I will too
I will never understand why people think this way. Only do it if you personally believe it's a good idea, have reasons to back that idea up, and there isn't a better idea. This applies to everything.
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.