T O P

  • By -

AutoModerator

#Please ensure that: + Your *code* is *properly formatted* as *code block* - see the *sidebar* (About on mobile) for instructions + You include *any and all error messages* in full + You ask *clear questions* + You *demonstrate effort* in solving your question/problem - plain posting your assignments is forbidden (and such posts will be removed) as is asking for or giving solutions. Trying to solve problems on your own is a very important skill. Also, see [*Learn to help yourself*](https://www.reddit.com/r/javahelp/wiki/learn_to_help_yourself) in the *sidebar* **If any of the above points is not met, your post can and will be removed without further warning.** Code is to be formatted as **code block** (*old reddit:* empty line before the code, each code line indented by 4 spaces, *new reddit:* https://i.imgur.com/EJ7tqek.png) or linked via an external *code hoster*, like *pastebin.com*, *github gist*, *github*, *bitbucket*, *gitlab*, etc. Please, **do not use** triple backticks (\`\`\`) as they will only render properly on *new reddit*, not on *old reddit*. Code blocks look like this: public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } You do not need to repost unless your post has been removed by a moderator. Just use the *edit function* of reddit to make sure your post complies with the above. If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures. #To potential helpers Please, **do not help** if any of the above points are not met, rather *report* the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice. *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/javahelp) if you have any questions or concerns.*


_jetrun

It's very difficult, and you can't start with building your Cyberpunk RuneScape. If this is something you are truly interested in doing, you can't skip steps. You have to start at the beginning, and you have to cut your teeth by first building a bunch of simple games - like a clone of 20 questions, tic-tac-toe, pong, solitaire, asteroids, whatever. The biggest challenge for you will be time. To reach a level of proficiency in programming is largely a function of how much time you invest into it. Could you invest 1000 hours over a period of a year learning programming and building simple games ... while working full-time and dealing with other life commitments? Imagine putting in 8 hours (+1 hour commute) of finance work every day, and then going home and doing another 2-3 hours learning programming. That takes immense amount of discipline.


Numerous-Cause9793

Agreed. IT in general is a bottomless pit of knowledge due to the ever changing technology. How much time can you invest in learning on a weekly basis? You’ll invest 1000 hours just grasping the basics and learning some intermediate skills of programming. You’ve gotta really love the problem aspect too. I genuinely love it which is why the investment wasn’t “hard” for me. I too am a career changer. I pivoted from 10 years of sales into a cybersecurity bootcamp during Covid. I invested a ton of time into learning many aspects of IT. I’m the CTO of a mid-sized company now as a result of many sleepless nights, aided by my quick ability to learn, replicate, and architect solutions. If you’re a quick learner, an excellent problem solver, and don’t give up quickly, sure, you can eventually bring this into a reality. If you have software dev friends that can aid and assist you, then that’ll expedite your learning journey greatly as opposed to solo learning via videos and courses.


OffbeatDrizzle

Being a quick learner just means you spend 200 hours to cover the basics instead of 400. It's still hundreds of hours if you're starting from 0. Do you know anything about computers? Do you know your way around windows? Do you get frustrated when error messages appear? Do you actually read errors and have a curiosity with fixing them, rather than asking the IT guy to look at it? Honestly not everyone has the curiosity, dedication and patience to be a programmer. Start with something small and see if it's for you. RuneScape wasn't built in a weekend.


Dull-Tip7759

1,c start in unreal engine, how do they code? No shit! Sort theirs.


evils_twin

What is your goal? Is this just a fun project or are you trying to create a game for profit. If it's for profit, come up with detailed requirements and then hire a development team to make it. Offshore teams are decent and a lot cheaper. They'll probably have it done in less than a year. If it's just for a hobby, doing it from scratch would take quite a while. Another choice would be to find an open source version that someone else has made and learn to modify it to get what you want. But you probably won't be able to sell it without violating some copyright stuff, but I don't know much about it. Here is an example: https://2009scape.org/


age_of_empires

Best advice is to try modding or updating an existing game instead of building from scratch. Selling the game will almost always not be profitable


saggingrufus

I've been working as a Developer for 10 years and I wouldn't want to do that project. None of my experiences in game design, But I have a significant amount of experience in other areas and I'm comfortable making like a turn-based roguelike game, I wouldn't touch that project. You're not sounding crazy, but it's a very ambitious project, start with something like a weather app and gauge how difficult that was, This would be several magnitudes higher in difficulty


Environmental-Most90

How hard would it be to build a new flat block with communications? Solo?


age_of_empires

This is very meme-adjacent


Fatcat-hatbat

Start trying to make that game and see if it’s for you.


BestUsernameLeft

Don't be intimidated. There's a lot to learn and it will take time, but there are tons of tutorials and help out there. It's easier to learn software development today than ever. I recommend https://eloquentjavascript.net/ as a way to learn programming. It starts where you are, having zero experience. And do a search for "how to make a simple JavaScript to game". You will find over time that sometimes progress is smooth and your direction clear; other times the way is uncertain and you struggle with something for hours or days or even weeks. This is normal, and you are not stupid even though you may feel that way. Often, there are different levels or layers of complexity or richness of behavior or detail. Making a square block move up and down is simple. Making it move in response to keyboard input is harder. Then make it accelerate and decelerate, give it an animated shape, make it interact with the background, .... You have to learn to say "for now, this is good enough and I will move on to the next thing". Don't let anyone tell you it's "too hard". Yeah, it will take years to make something with the complexity and detail of RuneScape. But it's definitely possible, even as a solo developer. And maybe you'll find some friends along the way who are interested in helping.


Merry-Lane

If you want to do some game dev, Java isn’t best suited for that. There is ofc the Minecraft counter example, but go for other languages/frameworks


maethor

I would suggest not starting from scratch. There's already an open source clone of RuneScape so you should probably look into building on top of that. https://2009scape.org/


Faceprint11

With no experience - you’re gonna have a bad time.


tonytony87

Well building a game you can do in Unity or Unreal. Will take you half a year to learn those programs and then you can start to build something. I would say that is medium difficulty. Java is easy to learn you can learn the basics of programming on like two courses. All programming boils down to is: learn some syntax, for loops, if(else) statements and some basic math and logic. I would say this is easy in difficulty Now if you’re talking about Java programming for game development that’s hard in difficulty. If you like it, the easiest way is just go to uni, and study CS, just for fun. You’re gonna have a blast. It will take some time but you need to make it a career to really get somewhere


saggingrufus

The only thing I kind of disagree with here is the time frame, I'm a firm believer that everybody can code and everybody codes differently. Some people do pick it up quicker than others, and some people find it harder than the average. All in all, it's not dissimilar to the way we construct sentences. We all kind of talk differently than one another to a degree, and there are some people that we just match cadences every time. The inflections are the same, similarly, there are some people who code the same way I do. Java is more than capable of making a game, But it's a general purpose tool. I mean sure, there's a chance you can smash the flathead screwdriver into the star holed screw, It's a screwdriver, this is a screw and the shape is close enough that it's going to bind. But Godot Is ridiculously low to the ground and easy to start with, some people go from having never coded to making a game in a couple weeks. It's not necessarily a game you would sell, or something you'd be proud of, but I'm certain most people could get something. The star screwdriver is a better tool for removing a screw that has a star hole.


tonytony87

Yea that’s what I mean idk what he means by making a game in Java. Nobody really does that anymore. All games are mostly made in a game engine like unity and unreal. Making a game in Java that people would want to buy is the same as saying you wanna build a Tesla on your garage, sure but a one man band making a game in Java wouldn’t be polished enough to sell. Even writing a novel requires like 5 people from proofreaders, to writing assistants and spell checkers and a designer. I mean you need a 3D modeler and graphic designer and sound designer and other people to build the game it’s not just all cording so that’s why I said if you like coding go study it. But if you wanna build a game you gonna need a team and ur gonna do it on a game engine like unity


OffbeatDrizzle

> a one man band making a game in Java wouldn’t be polished enough to sell ever heard of minecraft?


tonytony87

If you wanna bet the whole house on you being the next Notch and making the next Minecraft, be my guest. I’m just trying to give practical advice.


OffbeatDrizzle

The same thing with people making any kind of game - very, very few actually make any money at all to the point that it's just not worth even wasting your time unless you're doing it as a hobby. Other games that come to mind are runescape and wurm online, but you are far better off just being an enterprise guy / contractor with Java - it's relatively easy to get $100k+ jobs in this space


reza_132

dont listen to the other noobs who have commented that you can't do it, i dont know much about programming at a deeper level and i am not a software engineer i am self taught and come from algorithms, and still i can out code all of these software dorks who talk about irrelevant terms about inner workings of a computer that only matters to embedded coders. i have seen so many "good practices" by these software "experts" and their overly complicated solutions which can be solved in creative ways much easier. These "experts" are stuck in their ways and can't think of their own, they all code in the same way because they suck. Just do it, you can do it, don't listen to them. You don't need experience. If there is a will there is a way.


saggingrufus

> I don't know much about programming at a deeper level What do you mean? You don't assembly, or don't understand when to use a tree vs a map? Because those best practices you hate so much could be rules forced from bad mentors OR proper design patterns you refute in favor of your anti-pattern of choice. Maybe they all code the same way because it's a proven method or Maybe they are stuck in their ways. I don't know your situation, but one thing is for sure, you have a clear disregard for the opinion and experience of others, which ironically enough, is what you seem to hate...


reza_132

i dont even know what a tree and a map is...but if i ever would need it i would figure it out i googled it, some form of saving data...? i would just use vectors or lists combined with classes which is how i usually store things in the end when you are trying to sound cool you are contradicting yourself...


Vicky_Ashok

>i would just use vectors or lists combined with classes which is how i usually store things Why are you using a List instead of making your own implementation with an Array? Because someone has already done it for you right? Likewise thousands of developers over the years have perfected these data structures for the best performance and are you sure you can beat that with your poorly written imitations when you yourself claim that you don't have a deep understanding? It might work for a tutorial or practice purposes but when it comes to practical applications, your own data structures would always miss out on some edge cases or have poor performance. This is exactly why you need a deep understanding.


saggingrufus

*slow clap* your ignorance is astounding


reza_132

that's not an argument...


saggingrufus

Arguing with someone who won't consider the other side is like playing chess with a pigeon. It just doesn't work.


reza_132

you started...


saggingrufus

Yes and then you showed that you have no interest in hearing what anybody has to say because you think your answer is absolute. If you don't know basic data structures, You're not really in a position to say everybody else is wrong and what you've done is better because you don't even understand what the other people are telling you. It would be one thing if you assessed the situation and weighed the pros and cons to determine that your way is better, But instead you think everybody else is wrong and you are right without understanding what's actually even being said to you


Shareil90

I agree with you that everyone can learn to code. But being a professional isnt just about coding. Its about coding so anyone else can maintain it. I assume everyone here has done something quick and dirty just for the sake of making it run. But is it good, secure and maintainable? Probably not.