2015-08-31 23:22:48

Hello Everyone,

There is a topic here written by another person learning programming but I didn't want to hijack the thread. In any case, I have wanted to learn how to program so that I could create some games for quite some time now but never translated this desire into a reality. Not only do I think this would be a fun challenge, but I also think that it will keep me from developing dementia smile Seriously though, I am most interested in either making accessible variations of games I've heard about but am unable to play (Scribblenauts Remix), creating accessible versions of games I played with sighted assistance as a child (Oregon Trail, Hoyle's games with AI players that had personality), or trying to come up with titles of my own. I'm inspired most by Jim Kitchen's work (may he rest in peace), and Aprone's Lunimals, Paw Prints, and Castaways. I'm not too interested in the side scrollers or other games that make you find objects and shoot them. I've never been perceptive enough to aim in just the right place. I prefer text with sound and voices for ambiance, and a rich story that is heavily influenced by the player and random elements. I'm also a fan of strategy, simulation, card, and multiplayer board games.

My questions then are:

1. Is there a particular programming language that would be better suited to creating these types of games? If so, which one?

2. Are there any recommended tutorials, books, sites, etc to get started?

Any insights and advice would be greatly appreciated.

Thank you.

Best Regards,

Tiffany Kim

2015-08-31 23:38:55 (edited by The Dwarfer 2015-08-31 23:41:01)

Hi there,
I presume you are looking to build text games? if so, you might check out inform7, (http://inform7.com). It's an easy scripting language that aids you in the creation of text adventures.
Also, of course, there is BGT. That's definitely where I'd recommend starting out since it generally has everything you need built in, and is good for starters. I wouldn't recommend diving into other languages if you're just starting out as you might find that to be way too complicated for just starting out. You should note, though, that BGT was not designed for text adventure games, though it can most certainly be used to build strategy, story based, puzzle and or board games. anyway, the blastbay website, where bgt is located, is http://blastbay.com. Good luck and I look forward to seeing what you create! Let us know if you have any further questions.

If you have issues with Scramble, please contact support at the link below. I check here at least once a day, so this is the best avenue for submitting your issues and bug reports.
https://stevend.net/scramble/support

2015-09-01 00:25:16

Hi Steve,

Thank you for the suggestions and encouragement. I have played some text adventures by Emily Short, Andrew Plotkin, and Howard Malinche (if I'm spelling it correctly). I have also played many of the Choice of Games titles on IOS, as well as the ones on Choose Your Story. I'm not sure if I would want to create a complete text adventure with puzzles. I like the Choice of Games sort of thing over something like The Dreamhold.
I was thinking of starting with something like Go Fish or a dcie game like Pig. I then think I would work up to something like the Lemonade Stand game or Dope Wars (a bit similar to Jim Kitchen's Starmule). Would BGT be able to accommodate this? These sound like great games to make as I practice and learn.

I can't wait to get started. I'll take a look at BGT when I'm not surfing the Web on my Braillenote. smile Thank you again. I'll be glad to share whatever I come up with as soon as I can make something that doesn't crash or corrupt the system. big_smile

Best Regards,

Tiffany Kim

2015-09-01 00:38:49

I recommend not trying to digest a whole language at once.
I personally have done best by looking at small examples, then trying to work out how to make something bigger out of them. Repeat with higher level elements, until you understand the language well enough to pic up whatever you need from documentation.
Trying to read a whole manual or tutorial all at once makes it easy to get lost.
I personally work better with restrictions: "how can I do this, given the whole world?" is a lot more overwhelming than "How can I do this, given paint and tin foil?".

But that might just be me.

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2015-09-01 01:55:12

BGT would definitely be capable of producing all of the above listed games. But as CAE Jones said you might want to learn some of the concepts first, and have a look at some examples and create some small games of your own, I.E. Pig as you mentioned. BGT has quite a long book of a manual, but it is organized from the most basic of basic programming terminology to the higher advanced aspects of the engine. It will take a bit of time before you're ablee to produce a good game, ---- I'm working on a game and it took about a year before I was to the point in my language of choice that I'm able to open up the IDE, and type out code for a little program and run it. And even now, I still have troubles from time to time.
  So basically, keep the manual handy. Practice, and patients.

If you have issues with Scramble, please contact support at the link below. I check here at least once a day, so this is the best avenue for submitting your issues and bug reports.
https://stevend.net/scramble/support

2015-09-01 02:51:40

@Cae: That's a good way of putting it. I tend to try to tackle way too much, so by starting with just a few elements e.g. paintbrush and tin foil, I won't get so overwhelmed and will hopefully be able to stay the course.

@ Steve: Thanks again. I'm glad that this engine does have the mechanics to produce the types of games I had in mind. This won't be a picnic in the park, for sure, but I hope that with time and practice and tons of debugging sessions, I'll be able to produce something worth playing.

If Pig ever comes out of the pen, you'll be the first to know about it. smile

Best Regards,

Tiffany Kim

2015-09-02 01:21:59

Hello,

Well, I downloaded BGT last night and read through a few sections of the language tutorial. I was definitely feeling my cerebral cortex strain as it attempted to wrap around the concepts. I understood printing text on the screen (I think I got that far last time I tried to learn programming), but variables are tricky! Is it just me or is the tutorial a bit wordy and confusing? I understood that string variables were not necessarily numerical e.g. your_name, fruit_basket, etc, and integers were whole numbers, while floating variables allowed for decimals, but all the coding examples were a bit confusing to go through with JAWS. Maybe I'd better slow down the speech and set it to read all punctuation marks. Or, perhaps there's a way to get this tutorial embossed in Braille. Any ideas? 

Steve, you were right. I think it's going to take me a year at the very least, and that's probably for the version of Pig I want to release, never mind the other ideas rattling around in my head. big_smile

Best Regards,

Tiffany Kim

2015-09-02 01:55:21

string variables contain words. like the name of a player in a game. but it could also be a number. but you'd not be able to do math with that number. you'd then have to convert that to some numerical variable such as an integer or a float. i personally never keep numbers as strings. they are always either an integer or a float: even if i'm not going to ever do any math with it. its just a weird quirk. you have the basics down, its just a matter of going over and over it until the concepts become like second nature.

I don’t believe in fighting unnecessarily.  But if something is worth fighting for, then its always a fight worth winning.
check me out on Twitter and on GitHub

2015-09-02 12:28:18

Hi, Tiffany,

Well, bgt manual provides a short compilation of all concepts you will use in any programing language (specially oriented object programing languages). Set your screen reader to anounce all punctuation marks and be patient!

If you need clarification, just post here your doubts.

Learning any language (even programing languages) is not a linear process, but an exponential one. The more you understand, the faster you learn, so you could need two weeks to understand the first chapter, but only another to understand the second, and just three days to apply what you learned on the third one smile

As usual, all solved enigms seems too easy once solved.

2015-09-03 01:22:40

I think the examples that really helped me get going when I started out didn't try too hard to explain how they worked.

Simple things like these (feel free to ignore if this just confuses things further):


Example 1:

// Let the user enter their name, then use it in a message:

void main() {
string name=input_box("Enter your name", "Please enter your name:");

alert("Success!", "Welcome, " + name + "!");
}


Example 2:

// Have the user enter a password, and tell them if it is correct.

void main() {

string pass=input_box("Enter password", "Enter password to continue:");

if(pass=="password")
{
alert("Success!", "It isn\'t a very strong password, is it?");
}
else
{
alert("Error", "The password that you entered is invalid.");
}
}

Example 3:

// Displays a random number between 1 and 10, until the user types one of "done", "quit", "end", or "exit" into the input box.

void main() {

// Create the variable that will hold user input first, otherwise, it will be discarded before the loop can check it.
string text="";


// There is a more readable way to write the next line. You can replace && with the word and, surrounded by spaces.
while((text!="done")&&(text!="quit")&&(text!="end")&&(text!="exit"))
{

int number=random(1, 10);
if(number<5)
{
alert("Result", "The number is " + number + ", which is less than 5.");
}
else if(number==5)
{
alert("Result", "The number is " + number + "!");
}
else
{
alert("Result", "The number is " + number + ", which is greater than 5.");
}

text=input_box("What next?", "What should we do next?");
}

alert("Bye!", "Goodbye!");

}

That while line is a bit messy.
You could write it like this, if this is easier to follow:

while(text!="quit" and text!="done" and text!="end" and text!="exit")

There are many other things that are useful to learn, but you can do a lot with just those examples.

I'd recommend trying to come up with a simple game just by changing things from the examples. I did not explain how to get numbers from text, but if you wanted to make a guess-the-number game, you could do so even without that. (hint: you can use variables on both sides of the ==, >, <, and != operators.)

看過來!
"If you want utopia but reality gives you Lovecraft, you don't give up, you carve your utopia out of the corpses of dead gods."
MaxAngor wrote:
    George... Don't do that.

2015-09-04 04:34:08

When I was starting out I couldn't make heads or tails of the BGT tutorials, even though BGT was built for audio games. I was able to wrap my head around
http://learnpythonthehardway.org/book/
though!
Learning python will take a little longer, but after you finish Learn Python the Hard Way not only will BGT be a lot more clear, but you can also make games in python.

Variable:
x = 2
y = 5
x + y
7

x = "fred"
y = "joe"
x + " and " + y
fred and joe

2015-09-04 05:14:04

Oh wow! I completely missed all of these replies. I appreciate the examples, encouragement, and a link for Python. I was feeling stuck with BGT so put it down for a couple of days. I have some time this evening so I will spend some more time reading this tutorial. Now that I've got a supply of Oreos and Chips Ahoy, I have no excuses! Ha. This gives me a lot more gratitude and respect for all the programmers here who have made some really amazing games, and many for free, too! If worse comes to worst, I'll just have to work out some kind of arrangement with you all to transform some ideas I've had into games at a premium price. big_smile

Best regards,

Tiffany Kim