• Advertisement

# "built-in loop" question

This topic is 1585 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

## Recommended Posts

The monitor keeps the light on in its pixel crystals constantly, and updates their colors in frequent intervals of for example 60 times per second.
The monitor chooses the colors to update to from a signal that comes from the computer through the cable.
The signal is generated from the values of some memory in the graphics card.
If a color value is written to that memory it stays there until over-written or the power is turned off, so on the software side it's more that a pixel stays the same on the screen until it is actively changed in memory by a running program.
Then in actual actuality it's probably somewhat different again and depends on many things but I don't even know.

This is essentially how it worked in DOS - the program would write to memory at 0xA0000 (typically colored pixels) or 0xB8000 (typically ASCII characters). The video hardware (or BIOS, I forgot which) would constantly read from that portion of RAM to update the video card's own RAM, which it then used to generate the video signal. In DOS when your program exited, RAM was not necessarily cleared or anything, so whatever you put in video memory would stay there until the next program erased it.

Scrolling the screen in DOS was simple - you'd just loop over the entire screen, copying screenMemory = screenMemory[i+width]. On very old computers, copying large blocks of memory was slow and was the reason why commands like 'dir' would print filenames quickly until the screen filled up, then went slowly as it had to scroll down for each new line it wanted to print.

In modern operating systems, the low level concept is mostly the same - the OS just adds more intermediate steps that it manages for you. Things like allowing multiple processes to render to their own separate visual area ("windows") without constantly fighting over video RAM. That, and things are thousands of times faster.

The reason why console programs (or at least MSVC programs) keep displaying text after they "exit" is because the compiler/linker are set up to add a different entry point to your program. The "main" in your program's source code is not ACTUALLY used as the real entry point. When you compile and link, MSVC adds its own entry point function which does a bunch of setup, calls YOUR main function, then does some cleanup after your main function returns.

The extra stuff MSVC does includes figuring out which console window it should direct its output to: An existing command prompt if you launched the program from the command line, or if none exists, it creates a new console window to output to which closes later in the post-main shutdown code. If you build an MSVC program, you can actually step into that extra code in the debugger if you find the setting(s) to enable it. Edited by Nypyren

#### Share this post

##### Share on other sites
Advertisement

The place to start is to learn and gain actual experience and knowledge as a programmer, which (as already mentioned) will usually take a few years before you move from "trial & error" coding to really understanding how and why it works. You can argue "you don't need to understand how an engine works to drive a car", but you're not aiming at driving (as a user, who doesn't care how a program works), you're aiming at building. Using pre-made parts doesn't free you from the requirement of understanding how they work together.

There is nothing wrong with making "pretend" tutorials, where you try to clearly explain how things work. As long as you DO try to explain it and research it until you have a good understanding of it as well (rather than just parroting what you read online). Yet, those tutorials should probably never leave your local hard drive, because I can guarantee you that one or two years from now, you will look at them and feel embarrassed about the kind of nonsense you made up to explain stuff (after all, you gave the best example yourself... that other guy is incomplete and superficial at best and flat out wrong and misleading... not even sure if "at worst" or "on average" is more appropriate).

#### Share this post

##### Share on other sites

I can agree that when you have to teach others, it forces you to actually learn the topic in a much deeper way.

But, at the same time, you should make sure you have an advanced understanding of the material before you start making tutorials.

Edited by cyberpnk

#### Share this post

##### Share on other sites

The place to start is to learn and gain actual experience and knowledge as a programmer, which (as already mentioned) will usually take a few years before you move from "trial & error" coding to really understanding how and why it works. You can argue "you don't need to understand how an engine works to drive a car", but you're not aiming at driving (as a user, who doesn't care how a program works), you're aiming at building. Using pre-made parts doesn't free you from the requirement of understanding how they work together.

There is nothing wrong with making "pretend" tutorials, where you try to clearly explain how things work. As long as you DO try to explain it and research it until you have a good understanding of it as well (rather than just parroting what you read online). Yet, those tutorials should probably never leave your local hard drive, because I can guarantee you that one or two years from now, you will look at them and feel embarrassed about the kind of nonsense you made up to explain stuff (after all, you gave the best example yourself... that other guy is incomplete and superficial at best and flat out wrong and misleading... not even sure if "at worst" or "on average" is more appropriate).

But there's a rather vast difference between trying to explain something that you don't actually know (and make up stuff about it), and explaining something that you actually do understand and have already learned everything about (plus it can be verified by professionals). That is, everything that you're saying about, not necessarily absolutely everything that can possibly be said about it regardless of context.

I appreciate your concern guys. But I think you're getting a bit fixated now and making up some nonsense scenario where I somehow talk about something that isn't true, or that the topic itself is so high-level that I risk saying something that's wrong because I don't cover all my bases. Just because there exist Youtubers who do those things, doesn't mean that every single layman Youtuber who ever uploads a video, is automatically going to do the same. Whatever I'd like to share with people is far more specific than that. I'm not gonna tell someone anything that I "think" is true. Whenever I share information with other people, I want to focus on what "IS" true, regardless of what I personally feel about it.

You can't just keep all knowledge to yourself just because you're irrationally afraid of potentially being wrong. Even a doctorate could potentially be wrong about something, and I know a number of doctorates on Youtube who embarass themselves on an everyday basis. These people usually turn their comments and ratings off, because the get absolutely obliterated by people who's figured their nonsense out. But most people learn new stuff and revise themselves as long as they live. Heck even the computer industry is constantly getting updated with new resources and ways to do things more effectively - a computer expert from 10 years ago will become a mere layman if he doesn't keep himself updated with the present day. Like now, we got mobile technology up the wazoo, compared to just a few years ago. Knowledge is dynamic and you guys need to trust viewers to have the ability to figure things out, as well. You're not teaching your dog commands or brainwashing people to do as you say, just because you say so. You're teaching averagely up to highly intelligent people information that they subsequently put into practice and have verified. If they end up confused, they will figure out whatever bullshit they were told and flame you for it.

Sometimes though, information isn't as complicated as you guys make it out to be. It completely depends on what specific topic you're actually talking about, and in what context you're talking about it. If someone asks me what the difference between an integer and a double is, then I'm not going to be afraid to tell him that integers are whole numbers and doubles have decimals, even if I don't have 10 years worth of programming behind me. Integers aren't that hard to figure out. And if there's more to know about them than just the fact that they're whole numbers (which I'm perfectly aware that there is, because sometimes it's better to use a byte or a long), then I can always point that caveat to the person and refer to someone who can go more into detail. Thankfully, Wikipedia and other internet resources are fairly accurate and constantly revised by actual professionals, so already they can learn a lot about the integer that they didn't already know. Good Elementary and High School teachers do this all the time - they refer you to someone higher up in the system. But it's not always necessary to teach newcomers every single esoteric truth about integers, because all they need to know is that they are indeed whole numbers and that's not going to change (unless the word integer is officially redefined some day).

I think I need to cool off a couple of day away from GameDev, you guys sound more and more like a cult and I know that ain't true. GameDev is the most professional programming resource that I know about. But I keep wondering if you're even reading my replies and not just generalizing me like a broken record.

Edited by Malabyte

#### Share this post

##### Share on other sites
Maybe you should try to see it from a different point of view than your own. From the professionals (or experienced hobbiest) point of view, every single day you have to deal with someone who has been spoiled by bad tutorial or other 'learning material'. In the best case this costs just a bit of time until the poor soul sees that (s)he has wasted a lot of time working under false premises.
In the worst case you get someone with the unfortunate combination of arrogance and stupidity. And someone like that can sour a whole forum for days or weeks until they finally go away or get hit by the ban hammer.

During our learning phase, we (nearly) all seem to go through some phase where we believe we would be a good teacher. Luckily, when I went through that phase there was no real Internet to speak of and the damage I could do was extremely limited.

When given the choice between "not enough tutorials" and "one more bad tutorial" the choice should clearly be "not enough tutorials".

Note also that there is a big difference between trying to help someone with a specific question they are having (like answering someone's question on a forum) and actively setting out to teach (like posting a set of tutorials somewhere). Even then, thinking a bit before posting is useful advise. If the place is any good, plainly wrong advise will quickly land you in trouble.

#### Share this post

##### Share on other sites

Integers aren't that hard to figure out.

Kind of off topic, but to be honest, since you were talking about Java, Integers can be kind of hard to figure out. Try the following:


public class Main {
public static void main(String[] args) {
Integer a = new Integer(126);
Integer b = new Integer(126);
a += 1;
b += 1;
if (a == b) {
System.out.println("equal");
} else {
System.out.println("not equal");
}
a += 1;
b += 1;
if (a == b) {
System.out.println("equal");
} else {
System.out.println("not equal");
}
}
}



Run it and try to come up with an explanation.

I don't think this website turns in anything closely related to a cult; to me the thread looks like some good people trying to save you (and possible your future viewers) from a bad time.

#### Share this post

##### Share on other sites

Yeah, I dont think those crazy youtube commenters will stop cursing you for telling them "oh interger that means its just all whole numbers" after they try to put some large number in their variable and it doesn't work, because actually they just get a subset that forms a subring modulo n of the ring over all integer numbers (I hope that was the correct wording in English), where n depends on how many bits are actually inside that variable type.

I'd never dare making a tutorial, when I know there are subtle things I dont know.

#### Share this post

##### Share on other sites

Maybe you should try to see it from a different point of view than your own. From the professionals (or experienced hobbiest) point of view, every single day you have to deal with someone who has been spoiled by bad tutorial or other 'learning material'.

Yeah well clearly there must be an astronomic amount of people out there who's been spoiled by bad tutorials, judging from the replies in this thread. Anyways, peace out. I take as much feedback to heart as I can, but right now I think my brain has short-circuited so I need to process the information I've gotten thus far.

Yeah, I dont think those crazy youtube commenters will stop cursing you for telling them "oh interger that means its just all whole numbers" after they try to put some large number in their variable and it doesn't work, because actually they just get a subset that forms a subring modulo n of the ring over all integer numbers (I hope that was the correct wording in English), where n depends on how many bits are actually inside that variable type.

I never said that integers were "just" whole numbers. But if someone asks about the difference between an integer and a double, then I'm pretty sure it's enough to say that "among other things, integers are whole numbers and doubles are decimal numbers". If they want to learn more, then I don't mind going on Wikipedia and other internet sources, or talk about the range of values that integers go between or whatever, while still maintaining that there could possibly be deeper things about integers that one needs to look out for. But if such deeper things are completely irrelevant to the problem at hand (because the problem is too simple for it to be relevant), then they don't need to hear it. An elementary school student doesn't need to know about advanced vectors and matrices in order to understand conclusively and definitively that 1 + 1 = 2.

And if some crazy youtuber wants to argue for the sake of argument and chastise someone like me because he was too lazy to test things out and actually think about the stuff he's taught and not just copy-paste it like some kids do in high school, then that's not something I or any other teacher, amateur or professional, can do much about. At some point, people need to take some personal responsibility for what they're learning, as well. All that we can teach them is scientific literacy and how to be sceptical to things, and then try out stuff without going mental on everyone if things don't turn out exactly like you thought. Not just eat a steak raw because someone told them that "Steak is good". Oh wait, did I forgot to mention that you actually need to cook it as well? ok, my bad. "Cook the damn steak, you idiot... and be sure to wait a couple of minutes so that you don't burn your fingers and mouth". Survival of the Incompetent, ftw. If someone wants to shove their poodles inside their microwave ovens without even asking what that does first, then that's not my fault. I think I was about 8 years old when I learned that microwaves are hazardous to flesh. And I figured that out all on my own, after watching how food got cooked inside it and putting two and two together.

Kind of off topic, but to be honest, since you were talking about Java, Integers can be kind of hard to figure out. Try the following: *snip*

You're taking my statement out of its context. Besides, you're not trying to figure out an integer here, but rather an "Integer" class. Try using int (variable) instead of Integer (object), and it should solve it (at least it did for me). And I never said that the Integer class was a whole number, in fact I don't even know the first thing about the Integer class and I actually learned of its existence just now, because I've needed to use it yet. (And as such, I would never teach anyone about using it, until I knew more.)

There's not just 1 level of abstraction in science. You got everything from concrete definitions and basic math to holistic, philosophical hypothesis that border to the pseudoscientific.

Anyways, peace out. You guys can have the last word.

Edited by Malabyte

#### Share this post

##### Share on other sites

Anyways, peace out. You guys can have the last word.

I take it, this means you are not going to return to this thread. However, I still want to clear something up:

Yes, I did take your statement out of context, that's why I labeled it to be off topic. I also know, that you were not talking about int/Integer in Java but on a higher level of abstraction.

However, I think there still is a valid point in it regarding this thread:

You will actually find pages on the internet that tell you that comparing two objects of the class type Integer using '==' will behave the same as comparing two values of the primitive type 'int' (as opposed to using the class type Double where two objects of that class will never evaluate to equal using the operator). And at first glance (when dealing with small numbers) this is actually true.

I am not saying, that you will spread such false information unchecked, but if you do not understand all (or most of) the little details and quirks, something like this can happen very fast. So, in my opinion, when trying to teach others, the teacher should be way ahead of the students and not just ahead by one page of the text book. And this example wasn't about finding a quick fix (i.e. exchanging Integer with int), but finding an explanation - magic has nothing to do with it.

As a side note: Don't use the Integer class if you have no reason ;-). Using OR-Database mappers like hibernate would be a valid reason, for example.

Edited by brx

#### Share this post

##### Share on other sites

I am not saying, that you will spread such false information unchecked, but if you do not understand all (or most of) the little details and quirks, something like this can happen very fast.

I know.

Edited by Malabyte

#### Share this post

##### Share on other sites

Malabyte, I think you're getting overly defensive here.

First of all, none of us are trying to hoard information. Many of the people on this board (myself included) are professional programmers who freely give up their spare time to help people.

We're not trying to hinder you, just pointing out that it doesn't really make sense to try to teach people concepts you don't fully understand yourself.

You are, of course, free to continue with your plans. I'm just curious as to why you're so eager to jump into doing video tutorials, especially beginner tutorials. There's no shortage of good beginning programming tutorials out there. What do you feel you can add?

Edited by ChaosEngine

#### Share this post

##### Share on other sites

Integers aren't that hard to figure out.

Kind of off topic, but to be honest, since you were talking about Java, Integers can be kind of hard to figure out. Try the following:


public class Main {
public static void main(String[] args) {
Integer a = new Integer(126);
Integer b = new Integer(126);
a += 1;
b += 1;
if (a == b) {
System.out.println("equal");
} else {
System.out.println("not equal");
}
a += 1;
b += 1;
if (a == b) {
System.out.println("equal");
} else {
System.out.println("not equal");
}
}
}



Run it and try to come up with an explanation.

I don't think this website turns in anything closely related to a cult; to me the thread looks like some good people trying to save you (and possible your future viewers) from a bad time.

My guess is that the JVM "sees" that the first thing you do is add 1 to both Integers, so it simply instances one Integer object that holds 127 the first time. So a == b returns true. After that you do another modification to the object so the JVM uses a different Integer object this time, so a == b returns false.

"Proper" way to compare objects is with the .equals(obj) method.

#### Share this post

##### Share on other sites

My guess is that the JVM "sees" that the first thing you do is add 1 to both Integers, so it simply instances one Integer object that holds 127 the first time. So a == b returns true. After that you do another modification to the object so the JVM uses a different Integer object this time, so a == b returns false.

It's the boxing convention:

"If the value p being boxed is truefalse, a byte, or a char in the range \u0000 to \u007f, or an int or short number between -128 and 127 (inclusive), then let r1 and r2 be the results of any two boxing conversions of p. It is always the case that r1== r2."

http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html#jls-5.1.7

#### Share this post

##### Share on other sites

My guess is that the JVM "sees" that the first thing you do is add 1 to both Integers, so it simply instances one Integer object that holds 127 the first time. So a == b returns true. After that you do another modification to the object so the JVM uses a different Integer object this time, so a == b returns false.

It's the boxing convention:

"If the value p being boxed is truefalse, a byte, or a char in the range \u0000 to \u007f, or an int or short number between -128 and 127 (inclusive), then let r1 and r2 be the results of any two boxing conversions of p. It is always the case that r1== r2."

http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html#jls-5.1.7

So it does what I'm saying it does, but not for the same reasons :D

#### Share this post

##### Share on other sites

Malabyte, I think you're getting overly defensive here.

I gotta apologize to you guys. I got some issues from my past that I'm learning how to tackle. I also had a horrendous day, and I'm sorry that it came out on you. I'm aware that I need to learn to chill out at times, and I don't usually take criticism this bad.

I guess some of you just got me riled up when you pointed out certain things that are verifiably untrue within the context of the videos that I want to post. But you couldn't possibly know that when you replied. All I'm asking is that you judge me for my actions and that you don't assume thing just because of how they immediately appear. I don't mind you guys stating your positions or just addressing the general problem of people posting bogus information on Youtube or the internet in general. All I'm saying is that I got that journey to travel with regards to when people attribute certain things to me (I guess I have a stronger need for feeling accepted or something). The only thing I ever asked about was the technicality of something that sounds very strange compared to what is actually seen. Now that I know that technicality, that opens up a whole world of other understandings as well. It's like that missing piece of the puzzle, in a way.

It's those puzzle pieces I'm currently looking for.

What do you feel you can add?

Well, to give you some history:

I've been studying games and game design abstractly (i.e. the core creative, logical and economic aspects that lie outside of the coding realm - with a major emphasis on the philosophies of several top developers, including Will Wright, John Carmack, and others) for the last 15+ years or so, across most genres etc. I started thinking more seriously about programming and I did some datamining on it, as well as computer science in general (among other things less related to CS). I found Stanford University on Youtube, and followed Mehran Sahami's lectures. I then went more concrete and learned about thenewboston about a year ago (although Java has regretfully been more of a side project the last year). His videos were just fine, at my level, but eventually I needed to understand more because I had some confusions. TheCherno's Game Programming recently, on the other hand, helped me understand more Java in 5 days, than I had ever understood up until that point. The main reason was because TheCherno taught a lot of compositional stuff (indirectly), combined with me having learned a certain learning technique (which works kinda like minor photographic memory).

Herein lies the problem I'm seeing with the videos I've seen on Youtube and the articles and books I've read (although I've likely missed a majority of the good ones, as a self-taught). TheCherno was one who just happened to teach me how to actually compose the code and how to understand how to use the methods under which circumstances, simply because he showed us every line of code he wrote (and I did the rest). But as of video no. 77, he still haven't addressed it specifically. And neither have any of the more professional lectures etc. By large, the two things I've seen people teach is (1) the syntax of the code, (2) the science and general conventions of programming and (3) circumstantial compositions without any clear red line.

Ok, cutting to the point:

Authors of all kinds, even musical composers and songwriters, constantly struggle with one main theme - composition. How to take one body of something and making it fit with another body of something else without destabilizing either one. Harmony, in other words. In game design, we see it in many different areas - from the simple methodological conventions of programming to game testing/balancing and debugging. Even running an MMO metrics system of where each player is located at any given time, can help and itself benefit from your ability to compose the world in a way that's harmonious to that activity (or disharmonious, if you want to discourage the activity).

This is what I've been looking for, and I've felt that the theories of more holistic composition is somehow missing or inconclusive. As someone who wants to understand deeper game design, it's not enough to learn how to compose individual functions/objects. I want there to be something or someone that teaches us about systems composition as well. But the stuff I've seen thus far feels too vague and ambiguous.

In short, I'm trying to figure out if there's some way to present top-down composition to beginners that could potentially help them understand a programming language a lot faster and more intuitively than what's currently the case. The technique I'm referring to deals with what biologists refer to as emergence (ok, that probably doesn't tell you squat lol).

Edited by Malabyte

#### Share this post

##### Share on other sites

One idea is to consider submitting the transcripts and code examples you plan to video here, or elsewhere, for review before recording.

Yeah, that's the second step.

Edited by Malabyte

#### Share this post

##### Share on other sites

This is what I've been looking for, and I've felt that the theories of more holistic composition is somehow missing or inconclusive. As someone who wants to understand deeper game design, it's not enough to learn how to compose individual functions/objects. I want there to be something or someone that teaches us about systems composition as well. But the stuff I've seen thus far feels too vague and ambiguous.

The problem I think you'll run into is that, in general, there simply ISN'T a globally accepted 'do it this way' method of composing code.

Software engineering as a whole remains a young discipline and while there are 'accepted' ways of doing things in certain areas sometimes all it takes is a new language to gain traction or a new bright idea and the old ways get thrown out.

#### Share this post

##### Share on other sites

I personally think it's a good idea to make videos. I would howeover not recommend stamping these videos as "tutorials" and telling everyone that your way to write Java is the right way (I think this is what everyone in the thread has gathered from your motives). Instead, you could make them a series of "diary entries" labeled "Learning Java the hard way - Part <x>" or something. Be careful with the way you speak in the videos (i.e. always use personal phrases such as "I would do it this way" or "From my understanding, <whatever>", not "This is how you do it" or "You should not do <whatever>").

This way people can give you legitimate, constructive feedback on your videos, and not bash you for doing things wrong, and the videos will have a very positive influence on your learning curve.

#### Share this post

##### Share on other sites

The problem I think you'll run into is that, in general, there simply ISN'T a globally accepted 'do it this way' method of composing code.

That depends entirely on what piece of code you're actually writing for what task, does it not? Maybe not for certain complicated processes. But there already are (to some extent) "the right way" in the syntax to write lower-level code segments because if you don't, then the program returns exceptions. Not all of the syntax, but much of it. Note: I know you weren't referring to this in your reply, but please read on below.

In other words, there's the "economy of programming" (which itself implies that some ways to code are sub-par to other ways, for a given result).

For instance, suppose you want to sort something. Well, depending on what you want to sort, there could be better and worse sorting methods for that one task (if not always, then at least depending on what you're actually intending to sort). Likewise, creating unecessary code that is demonstrated to be redundant for a given process to be successful (i.e. making a class for each sprite instead of just adding parameters in a sprite class) could possibly be considered a "worse way". And several of you veterans here on Gamedev.net have yourselves referred to this as "sloppy coding".

So clearly, there are "right ways" to write code. Just look at how Silverfall was made, and then compare than game with God of War. Just looking at "games" like Dear Esther or similar, and you can immediately deduct what's wrong about it. Horribly wrong. Maybe that deduction isn't globally accepted, because some people like to write code or design software their own way. But personally, I would rather learn to know the computer(s) and then write my code the computer's way - alternately design a game the gamer's way (referring to specific playstyles that correspond to given features, and not individual people in this case). In other words, the way (or one of them) that the computer is able to handle best, or the gamer finds the most interesting. If I wanted to do things my way, I would simply do it and not become a programmer in the first place.

I was wondering if it's possible to make a system (any system, not necessarily a software) that helps you, as a programmer, differentiate between these. It obviously presupposes that you have some intrinsic inclination to learn with a sceptical mindset, and not just nitpicking things out of context, for the sake of having something to argue about (because if you do, then you'll be able to naturally adjust yourself to your actual experiences along the road, instead of getting hung up by individual teachers). Even when talking about bigger processes, I know that there are quite often "better" and "worse" of writing a given code structure for a given task or process. Not because I say so, but because the computer itself expresses it through rendering, memory allocation or whatever. And of course, different computers express different things, but let's talk about first things first.

It's still "possible" to do things in many different ways, but I'm talking about what is "best" for that given job (whatever "that" is).

Software engineering as a whole remains a young discipline and while there are 'accepted' ways of doing things in certain areas sometimes all it takes is a new language to gain traction or a new bright idea and the old ways get thrown out.

Yes, but that's because they constantly find better ways to do things, or else there wouldn't be a revision needed because everyone just has a personal opinion and no opinion is better (unless, of course, they're shuffling between what's the most popular approach and calling that "better"). Also, have in mind that I'm not just talking about coding. But either way, whenever I say "better way", I would exclusively be referring to the present moment for the present task. Because that's all that should matter for anyone who ever tries to solve an actual problem (which programming is all about, primarily). But I can definitely agree that some ways might as well be decided through a coin toss, too.

I personally think it's a good idea to make videos. I would howeover not recommend stamping these videos as "tutorials" and telling everyone that your way to write Java is the right way (I think this is what everyone in the thread has gathered from your motives). Instead, you could make them a series of "diary entries" labeled "Learning Java the hard way - Part <x>" or something. Be careful with the way you speak in the videos (i.e. always use personal phrases such as "I would do it this way" or "From my understanding, <whatever>", not "This is how you do it" or "You should not do <whatever>").

This way people can give you legitimate, constructive feedback on your videos, and not bash you for doing things wrong, and the videos will have a very positive influence on your learning curve.

Yup, that was the idea, although I did notice that I wrote "tutorial" specifically. I guess I didn't realize how much difference 1 word makes on these forums.

Edit: Fixed the OP, thanks.

Edited by Malabyte

#### Share this post

##### Share on other sites

• Advertisement
• Advertisement
• ### Popular Tags

• Advertisement
• ### Popular Now

• 9
• 10
• 12
• 10
• 10
• Advertisement