Quote from odlakOddball»
but I am programming with forge libraries so therefore I am scripting programs (mods) (you are probably trying to say something but I am misunderstanding)
seems to be the same thing to me. programming with scripts.
scripts programmed by forge. (I am misunderstanding something aren't I. lol)
Yeah, you are programming. And scripting and programming are different.
Scripting usually refers to when you're writing code that is being executed by a program, like for example take Python. You write code to tell the Python interpreter to tell your CPU what to do. Programming usually refers to when you're writing code that is executed by your CPU. You write source code out for a compiler to compile down to a form of code known as bytecode which is the code that your CPU executes. Your CPU is then executing the bytecode generated by the compiler.
The key difference is scripting languages (also known as interpreted languages) are translated to code your CPU can understand as it's being ran in real time, no pre-compilation used. Compiled languages are translated to code your CPU can understand ahead of time, the .class files you see in Java applications contain the code your CPU executes, no translation required (not true with Java, see later paragraph). If you look in say a .py file (for Python), you should be able to see the code you write out in plain text, the code is stored in plain text. If you look in a .class file, you will see garbled random characters in a text editor as the text editor is trying to read plain binary code (1's and 0's). That's the difference, it's basically like slicing your own bread (which would be the compiled language) versus buying pre-sliced bread (the interpreted language), sort of. Same principle though, the work is done ahead of time with a compiled language.
Forge is also not a program, it's an API. A set of functions and variables you can use within your own program to speed development up. Rather than tediously write your own way to inject recipes into the game, Forge provides a function that does that for you. And you don't code in Forge, you use Forge in your code, following your logic you'd say that using a pen is the same as writing on the pen (again, analogies are not meant to be 100% accurate :P). Big difference between coding IN another program (like a Python interpreter) versus using functions available from a library in your own program.
Now, I said that Java technically translates, and that is true, but doesn't make it an interpreted language. Java requires another program known as the JVM (Java Virtual Machine), which is like a "virtual CPU" sitting on top the CPU that translates the instructions the CPU doesn't understand into instructions the CPU can understand, while still leaving the one's that the CPU can understand to just pass right on through untouched. JVM bytecode (bytecode using the JVM) does work a little differently to how the CPU natively works, and this is REQUIRED to make Java work on all computers regardless of CPU, GPU, RAM, OS and all other important components; you write the same code out, the JVM translates the code unique to the JVM into code designed for your CPU.
So no, you're not scripting, you're programming.
EDIT: Usually, scripting has several limitations in what you can do with the language, for example with Java / C (or any C derived language) you have the capability of working directly with the lower-level components and/or languages, like for instance you can directly interface with data stored in your RAM or bytecode that your CPU is executing. However with interpreted languages, because the language you're writing in is being processed by another program (probably in a form of C), anything you want to do is "filtered" by that program and the program sets limitations in place. This is both good and bad; for example limiting the direct access that a user has to temporary memory (RAM) can be seen as good as it minimises both the accidental and purposeful damage a program can do in any given scripting language, however it also can be seen as bad as the program is forced to work how the interpreter wants it to work; the program cannot directly optimise data stored in memory and the program's memory access is slowed down as it has to run through the interpreter first.
EDIT #2: To help explain this, basically the two work like this:
Compiled:
Your program in source code form -> Compiler -> Class file containing bytecode
Your class file -> CPU OR Your class file -> VM translator -> CPU
Interpreted / Scripting:
Your program in source form -> Interpreter -> CPU OR Your program in source form -> Interpreter -> VM translator -> CPU
EDIT #3: Just to correct your original post, you're a programmer using Java to mod Minecraft, not a programmer of Java Minecraft, Java is a programming language that Minecraft is written in, not a language Minecraft itself contains within it.
1
-Age: 14
-Mc Name: ShadowWarriorTM
-How will you help the server?
I can help the server by teaching other staff members how to recognize x-ray patterns, recognizing killaura, auto-clicker, and much more. I can also help keep things organized and make sure no one is over-doing anything. I am also a beginner plugin developer. I've pretty much made random plugins just to see what I can do. I've experimented with player inventories, GUI menus, events, configuration files, commands, etc. I've also got a very low-end experience in minecraft mod development. I can also keep everyone entertained and providing an enjoyable experience for everyone. Even the staff members.
-How much hours a day can you be on the server?
I could spend around 2-5 hours a day helping out the server.
-On a scale of 1 to 10 how good are you at building?
3
-How much servers have you been staff on?
probably around 3-5. The reason why I don't work with anymore is because they either got griefed and the owner(s) quit, or IRL issues came up and the owner(s) had to leave.
-How many times have you been banned?
null (I have never been banned)
-How many times have you been muted?
I have been muted once for 10 minutes for hackusation. I was trying to grab a staff member's attention but I didn't know that there was a /report command.
-Why should you be staff?
When it comes being a staff member, I take my job very seriously. Of course, I'm not boring. I always like to have fun, crack a joke here and there or find ways to keep players entertained and stay on the server. This will also be the largest part to read as I will be putting a lot of detail into here. I want you to know who you're recruiting and whether you think I will make a good staff member.
I really like computers. I am always gaining more knowledge in Java. However, I am still very bad at programming. So far, I know about instances/objects, operators, math operations, instanceof, 'if' 'else if' and 'switch' statements, a mediocre knowledge of overriding, a mediocre knowledge of enums, inner/nested classes, methods, mediocre knowledge of interfaces, Java SE launch arguements, and more. I tried making custom minecraft mods or mods based on a game. So far I've only recently started on my first mod which is based on a game I play called The Elder Scrolls IV. I used to think I was really good at recognizing errors. Hehe... Not really. lol. I may or may not start on different languages depending on if I want to start on something big. Languages such as, C, C++, Gradle, and XML. One important thing I learned, is to never
announce something until you've actually got some work done.
I used to work at an animal shelter for a couple of months. I learned many different things. These are things such as: Working with feral animals, dietary needs, healthcare, grooming, and much more. I also learned other different things when filling out work applications. These are things such as social security, what they would like to know about you, etc. During my time there, I became very patient. Not just with animals but with others things in life as well. It's an essential skill to have that's for sure. Sometimes when a new animal is brought in, it looks pretty ragid or beat. It definitely improved my mental strength. I was able to withstand some nastier things that I normally wouldn't handle as well. I've also had to deal with dog fights. They're not fun to handle. You have to think fast and act fast before they tear each other apart. This doesn't happen often. It's only happened once during my time there.
I have a basic knowledge of 3D graphics. (I don't know if it's basic anymore. lol) Here is a 4K render I made. I would upload this to imgur but apparently they don't like 4K photos. It's a bit grainy because I didn't turn the samples high enough before deleting the project. I also exported this scene using MineWays. Anyway, here is the Render: https://drive.google.com/file/d/0BxJPcw_WUon7THNSYXAwWmFoX0E/view?usp=sharing I just needed to make a few more tweaks to the water and I'll get it to how I want it. That was my very first render. I made this not too long ago: http://imgur.com/CfQP1DV It's a thumbnail I made for my friend's YouTube channel. Again, I'm not the best but I'm trying still. At this moment, my animating skills aren't the best either. I just make intros and I haven't made an animation with a story or a philosophy behind it. Here is an example of what I made with the help of a YouTube tutorial I followed: I didn't understand too much until I started playing around with the nodes and other things. I don't recommend asking me to animate anything though. Not yet at least. I've managed to make a walk cycle with a bit of help from one of my friends: I might post other examples later as I slowly improve.
I also enjoy running servers. Just servers in general. I used to work with many new minecraft server owners before. One issue that came up was server crashing upon login. Apparently the server glitched and the player was spawned beyond the world border. The server went crazy and crashed. The server would even crash when that player logged in. What I did, I looked at the logs, got the player's uuid, went into the playerdata folder and deleted his data. After doing that, his location was reset to the worldspawn. Since he was a new player, nothing was really lost. I've got the most experience in running minecraft servers so anything that isn't related to it I probably won't be able to handle very well. Due to our ISP's Terms of Service, any servers hosted on our computers will be local. Any attempts to connect to server over a wide area connection will be blocked by their firewall. I do have a bit experience with SSH though. I'm not sure if that'll be a useful skill in any situations that occur but you never know.
I also really love soccer. I've been playing for 8 years and really enjoy the sport. We managed to make it to area playoffs. We won that tournament and moved onto sectional playoffs. We didn't lose a single game but we didn't win the tournament. My main positions are mid-field and defense. I've actually gotten 3 medals and 2 pins this year. I usually only get one medal for playing the whole season but this time I actually got to run around all over the place and go do things I've never done before. Our team got invited to serveral different tournaments. It wasn't just our great skill that got us invited but also because we had good sportsmanship. Soccer (and other sports) definitely help improve essentials skills such as, teamwork, situational awareness, and strategy. These skills are also useful in other situations I may come across during my time as a staff member here on the server. I am also a soccer referee. I did pretty bad my first 2 years. Since this past year, I've been studying other professional ref's actions, and during my games this year, I've paid attention to everything that goes on around field. Of course, you might be thinking, "Well, that's what you're supposed to be doing." I'm talking about everything everything and learning from other referees. I actually got to talk to a few and they gave me tips on how to improve myself. However, There was one time where I didn't pay enough attention to what I was supposed to be doing.... Yeah. Someone scored on us. xD
I try to help other players when they need it. Whether I am asked to investigate a cheating issue or if someone wants to know how to craft a pickaxe and refer a crafting guide afterwards. Overall, I just want to do whatever I can to keep this server a safe, friendly, and fair community. Not only that, players want an enjoyable server to keep them entertained. I haven't forgotten about entertainment as it is one of the most essential parts of a the server. We all want a server that we can actually enjoy playing on don't we?
If you decide that I will make a good staff member, PM me and I'll give you my Skype.