Absolute! beginner , needs help!

Place for questions and answers for all newcomers and new coders. This is a free for all forum, no question is too stupid and to noob.
Post Reply
Kamakazi
Posts: 3
Joined: Sun Jun 23, 2013 11:15 pm

Absolute! beginner , needs help!

Post by Kamakazi »

Hey, What i was wanting to do was to make my very own text based RPG browser game just like alot of people out there,
the hardest part is i have absolutely no idea where to start.

I know a lot of people would simply say start by learning HTML,PHP,MYSQL etc..
I've downloaded and started reading books on these topics but i'm just obviously not grasping what i need to know.
I'm completely new to this site but as far as if seen on other topics the community seems great and i'm also completely new to doing this kinda thing.

I've built computers for the whole of my life and now i'm looking for a change,
I know the Hardware side in and out and have basic-advanced knowledge of most of the software side,
iv'e just never tried doing anything like this before and wouldn't have a clue where to start.

WARNING - Please do not answer if your not ready for tons of questions :D , thanks for reading and your time .
User avatar
Jackolantern
Posts: 10891
Joined: Wed Jul 01, 2009 11:00 pm

Re: Absolute! beginner , needs help!

Post by Jackolantern »

Welcome! The best place to start is with Halls' Browser-based MMO tutorial series. It basically starts at the very beginning and assumes no experience. However, having a basic understanding of HTML would help, and HTML isn't very hard as it isn't actually a programming language (it is called a "markup language"). CSS is also required for doing anything web-based. Not that you need to be an ace web designer (I know I'm not), but learning the key attributes to get the shape and form you want from your HTML, as well as how to use div tags to get that CSS to your elements is crucial. Beatifying can always be done later.

The biggest challenge of the tutorial series above is PHP. PHP is a full programming language, and as such, it will take some time to learn. However, PHP is a great language to start learning with because it works very intuitively as you are learning. For example, when writing your HTML, you may think "I wish I could just add another row to this form if the user is signed-in" or something like that, and at its most basic level, that is exactly how PHP works. You can just add it into the HTML (which would then have to be marked as a .php file) to print out what you need based on decisions made in code. Accessing a database is also very easy at the most basic levels in PHP. You also get results you can see very quickly. All-around it is a great first language!

If you have any questions, just let us know :)
The indelible lord of tl;dr
Kamakazi
Posts: 3
Joined: Sun Jun 23, 2013 11:15 pm

Re: Absolute! beginner , needs help!

Post by Kamakazi »

Hey jack, Thanks for the fast reply!
Im currently in the middle of watching the series now on youtube just a little overwhelmed atm but im getting there. What is this wampserver he uses exactly? is it just a tester for pages you've made before putting it online? , I just don't understand as it works as a whole is there a specific order you should create your pages in and how do you exactly link pages together and once everything is in order and everything seems fine how do you go about publishing the game online for everyone else and does it come at a cost at all? cheers .
User avatar
Jackolantern
Posts: 10891
Joined: Wed Jul 01, 2009 11:00 pm

Re: Absolute! beginner , needs help!

Post by Jackolantern »

WAMP (and a popular alternative, XAMPP) are simply all-in-one packages that make installing the programs for a "development web server" easier. They include Apache (a web server), MySQL (the database), the PHP Apache module (required for running PHP pages), and some other less important things depending on which package you get. While you can simply open an HTML file in Windows and have it open just fine in the browser, you can't do that with PHP. If you try to just open a PHP file, you will see the code. PHP must be executed in a "PHP engine". And most of the PHP development you will do is designed to be sent from a web server, so the PHP engine you want must be attached to a web server. Thus, you have to download and install a development web server on your computer to develop with PHP. That is where the Apache web server and PHP module come in. Setting up and configuring all these tools for development (instead of production) on their own is quite complicated, so some generous souls decided to make these packages that makes it a snap. You basically just have to download and install one or the other, click its icon to start it, and then start the services (at least Apache and MySQL). Simple as that :)

Typically before starting on the web page code, you would want to create the database, because the structure of the database will drive how you write your PHP. When you start out with PHP, you will likely be writing a lot of your PHP and HTML at the same time. As you get the basics, there are more advanced frameworks that most people eventually move to, but don't worry about those for now. You would need to have your HTML (and PHP) done before you can start writing CSS to style the page, because CSS hooks-into the HTML to style it. And then if you begin to write any Javascript code (which all runs in the browser) that is typically done last. But everyone has their own ways of doing it lol. You will come up with your own workflow, but what I have outlined here is a common one and a good one for beginners.

Your pages are connected together by hyperlinks. If you click on the word "hyperlink" in the last sentence, a hyperlink will take you to an info page that gives details about hyperlinks lol. That will come with learning HTML, which you would need to do before really digging into any PHP tutorial. You don't have to memorize it all. I still routinely have to look up certain HTML attributes, reminders on how to set up SELECT form elements, etc. The important thing is that you learn the basics of it, and get some exposure to the slightly more complex parts so that you will know what you are looking for when you need to look up an example online.

When you are ready to make your website public, you would get a web host. There are options to host it yourself, but most people don't have a fast enough Internet connection or a static IP to make that a wise choice. There are several different levels of web hosts. The most basic is shared hosting, where you share a server that the web host owns with several other websites. This is a fine choice for a site that is a mix of static (HTML only) and dynamic (PHP) pages. You can get shared hosts free pretty easily provided that you are OK with them putting an ad or two on your pages. The next level would probably be a VPS, or "Virtual Private Server". This is where the host has "virtualized" the server so that it is like they have given you the whole server, even though you still only have part. They assign you a certain amount of RAM, storage, bandwidth, etc. On a shared host you are not guaranteed any of the server resources (they just guarantee your site will function provided you are mindful of system resource usage), so this is a step up. There are a few VPS out there you can get for free, but you are likely looking at quite a few restrictions. The next step up would likely be a dedicated server. This is where you have the whole server and all of its resources. Obviously there is no way to get these for free, but your average site does not require a dedicated server. This would be for larger games and extremely busy websites. The steps above this are really more special cases that you would have to negotiate with a host for, because they involve using several dedicated servers all working together. These would be for extremely popular websites that are getting possibly thousands of hits a second. It is really a dream to get to that level where you need a server cluster.

It will be a while before you are ready to get a web host, so we will help you out with that when you get there :cool:
The indelible lord of tl;dr
overras
Posts: 91
Joined: Sun Oct 03, 2010 7:25 am

Re: Absolute! beginner , needs help!

Post by overras »

Kamakazi wrote:Hey, What i was wanting to do was to make my very own text based RPG browser game just like alot of people out there,
the hardest part is i have absolutely no idea where to start.

I know a lot of people would simply say start by learning HTML,PHP,MYSQL etc..
I've downloaded and started reading books on these topics but i'm just obviously not grasping what i need to know.
I'm completely new to this site but as far as if seen on other topics the community seems great and i'm also completely new to doing this kinda thing.

I've built computers for the whole of my life and now i'm looking for a change,
I know the Hardware side in and out and have basic-advanced knowledge of most of the software side,
iv'e just never tried doing anything like this before and wouldn't have a clue where to start.

WARNING - Please do not answer if your not ready for tons of questions :D , thanks for reading and your time .

Your problem is at logical part, you see that knowledges as a way to create games, but their purposes are not only for this, you must see a game like a website to create a real game, you can think "the character must hunt" but you will not see the code in your mind, so, you can try this : "I have to edit column x and y of id z in database, so then player can hunt/swim/eat" . I had your problem before, I knew php but I was wonderind "how to create a game with this?" well, this is it, you must just open your editor and start with a simple login, register and a user panel , then you will see these things more easy.
Freddie
Posts: 10
Joined: Thu Jun 13, 2013 3:56 pm

Re: Absolute! beginner , needs help!

Post by Freddie »

Hi!

Creating games is fun, but it takes time - and a lot of knowledge. Starting on a game without knowing what programming language you want to use, might be quite much a mistake, as you then totally is lost. So first of, i believe you have to choose a language, and then learn it. But you have to learn a language to program you'r own game. And, yeah, as you say, many will recommend start learning HTML, PHP, MYSQL - wich also might is what you need to do. if you wan't to make dynamic websites, it would be great to learn theese languages. To start of, i would recommend you to learn HTML, and then PHP/MySQL, as HTML is a very basic language to learn. You will find very great tutorials on w3schools, more spicific a HTML tutorial here: http://www.w3schools.com/html/default.asp Their tutorials are build up very basic, and you can even try the code on their site, while you are learning! And if theres something you don't understand, i'm sure many people here, will help you out.
And when you start to get better with HTML and PHP/MySQL, you can then try to make you'r own very basic game, and get experience from it.

But you can also download a free opensource PHP engine, and make a game with it, and program more features, when you get more experience. (See jackolantern's fantastic list here: http://indie-resource.com/forums/viewto ... 112&t=4898)


Good luck!
User avatar
hallsofvallhalla
Site Admin
Posts: 12026
Joined: Wed Apr 22, 2009 11:29 pm

Re: Absolute! beginner , needs help!

Post by hallsofvallhalla »

I have to disagree with this statement
You will find very great tutorials on w3schools,
They have paid to have their stuff come up first in every search and much of their info is depricated or just plain wrong. I am usually a HUGE fan of promoting tutorial sites but that is one of them I stay VERY far away from. They are about ads and that's it.
Freddie
Posts: 10
Joined: Thu Jun 13, 2013 3:56 pm

Re: Absolute! beginner , needs help!

Post by Freddie »

hallsofvallhalla wrote:I have to disagree with this statement
You will find very great tutorials on w3schools,
They have paid to have their stuff come up first in every search and much of their info is depricated or just plain wrong. I am usually a HUGE fan of promoting tutorial sites but that is one of them I stay VERY far away from. They are about ads and that's it.
I have to disagree with this statement too :P

i find their tutorials very good, and i've learned quite a lot from it. Specially the "Try it yourself" is awesome (In my opinion). It's all explained, you can try it yourself, it's simple to get started with and it's organised nice, with chapters and so. I can't really see the "They are about ads and that's it." - problem. Well, they do have a link to "W3Schools' Online Certification", but i can't really (If at all) see the big problem in it. Could you go a bit more "In depth"?
Lord Rahl
Posts: 93
Joined: Fri May 17, 2013 2:51 pm

Re: Absolute! beginner , needs help!

Post by Lord Rahl »

It's not such a bad site that I can say never use it, however you should be sourcing your information from more then one source. Learning PHP from php.net makes more sense for example, and doing a tutorial based on a system will help more then simply reading information on functions (in my opinion).

Things you should read -
1) http://www.w3fools.com/
2) http://readwrite.com/2011/01/17/w3schoo ... zLVkP4OtYY
User avatar
Jackolantern
Posts: 10891
Joined: Wed Jul 01, 2009 11:00 pm

Re: Absolute! beginner , needs help!

Post by Jackolantern »

You beat me to posting W3Fools lol. Yep, stay far, far away from W3Schools. Their tutorials have tons of glaring omissions, incorrect info, outdated info, etc. They show adding Javascript into the DOM, but give no mention of why this is a bad idea and should be avoided (see unobtrusive Javascript). Their "tutorials" are extremely shallow, often giving just a one sentence explanation of a feature and a bear-bones example. You cannot learn a technology this way. Most technology's documentation offer far better coverage. Their whole site is completely centered around giving the user little tidbits of information, so they can then try to route you into their quizes and then into buying one of their certificates, which is where they make their money. However, their certificates are basically worthless as they are not honored by anyone in the IT and software development industries. The questions you answer on the quiz are nothing like the questions on industry certifications such as Oracle, Microsoft, etc. One of the PHP quiz questions to show you have "mastered PHP" is to state what PHP stands for :?

Also, if you want to type code into the browser to test results, use the superior JSFiddle. Unlike W3Schools' implementation, JSFiddle is up to date on current web standards, has separate windows for HTML, CSS and JS, allows saving and sharing, includes settings to instantly import pretty much any JS library or framework you could think of, and much much more.

As far as alternates to W3Schools for learning, here are the resources I use for much more accurate, complete information:
PHP: The PHP Manual
Javascript: JS on Mozilla Developer Network
HTML5: HTML on MDN
CSS3: CSS on MDN
The indelible lord of tl;dr
Post Reply

Return to “Beginner Help and Support”